my website at ewancroft.uk

chore: simplify README, update MetaTags, add vercel CLI

- Simplify README to brief overview with docsite link
- Update MetaTags component with fediverse:creator support
- Compute fediverseCreator from AP instance/username in layout
- Add vercel CLI as dev dependency
- Update .env.example with current structure

👾 Generated with [Letta Code](https://letta.com)

ewancroft.uk 253fde34 973d5865

verified
+2792 -909
+21 -66
.env.example
··· 1 1 # Your ATProto DID (Decentralized Identifier) 2 - # You can find this in your Bluesky profile settings or at https://bsky.app 3 2 PUBLIC_ATPROTO_DID=did:plc:your-did-here 4 3 5 - # ActivityPub / Fediverse (optional) 6 - # Used for the webfinger endpoint and fediverse:creator metatag 7 - # PUBLIC_AP_INSTANCE_URL=https://ap.example.com 8 - # PUBLIC_AP_USERNAME=yourname 4 + # GitHub 5 + PUBLIC_GITHUB_USERNAME=your-github-username 6 + GITHUB_WEBHOOK_SECRET=your-webhook-secret 9 7 10 - # Ko-fi Supporters (optional) 11 - # PDS and DID are resolved automatically from PUBLIC_ATPROTO_DID above. 12 - # PUBLIC_KOFI_PAGE_ID=your-kofi-page-id 13 - # KOFI_VERIFICATION_TOKEN=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 14 - # ATPROTO_APP_PASSWORD=xxxx-xxxx-xxxx-xxxx 8 + # Ko-fi 9 + PUBLIC_KOFI_PAGE_ID=your-kofi-page-id 10 + KOFI_VERIFICATION_TOKEN=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 15 11 16 - # GitHub Sponsors (optional) 17 - # PUBLIC_GITHUB_USERNAME=your-github-username 18 - # Set this to the secret you configure when registering the webhook on GitHub. 19 - # Webhook URL: https://your-domain.com/webhook/github 20 - # Event: Sponsorship only — content type: application/json 21 - # GITHUB_WEBHOOK_SECRET=your-webhook-secret 12 + # AT Protocol 13 + ATPROTO_APP_PASSWORD=xxxx-xxxx-xxxx-xxxx 14 + 15 + # ActivityPub / Fediverse (for fediverse:creator meta tag) 16 + PUBLIC_AP_INSTANCE_URL=https://ap.example.com 17 + PUBLIC_AP_USERNAME=yourname 22 18 23 - # Fallback URL (optional) 24 - # If a document cannot be found, redirect here 25 - # Example: https://archive.example.com 26 - # Leave empty to return a 404 error instead 19 + # Blog / Leaflet 27 20 PUBLIC_BLOG_FALLBACK_URL="" 21 + PUBLIC_LEAFLET_BASE_PATH="https://blog.yoursite.com" 22 + PUBLIC_LEAFLET_BLOG_PUBLICATION="your-publication-rkey" 28 23 29 - # Publication to Slug Mapping 30 - # Configure your publication slugs in src/lib/config/slugs.ts 31 - # This allows you to access publications via friendly URLs like /blog, /notes, etc. 32 - # Example: { slug: 'blog', publicationRkey: '3m3x4bgbsh22k', platform: 'standard.site' } 33 - # 34 - # Each Standard.site publication has a URL configured in its record, which will be 35 - # automatically used when redirecting. The format is determined by the publication's 36 - # configured URL and the document's path field. 37 - 38 - # Slingshot Configuration (optional) 39 - # Local Slingshot instance for development - primary source for AT Protocol data 40 - # Set to your local Slingshot instance URL (default: http://localhost:3000) 41 - # Leave empty to skip local Slingshot and use public Slingshot directly 24 + # Slingshot 42 25 PUBLIC_LOCAL_SLINGSHOT_URL="http://localhost:3000" 43 - 44 - # Public Slingshot instance - fallback if local is unavailable 45 - # Default: https://slingshot.microcosm.blue 46 26 PUBLIC_SLINGSHOT_URL="https://slingshot.microcosm.blue" 47 27 48 - # Site Metadata (for SEO and social sharing) 28 + # Site Metadata 49 29 PUBLIC_SITE_TITLE="Your Site Title" 50 - PUBLIC_SITE_DESCRIPTION="Your site description" 30 + PUBLIC_SITE_DESCRIPTION="Your site description." 51 31 PUBLIC_SITE_KEYWORDS="your, keywords, here" 52 32 PUBLIC_SITE_URL="https://your-site-url.com" 53 33 54 - # CORS Configuration (for API endpoints) 55 - # Comma-separated list of allowed origins for CORS 56 - # Use "*" to allow all origins (not recommended for production) 57 - # Example: https://example.com,https://app.example.com 34 + # CORS 58 35 PUBLIC_CORS_ALLOWED_ORIGINS="https://your-site-url.com" 59 36 60 - # Cache TTL Configuration (optional) 61 - # Configure how long different types of data are cached (in minutes) 62 - # Longer TTLs reduce API calls and prevent timeouts, but data may be less fresh 63 - # Leave empty to use defaults (optimized for production) 64 - # Profile data (default: 5 min dev, 60 min prod) 65 - # CACHE_TTL_PROFILE=60 66 - # Site info (default: 5 min dev, 120 min prod) 67 - # CACHE_TTL_SITE_INFO=120 68 - # Links (default: 5 min dev, 60 min prod) 69 - # CACHE_TTL_LINKS=60 70 - # Music status (default: 2 min dev, 10 min prod) 71 - # CACHE_TTL_MUSIC_STATUS=10 72 - # Kibun status (default: 2 min dev, 15 min prod) 73 - # CACHE_TTL_KIBUN_STATUS=15 74 - # Tangled repos (default: 5 min dev, 60 min prod) 75 - # CACHE_TTL_TANGLED_REPOS=60 76 - # Blog posts (default: 5 min dev, 30 min prod) 77 - # CACHE_TTL_BLOG_POSTS=30 78 - # Publications (default: 5 min dev, 60 min prod) 79 - # CACHE_TTL_PUBLICATIONS=60 80 - # Individual posts (default: 5 min dev, 60 min prod) 81 - # CACHE_TTL_INDIVIDUAL_POST=60 82 - # Identity resolution (default: 30 min dev, 1440 min/24h prod) 83 - # CACHE_TTL_IDENTITY=1440 37 + # Feature flags 38 + PUBLIC_ENABLE_WHITEWIND="false"
+2 -1
.gitignore
··· 36 36 # Other sources that I will delete later 37 37 # They are used as references, so i will not commit them as my own files 38 38 other/* 39 - git-diff.txt 39 + git-diff.txt 40 + .env*.local
+19 -800
README.md
··· 1 - # AT Protocol Personal Website 2 - 3 - A modern, feature-rich personal website powered by AT Protocol, built with SvelteKit 2 and Tailwind CSS 4. 4 - 5 - > **Note**: This repository contains the source code for [Ewan's Corner](https://ewancroft.uk). The current configuration (environment variables, slug mappings, static files) is specific to that website, but the codebase is designed to be easily adapted for your own AT Protocol-powered site. See [Configuration Guide](./docs/configuration.md) for detailed setup instructions. 6 - 7 - ## 🌟 Features 8 - 9 - ### Core AT Protocol Integration 10 - 11 - - **Dynamic Profile Display**: Automatically fetch and display your Bluesky profile information with avatar, banner, follower counts, pronouns, and bio 12 - - **Site Metadata**: Store and display comprehensive site information using the `uk.ewancroft.site.info` lexicon (credits, tech stack, privacy statement, licenses) 13 - - **Smart Caching**: Intelligent in-memory cache with configurable TTL support for all AT Protocol data 14 - - **PDS Resolution**: Automatic PDS discovery with fallback to Bluesky public API for maximum reliability 15 - - **Standard.site Integration**: Full support for Standard.site document storage and display 16 - 17 - ### Content & Publishing 18 - 19 - - **Standard.site Publishing System**: 20 - - Store and retrieve documents using the Standard.site protocol 21 - - Multi-publication support via slug mapping 22 - - Intelligent RSS feed generation 23 - - Archive page displaying all your documents 24 - - Full integration with the AT Protocol ecosystem 25 - - Automatic document fetching and caching 26 - 27 - - **Flexible Publication Management**: 28 - - Map friendly URL slugs to Standard.site publications 29 - - Support for unlimited publications with individual configurations 30 - - Smart redirects to publication URLs 31 - - Publication-filtered RSS feeds 32 - 33 - - **Bluesky Post Display**: 34 - - Showcase latest non-reply posts with rich media support 35 - - Full thread context with recursive parent fetching 36 - - Quoted post embedding with media preservation 37 - - Image galleries with alt text support 38 - - External link cards with preview generation 39 - - Video embed support with HLS.js streaming 40 - 41 - - **Engagement Tracking**: 42 - - Real-time like and repost counts via Constellation API 43 - - Paginated engagement data fetching 44 - - Cached engagement metrics for performance 45 - 46 - ### Music Integration (via teal.fm) 47 - 48 - - **Now Playing Display**: Show currently playing or recently played tracks via `fm.teal.alpha.actor.status` 49 - - **Play History**: Display listening history via `fm.teal.alpha.feed.play` 50 - - **Album Artwork System**: 51 - - **Server-side Proxy**: CORS-free artwork fetching through `/api/artwork` endpoint 52 - - **Cascading Fallback**: MusicBrainz → iTunes → Deezer → Last.fm 53 - - **MusicBrainz Integration**: Cover Art Archive with automatic release search 54 - - **Smart Caching**: Caches artwork URLs and search results 55 - - **AT Protocol Blob Fallback**: Uses blob storage when external artwork unavailable 56 - - **Rich Metadata**: Artist names, album info, duration, and relative timestamps 57 - - **Multi-Service Support**: Works with Last.fm, Spotify, and other scrobbling services 58 - - **Intelligent Expiry**: Automatically handles expired "now playing" status 59 - 60 - ### Mood Status (via kibun.social) 61 - 62 - - **Current Mood Display**: Show your current mood/feeling via `social.kibun.status` 63 - - **Emoji Support**: Display expressive emoji alongside mood text 64 - - **Relative Timestamps**: Show when the mood was last updated 65 - - **Real-time Updates**: Automatically refreshes to show your latest status 66 - - **Clean Design**: Simple, elegant card that fits seamlessly with other status cards 67 - 68 - ### Developer Tools 69 - 70 - - **Tangled Repository Display**: Showcase your code repositories using the `sh.tangled.repo` lexicon 71 - - **Repository Cards**: Display with descriptions, creation dates, labels, and source links 72 - - **Automatic Sorting**: Repos sorted by creation date (newest first) 73 - 74 - ### User Experience 75 - 76 - - **12 Color Themes**: Choose from a curated selection of beautiful color themes: 77 - - **Neutral**: Sage, Monochrome, Slate 78 - - **Warm**: Ruby, Coral, Sunset, Amber 79 - - **Cool**: Forest, Teal, Ocean 80 - - **Vibrant**: Lavender, Rose 81 - - All themes use OKLCH color space for perceptually uniform colors 82 - - System preference detection with manual override 83 - - Persistent theme selection across sessions 84 - 85 - - **Link Board**: Display curated link collections from Linkat (`blue.linkat.board`) with emoji icons 86 - 87 - - **Dark Mode**: Seamless light/dark theme switching with system preference detection 88 - 89 - - **Wolf Mode**: Fun "wolf speak" text transformation toggle that converts text to wolf sounds while preserving: 90 - - Numbers and abbreviations (1K, 2M, 30s, etc.) 91 - - Capitalization patterns (UPPERCASE → AWOO, Capitalized → Awoo) 92 - - Punctuation and formatting 93 - - Navigation and interactive elements 94 - 95 - - **Decimal Clock**: Unique decimal time display (optional feature) 96 - 97 - - **Happy Mac Easter Egg**: Hidden surprise for visitors to discover 98 - 99 - - **Scroll to Top**: Smooth scroll-to-top button for long pages 100 - 101 - - **Responsive Design**: Mobile-first layout that adapts to all screen sizes 102 - 103 - - **SEO Optimization**: Comprehensive meta tags, Open Graph, and Twitter Card support 104 - 105 - - **RSS/Atom Feeds**: Multiple feed endpoints for blog posts and status updates 106 - 107 - - **Archive Page**: Browse all your Standard.site documents in one place 108 - 109 - ### Technical Features 110 - 111 - - **Type-Safe Development**: Full TypeScript support with comprehensive type definitions 112 - - **Smart Error Handling**: Graceful degradation with informative error states 113 - - **Loading States**: Skeleton loaders for all async content 114 - - **Image Optimization**: Lazy loading and responsive image handling 115 - - **Blob URL Construction**: Proper PDS blob URL generation for media assets 116 - - **Media Extraction**: Automatic CID extraction from various image object formats 117 - - **Facet Processing**: Rich text with link detection and mention highlighting 118 - - **Video Streaming**: HLS.js integration for adaptive video playback 119 - - **Configurable Cache TTL**: Fine-tune cache durations for different data types 120 - - **CORS Support**: Flexible cross-origin configuration for API endpoints 121 - 122 - ## 📋 Configuration 123 - 124 - For detailed configuration instructions, see the [Configuration Guide](./docs/configuration.md). 125 - 126 - Quick start: 127 - 128 - 1. Copy `.env` to `.env.local` and update with your AT Protocol DID 129 - 2. Configure publication slugs in `src/lib/config/slugs.ts` 130 - 3. Update static files (robots.txt, sitemap.xml, favicons) 131 - 4. Customize themes in `src/lib/config/themes.config.ts` (optional) 132 - 5. Run `npm install && npm run dev` 133 - 134 - ### Environment Variables 135 - 136 - ```ini 137 - # Required: Your AT Protocol DID 138 - PUBLIC_ATPROTO_DID=did:plc:your-did-here 139 - 140 - # Optional: Blog fallback URL 141 - PUBLIC_BLOG_FALLBACK_URL=https://example.com/blog 142 - 143 - # Optional: Slingshot integration 144 - PUBLIC_LOCAL_SLINGSHOT_URL=http://localhost:3000 145 - PUBLIC_SLINGSHOT_URL=https://slingshot.microcosm.blue 146 - 147 - # Site Metadata (for SEO and social sharing) 148 - PUBLIC_SITE_TITLE=Your Site Title 149 - PUBLIC_SITE_DESCRIPTION=Your site description 150 - PUBLIC_SITE_KEYWORDS=your, keywords, here 151 - PUBLIC_SITE_URL=https://yoursite.com 152 - 153 - # CORS Configuration (comma-separated origins) 154 - PUBLIC_CORS_ALLOWED_ORIGINS=https://yoursite.com,https://www.yoursite.com 155 - 156 - # Optional: Customizable Cache TTL (in seconds) 157 - CACHE_TTL_PROFILE=60 158 - CACHE_TTL_SITE_INFO=120 159 - CACHE_TTL_LINKS=60 160 - CACHE_TTL_MUSIC_STATUS=10 161 - CACHE_TTL_KIBUN_STATUS=15 162 - CACHE_TTL_TANGLED_REPOS=60 163 - CACHE_TTL_BLOG_POSTS=30 164 - CACHE_TTL_PUBLICATIONS=60 165 - CACHE_TTL_INDIVIDUAL_POST=60 166 - CACHE_TTL_IDENTITY=1440 167 - ``` 168 - 169 - ## 🚀 Getting Started 170 - 171 - ### Prerequisites 172 - 173 - - Node.js 18+ and npm 174 - - An AT Protocol DID (Decentralized Identifier) from Bluesky 175 - 176 - ### Installation 177 - 178 - 1. **Clone the repository**: 179 - 180 - ```bash 181 - git clone git@github.com:ewanc26/website.git 182 - cd website 183 - ``` 184 - 185 - 2. **Install dependencies**: 186 - 187 - ```bash 188 - npm install 189 - ``` 190 - 191 - 3. **Configure environment variables**: 192 - 193 - ```bash 194 - cp .env .env.local 195 - ``` 196 - 197 - Edit `.env.local` with your settings (see [Configuration Guide](./docs/configuration.md) for details) 198 - 199 - 4. **Configure publication slugs** in `src/lib/config/slugs.ts` 200 - 201 - 5. **Start the development server**: 202 - 203 - ```bash 204 - npm run dev 205 - ``` 1 + # Ewan's Website 206 2 207 - Visit `http://localhost:5173` to view your site 3 + Personal website powered by AT Protocol, built with SvelteKit 2 and Tailwind CSS 4. 208 4 209 - ## 📁 Project Structure 5 + **Version**: 11.7.0 210 6 211 - ```text 212 - website/ 213 - ├── src/ 214 - │ ├── lib/ 215 - │ │ ├── assets/ # Static assets (images, icons) 216 - │ │ ├── components/ # Reusable Svelte components 217 - │ │ │ ├── HappyMacEasterEgg.svelte 218 - │ │ │ ├── layout/ # Header, Footer, Navigation 219 - │ │ │ │ ├── ColorThemeToggle.svelte 220 - │ │ │ │ ├── DecimalClock.svelte 221 - │ │ │ │ ├── DecimalClockInfoBox.svelte 222 - │ │ │ │ ├── ThemeToggle.svelte 223 - │ │ │ │ ├── WolfToggle.svelte 224 - │ │ │ │ └── main/ 225 - │ │ │ │ ├── card/ # Status cards 226 - │ │ │ │ │ ├── BlueskyPostCard.svelte 227 - │ │ │ │ │ ├── KibunStatusCard.svelte 228 - │ │ │ │ │ ├── LinkCard.svelte 229 - │ │ │ │ │ ├── MusicStatusCard.svelte 230 - │ │ │ │ │ ├── PostCard.svelte 231 - │ │ │ │ │ ├── ProfileCard.svelte 232 - │ │ │ │ │ └── TangledRepoCard.svelte 233 - │ │ │ │ ├── DynamicLinks.svelte 234 - │ │ │ │ └── ScrollToTop.svelte 235 - │ │ │ ├── seo/ # MetaTags component 236 - │ │ │ └── ui/ # Reusable UI components 237 - │ │ │ ├── BlogPostCard.svelte 238 - │ │ │ ├── Card.svelte 239 - │ │ │ ├── DocumentCard.svelte 240 - │ │ │ ├── Dropdown.svelte 241 - │ │ │ ├── Pagination.svelte 242 - │ │ │ ├── PostsGroupedView.svelte 243 - │ │ │ ├── SearchBar.svelte 244 - │ │ │ └── Tabs.svelte 245 - │ │ ├── config/ # Configuration files 246 - │ │ │ ├── cache.config.ts # Cache TTL settings 247 - │ │ │ ├── slugs.ts # Slug to publication mapping 248 - │ │ │ └── themes.config.ts # Theme definitions 249 - │ │ ├── data/ # Static data (navigation items) 250 - │ │ ├── helper/ # Helper functions (meta tags, OG images) 251 - │ │ ├── services/ # External service integrations 252 - │ │ │ └── atproto/ # AT Protocol service layer 253 - │ │ │ ├── agents.ts # Agent management & PDS resolution 254 - │ │ │ ├── cache.ts # In-memory caching 255 - │ │ │ ├── documents.ts # Standard.site documents 256 - │ │ │ ├── engagement.ts # Post engagement (likes/reposts) 257 - │ │ │ ├── fetch.ts # Profile, status, site info, music 258 - │ │ │ ├── media.ts # Blob URL & image handling 259 - │ │ │ ├── musicbrainz.ts # MusicBrainz API integration 260 - │ │ │ ├── pagination/ # Pagination utilities 261 - │ │ │ ├── posts.ts # Blog posts, Bluesky posts 262 - │ │ │ ├── standard.ts # Standard.site integration 263 - │ │ │ └── types.ts # TypeScript type definitions 264 - │ │ ├── stores/ # Svelte stores 265 - │ │ │ ├── colorTheme.ts # Color theme management 266 - │ │ │ ├── dropdownState.ts # Dropdown state 267 - │ │ │ ├── happyMac.ts # Happy Mac easter egg 268 - │ │ │ └── wolfMode.ts # Wolf mode text transformation 269 - │ │ ├── styles/ # Theme CSS files 270 - │ │ │ └── themes/ # Individual theme stylesheets 271 - │ │ └── utils/ # Utility functions 272 - │ ├── routes/ # SvelteKit routes 273 - │ │ ├── [slug=slug]/ # Dynamic slug-based routes 274 - │ │ │ ├── [rkey]/ # Individual document redirects 275 - │ │ │ ├── atom/ # Deprecated Atom feeds (410 Gone) 276 - │ │ │ └── rss/ # RSS feed endpoints 277 - │ │ ├── api/ # API endpoints 278 - │ │ │ └── artwork/ # Album artwork proxy 279 - │ │ ├── archive/ # Standard.site documents archive 280 - │ │ ├── favicon.ico/ # Favicon endpoint 281 - │ │ └── site/ 282 - │ │ └── meta/ # Site metadata page 283 - │ ├── app.css # Global styles 284 - │ └── app.html # HTML template 285 - ├── static/ # Static files (favicon, robots.txt, etc.) 286 - └── package.json 287 - ``` 7 + Live at [ewancroft.uk](https://ewancroft.uk). 288 8 289 - ## 🔧 AT Protocol Services 9 + ## Documentation 290 10 291 - The application includes a comprehensive AT Protocol service layer in `src/lib/services/atproto/`: 11 + Full documentation is available at [docs.ewancroft.uk](https://docs.ewancroft.uk). 292 12 293 - ### Core Services 13 + For local setup, see the [Configuration Guide](./docs/configuration.md). 294 14 295 - - **agents.ts**: Agent management with automatic PDS resolution and fallback to the Bluesky public API 296 - - **fetch.ts**: Profile, status, site info, links, and music status fetching 297 - - **posts.ts**: Standard.site documents and Bluesky posts 298 - - **documents.ts**: Standard.site document fetching and management 299 - - **standard.ts**: Standard.site integration utilities 300 - - **engagement.ts**: Post engagement data (likes/reposts) via Constellation API 301 - - **media.ts**: Image and blob URL handling with CID extraction 302 - - **musicbrainz.ts**: MusicBrainz API integration for album artwork with cascading fallbacks 303 - - **cache.ts**: In-memory caching with configurable TTL support 304 - - **pagination/**: Utilities for paginated AT Protocol queries 305 - - **types.ts**: Comprehensive TypeScript definitions for all data structures 306 - 307 - ### Usage Examples 308 - 309 - ```typescript 310 - import { 311 - fetchProfile, 312 - fetchBlogPosts, 313 - fetchLatestBlueskyPost, 314 - fetchMusicStatus, 315 - fetchKibunStatus, 316 - fetchTangledRepos, 317 - fetchDocuments 318 - } from '$lib/services/atproto'; 319 - 320 - // Fetch profile data 321 - const profile = await fetchProfile(fetch); 322 - 323 - // Fetch blog posts from Standard.site 324 - const { posts } = await fetchBlogPosts(fetch); 325 - 326 - // Fetch latest Bluesky post 327 - const post = await fetchLatestBlueskyPost(fetch); 328 - 329 - // Fetch current or last played music 330 - const musicStatus = await fetchMusicStatus(fetch); 331 - 332 - // Fetch current mood status 333 - const kibunStatus = await fetchKibunStatus(fetch); 334 - 335 - // Fetch code repositories 336 - const repos = await fetchTangledRepos(fetch); 337 - 338 - // Fetch Standard.site documents 339 - const documents = await fetchDocuments(fetch); 340 - ``` 341 - 342 - ## 📝 Publication System 343 - 344 - The publication system uses friendly URL slugs that map to Standard.site publications with intelligent URL redirects. 345 - 346 - ### Slug Configuration 347 - 348 - Publications are mapped to URL slugs in `src/lib/config/slugs.ts`: 349 - 350 - ```typescript 351 - export const slugMappings: SlugMapping[] = [ 352 - { 353 - slug: 'blog', // Access via /blog 354 - publicationRkey: '3m3x4bgbsh22k' // Standard.site publication rkey 355 - }, 356 - { 357 - slug: 'notes', // Access via /notes 358 - publicationRkey: 'xyz123abc' 359 - } 360 - ]; 361 - ``` 362 - 363 - ### Publication Routes 364 - 365 - - `/{slug}` – Redirects to your Standard.site publication homepage 366 - - `/{slug}/{rkey}` – Redirects to the specific document on Standard.site 367 - - `/{slug}/rss` – RSS feed for all documents in the publication 368 - - `/{slug}/atom` – Deprecated (returns 410 Gone, use RSS instead) 369 - - `/archive` – Browse all Standard.site documents across all publications 370 - 371 - ### RSS Feed Behavior 372 - 373 - Generates an RSS 2.0 feed containing all documents from the specified publication: 374 - 375 - - Includes title, link, publication date, and description 376 - - Filtered by publication rkey 377 - - Cached for 1 hour for performance 378 - - Returns 404 if publication has no documents 379 - 380 - ### Finding Your Publication Rkey 381 - 382 - 1. Visit your Standard.site publication 383 - 2. The publication rkey is part of the publication's AT Protocol URI 384 - 3. You can find it in your Standard.site publication settings 385 - 4. Add it to your slug mapping in `src/lib/config/slugs.ts` 386 - 387 - ## 🎵 Music Integration 388 - 389 - The site displays your music listening activity via teal.fm integration: 390 - 391 - ### Supported Record Types 392 - 393 - - **`fm.teal.alpha.actor.status`**: Current "Now Playing" status with expiry 394 - - **`fm.teal.alpha.feed.play`**: Historical play records 395 - 396 - ### Album Artwork System 397 - 398 - The music card uses a sophisticated server-side artwork retrieval system with cascading fallbacks: 399 - 400 - 1. **Server-side API Proxy** (`/api/artwork`) 401 - - Solves CORS issues by proxying requests through your server 402 - - Caches artwork URLs to reduce external API calls 403 - - Handles all external API interactions 404 - 405 - 2. **Cascading Artwork Sources**: 406 - - **MusicBrainz Cover Art Archive** (Primary) 407 - - Uses `releaseMbId` from music records when available 408 - - Automatic search by album name + artist if ID missing 409 - - Free, no API key required 410 - - **iTunes Search API** (Fallback 1) 411 - - Searches by album + artist or track + artist 412 - - Returns high-resolution artwork (600x600) 413 - - **Deezer API** (Fallback 2) 414 - - Album artwork search 415 - - Multiple quality options (XL, big, medium) 416 - - **Last.fm API** (Fallback 3) 417 - - Album info with artwork 418 - - Requires album name 419 - - **AT Protocol Blob Storage** (Final Fallback) 420 - - Uses `artwork` field from records 421 - - Proper PDS blob URL construction 422 - 423 - 3. **Smart Caching**: 424 - - Caches MusicBrainz search results to avoid repeated lookups 425 - - Caches final artwork URLs 426 - - Configurable TTL for music status 427 - 428 - ### Features 429 - 430 - - Displays track name, artists, album, and duration 431 - - Shows relative timestamps ("2 minutes ago") 432 - - Links to origin URLs (Last.fm, Spotify, etc.) 433 - - Responsive artwork display with fallback icons 434 - - Smart caching with configurable TTL (default: 2 minutes) 435 - - Automatic status expiry handling 436 - - Prioritizes album art over track art for better accuracy 437 - 438 - ### Configuration 439 - 440 - Set your DID in `.env.local` to fetch your music status: 441 - 442 - ```ini 443 - PUBLIC_ATPROTO_DID=did:plc:your-did-here 444 - 445 - # Optional: Adjust music status cache duration (in seconds) 446 - CACHE_TTL_MUSIC_STATUS=120 447 - ``` 448 - 449 - The card will automatically display your current or last played track with album artwork. 450 - 451 - ## 🎨 Theme System 452 - 453 - The site features 12 beautiful color themes organized into four categories: 454 - 455 - ### Available Themes 456 - 457 - **Neutral Themes** 458 - 459 - - **Sage**: Calm green-blue 460 - - **Monochrome**: Pure greyscale 461 - - **Slate**: Blue-grey (default) 462 - 463 - **Warm Themes** 464 - 465 - - **Ruby**: Bold red 466 - - **Coral**: Orange-pink 467 - - **Sunset**: Warm orange 468 - - **Amber**: Bright yellow 469 - 470 - **Cool Themes** 471 - 472 - - **Forest**: Natural green 473 - - **Teal**: Blue-green 474 - - **Ocean**: Deep blue 475 - 476 - **Vibrant Themes** 477 - 478 - - **Lavender**: Soft purple 479 - - **Rose**: Pink-red 480 - 481 - ### Theme Features 482 - 483 - - **OKLCH Color Space**: Perceptually uniform colors for consistent brightness 484 - - **System Detection**: Automatically detects light/dark mode preference 485 - - **Persistent Selection**: Theme choice saved across sessions 486 - - **Smooth Transitions**: Animated color changes 487 - - **Accessible**: All themes meet WCAG contrast requirements 488 - 489 - ### Customizing Themes 490 - 491 - Edit `src/lib/config/themes.config.ts` to add or modify themes: 492 - 493 - ```typescript 494 - export const THEMES: readonly ThemeDefinition[] = [ 495 - { 496 - value: 'mytheme', 497 - label: 'My Theme', 498 - description: 'Custom colors', 499 - color: 'oklch(80% 0.2 180)', 500 - category: 'cool' 501 - } 502 - // ... more themes 503 - ]; 504 - ``` 505 - 506 - ## 🔐 CORS Configuration 507 - 508 - The API endpoints support Cross-Origin Resource Sharing (CORS) via dynamic configuration: 509 - 510 - ### Environment Variable 511 - 512 - ```ini 513 - # Single origin 514 - PUBLIC_CORS_ALLOWED_ORIGINS="https://example.com" 515 - 516 - # Multiple origins (comma-separated) 517 - PUBLIC_CORS_ALLOWED_ORIGINS="https://example.com,https://app.example.com,https://www.example.com" 518 - 519 - # Allow all origins (not recommended for production) 520 - PUBLIC_CORS_ALLOWED_ORIGINS="*" 521 - ``` 522 - 523 - ### How It Works 524 - 525 - 1. **Dynamic Origin Matching**: The server checks the `Origin` header against the allowed list 526 - 2. **Preflight Requests**: OPTIONS requests are handled automatically with proper CORS headers 527 - 3. **Security**: Only specified origins receive CORS headers (unless using `*`) 528 - 4. **Headers Set**: 529 - - `Access-Control-Allow-Origin`: The requesting origin (if allowed) 530 - - `Access-Control-Allow-Methods`: GET, POST, PUT, DELETE, OPTIONS 531 - - `Access-Control-Allow-Headers`: Content-Type, Authorization 532 - - `Access-Control-Max-Age`: 86400 (24 hours) 533 - 534 - ### API Endpoints 535 - 536 - CORS is automatically applied to all routes under `/api/`: 537 - 538 - - `/api/artwork` - Album artwork fetching service with cascading fallbacks 539 - 540 - ### Testing CORS 15 + ## Quick Start 541 16 542 17 ```bash 543 - # Test from command line 544 - curl -H "Origin: https://example.com" \ 545 - -H "Access-Control-Request-Method: GET" \ 546 - -H "Access-Control-Request-Headers: Content-Type" \ 547 - -X OPTIONS \ 548 - http://localhost:5173/api/artwork 549 - 550 - # Check response headers for: 551 - # Access-Control-Allow-Origin: https://example.com 552 - ``` 553 - 554 - ### Security Recommendations 555 - 556 - 1. **Production**: Specify exact allowed origins instead of using `*` 557 - 2. **Development**: Use `*` or localhost origins for testing 558 - 3. **Multiple Domains**: List all your domains that need API access 559 - 4. **HTTPS Only**: Always use HTTPS origins in production 560 - 561 - ## 🏗️ Building for Production 562 - 563 - ```bash 564 - # Build the application 565 - npm run build 566 - 567 - # Preview the production build 568 - npm run preview 18 + git clone git@github.com:ewanc26/website.git 19 + cd website 20 + npm install 21 + npm run dev 569 22 ``` 570 23 571 - The build output will be in the `.svelte-kit` directory, ready for deployment. 572 - 573 - ## 📦 Deployment 574 - 575 - This project uses `@sveltejs/adapter-vercel` optimized for Vercel deployment: 576 - 577 - ### Vercel (Recommended) 24 + ## Features 578 25 579 - 1. Push your repository to GitHub/GitLab/Bitbucket 580 - 2. Import project in Vercel 581 - 3. Add environment variables from `.env.local` 582 - 4. Deploy 26 + - AT Protocol integration (Bluesky profile, posts, music status) 27 + - Standard.site publishing support 28 + - 12 color themes with dark mode 29 + - Responsive design with SEO optimization 583 30 584 - ### Other Platforms 31 + ## License 585 32 586 - To use a different platform, change the adapter in `svelte.config.js`: 587 - 588 - ```javascript 589 - import adapter from '@sveltejs/adapter-auto'; // or adapter-node, adapter-static, etc. 590 - ``` 591 - 592 - For other platforms, see the [SvelteKit adapters documentation](https://kit.svelte.dev/docs/adapters). 593 - 594 - ## 🔍 Custom Lexicons 595 - 596 - The site supports several custom AT Protocol lexicons: 597 - 598 - ### Site Information (`uk.ewancroft.site.info`) 599 - 600 - Store comprehensive site metadata: 601 - 602 - - Technology stack 603 - - Privacy statement 604 - - Open-source information 605 - - Credits and licenses 606 - - Related services 607 - 608 - ### Link Board (`blue.linkat.board`) 609 - 610 - Display a collection of links with emoji icons. 611 - 612 - ### Music Status (`fm.teal.alpha.actor.status` & `fm.teal.alpha.feed.play`) 613 - 614 - Show music listening activity via teal.fm integration. 615 - 616 - ### Mood Status (`social.kibun.status`) 617 - 618 - Display your current mood or feeling via kibun.social integration. 619 - 620 - ### Tangled Repositories (`sh.tangled.repo`) 621 - 622 - Display code repositories with descriptions, labels, and metadata. 623 - 624 - ### Standard.site Documents 625 - 626 - Store and display documents using the Standard.site protocol. 627 - 628 - ## 🛠️ Development 629 - 630 - ### Available Scripts 631 - 632 - - `npm run dev` – Start the development server 633 - - `npm run build` – Build for production 634 - - `npm run preview` – Preview the production build 635 - - `npm run check` – Type-check the project 636 - - `npm run check:watch` – Type-check in watch mode 637 - - `npm run format` – Format code with Prettier 638 - - `npm run lint` – Check code formatting 639 - 640 - ### Code Quality 641 - 642 - The project uses: 643 - 644 - - **TypeScript** – Full type safety throughout 645 - - **Prettier** – Consistent code formatting with plugins for Svelte and Tailwind 646 - - **svelte-check** – Svelte-specific linting 647 - - **Svelte 5 Runes** – Modern reactivity with better performance 648 - 649 - ### Tech Stack 650 - 651 - - **Framework**: SvelteKit 2.50+ with Svelte 5 652 - - **Styling**: Tailwind CSS 4 with typography plugin 653 - - **AT Protocol**: @atproto/api v0.18.1 654 - - **Video**: HLS.js for adaptive streaming 655 - - **Icons**: @lucide/svelte 656 - - **Build Tool**: Vite 7 657 - - **TypeScript**: v5.9+ 658 - 659 - ## 🤝 Contributing 660 - 661 - Contributions are welcome! Please feel free to submit a pull request. 662 - 663 - 1. Fork the repository 664 - 2. Create your feature branch (`git checkout -b feature/amazing-feature`) 665 - 3. Commit your changes (`git commit -m 'Add some amazing feature'`) 666 - 4. Push to the branch (`git push origin feature/amazing-feature`) 667 - 5. Open a Pull Request 668 - 669 - ## 📄 License 670 - 671 - This project is open-source. See the [LICENSE](./LICENSE) file for more details on the website source code specifically and the [THIRD-PARTY-LICENSES.txt](./THIRD-PARTY-LICENSES.txt) file for third-party dependencies. 672 - 673 - ## 🔗 Links 674 - 675 - - [AT Protocol Documentation](https://atproto.com/) 676 - - [SvelteKit Documentation](https://kit.svelte.dev/) 677 - - [Tailwind CSS Documentation](https://tailwindcss.com/) 678 - - [Bluesky](https://bsky.app/) 679 - 680 - - [Standard.site](https://standard.site/) 681 - - [teal.fm](https://teal.fm/) 682 - - [kibun.social](https://kibun.social/) 683 - - [MusicBrainz](https://musicbrainz.org/) 684 - - [Tangled](https://tangled.org/) 685 - - [Linkat](https://linkat.blue/) 686 - 687 - ## 💡 Tips & Troubleshooting 688 - 689 - ### Finding Your DID 690 - 691 - 1. Visit [PDSls](https://pdsls.dev/) 692 - 2. Enter your handle (e.g., `ewancroft.uk`) 693 - 3. Look for the `did:plc` (or `did:web`) in the Repository field 694 - 4. If not visible, click the arrow to the right of the text 695 - 696 - ### Cache Management 697 - 698 - The AT Protocol services use an in-memory cache with configurable TTL: 699 - 700 - ```typescript 701 - import { cache } from '$lib/services/atproto'; 702 - 703 - // Clear all cache 704 - cache.clear(); 705 - 706 - // Clear a specific entry 707 - cache.delete('profile:did:plc:...'); 708 - 709 - // Get cache statistics 710 - const profile = cache.get<ProfileData>('profile:did:plc:...'); 711 - ``` 712 - 713 - ### Customizing Cache TTL 714 - 715 - Edit cache durations in `.env.local`: 716 - 717 - ```ini 718 - # Profile data (default: 60 seconds) 719 - CACHE_TTL_PROFILE=300 720 - 721 - # Music status (default: 120 seconds) 722 - CACHE_TTL_MUSIC_STATUS=60 723 - 724 - # Kibun status (default: 120 seconds) 725 - CACHE_TTL_KIBUN_STATUS=90 726 - ``` 727 - 728 - ### Music Status Not Showing Artwork 729 - 730 - If your music status doesn't show album artwork: 731 - 732 - 1. Ensure your scrobbler includes `releaseMbId` in records (best option) 733 - 2. The system will automatically search MusicBrainz if IDs are missing 734 - 3. Album name + artist name provides better results than track name 735 - 4. Check browser console for artwork search results 736 - 5. Fallback to AT Protocol blob storage if external sources fail 737 - 6. Icon placeholder displays if no artwork is found 738 - 739 - The cascading fallback system tries multiple sources: 740 - 741 - - MusicBrainz (with automatic search) 742 - - iTunes 743 - - Deezer 744 - - Last.fm 745 - - AT Protocol blob storage 746 - 747 - ### Documents Not Found 748 - 749 - 1. Verify `PUBLIC_ATPROTO_DID` is correct 750 - 2. Check slug mapping in `src/lib/config/slugs.ts` 751 - 3. Ensure publication rkey matches your Leaflet publication 752 - 4. Check browser console for AT Protocol service errors 753 - 5. Verify your Standard.site publications are properly configured 754 - 6. For Standard.site documents, check the `/archive` page 755 - 756 - ### Wolf Mode Not Working 757 - 758 - 1. Ensure JavaScript is enabled 759 - 2. Check browser console for errors 760 - 3. Wolf mode preserves navigation and interactive elements 761 - 4. Numbers and abbreviations are preserved intentionally 762 - 5. Toggle is located in the header navigation 763 - 764 - ### Theme Not Persisting 765 - 766 - 1. Check browser localStorage is enabled 767 - 2. Clear site data and try again 768 - 3. Verify the theme value is valid in `themes.config.ts` 769 - 4. Check console for theme-related errors 770 - 771 - ### Build Errors 772 - 773 - 1. Clear `.svelte-kit` directory: `rm -rf .svelte-kit` 774 - 2. Remove `node_modules`: `rm -rf node_modules` 775 - 3. Clear package lock: `rm package-lock.json` 776 - 4. Reinstall: `npm install` 777 - 5. Try building: `npm run build` 778 - 779 - ### CORS Issues with Artwork 780 - 781 - The artwork system uses a server-side proxy to avoid CORS issues: 782 - 783 - 1. Ensure the `/api/artwork` endpoint is accessible 784 - 2. Check `PUBLIC_CORS_ALLOWED_ORIGINS` includes your domain 785 - 3. Verify external APIs (MusicBrainz, iTunes, etc.) are accessible 786 - 4. Check server logs for API errors 787 - 788 - ### SvelteKit Fetch Error 789 - 790 - If you see "Cannot use relative URL with global fetch": 791 - 792 - 1. Ensure all data fetching functions receive the `fetch` parameter 793 - 2. Pass `fetch` from `load` functions to service functions 794 - 3. Use `event.fetch` in server-side code 795 - 4. This was fixed in the latest version 796 - 797 - ## ☕ Support 798 - 799 - If you found this useful, consider [buying me a ko-fi](https://ko-fi.com/ewancroft)! 800 - 801 - ## 🙏 Acknowledgements 802 - 803 - - Thanks to the AT Protocol team for creating an open, decentralized protocol 804 - - Thanks to the Bluesky, Standard.site, teal.fm, kibun.social, Tangled, and Linkat teams 805 - - Thanks to MusicBrainz, iTunes, Deezer, and Last.fm for providing free artwork APIs 806 - - Thanks to the Cover Art Archive for hosting album artwork 807 - - Inspired by the personal-web movement and IndieWeb principles 808 - - Built with love using modern web technologies 809 - 810 - --- 811 - 812 - Built with ❤️ using SvelteKit, AT Protocol, and open-source tools 813 - 814 - **Version**: 11.7.0 33 + AGPL-3.0-only — see [LICENSE](./LICENSE) for details.
+1
package.json
··· 28 28 "svelte-check": "^4.4.5", 29 29 "tailwindcss": "^4.2.2", 30 30 "typescript": "^5.9.3", 31 + "vercel": "^50.42.0", 31 32 "vite": "^7.3.1" 32 33 }, 33 34 "pnpm": {
+2736 -25
pnpm-lock.yaml
··· 25 25 version: 1.1.3 26 26 '@ewanc26/ui': 27 27 specifier: ^0.3.8 28 - version: 0.3.8(@atproto/api@0.18.21)(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(tailwindcss@4.2.2) 28 + version: 0.3.8(@atproto/api@0.18.21)(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(tailwindcss@4.2.2) 29 29 '@ewanc26/utils': 30 30 specifier: ^0.1.5 31 31 version: 0.1.5 ··· 38 38 devDependencies: 39 39 '@sveltejs/adapter-vercel': 40 40 specifier: ^6.3.3 41 - version: 6.3.3(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(rollup@4.60.0) 41 + version: 6.3.3(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(rollup@4.60.0) 42 42 '@sveltejs/kit': 43 43 specifier: ^2.55.0 44 - version: 2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 44 + version: 2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 45 45 '@sveltejs/vite-plugin-svelte': 46 46 specifier: ^6.2.4 47 - version: 6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 47 + version: 6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 48 48 '@tailwindcss/typography': 49 49 specifier: ^0.5.19 50 50 version: 0.5.19(tailwindcss@4.2.2) 51 51 '@tailwindcss/vite': 52 52 specifier: ^4.2.2 53 - version: 4.2.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 53 + version: 4.2.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 54 54 '@types/node': 55 55 specifier: ^25.5.0 56 56 version: 25.5.0 ··· 75 75 typescript: 76 76 specifier: ^5.9.3 77 77 version: 5.9.3 78 + vercel: 79 + specifier: ^50.42.0 80 + version: 50.42.0(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3) 78 81 vite: 79 82 specifier: ^7.3.1 80 - version: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0) 83 + version: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0) 81 84 82 85 packages: 83 86 ··· 105 108 '@atproto/xrpc@0.7.7': 106 109 resolution: {integrity: sha512-K1ZyO/BU8JNtXX5dmPp7b5UrkLMMqpsIa/Lrj5D3Su+j1Xwq1m6QJ2XJ1AgjEjkI1v4Muzm7klianLE6XGxtmA==} 107 110 111 + '@bytecodealliance/preview2-shim@0.17.6': 112 + resolution: {integrity: sha512-n3cM88gTen5980UOBAD6xDcNNL3ocTK8keab21bpx1ONdA+ARj7uD1qoFxOWCyKlkpSi195FH+GeAut7Oc6zZw==} 113 + 114 + '@edge-runtime/format@2.2.1': 115 + resolution: {integrity: sha512-JQTRVuiusQLNNLe2W9tnzBlV/GvSVcozLl4XZHk5swnRZ/v6jp8TqR8P7sqmJsQqblDZ3EztcWmLDbhRje/+8g==} 116 + engines: {node: '>=16'} 117 + 118 + '@edge-runtime/node-utils@2.3.0': 119 + resolution: {integrity: sha512-uUtx8BFoO1hNxtHjp3eqVPC/mWImGb2exOfGjMLUoipuWgjej+f4o/VP4bUI8U40gu7Teogd5VTeZUkGvJSPOQ==} 120 + engines: {node: '>=16'} 121 + 122 + '@edge-runtime/ponyfill@2.4.2': 123 + resolution: {integrity: sha512-oN17GjFr69chu6sDLvXxdhg0Qe8EZviGSuqzR9qOiKh4MhFYGdBBcqRNzdmYeAdeRzOW2mM9yil4RftUQ7sUOA==} 124 + engines: {node: '>=16'} 125 + 126 + '@edge-runtime/primitives@4.1.0': 127 + resolution: {integrity: sha512-Vw0lbJ2lvRUqc7/soqygUX216Xb8T3WBZ987oywz6aJqRxcwSVWwr9e+Nqo2m9bxobA9mdbWNNoRY6S9eko1EQ==} 128 + engines: {node: '>=16'} 129 + 130 + '@edge-runtime/vm@3.2.0': 131 + resolution: {integrity: sha512-0dEVyRLM/lG4gp1R/Ik5bfPl/1wX00xFwd5KcNH602tzBa09oF7pbTKETEhR1GjZ75K6OJnYFu8II2dyMhONMw==} 132 + engines: {node: '>=16'} 133 + 134 + '@emnapi/core@1.9.2': 135 + resolution: {integrity: sha512-UC+ZhH3XtczQYfOlu3lNEkdW/p4dsJ1r/bP7H8+rhao3TTTMO1ATq/4DdIi23XuGoFY+Cz0JmCbdVl0hz9jZcA==} 136 + 137 + '@emnapi/runtime@1.9.2': 138 + resolution: {integrity: sha512-3U4+MIWHImeyu1wnmVygh5WlgfYDtyf0k8AbLhMFxOipihf6nrWC4syIm/SwEeec0mNSafiiNnMJwbza/Is6Lw==} 139 + 140 + '@emnapi/wasi-threads@1.2.1': 141 + resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==} 142 + 108 143 '@esbuild/aix-ppc64@0.25.12': 109 144 resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} 145 + engines: {node: '>=18'} 146 + cpu: [ppc64] 147 + os: [aix] 148 + 149 + '@esbuild/aix-ppc64@0.27.0': 150 + resolution: {integrity: sha512-KuZrd2hRjz01y5JK9mEBSD3Vj3mbCvemhT466rSuJYeE/hjuBrHfjjcjMdTm/sz7au+++sdbJZJmuBwQLuw68A==} 110 151 engines: {node: '>=18'} 111 152 cpu: [ppc64] 112 153 os: [aix] ··· 123 164 cpu: [arm64] 124 165 os: [android] 125 166 167 + '@esbuild/android-arm64@0.27.0': 168 + resolution: {integrity: sha512-CC3vt4+1xZrs97/PKDkl0yN7w8edvU2vZvAFGD16n9F0Cvniy5qvzRXjfO1l94efczkkQE6g1x0i73Qf5uthOQ==} 169 + engines: {node: '>=18'} 170 + cpu: [arm64] 171 + os: [android] 172 + 126 173 '@esbuild/android-arm64@0.27.4': 127 174 resolution: {integrity: sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==} 128 175 engines: {node: '>=18'} ··· 135 182 cpu: [arm] 136 183 os: [android] 137 184 185 + '@esbuild/android-arm@0.27.0': 186 + resolution: {integrity: sha512-j67aezrPNYWJEOHUNLPj9maeJte7uSMM6gMoxfPC9hOg8N02JuQi/T7ewumf4tNvJadFkvLZMlAq73b9uwdMyQ==} 187 + engines: {node: '>=18'} 188 + cpu: [arm] 189 + os: [android] 190 + 138 191 '@esbuild/android-arm@0.27.4': 139 192 resolution: {integrity: sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==} 140 193 engines: {node: '>=18'} ··· 147 200 cpu: [x64] 148 201 os: [android] 149 202 203 + '@esbuild/android-x64@0.27.0': 204 + resolution: {integrity: sha512-wurMkF1nmQajBO1+0CJmcN17U4BP6GqNSROP8t0X/Jiw2ltYGLHpEksp9MpoBqkrFR3kv2/te6Sha26k3+yZ9Q==} 205 + engines: {node: '>=18'} 206 + cpu: [x64] 207 + os: [android] 208 + 150 209 '@esbuild/android-x64@0.27.4': 151 210 resolution: {integrity: sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==} 152 211 engines: {node: '>=18'} ··· 155 214 156 215 '@esbuild/darwin-arm64@0.25.12': 157 216 resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} 217 + engines: {node: '>=18'} 218 + cpu: [arm64] 219 + os: [darwin] 220 + 221 + '@esbuild/darwin-arm64@0.27.0': 222 + resolution: {integrity: sha512-uJOQKYCcHhg07DL7i8MzjvS2LaP7W7Pn/7uA0B5S1EnqAirJtbyw4yC5jQ5qcFjHK9l6o/MX9QisBg12kNkdHg==} 158 223 engines: {node: '>=18'} 159 224 cpu: [arm64] 160 225 os: [darwin] ··· 171 236 cpu: [x64] 172 237 os: [darwin] 173 238 239 + '@esbuild/darwin-x64@0.27.0': 240 + resolution: {integrity: sha512-8mG6arH3yB/4ZXiEnXof5MK72dE6zM9cDvUcPtxhUZsDjESl9JipZYW60C3JGreKCEP+p8P/72r69m4AZGJd5g==} 241 + engines: {node: '>=18'} 242 + cpu: [x64] 243 + os: [darwin] 244 + 174 245 '@esbuild/darwin-x64@0.27.4': 175 246 resolution: {integrity: sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==} 176 247 engines: {node: '>=18'} ··· 183 254 cpu: [arm64] 184 255 os: [freebsd] 185 256 257 + '@esbuild/freebsd-arm64@0.27.0': 258 + resolution: {integrity: sha512-9FHtyO988CwNMMOE3YIeci+UV+x5Zy8fI2qHNpsEtSF83YPBmE8UWmfYAQg6Ux7Gsmd4FejZqnEUZCMGaNQHQw==} 259 + engines: {node: '>=18'} 260 + cpu: [arm64] 261 + os: [freebsd] 262 + 186 263 '@esbuild/freebsd-arm64@0.27.4': 187 264 resolution: {integrity: sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==} 188 265 engines: {node: '>=18'} ··· 195 272 cpu: [x64] 196 273 os: [freebsd] 197 274 275 + '@esbuild/freebsd-x64@0.27.0': 276 + resolution: {integrity: sha512-zCMeMXI4HS/tXvJz8vWGexpZj2YVtRAihHLk1imZj4efx1BQzN76YFeKqlDr3bUWI26wHwLWPd3rwh6pe4EV7g==} 277 + engines: {node: '>=18'} 278 + cpu: [x64] 279 + os: [freebsd] 280 + 198 281 '@esbuild/freebsd-x64@0.27.4': 199 282 resolution: {integrity: sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==} 200 283 engines: {node: '>=18'} ··· 207 290 cpu: [arm64] 208 291 os: [linux] 209 292 293 + '@esbuild/linux-arm64@0.27.0': 294 + resolution: {integrity: sha512-AS18v0V+vZiLJyi/4LphvBE+OIX682Pu7ZYNsdUHyUKSoRwdnOsMf6FDekwoAFKej14WAkOef3zAORJgAtXnlQ==} 295 + engines: {node: '>=18'} 296 + cpu: [arm64] 297 + os: [linux] 298 + 210 299 '@esbuild/linux-arm64@0.27.4': 211 300 resolution: {integrity: sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==} 212 301 engines: {node: '>=18'} ··· 219 308 cpu: [arm] 220 309 os: [linux] 221 310 311 + '@esbuild/linux-arm@0.27.0': 312 + resolution: {integrity: sha512-t76XLQDpxgmq2cNXKTVEB7O7YMb42atj2Re2Haf45HkaUpjM2J0UuJZDuaGbPbamzZ7bawyGFUkodL+zcE+jvQ==} 313 + engines: {node: '>=18'} 314 + cpu: [arm] 315 + os: [linux] 316 + 222 317 '@esbuild/linux-arm@0.27.4': 223 318 resolution: {integrity: sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==} 224 319 engines: {node: '>=18'} ··· 231 326 cpu: [ia32] 232 327 os: [linux] 233 328 329 + '@esbuild/linux-ia32@0.27.0': 330 + resolution: {integrity: sha512-Mz1jxqm/kfgKkc/KLHC5qIujMvnnarD9ra1cEcrs7qshTUSksPihGrWHVG5+osAIQ68577Zpww7SGapmzSt4Nw==} 331 + engines: {node: '>=18'} 332 + cpu: [ia32] 333 + os: [linux] 334 + 234 335 '@esbuild/linux-ia32@0.27.4': 235 336 resolution: {integrity: sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==} 236 337 engines: {node: '>=18'} ··· 243 344 cpu: [loong64] 244 345 os: [linux] 245 346 347 + '@esbuild/linux-loong64@0.27.0': 348 + resolution: {integrity: sha512-QbEREjdJeIreIAbdG2hLU1yXm1uu+LTdzoq1KCo4G4pFOLlvIspBm36QrQOar9LFduavoWX2msNFAAAY9j4BDg==} 349 + engines: {node: '>=18'} 350 + cpu: [loong64] 351 + os: [linux] 352 + 246 353 '@esbuild/linux-loong64@0.27.4': 247 354 resolution: {integrity: sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==} 248 355 engines: {node: '>=18'} ··· 255 362 cpu: [mips64el] 256 363 os: [linux] 257 364 365 + '@esbuild/linux-mips64el@0.27.0': 366 + resolution: {integrity: sha512-sJz3zRNe4tO2wxvDpH/HYJilb6+2YJxo/ZNbVdtFiKDufzWq4JmKAiHy9iGoLjAV7r/W32VgaHGkk35cUXlNOg==} 367 + engines: {node: '>=18'} 368 + cpu: [mips64el] 369 + os: [linux] 370 + 258 371 '@esbuild/linux-mips64el@0.27.4': 259 372 resolution: {integrity: sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==} 260 373 engines: {node: '>=18'} ··· 267 380 cpu: [ppc64] 268 381 os: [linux] 269 382 383 + '@esbuild/linux-ppc64@0.27.0': 384 + resolution: {integrity: sha512-z9N10FBD0DCS2dmSABDBb5TLAyF1/ydVb+N4pi88T45efQ/w4ohr/F/QYCkxDPnkhkp6AIpIcQKQ8F0ANoA2JA==} 385 + engines: {node: '>=18'} 386 + cpu: [ppc64] 387 + os: [linux] 388 + 270 389 '@esbuild/linux-ppc64@0.27.4': 271 390 resolution: {integrity: sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==} 272 391 engines: {node: '>=18'} ··· 279 398 cpu: [riscv64] 280 399 os: [linux] 281 400 401 + '@esbuild/linux-riscv64@0.27.0': 402 + resolution: {integrity: sha512-pQdyAIZ0BWIC5GyvVFn5awDiO14TkT/19FTmFcPdDec94KJ1uZcmFs21Fo8auMXzD4Tt+diXu1LW1gHus9fhFQ==} 403 + engines: {node: '>=18'} 404 + cpu: [riscv64] 405 + os: [linux] 406 + 282 407 '@esbuild/linux-riscv64@0.27.4': 283 408 resolution: {integrity: sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==} 284 409 engines: {node: '>=18'} ··· 291 416 cpu: [s390x] 292 417 os: [linux] 293 418 419 + '@esbuild/linux-s390x@0.27.0': 420 + resolution: {integrity: sha512-hPlRWR4eIDDEci953RI1BLZitgi5uqcsjKMxwYfmi4LcwyWo2IcRP+lThVnKjNtk90pLS8nKdroXYOqW+QQH+w==} 421 + engines: {node: '>=18'} 422 + cpu: [s390x] 423 + os: [linux] 424 + 294 425 '@esbuild/linux-s390x@0.27.4': 295 426 resolution: {integrity: sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==} 296 427 engines: {node: '>=18'} ··· 303 434 cpu: [x64] 304 435 os: [linux] 305 436 437 + '@esbuild/linux-x64@0.27.0': 438 + resolution: {integrity: sha512-1hBWx4OUJE2cab++aVZ7pObD6s+DK4mPGpemtnAORBvb5l/g5xFGk0vc0PjSkrDs0XaXj9yyob3d14XqvnQ4gw==} 439 + engines: {node: '>=18'} 440 + cpu: [x64] 441 + os: [linux] 442 + 306 443 '@esbuild/linux-x64@0.27.4': 307 444 resolution: {integrity: sha512-S5qOXrKV8BQEzJPVxAwnryi2+Iq5pB40gTEIT69BQONqR7JH1EPIcQ/Uiv9mCnn05jff9umq/5nqzxlqTOg9NA==} 308 445 engines: {node: '>=18'} ··· 315 452 cpu: [arm64] 316 453 os: [netbsd] 317 454 455 + '@esbuild/netbsd-arm64@0.27.0': 456 + resolution: {integrity: sha512-6m0sfQfxfQfy1qRuecMkJlf1cIzTOgyaeXaiVaaki8/v+WB+U4hc6ik15ZW6TAllRlg/WuQXxWj1jx6C+dfy3w==} 457 + engines: {node: '>=18'} 458 + cpu: [arm64] 459 + os: [netbsd] 460 + 318 461 '@esbuild/netbsd-arm64@0.27.4': 319 462 resolution: {integrity: sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==} 320 463 engines: {node: '>=18'} ··· 327 470 cpu: [x64] 328 471 os: [netbsd] 329 472 473 + '@esbuild/netbsd-x64@0.27.0': 474 + resolution: {integrity: sha512-xbbOdfn06FtcJ9d0ShxxvSn2iUsGd/lgPIO2V3VZIPDbEaIj1/3nBBe1AwuEZKXVXkMmpr6LUAgMkLD/4D2PPA==} 475 + engines: {node: '>=18'} 476 + cpu: [x64] 477 + os: [netbsd] 478 + 330 479 '@esbuild/netbsd-x64@0.27.4': 331 480 resolution: {integrity: sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==} 332 481 engines: {node: '>=18'} ··· 339 488 cpu: [arm64] 340 489 os: [openbsd] 341 490 491 + '@esbuild/openbsd-arm64@0.27.0': 492 + resolution: {integrity: sha512-fWgqR8uNbCQ/GGv0yhzttj6sU/9Z5/Sv/VGU3F5OuXK6J6SlriONKrQ7tNlwBrJZXRYk5jUhuWvF7GYzGguBZQ==} 493 + engines: {node: '>=18'} 494 + cpu: [arm64] 495 + os: [openbsd] 496 + 342 497 '@esbuild/openbsd-arm64@0.27.4': 343 498 resolution: {integrity: sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==} 344 499 engines: {node: '>=18'} ··· 347 502 348 503 '@esbuild/openbsd-x64@0.25.12': 349 504 resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} 505 + engines: {node: '>=18'} 506 + cpu: [x64] 507 + os: [openbsd] 508 + 509 + '@esbuild/openbsd-x64@0.27.0': 510 + resolution: {integrity: sha512-aCwlRdSNMNxkGGqQajMUza6uXzR/U0dIl1QmLjPtRbLOx3Gy3otfFu/VjATy4yQzo9yFDGTxYDo1FfAD9oRD2A==} 350 511 engines: {node: '>=18'} 351 512 cpu: [x64] 352 513 os: [openbsd] ··· 363 524 cpu: [arm64] 364 525 os: [openharmony] 365 526 527 + '@esbuild/openharmony-arm64@0.27.0': 528 + resolution: {integrity: sha512-nyvsBccxNAsNYz2jVFYwEGuRRomqZ149A39SHWk4hV0jWxKM0hjBPm3AmdxcbHiFLbBSwG6SbpIcUbXjgyECfA==} 529 + engines: {node: '>=18'} 530 + cpu: [arm64] 531 + os: [openharmony] 532 + 366 533 '@esbuild/openharmony-arm64@0.27.4': 367 534 resolution: {integrity: sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==} 368 535 engines: {node: '>=18'} ··· 375 542 cpu: [x64] 376 543 os: [sunos] 377 544 545 + '@esbuild/sunos-x64@0.27.0': 546 + resolution: {integrity: sha512-Q1KY1iJafM+UX6CFEL+F4HRTgygmEW568YMqDA5UV97AuZSm21b7SXIrRJDwXWPzr8MGr75fUZPV67FdtMHlHA==} 547 + engines: {node: '>=18'} 548 + cpu: [x64] 549 + os: [sunos] 550 + 378 551 '@esbuild/sunos-x64@0.27.4': 379 552 resolution: {integrity: sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==} 380 553 engines: {node: '>=18'} ··· 387 560 cpu: [arm64] 388 561 os: [win32] 389 562 563 + '@esbuild/win32-arm64@0.27.0': 564 + resolution: {integrity: sha512-W1eyGNi6d+8kOmZIwi/EDjrL9nxQIQ0MiGqe/AWc6+IaHloxHSGoeRgDRKHFISThLmsewZ5nHFvGFWdBYlgKPg==} 565 + engines: {node: '>=18'} 566 + cpu: [arm64] 567 + os: [win32] 568 + 390 569 '@esbuild/win32-arm64@0.27.4': 391 570 resolution: {integrity: sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==} 392 571 engines: {node: '>=18'} ··· 399 578 cpu: [ia32] 400 579 os: [win32] 401 580 581 + '@esbuild/win32-ia32@0.27.0': 582 + resolution: {integrity: sha512-30z1aKL9h22kQhilnYkORFYt+3wp7yZsHWus+wSKAJR8JtdfI76LJ4SBdMsCopTR3z/ORqVu5L1vtnHZWVj4cQ==} 583 + engines: {node: '>=18'} 584 + cpu: [ia32] 585 + os: [win32] 586 + 402 587 '@esbuild/win32-ia32@0.27.4': 403 588 resolution: {integrity: sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==} 404 589 engines: {node: '>=18'} ··· 407 592 408 593 '@esbuild/win32-x64@0.25.12': 409 594 resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} 595 + engines: {node: '>=18'} 596 + cpu: [x64] 597 + os: [win32] 598 + 599 + '@esbuild/win32-x64@0.27.0': 600 + resolution: {integrity: sha512-aIitBcjQeyOhMTImhLZmtxfdOcuNRpwlPNmlFKPcHQYPhEssw75Cl1TSXJXpMkzaua9FUetx/4OQKq7eJul5Cg==} 410 601 engines: {node: '>=18'} 411 602 cpu: [x64] 412 603 os: [win32] ··· 447 638 '@ewanc26/utils@0.1.5': 448 639 resolution: {integrity: sha512-uUxX60o4s3WcMSkXrdXvfAgGcOrOjbgFYQXopjb6TkccnuMjuqq2XLXKk3HW2nemcjU0LCIx3P/psAMREL/Y6w==} 449 640 641 + '@fastify/busboy@2.1.1': 642 + resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} 643 + engines: {node: '>=14'} 644 + 645 + '@isaacs/balanced-match@4.0.1': 646 + resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} 647 + engines: {node: 20 || >=22} 648 + 649 + '@isaacs/brace-expansion@5.0.1': 650 + resolution: {integrity: sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==} 651 + engines: {node: 20 || >=22} 652 + 450 653 '@isaacs/fs-minipass@4.0.1': 451 654 resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} 452 655 engines: {node: '>=18.0.0'} ··· 482 685 engines: {node: '>=18'} 483 686 hasBin: true 484 687 688 + '@napi-rs/wasm-runtime@1.1.3': 689 + resolution: {integrity: sha512-xK9sGVbJWYb08+mTJt3/YV24WxvxpXcXtP6B172paPZ+Ts69Re9dAr7lKwJoeIx8OoeuimEiRZ7umkiUVClmmQ==} 690 + peerDependencies: 691 + '@emnapi/core': ^1.7.1 692 + '@emnapi/runtime': ^1.7.1 693 + 694 + '@nodelib/fs.scandir@2.1.5': 695 + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 696 + engines: {node: '>= 8'} 697 + 698 + '@nodelib/fs.stat@2.0.5': 699 + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 700 + engines: {node: '>= 8'} 701 + 702 + '@nodelib/fs.walk@1.2.8': 703 + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 704 + engines: {node: '>= 8'} 705 + 706 + '@oxc-project/types@0.110.0': 707 + resolution: {integrity: sha512-6Ct21OIlrEnFEJk5LT4e63pk3btsI6/TusD/GStLi7wYlGJNOl1GI9qvXAnRAxQU9zqA2Oz+UwhfTOU2rPZVow==} 708 + 709 + '@oxc-transform/binding-android-arm-eabi@0.111.0': 710 + resolution: {integrity: sha512-NdFLicvorfHYu0g2ftjVJaH7+Dz27AQUNJOq8t/ofRUoWmczOodgUCHx8C1M1htCN4ZmhS/FzfSy6yd/UngJGg==} 711 + engines: {node: ^20.19.0 || >=22.12.0} 712 + cpu: [arm] 713 + os: [android] 714 + 715 + '@oxc-transform/binding-android-arm64@0.111.0': 716 + resolution: {integrity: sha512-J2v9ajarD2FYlhHtjbgZUFsS2Kvi27pPxDWLGCy7i8tO60xBoozX9/ktSgbiE/QsxKaUhfv4zVKppKWUo71PmQ==} 717 + engines: {node: ^20.19.0 || >=22.12.0} 718 + cpu: [arm64] 719 + os: [android] 720 + 721 + '@oxc-transform/binding-darwin-arm64@0.111.0': 722 + resolution: {integrity: sha512-2UYmExxpXzmiHTldhNlosWqG9Nc4US51K0GB9RLcGlTE23WO33vVo1NVAKwxPE+KYuhffwDnRYTovTMUjzwvZA==} 723 + engines: {node: ^20.19.0 || >=22.12.0} 724 + cpu: [arm64] 725 + os: [darwin] 726 + 727 + '@oxc-transform/binding-darwin-x64@0.111.0': 728 + resolution: {integrity: sha512-c4YRwfLV8Pj/ToiTCbndZaHxM2BD4W3bltr/fjXZcGypEK+U2RZFDL7tIZYT/tyneAC9hCORZKDaKhLLNuzPtA==} 729 + engines: {node: ^20.19.0 || >=22.12.0} 730 + cpu: [x64] 731 + os: [darwin] 732 + 733 + '@oxc-transform/binding-freebsd-x64@0.111.0': 734 + resolution: {integrity: sha512-prvf32IcEuLnLZbNVomFosBu0CaZpyj3YsZ6epbOgJy8iJjfLsXBb+PrkO/NBKzjuJoJa2+u7jFKRE0KT7gSOw==} 735 + engines: {node: ^20.19.0 || >=22.12.0} 736 + cpu: [x64] 737 + os: [freebsd] 738 + 739 + '@oxc-transform/binding-linux-arm-gnueabihf@0.111.0': 740 + resolution: {integrity: sha512-+se3579Wp7VOk8TnTZCpT+obTAyzOw2b/UuoM0+51LtbzCSfjKxd4A+o7zRl7GyPrPZvx57KdbMOC9rWB1xNrw==} 741 + engines: {node: ^20.19.0 || >=22.12.0} 742 + cpu: [arm] 743 + os: [linux] 744 + 745 + '@oxc-transform/binding-linux-arm-musleabihf@0.111.0': 746 + resolution: {integrity: sha512-8faC99pStqaSDPK/vBgaagAHUeL0LcIzfeSjSiDTtvPGc3AwZIeqC1tx3CP15a6tWXjdgS/IUw4IjfD5HweBlg==} 747 + engines: {node: ^20.19.0 || >=22.12.0} 748 + cpu: [arm] 749 + os: [linux] 750 + 751 + '@oxc-transform/binding-linux-arm64-gnu@0.111.0': 752 + resolution: {integrity: sha512-HtfQv8j796gzI5WR/RaP6IMwFpiL0vYeDrUA1hYhlPzTHKYan/B+NlhJkKOI1v24yAl/yEnFmb0pxIxLNqBqBA==} 753 + engines: {node: ^20.19.0 || >=22.12.0} 754 + cpu: [arm64] 755 + os: [linux] 756 + 757 + '@oxc-transform/binding-linux-arm64-musl@0.111.0': 758 + resolution: {integrity: sha512-ARyfcMCIxVLDgLf6FQ8Oo1/TFySpnquV+vuSb4SFQZfYDqgMklzwv0NYXxWD0aB6enElyMDs6pQJBzusEKCkOg==} 759 + engines: {node: ^20.19.0 || >=22.12.0} 760 + cpu: [arm64] 761 + os: [linux] 762 + 763 + '@oxc-transform/binding-linux-ppc64-gnu@0.111.0': 764 + resolution: {integrity: sha512-PKpVRrSvBNK3tv9vwxn7Fay+QWZmprPGlEqJcseBJllQc5mFMD4Q/w44chu5iR9ZLsDeSHzmNWrgMLo4J0sP2A==} 765 + engines: {node: ^20.19.0 || >=22.12.0} 766 + cpu: [ppc64] 767 + os: [linux] 768 + 769 + '@oxc-transform/binding-linux-riscv64-gnu@0.111.0': 770 + resolution: {integrity: sha512-9bUml6rMgk+8GF5rvNMweFspkzSiCjqpV6HduwiUyexqfGKrmjq9IZOxxvnzkE2RGdQzP507NNDoVNYIoGQYuA==} 771 + engines: {node: ^20.19.0 || >=22.12.0} 772 + cpu: [riscv64] 773 + os: [linux] 774 + 775 + '@oxc-transform/binding-linux-riscv64-musl@0.111.0': 776 + resolution: {integrity: sha512-tzGCohGxaeH6KRJjfYZd4mHCoGjCai6N+zZi1Oj+tSDMAAdyvs1dRzYb8PNUGnybCg3Te4M0jLPzWZaSmnKraQ==} 777 + engines: {node: ^20.19.0 || >=22.12.0} 778 + cpu: [riscv64] 779 + os: [linux] 780 + 781 + '@oxc-transform/binding-linux-s390x-gnu@0.111.0': 782 + resolution: {integrity: sha512-sRG1KIfZ0ML9ToEygm5aM/5GJeBA05uHlgW3M0Rx/DNWMJhuahLmqWuB02aWSmijndLfEKXLLXIWhvWupRG8lg==} 783 + engines: {node: ^20.19.0 || >=22.12.0} 784 + cpu: [s390x] 785 + os: [linux] 786 + 787 + '@oxc-transform/binding-linux-x64-gnu@0.111.0': 788 + resolution: {integrity: sha512-T0Kmvk+OdlUdABdXlDIf3MQReMzFfC75NEI9x8jxy5pKooACEFg0k0V8gyR3gq4DzbDCfucqFQDWNvSgIopAbQ==} 789 + engines: {node: ^20.19.0 || >=22.12.0} 790 + cpu: [x64] 791 + os: [linux] 792 + 793 + '@oxc-transform/binding-linux-x64-musl@0.111.0': 794 + resolution: {integrity: sha512-EgoutsP3YfqzN8a9vpc9+XLr0bmBl0dA3uOMiP77+exATCPxJBkJErGmQkqk6RtTp5XqX6q6mB45qWQyKk6+pA==} 795 + engines: {node: ^20.19.0 || >=22.12.0} 796 + cpu: [x64] 797 + os: [linux] 798 + 799 + '@oxc-transform/binding-openharmony-arm64@0.111.0': 800 + resolution: {integrity: sha512-d8J+ejc0j5WODbVwR/QxFaI65YMwvG0W53vcVCHwa6ja1QI5lpe7sislrefG2EFYgnY47voMRzlXab5d4gEcDw==} 801 + engines: {node: ^20.19.0 || >=22.12.0} 802 + cpu: [arm64] 803 + os: [openharmony] 804 + 805 + '@oxc-transform/binding-wasm32-wasi@0.111.0': 806 + resolution: {integrity: sha512-HtyIZO8IwuZgXkyb56rysLz1OLbfLhEu8A3BeuyJXzUseAj96yuxgGt3cu3QYX9AXb9pfRfA3c/fvlhsDugyTQ==} 807 + engines: {node: '>=14.0.0'} 808 + cpu: [wasm32] 809 + 810 + '@oxc-transform/binding-win32-arm64-msvc@0.111.0': 811 + resolution: {integrity: sha512-YeP80Riptc0MkVVBnzbmoFuHVLUq278+MbwNo9sTLALmzTIJxJqN029xRZbG+Bun7aLsoZhmRnm3J5JZ1NcP5w==} 812 + engines: {node: ^20.19.0 || >=22.12.0} 813 + cpu: [arm64] 814 + os: [win32] 815 + 816 + '@oxc-transform/binding-win32-ia32-msvc@0.111.0': 817 + resolution: {integrity: sha512-A6ztCXpoSHt6PbvGAFqB0MLOcGG7ZJrrPXY1iB0zfOB1atLgI8oNePGxPl03XSbwpiTsFJ1oo8rj9DXcBzgT9g==} 818 + engines: {node: ^20.19.0 || >=22.12.0} 819 + cpu: [ia32] 820 + os: [win32] 821 + 822 + '@oxc-transform/binding-win32-x64-msvc@0.111.0': 823 + resolution: {integrity: sha512-QddKW4kBH0Wof6Y65eYCNHM4iOGmCTWLLcNYY1FGswhzmTYOUVXajNROR+iCXAOFnOF0ldtsR79SyqgyHH1Bgg==} 824 + engines: {node: ^20.19.0 || >=22.12.0} 825 + cpu: [x64] 826 + os: [win32] 827 + 485 828 '@polka/url@1.0.0-next.29': 486 829 resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} 487 830 831 + '@renovatebot/pep440@4.2.1': 832 + resolution: {integrity: sha512-2FK1hF93Fuf1laSdfiEmJvSJPVIDHEUTz68D3Fi9s0IZrrpaEcj6pTFBTbYvsgC5du4ogrtf5re7yMMvrKNgkw==} 833 + engines: {node: ^20.9.0 || ^22.11.0 || ^24, pnpm: ^10.0.0} 834 + 835 + '@rolldown/binding-android-arm64@1.0.0-rc.1': 836 + resolution: {integrity: sha512-He6ZoCfv5D7dlRbrhNBkuMVIHd0GDnjJwbICE1OWpG7G3S2gmJ+eXkcNLJjzjNDpeI2aRy56ou39AJM9AD8YFA==} 837 + engines: {node: ^20.19.0 || >=22.12.0} 838 + cpu: [arm64] 839 + os: [android] 840 + 841 + '@rolldown/binding-darwin-arm64@1.0.0-rc.1': 842 + resolution: {integrity: sha512-YzJdn08kSOXnj85ghHauH2iHpOJ6eSmstdRTLyaziDcUxe9SyQJgGyx/5jDIhDvtOcNvMm2Ju7m19+S/Rm1jFg==} 843 + engines: {node: ^20.19.0 || >=22.12.0} 844 + cpu: [arm64] 845 + os: [darwin] 846 + 847 + '@rolldown/binding-darwin-x64@1.0.0-rc.1': 848 + resolution: {integrity: sha512-cIvAbqM+ZVV6lBSKSBtlNqH5iCiW933t1q8j0H66B3sjbe8AxIRetVqfGgcHcJtMzBIkIALlL9fcDrElWLJQcQ==} 849 + engines: {node: ^20.19.0 || >=22.12.0} 850 + cpu: [x64] 851 + os: [darwin] 852 + 853 + '@rolldown/binding-freebsd-x64@1.0.0-rc.1': 854 + resolution: {integrity: sha512-rVt+B1B/qmKwCl1XD02wKfgh3vQPXRXdB/TicV2w6g7RVAM1+cZcpigwhLarqiVCxDObFZ7UgXCxPC7tpDoRog==} 855 + engines: {node: ^20.19.0 || >=22.12.0} 856 + cpu: [x64] 857 + os: [freebsd] 858 + 859 + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.1': 860 + resolution: {integrity: sha512-69YKwJJBOFprQa1GktPgbuBOfnn+EGxu8sBJ1TjPER+zhSpYeaU4N07uqmyBiksOLGXsMegymuecLobfz03h8Q==} 861 + engines: {node: ^20.19.0 || >=22.12.0} 862 + cpu: [arm] 863 + os: [linux] 864 + 865 + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.1': 866 + resolution: {integrity: sha512-9JDhHUf3WcLfnViFWm+TyorqUtnSAHaCzlSNmMOq824prVuuzDOK91K0Hl8DUcEb9M5x2O+d2/jmBMsetRIn3g==} 867 + engines: {node: ^20.19.0 || >=22.12.0} 868 + cpu: [arm64] 869 + os: [linux] 870 + 871 + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.1': 872 + resolution: {integrity: sha512-UvApLEGholmxw/HIwmUnLq3CwdydbhaHHllvWiCTNbyGom7wTwOtz5OAQbAKZYyiEOeIXZNPkM7nA4Dtng7CLw==} 873 + engines: {node: ^20.19.0 || >=22.12.0} 874 + cpu: [arm64] 875 + os: [linux] 876 + 877 + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.1': 878 + resolution: {integrity: sha512-uVctNgZHiGnJx5Fij7wHLhgw4uyZBVi6mykeWKOqE7bVy9Hcxn0fM/IuqdMwk6hXlaf9fFShDTFz2+YejP+x0A==} 879 + engines: {node: ^20.19.0 || >=22.12.0} 880 + cpu: [x64] 881 + os: [linux] 882 + 883 + '@rolldown/binding-linux-x64-musl@1.0.0-rc.1': 884 + resolution: {integrity: sha512-T6Eg0xWwcxd/MzBcuv4Z37YVbUbJxy5cMNnbIt/Yr99wFwli30O4BPlY8hKeGyn6lWNtU0QioBS46lVzDN38bg==} 885 + engines: {node: ^20.19.0 || >=22.12.0} 886 + cpu: [x64] 887 + os: [linux] 888 + 889 + '@rolldown/binding-openharmony-arm64@1.0.0-rc.1': 890 + resolution: {integrity: sha512-PuGZVS2xNJyLADeh2F04b+Cz4NwvpglbtWACgrDOa5YDTEHKwmiTDjoD5eZ9/ptXtcpeFrMqD2H4Zn33KAh1Eg==} 891 + engines: {node: ^20.19.0 || >=22.12.0} 892 + cpu: [arm64] 893 + os: [openharmony] 894 + 895 + '@rolldown/binding-wasm32-wasi@1.0.0-rc.1': 896 + resolution: {integrity: sha512-2mOxY562ihHlz9lEXuaGEIDCZ1vI+zyFdtsoa3M62xsEunDXQE+DVPO4S4x5MPK9tKulG/aFcA/IH5eVN257Cw==} 897 + engines: {node: '>=14.0.0'} 898 + cpu: [wasm32] 899 + 900 + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.1': 901 + resolution: {integrity: sha512-oQVOP5cfAWZwRD0Q3nGn/cA9FW3KhMMuQ0NIndALAe6obqjLhqYVYDiGGRGrxvnjJsVbpLwR14gIUYnpIcHR1g==} 902 + engines: {node: ^20.19.0 || >=22.12.0} 903 + cpu: [arm64] 904 + os: [win32] 905 + 906 + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.1': 907 + resolution: {integrity: sha512-Ydsxxx++FNOuov3wCBPaYjZrEvKOOGq3k+BF4BPridhg2pENfitSRD2TEuQ8i33bp5VptuNdC9IzxRKU031z5A==} 908 + engines: {node: ^20.19.0 || >=22.12.0} 909 + cpu: [x64] 910 + os: [win32] 911 + 912 + '@rolldown/pluginutils@1.0.0-rc.1': 913 + resolution: {integrity: sha512-UTBjtTxVOhodhzFVp/ayITaTETRHPUPYZPXQe0WU0wOgxghMojXxYjOiPOauKIYNWJAWS2fd7gJgGQK8GU8vDA==} 914 + 488 915 '@rollup/pluginutils@5.3.0': 489 916 resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} 490 917 engines: {node: '>=14.0.0'} ··· 619 1046 cpu: [x64] 620 1047 os: [win32] 621 1048 1049 + '@sinclair/typebox@0.25.24': 1050 + resolution: {integrity: sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==} 1051 + 622 1052 '@standard-schema/spec@1.1.0': 623 1053 resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} 624 1054 ··· 758 1188 resolution: {integrity: sha512-mEiF5HO1QqCLXoNEfXVA1Tzo+cYsrqV7w9Juj2wdUFyW07JRenqMG225MvPwr3ZD9N1bFQj46X7r33iHxLUW0w==} 759 1189 peerDependencies: 760 1190 vite: ^5.2.0 || ^6 || ^7 || ^8 1191 + 1192 + '@tootallnate/once@2.0.0': 1193 + resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} 1194 + engines: {node: '>= 10'} 1195 + 1196 + '@tootallnate/quickjs-emscripten@0.23.0': 1197 + resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} 1198 + 1199 + '@ts-morph/common@0.11.1': 1200 + resolution: {integrity: sha512-7hWZS0NRpEsNV8vWJzg7FEz6V8MaLNeJOmwmghqUXTpzk16V1LLZhdo+4QvE/+zv4cVci0OviuJFnqhEfoV3+g==} 1201 + 1202 + '@tybys/wasm-util@0.10.1': 1203 + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} 761 1204 762 1205 '@types/cookie@0.6.0': 763 1206 resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} ··· 765 1208 '@types/estree@1.0.8': 766 1209 resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} 767 1210 1211 + '@types/json-schema@7.0.15': 1212 + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 1213 + 1214 + '@types/node@20.11.0': 1215 + resolution: {integrity: sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==} 1216 + 768 1217 '@types/node@25.5.0': 769 1218 resolution: {integrity: sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==} 770 1219 ··· 775 1224 resolution: {integrity: sha512-S29BOBPJSFUiblEl6RzPPjJt6w25A6XsBqRVDt53tA/tlL8q7ceQNZHTjPeONt/3S7KRI4quk+yP9jK2WjBiPQ==} 776 1225 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 777 1226 1227 + '@vercel/backends@0.0.57': 1228 + resolution: {integrity: sha512-AioA2iCmsTNmsGSJORCrJYB6//NZpvy9jP6yGmL0xYODzcK0vvEj6MEhKuTzFCFehlojchbZC7n27HL3f2zdCw==} 1229 + peerDependencies: 1230 + typescript: ^4.0.0 || ^5.0.0 1231 + 1232 + '@vercel/blob@2.3.0': 1233 + resolution: {integrity: sha512-oYWiJbWRQ7gz9Mj0X/NHFJ3OcLMOBzq/2b3j6zeNrQmtFo6dHwU8FAwNpxVIYddVMd+g8eqEi7iRueYx8FtM0Q==} 1234 + engines: {node: '>=20.0.0'} 1235 + 1236 + '@vercel/build-utils@13.14.0': 1237 + resolution: {integrity: sha512-mEYh+f+sNngEOJKLTTzoyPMse5A3bQNt0uIRq/jfl/h12ukWhrpHDmXdY6k6x3WsEXr7hrcN+2jT0VdvOBgACw==} 1238 + 1239 + '@vercel/cervel@0.0.44': 1240 + resolution: {integrity: sha512-Y6GbbKsAMY6FkanvZUwhNwjwXGdmobuRAS0QWCitPw5/6zypgRnQACBZFqN/TObW+ELK/tao30fFFKdbGTG/Fg==} 1241 + hasBin: true 1242 + peerDependencies: 1243 + typescript: ^4.0.0 || ^5.0.0 1244 + 1245 + '@vercel/detect-agent@1.2.1': 1246 + resolution: {integrity: sha512-U/BJCltQSTFTHwaiCQQTQG3GonTbRoEewjV+OU2mMjcHLAoPOh6CP1SXA2XNmqiqI3c82nkRNJ7piZ14RqmTXw==} 1247 + engines: {node: '>=14'} 1248 + 1249 + '@vercel/elysia@0.1.60': 1250 + resolution: {integrity: sha512-P8ApyCOXld4PNdjTkSLHhTPqaQLMHt11I/ECj8I9rnGruj+3UDNcTz5nRLnWPvCiBfVV5MDyRcmHDOWP3SObuA==} 1251 + 1252 + '@vercel/error-utils@2.0.3': 1253 + resolution: {integrity: sha512-CqC01WZxbLUxoiVdh9B/poPbNpY9U+tO1N9oWHwTl5YAZxcqXmmWJ8KNMFItJCUUWdY3J3xv8LvAuQv2KZ5YdQ==} 1254 + 1255 + '@vercel/express@0.1.70': 1256 + resolution: {integrity: sha512-bQqX8wnmCqvjNGagfoGxhPkMiLlNheInN29ZX+iWCAfimJIIR6sXh+duFH3mjEUU1uouUyQ8aBSPBnpxuZw3Xw==} 1257 + 1258 + '@vercel/fastify@0.1.63': 1259 + resolution: {integrity: sha512-fgs7FZs5wpjTSW3mbR7JneRVOnzuxYCsJqxL2ZdnjR2cXfoPjzdmkSkCFi01QEaTOh8UmlIPDbn4UAVMPIWevw==} 1260 + 1261 + '@vercel/fun@1.3.0': 1262 + resolution: {integrity: sha512-8erw9uPe0dFg45THkNxmjtvMX143SkZebmjgSVbcM3XCkXu3RIiBaJMcMNG8aaS+rnTuw8+d4De9HVT0M/r3wg==} 1263 + engines: {node: '>= 18'} 1264 + 1265 + '@vercel/gatsby-plugin-vercel-analytics@1.0.11': 1266 + resolution: {integrity: sha512-iTEA0vY6RBPuEzkwUTVzSHDATo1aF6bdLLspI68mQ/BTbi5UQEGjpjyzdKOVcSYApDtFU6M6vypZ1t4vIEnHvw==} 1267 + 1268 + '@vercel/gatsby-plugin-vercel-builder@2.1.10': 1269 + resolution: {integrity: sha512-ms+I6djoVyvaT6ICPBkYDvj83bfewIpb/elmIlCP+KQ/gnFw9CA5QLdnzbJ/0pCm/By0dmKrewwj0oHzqGC8IA==} 1270 + 1271 + '@vercel/go@3.4.7': 1272 + resolution: {integrity: sha512-BPFHPiOeq8QSt87R0KXE+V2b5K7vlKna/NRrEggAin4qtf2XHc2R5Iq/rrIZtj8sUF5LJegCbACGBB+PFjmnzQ==} 1273 + 1274 + '@vercel/h3@0.1.69': 1275 + resolution: {integrity: sha512-57n2xzzODwGPU39I3GLiw0kGZeajyFJoy5j+jBYia3OaKlj39Z6rzfA9jPBepdrPAeF+LpcN4HzjtjQDQ2iMcw==} 1276 + 1277 + '@vercel/hono@0.2.63': 1278 + resolution: {integrity: sha512-TZ4zLXFLfpjyiVVLRCCnZDaAV71cR/PO6Z/WNe7KRc5cvC00y9nJLsTFONiTMYEPWJGxnHm/eqhJsXB/8RcNIA==} 1279 + 1280 + '@vercel/hydrogen@1.3.6': 1281 + resolution: {integrity: sha512-Ec8dKEjGIM4BfThcRLtQs5zaJ4+iJbgLZwkytwi7Blk8VrK6W2F1dtLDmVQYZdVnQcnmHmTx8mxUuMkfP06Mnw==} 1282 + 1283 + '@vercel/koa@0.1.43': 1284 + resolution: {integrity: sha512-twhOIvgcFZchj9KtIz8M+TjkVjt6hP5TTWg+xjLJdOwYtaXZKN/wLUf186iFIAzHWx2w8zhAE0rS4g61ptPcGA==} 1285 + 1286 + '@vercel/nestjs@0.2.64': 1287 + resolution: {integrity: sha512-5TVP/Qd+49FPUXheAn3ywnjbS+uFOKFAkj9YHYtZLt66mqh9Lqp/RZOIe265LF7gktno3mVwjCl8TuDRiQzPLw==} 1288 + 1289 + '@vercel/next@4.16.5': 1290 + resolution: {integrity: sha512-/GpHDBjUyS2QHMDDQcU9fRDoCk5+ep0oCJ26tO7hIBj0rlIqgYMljE/OgyPHl7xkYdpWMtkZVg0MYTIGDKTZWw==} 1291 + 778 1292 '@vercel/nft@1.5.0': 779 1293 resolution: {integrity: sha512-IWTDeIoWhQ7ZtRO/JRKH+jhmeQvZYhtGPmzw/QGDY+wDCQqfm25P9yIdoAFagu4fWsK4IwZXDFIjrmp5rRm/sA==} 780 1294 engines: {node: '>=20'} 781 1295 hasBin: true 782 1296 1297 + '@vercel/node@5.7.2': 1298 + resolution: {integrity: sha512-uX4l/f/0eu6ktDdUobHxUm3jkI85Ptbp08yMYFYJo9PAmsYJ5jJoU3eOS47XgkIXmQHGC+14UP1NN7Jh1bTkTA==} 1299 + 1300 + '@vercel/oidc@3.2.0': 1301 + resolution: {integrity: sha512-UycprH3T6n3jH0k44NHMa7pnFHGu/N05MjojYr+Mc6I7obkoLIJujSWwin1pCvdy/eOxrI/l3uDLQsmcrOb4ug==} 1302 + engines: {node: '>= 20'} 1303 + 1304 + '@vercel/prepare-flags-definitions@0.2.1': 1305 + resolution: {integrity: sha512-ouXTsqn7I9xZ1KKezgvn/w3tZeQHL/tc52j9GHiOYi6kT8xgdbT8s2x8C9BQr44iceX0hfhtZwk9q7NuI2Tqbw==} 1306 + 1307 + '@vercel/python-analysis@0.11.0': 1308 + resolution: {integrity: sha512-gsoj+nscmNm0xDh+tRhECRhit2VlAVaD7jc9h93sN6rDEBDxPo7eLEgIJFzVDaAItxERZ9Od2IK/04fB9vFy+g==} 1309 + 1310 + '@vercel/python@6.29.0': 1311 + resolution: {integrity: sha512-B5nnIJrMjsT2bawrsNmgwjDRarSm2PGr6o2yUFvYlfUyggR0cqt8L9GvPJPijUt2biebukWE18rAzf41JDfkUA==} 1312 + 1313 + '@vercel/redwood@2.4.12': 1314 + resolution: {integrity: sha512-8kJ7eEerI4iMpKVRxQCsnxiIwRVsWtyirEbYb4erCqqsJymTu/xrjhsfAUuzeP8qkuYGP82MJVK+hpKlFtsjGw==} 1315 + 1316 + '@vercel/remix-builder@5.7.2': 1317 + resolution: {integrity: sha512-bfStsDBQramYbWugelfyp1szTuDOLQ+ZELvgA9cpYc4FucgCrDy/bpvMMvsjiDACB9PoDzLrG//ZBgsic9yAhg==} 1318 + 1319 + '@vercel/ruby@2.3.2': 1320 + resolution: {integrity: sha512-okIgMmPEePyDR9TZYaKM4oftcxVHM5Dbdl7V/tIdh3lq8MGLi7HR5vvQglmZUwZOeovE6MVtezxl960EOzeIiQ==} 1321 + 1322 + '@vercel/rust@1.1.0': 1323 + resolution: {integrity: sha512-dgiLWA3l+4IFk1jg65aABfmRqO2eJdk6vZsNvONhD8Lkpn8i1WrGJ0ggVjD7I/MR9rNxSs4zyfIgpKYv5FFqWw==} 1324 + 1325 + '@vercel/sandbox@1.9.0': 1326 + resolution: {integrity: sha512-zgr1ad0tkT1xZn/8Vxo60wOUOLqMAVGo4WqJQ8/UDcUtWynNJsBjI2tiMdWZrAo9EKH1MIqEzJNkcclF0UT1EQ==} 1327 + 1328 + '@vercel/static-build@2.9.10': 1329 + resolution: {integrity: sha512-gGj9vlRUl54UkbVOpOlzOg9Eph/P5Ky8IKejkMue1NcUP/FsaVbdA8fw7iKcZ5/TedVRj/W3Oy+t8JxcFDXpjQ==} 1330 + 1331 + '@vercel/static-config@3.2.0': 1332 + resolution: {integrity: sha512-UpOEIgWxWx0M+mDe1IMdHS6JuWM/L5nNIJ4ixX8v9JgBAejymo88OkgnmfLCNMem0Wd+b5vcQPWLdZybCndlsA==} 1333 + 783 1334 abbrev@3.0.1: 784 1335 resolution: {integrity: sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==} 785 1336 engines: {node: ^18.17.0 || >=20.5.0} ··· 798 1349 resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} 799 1350 engines: {node: '>= 14'} 800 1351 1352 + ajv@8.6.3: 1353 + resolution: {integrity: sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==} 1354 + 1355 + any-promise@1.3.0: 1356 + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 1357 + 1358 + arg@4.1.0: 1359 + resolution: {integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==} 1360 + 1361 + argparse@2.0.1: 1362 + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 1363 + 801 1364 aria-query@5.3.1: 802 1365 resolution: {integrity: sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==} 803 1366 engines: {node: '>= 0.4'} 804 1367 1368 + ast-types@0.13.4: 1369 + resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} 1370 + engines: {node: '>=4'} 1371 + 1372 + async-listen@1.2.0: 1373 + resolution: {integrity: sha512-CcEtRh/oc9Jc4uWeUwdpG/+Mb2YUHKmdaTf0gUr7Wa+bfp4xx70HOb3RuSTJMvqKNB1TkdTfjLdrcz2X4rkkZA==} 1374 + 1375 + async-listen@3.0.0: 1376 + resolution: {integrity: sha512-V+SsTpDqkrWTimiotsyl33ePSjA5/KrithwupuvJ6ztsqPvGv6ge4OredFhPffVXiLN/QUWvE0XcqJaYgt6fOg==} 1377 + engines: {node: '>= 14'} 1378 + 1379 + async-listen@3.0.1: 1380 + resolution: {integrity: sha512-cWMaNwUJnf37C/S5TfCkk/15MwbPRwVYALA2jtjkbHjCmAPiDXyNJy2q3p1KAZzDLHAWyarUWSujUoHR4pEgrA==} 1381 + engines: {node: '>= 14'} 1382 + 1383 + async-retry@1.3.3: 1384 + resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==} 1385 + 805 1386 async-sema@3.1.1: 806 1387 resolution: {integrity: sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==} 807 1388 1389 + asynckit@0.4.0: 1390 + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 1391 + 808 1392 await-lock@2.2.2: 809 1393 resolution: {integrity: sha512-aDczADvlvTGajTDjcjpJMqRkOF6Qdz3YbPZm/PyW6tKPkx2hlYBzxMhEywM/tU72HrVZjgl5VCdRuMlA7pZ8Gw==} 810 1394 ··· 812 1396 resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 813 1397 engines: {node: '>= 0.4'} 814 1398 1399 + b4a@1.8.0: 1400 + resolution: {integrity: sha512-qRuSmNSkGQaHwNbM7J78Wwy+ghLEYF1zNrSeMxj4Kgw6y33O3mXcQ6Ie9fRvfU/YnxWkOchPXbaLb73TkIsfdg==} 1401 + peerDependencies: 1402 + react-native-b4a: '*' 1403 + peerDependenciesMeta: 1404 + react-native-b4a: 1405 + optional: true 1406 + 1407 + balanced-match@1.0.2: 1408 + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1409 + 815 1410 balanced-match@4.0.4: 816 1411 resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} 817 1412 engines: {node: 18 || 20 || >=22} 818 1413 1414 + bare-events@2.8.2: 1415 + resolution: {integrity: sha512-riJjyv1/mHLIPX4RwiK+oW9/4c3TEUeORHKefKAKnZ5kyslbN+HXowtbaVEqt4IMUB7OXlfixcs6gsFeo/jhiQ==} 1416 + peerDependencies: 1417 + bare-abort-controller: '*' 1418 + peerDependenciesMeta: 1419 + bare-abort-controller: 1420 + optional: true 1421 + 1422 + basic-ftp@5.2.1: 1423 + resolution: {integrity: sha512-0yaL8JdxTknKDILitVpfYfV2Ob6yb3udX/hK97M7I3jOeznBNxQPtVvTUtnhUkyHlxFWyr5Lvknmgzoc7jf+1Q==} 1424 + engines: {node: '>=10.0.0'} 1425 + 819 1426 bindings@1.5.0: 820 1427 resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} 1428 + 1429 + brace-expansion@1.1.13: 1430 + resolution: {integrity: sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==} 821 1431 822 1432 brace-expansion@5.0.4: 823 1433 resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} 824 1434 engines: {node: 18 || 20 || >=22} 825 1435 1436 + braces@3.0.3: 1437 + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 1438 + engines: {node: '>=8'} 1439 + 1440 + buffer-crc32@0.2.13: 1441 + resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} 1442 + 1443 + bytes@3.1.0: 1444 + resolution: {integrity: sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==} 1445 + engines: {node: '>= 0.8'} 1446 + 1447 + call-bind-apply-helpers@1.0.2: 1448 + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} 1449 + engines: {node: '>= 0.4'} 1450 + 1451 + chokidar@4.0.0: 1452 + resolution: {integrity: sha512-mxIojEAQcuEvT/lyXq+jf/3cO/KoA6z4CeNDGGevTybECPOMFCnQy3OPahluUkbqgPNGw5Bi78UC7Po6Lhy+NA==} 1453 + engines: {node: '>= 14.16.0'} 1454 + 826 1455 chokidar@4.0.3: 827 1456 resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} 828 1457 engines: {node: '>= 14.16.0'} ··· 831 1460 resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==} 832 1461 engines: {node: '>=18'} 833 1462 1463 + cjs-module-lexer@1.2.3: 1464 + resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==} 1465 + 834 1466 clsx@2.1.1: 835 1467 resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} 836 1468 engines: {node: '>=6'} 837 1469 1470 + code-block-writer@10.1.1: 1471 + resolution: {integrity: sha512-67ueh2IRGst/51p0n6FvPrnRjAGHY5F8xdjkgrYE7DDzpJe6qA07RYQ9VcoUeo5ATOjSOiWpSL3SWBRRbempMw==} 1472 + 1473 + combined-stream@1.0.8: 1474 + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 1475 + engines: {node: '>= 0.8'} 1476 + 1477 + concat-map@0.0.1: 1478 + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1479 + 838 1480 consola@3.4.2: 839 1481 resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} 840 1482 engines: {node: ^14.18.0 || >=16.10.0} 841 1483 1484 + content-type@1.0.4: 1485 + resolution: {integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==} 1486 + engines: {node: '>= 0.6'} 1487 + 1488 + convert-hrtime@3.0.0: 1489 + resolution: {integrity: sha512-7V+KqSvMiHp8yWDuwfww06XleMWVVB9b9tURBx+G7UTADuo5hYPuowKloz4OzOqbPezxgo+fdQ1522WzPG4OeA==} 1490 + engines: {node: '>=8'} 1491 + 1492 + cookie-es@2.0.1: 1493 + resolution: {integrity: sha512-aVf4A4hI2w70LnF7GG+7xDQUkliwiXWXFvTjkip4+b64ygDQ2sJPRSKFDHbxn8o0xu9QzPkMuuiWIXyFSE2slA==} 1494 + 842 1495 cookie@0.6.0: 843 1496 resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} 844 1497 engines: {node: '>= 0.6'} 845 1498 1499 + cross-spawn@7.0.6: 1500 + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} 1501 + engines: {node: '>= 8'} 1502 + 846 1503 cssesc@3.0.0: 847 1504 resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 848 1505 engines: {node: '>=4'} 849 1506 hasBin: true 850 1507 1508 + data-uri-to-buffer@6.0.2: 1509 + resolution: {integrity: sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==} 1510 + engines: {node: '>= 14'} 1511 + 1512 + debug@4.3.4: 1513 + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1514 + engines: {node: '>=6.0'} 1515 + peerDependencies: 1516 + supports-color: '*' 1517 + peerDependenciesMeta: 1518 + supports-color: 1519 + optional: true 1520 + 851 1521 debug@4.4.3: 852 1522 resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} 853 1523 engines: {node: '>=6.0'} ··· 861 1531 resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 862 1532 engines: {node: '>=0.10.0'} 863 1533 1534 + degenerator@5.0.1: 1535 + resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} 1536 + engines: {node: '>= 14'} 1537 + 1538 + delayed-stream@1.0.0: 1539 + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 1540 + engines: {node: '>=0.4.0'} 1541 + 1542 + depd@1.1.2: 1543 + resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} 1544 + engines: {node: '>= 0.6'} 1545 + 864 1546 detect-libc@2.1.2: 865 1547 resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} 866 1548 engines: {node: '>=8'} ··· 868 1550 devalue@5.6.4: 869 1551 resolution: {integrity: sha512-Gp6rDldRsFh/7XuouDbxMH3Mx8GMCcgzIb1pDTvNyn8pZGQ22u+Wa+lGV9dQCltFQ7uVw0MhRyb8XDskNFOReA==} 870 1552 1553 + dunder-proto@1.0.1: 1554 + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} 1555 + engines: {node: '>= 0.4'} 1556 + 1557 + edge-runtime@2.5.9: 1558 + resolution: {integrity: sha512-pk+k0oK0PVXdlT4oRp4lwh+unuKB7Ng4iZ2HB+EZ7QCEQizX360Rp/F4aRpgpRgdP2ufB35N+1KppHmYjqIGSg==} 1559 + engines: {node: '>=16'} 1560 + hasBin: true 1561 + 1562 + end-of-stream@1.1.0: 1563 + resolution: {integrity: sha512-EoulkdKF/1xa92q25PbjuDcgJ9RDHYU2Rs3SCIvs2/dSQ3BpmxneNHmA/M7fe60M3PrV7nNGTTNbkK62l6vXiQ==} 1564 + 1565 + end-of-stream@1.4.5: 1566 + resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==} 1567 + 871 1568 enhanced-resolve@5.20.1: 872 1569 resolution: {integrity: sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA==} 873 1570 engines: {node: '>=10.13.0'} 874 1571 1572 + es-define-property@1.0.1: 1573 + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} 1574 + engines: {node: '>= 0.4'} 1575 + 1576 + es-errors@1.3.0: 1577 + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} 1578 + engines: {node: '>= 0.4'} 1579 + 1580 + es-module-lexer@1.4.1: 1581 + resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} 1582 + 1583 + es-module-lexer@1.5.0: 1584 + resolution: {integrity: sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==} 1585 + 1586 + es-object-atoms@1.1.1: 1587 + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} 1588 + engines: {node: '>= 0.4'} 1589 + 1590 + es-set-tostringtag@2.1.0: 1591 + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} 1592 + engines: {node: '>= 0.4'} 1593 + 875 1594 esbuild@0.25.12: 876 1595 resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} 877 1596 engines: {node: '>=18'} 878 1597 hasBin: true 879 1598 1599 + esbuild@0.27.0: 1600 + resolution: {integrity: sha512-jd0f4NHbD6cALCyGElNpGAOtWxSq46l9X/sWB0Nzd5er4Kz2YTm+Vl0qKFT9KUJvD8+fiO8AvoHhFvEatfVixA==} 1601 + engines: {node: '>=18'} 1602 + hasBin: true 1603 + 880 1604 esbuild@0.27.4: 881 1605 resolution: {integrity: sha512-Rq4vbHnYkK5fws5NF7MYTU68FPRE1ajX7heQ/8QXXWqNgqqJ/GkmmyxIzUnf2Sr/bakf8l54716CcMGHYhMrrQ==} 882 1606 engines: {node: '>=18'} 1607 + hasBin: true 1608 + 1609 + escodegen@2.1.0: 1610 + resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} 1611 + engines: {node: '>=6.0'} 883 1612 hasBin: true 884 1613 885 1614 esm-env@1.2.2: 886 1615 resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} 1616 + 1617 + esprima@4.0.1: 1618 + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 1619 + engines: {node: '>=4'} 1620 + hasBin: true 887 1621 888 1622 esrap@2.2.4: 889 1623 resolution: {integrity: sha512-suICpxAmZ9A8bzJjEl/+rLJiDKC0X4gYWUxT6URAWBLvlXmtbZd5ySMu/N2ZGEtMCAmflUDPSehrP9BQcsGcSg==} 890 1624 1625 + estraverse@5.3.0: 1626 + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1627 + engines: {node: '>=4.0'} 1628 + 891 1629 estree-walker@2.0.2: 892 1630 resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 893 1631 1632 + esutils@2.0.3: 1633 + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1634 + engines: {node: '>=0.10.0'} 1635 + 1636 + etag@1.8.1: 1637 + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} 1638 + engines: {node: '>= 0.6'} 1639 + 1640 + events-intercept@2.0.0: 1641 + resolution: {integrity: sha512-blk1va0zol9QOrdZt0rFXo5KMkNPVSp92Eju/Qz8THwKWKRKeE0T8Br/1aW6+Edkyq9xHYgYxn2QtOnUKPUp+Q==} 1642 + 1643 + events-universal@1.0.1: 1644 + resolution: {integrity: sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw==} 1645 + 1646 + execa@3.2.0: 1647 + resolution: {integrity: sha512-kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw==} 1648 + engines: {node: ^8.12.0 || >=9.7.0} 1649 + 1650 + execa@5.1.1: 1651 + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} 1652 + engines: {node: '>=10'} 1653 + 1654 + fast-deep-equal@3.1.3: 1655 + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1656 + 1657 + fast-fifo@1.3.2: 1658 + resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} 1659 + 1660 + fast-glob@3.3.3: 1661 + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} 1662 + engines: {node: '>=8.6.0'} 1663 + 1664 + fastq@1.20.1: 1665 + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} 1666 + 1667 + fd-slicer@1.1.0: 1668 + resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} 1669 + 894 1670 fdir@6.5.0: 895 1671 resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} 896 1672 engines: {node: '>=12.0.0'} ··· 903 1679 file-uri-to-path@1.0.0: 904 1680 resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} 905 1681 1682 + fill-range@7.1.1: 1683 + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 1684 + engines: {node: '>=8'} 1685 + 1686 + form-data@4.0.5: 1687 + resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} 1688 + engines: {node: '>= 6'} 1689 + 1690 + fs-extra@11.1.0: 1691 + resolution: {integrity: sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==} 1692 + engines: {node: '>=14.14'} 1693 + 1694 + fs-extra@11.1.1: 1695 + resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} 1696 + engines: {node: '>=14.14'} 1697 + 906 1698 fsevents@2.3.3: 907 1699 resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 908 1700 engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 909 1701 os: [darwin] 910 1702 1703 + function-bind@1.1.2: 1704 + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 1705 + 1706 + generic-pool@3.4.2: 1707 + resolution: {integrity: sha512-H7cUpwCQSiJmAHM4c/aFu6fUfrhWXW1ncyh8ftxEPMu6AiYkHw9K8br720TGPZJbk5eOH2bynjZD1yPvdDAmag==} 1708 + engines: {node: '>= 4'} 1709 + 1710 + get-intrinsic@1.3.0: 1711 + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} 1712 + engines: {node: '>= 0.4'} 1713 + 1714 + get-proto@1.0.1: 1715 + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} 1716 + engines: {node: '>= 0.4'} 1717 + 1718 + get-stream@5.2.0: 1719 + resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} 1720 + engines: {node: '>=8'} 1721 + 1722 + get-stream@6.0.1: 1723 + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} 1724 + engines: {node: '>=10'} 1725 + 1726 + get-tsconfig@4.13.7: 1727 + resolution: {integrity: sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==} 1728 + 1729 + get-uri@6.0.5: 1730 + resolution: {integrity: sha512-b1O07XYq8eRuVzBNgJLstU6FYc1tS6wnMtF1I1D9lE8LxZSOGZ7LhxN54yPP6mGw5f2CkXY2BQUL9Fx41qvcIg==} 1731 + engines: {node: '>= 14'} 1732 + 1733 + glob-parent@5.1.2: 1734 + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1735 + engines: {node: '>= 6'} 1736 + 911 1737 glob@13.0.6: 912 1738 resolution: {integrity: sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==} 913 1739 engines: {node: 18 || 20 || >=22} 914 1740 1741 + gopd@1.2.0: 1742 + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} 1743 + engines: {node: '>= 0.4'} 1744 + 915 1745 graceful-fs@4.2.11: 916 1746 resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 917 1747 1748 + has-symbols@1.1.0: 1749 + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} 1750 + engines: {node: '>= 0.4'} 1751 + 1752 + has-tostringtag@1.0.2: 1753 + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} 1754 + engines: {node: '>= 0.4'} 1755 + 1756 + hasown@2.0.2: 1757 + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 1758 + engines: {node: '>= 0.4'} 1759 + 918 1760 hls.js@1.6.15: 919 1761 resolution: {integrity: sha512-E3a5VwgXimGHwpRGV+WxRTKeSp2DW5DI5MWv34ulL3t5UNmyJWCQ1KmLEHbYzcfThfXG8amBL+fCYPneGHC4VA==} 920 1762 1763 + http-errors@1.7.3: 1764 + resolution: {integrity: sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==} 1765 + engines: {node: '>= 0.6'} 1766 + 1767 + http-proxy-agent@7.0.2: 1768 + resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} 1769 + engines: {node: '>= 14'} 1770 + 921 1771 https-proxy-agent@7.0.6: 922 1772 resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} 923 1773 engines: {node: '>= 14'} 924 1774 1775 + human-signals@1.1.1: 1776 + resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} 1777 + engines: {node: '>=8.12.0'} 1778 + 1779 + human-signals@2.1.0: 1780 + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} 1781 + engines: {node: '>=10.17.0'} 1782 + 1783 + iconv-lite@0.4.24: 1784 + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 1785 + engines: {node: '>=0.10.0'} 1786 + 1787 + inherits@2.0.4: 1788 + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1789 + 1790 + ip-address@10.1.0: 1791 + resolution: {integrity: sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==} 1792 + engines: {node: '>= 12'} 1793 + 1794 + is-buffer@2.0.5: 1795 + resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} 1796 + engines: {node: '>=4'} 1797 + 1798 + is-extglob@2.1.1: 1799 + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1800 + engines: {node: '>=0.10.0'} 1801 + 1802 + is-glob@4.0.3: 1803 + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1804 + engines: {node: '>=0.10.0'} 1805 + 1806 + is-node-process@1.2.0: 1807 + resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==} 1808 + 1809 + is-number@7.0.0: 1810 + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1811 + engines: {node: '>=0.12.0'} 1812 + 925 1813 is-reference@3.0.3: 926 1814 resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} 1815 + 1816 + is-stream@2.0.1: 1817 + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} 1818 + engines: {node: '>=8'} 1819 + 1820 + isexe@2.0.0: 1821 + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 927 1822 928 1823 iso-datestring-validator@2.2.2: 929 1824 resolution: {integrity: sha512-yLEMkBbLZTlVQqOnQ4FiMujR6T4DEcCb1xizmvXS+OxuhwcbtynoosRzdMA69zZCShCNAbi+gJ71FxZBBXx1SA==} ··· 932 1827 resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} 933 1828 hasBin: true 934 1829 1830 + jose@5.9.6: 1831 + resolution: {integrity: sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==} 1832 + 1833 + js-yaml@4.1.1: 1834 + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} 1835 + hasBin: true 1836 + 1837 + json-schema-to-ts@1.6.4: 1838 + resolution: {integrity: sha512-pR4yQ9DHz6itqswtHCm26mw45FSNfQ9rEQjosaZErhn5J3J2sIViQiz8rDaezjKAhFGpmsoczYVBgGHzFw/stA==} 1839 + 1840 + json-schema-traverse@1.0.0: 1841 + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} 1842 + 1843 + jsonfile@6.2.0: 1844 + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} 1845 + 1846 + jsonlines@0.1.1: 1847 + resolution: {integrity: sha512-ekDrAGso79Cvf+dtm+mL8OBI2bmAOt3gssYs833De/C9NmIpWDWyUO4zPgB5x2/OhY366dkhgfPMYfwZF7yOZA==} 1848 + 935 1849 kleur@4.1.5: 936 1850 resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 937 1851 engines: {node: '>=6'} ··· 1013 1927 resolution: {integrity: sha512-aY/R+aEsRelme17KGQa/1ZSIpLpNYYrhcrepKTZgE+W3WM16YMCaPwOHLHsmopZHELU0Ojin1lPVxKR0MihncA==} 1014 1928 engines: {node: 20 || >=22} 1015 1929 1930 + lru-cache@6.0.0: 1931 + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1932 + engines: {node: '>=10'} 1933 + 1934 + lru-cache@7.18.3: 1935 + resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} 1936 + engines: {node: '>=12'} 1937 + 1938 + luxon@3.7.2: 1939 + resolution: {integrity: sha512-vtEhXh/gNjI9Yg1u4jX/0YVPMvxzHuGgCm6tC5kZyb08yjGWGnqAjGJvcXbqQR2P3MyMEFnRbpcdFS6PBcLqew==} 1940 + engines: {node: '>=12'} 1941 + 1016 1942 magic-string@0.30.21: 1017 1943 resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} 1018 1944 1945 + math-intrinsics@1.1.0: 1946 + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} 1947 + engines: {node: '>= 0.4'} 1948 + 1949 + merge-stream@2.0.0: 1950 + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 1951 + 1952 + merge2@1.4.1: 1953 + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1954 + engines: {node: '>= 8'} 1955 + 1956 + micro@9.3.5-canary.3: 1957 + resolution: {integrity: sha512-viYIo9PefV+w9dvoIBh1gI44Mvx1BOk67B4BpC2QK77qdY0xZF0Q+vWLt/BII6cLkIc8rLmSIcJaB/OrXXKe1g==} 1958 + engines: {node: '>= 8.0.0'} 1959 + hasBin: true 1960 + 1961 + micromatch@4.0.8: 1962 + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 1963 + engines: {node: '>=8.6'} 1964 + 1965 + mime-db@1.52.0: 1966 + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 1967 + engines: {node: '>= 0.6'} 1968 + 1969 + mime-types@2.1.35: 1970 + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 1971 + engines: {node: '>= 0.6'} 1972 + 1973 + mimic-fn@2.1.0: 1974 + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 1975 + engines: {node: '>=6'} 1976 + 1977 + minimatch@10.1.1: 1978 + resolution: {integrity: sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==} 1979 + engines: {node: 20 || >=22} 1980 + 1019 1981 minimatch@10.2.4: 1020 1982 resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} 1021 1983 engines: {node: 18 || 20 || >=22} 1984 + 1985 + minimatch@3.1.5: 1986 + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} 1022 1987 1023 1988 minipass@7.1.3: 1024 1989 resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==} ··· 1028 1993 resolution: {integrity: sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==} 1029 1994 engines: {node: '>= 18'} 1030 1995 1996 + mkdirp@1.0.4: 1997 + resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} 1998 + engines: {node: '>=10'} 1999 + hasBin: true 2000 + 1031 2001 mri@1.2.0: 1032 2002 resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 1033 2003 engines: {node: '>=4'} ··· 1036 2006 resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} 1037 2007 engines: {node: '>=10'} 1038 2008 2009 + ms@2.1.1: 2010 + resolution: {integrity: sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==} 2011 + 2012 + ms@2.1.2: 2013 + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 2014 + 1039 2015 ms@2.1.3: 1040 2016 resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 1041 2017 ··· 1047 2023 engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1048 2024 hasBin: true 1049 2025 2026 + netmask@2.1.1: 2027 + resolution: {integrity: sha512-eonl3sLUha+S1GzTPxychyhnUzKyeQkZ7jLjKrBagJgPla13F+uQ71HgpFefyHgqrjEbCPkDArxYsjY8/+gLKA==} 2028 + engines: {node: '>= 0.4.0'} 2029 + 2030 + node-fetch@2.6.7: 2031 + resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} 2032 + engines: {node: 4.x || >=6.0.0} 2033 + peerDependencies: 2034 + encoding: ^0.1.0 2035 + peerDependenciesMeta: 2036 + encoding: 2037 + optional: true 2038 + 2039 + node-fetch@2.6.9: 2040 + resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} 2041 + engines: {node: 4.x || >=6.0.0} 2042 + peerDependencies: 2043 + encoding: ^0.1.0 2044 + peerDependenciesMeta: 2045 + encoding: 2046 + optional: true 2047 + 1050 2048 node-fetch@2.7.0: 1051 2049 resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} 1052 2050 engines: {node: 4.x || >=6.0.0} ··· 1065 2063 engines: {node: ^18.17.0 || >=20.5.0} 1066 2064 hasBin: true 1067 2065 2066 + npm-run-path@4.0.1: 2067 + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} 2068 + engines: {node: '>=8'} 2069 + 1068 2070 obug@2.1.1: 1069 2071 resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} 1070 2072 2073 + once@1.3.3: 2074 + resolution: {integrity: sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==} 2075 + 2076 + once@1.4.0: 2077 + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 2078 + 2079 + onetime@5.1.2: 2080 + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 2081 + engines: {node: '>=6'} 2082 + 2083 + os-paths@4.4.0: 2084 + resolution: {integrity: sha512-wrAwOeXp1RRMFfQY8Sy7VaGVmPocaLwSFOYCGKSyo8qmJ+/yaafCl5BCA1IQZWqFSRBrKDYFeR9d/VyQzfH/jg==} 2085 + engines: {node: '>= 6.0'} 2086 + 2087 + oxc-transform@0.111.0: 2088 + resolution: {integrity: sha512-oa5KKSDNLHZGaiqIGAbCWXeN9IJUAz9MElWcQX90epDxdKc9Hrt/BsLj3K4gDqfAYa5dwdH+ZCFJG9hR74fiGg==} 2089 + engines: {node: ^20.19.0 || >=22.12.0} 2090 + 2091 + p-finally@2.0.1: 2092 + resolution: {integrity: sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==} 2093 + engines: {node: '>=8'} 2094 + 2095 + pac-proxy-agent@7.2.0: 2096 + resolution: {integrity: sha512-TEB8ESquiLMc0lV8vcd5Ql/JAKAoyzHFXaStwjkzpOpC5Yv+pIzLfHvjTSdf3vpa2bMiUQrg9i6276yn8666aA==} 2097 + engines: {node: '>= 14'} 2098 + 2099 + pac-resolver@7.0.1: 2100 + resolution: {integrity: sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==} 2101 + engines: {node: '>= 14'} 2102 + 2103 + parse-ms@2.1.0: 2104 + resolution: {integrity: sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==} 2105 + engines: {node: '>=6'} 2106 + 2107 + path-browserify@1.0.1: 2108 + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} 2109 + 2110 + path-key@3.1.1: 2111 + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2112 + engines: {node: '>=8'} 2113 + 1071 2114 path-scurry@2.0.2: 1072 2115 resolution: {integrity: sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==} 1073 2116 engines: {node: 18 || 20 || >=22} 1074 2117 2118 + path-to-regexp@6.1.0: 2119 + resolution: {integrity: sha512-h9DqehX3zZZDCEm+xbfU0ZmwCGFCAAraPJWMXJ4+v32NjZJilVg3k1TcKsRgIb8IQ/izZSaydDc1OhJCZvs2Dw==} 2120 + 2121 + path-to-regexp@6.3.0: 2122 + resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} 2123 + 2124 + path-to-regexp@8.2.0: 2125 + resolution: {integrity: sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==} 2126 + engines: {node: '>=16'} 2127 + 2128 + path-to-regexp@8.3.0: 2129 + resolution: {integrity: sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==} 2130 + 2131 + pend@1.2.0: 2132 + resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} 2133 + 2134 + picocolors@1.0.0: 2135 + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 2136 + 1075 2137 picocolors@1.1.1: 1076 2138 resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 2139 + 2140 + picomatch@2.3.2: 2141 + resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==} 2142 + engines: {node: '>=8.6'} 1077 2143 1078 2144 picomatch@4.0.3: 1079 2145 resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} ··· 1153 2219 engines: {node: '>=14'} 1154 2220 hasBin: true 1155 2221 2222 + pretty-ms@7.0.1: 2223 + resolution: {integrity: sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==} 2224 + engines: {node: '>=10'} 2225 + 2226 + promisepipe@3.0.0: 2227 + resolution: {integrity: sha512-V6TbZDJ/ZswevgkDNpGt/YqNCiZP9ASfgU+p83uJE6NrGtvSGoOcHLiDCqkMs2+yg7F5qHdLV8d0aS8O26G/KA==} 2228 + 2229 + proxy-agent@6.4.0: 2230 + resolution: {integrity: sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==} 2231 + engines: {node: '>= 14'} 2232 + 2233 + proxy-from-env@1.1.0: 2234 + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} 2235 + 2236 + pump@3.0.4: 2237 + resolution: {integrity: sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==} 2238 + 2239 + punycode@2.3.1: 2240 + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 2241 + engines: {node: '>=6'} 2242 + 2243 + queue-microtask@1.2.3: 2244 + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 2245 + 2246 + raw-body@2.4.1: 2247 + resolution: {integrity: sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==} 2248 + engines: {node: '>= 0.8'} 2249 + 1156 2250 readdirp@4.1.2: 1157 2251 resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} 1158 2252 engines: {node: '>= 14.18.0'} 1159 2253 2254 + require-from-string@2.0.2: 2255 + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 2256 + engines: {node: '>=0.10.0'} 2257 + 1160 2258 resolve-from@5.0.0: 1161 2259 resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 1162 2260 engines: {node: '>=8'} 1163 2261 2262 + resolve-pkg-maps@1.0.0: 2263 + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} 2264 + 2265 + resolve.exports@2.0.3: 2266 + resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} 2267 + engines: {node: '>=10'} 2268 + 2269 + retry@0.13.1: 2270 + resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} 2271 + engines: {node: '>= 4'} 2272 + 2273 + reusify@1.1.0: 2274 + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} 2275 + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 2276 + 2277 + rolldown@1.0.0-rc.1: 2278 + resolution: {integrity: sha512-M3AeZjYE6UclblEf531Hch0WfVC/NOL43Cc+WdF3J50kk5/fvouHhDumSGTh0oRjbZ8C4faaVr5r6Nx1xMqDGg==} 2279 + engines: {node: ^20.19.0 || >=22.12.0} 2280 + hasBin: true 2281 + 1164 2282 rollup@4.60.0: 1165 2283 resolution: {integrity: sha512-yqjxruMGBQJ2gG4HtjZtAfXArHomazDHoFwFFmZZl0r7Pdo7qCIXKqKHZc8yeoMgzJJ+pO6pEEHa+V7uzWlrAQ==} 1166 2284 engines: {node: '>=18.0.0', npm: '>=8.0.0'} 1167 2285 hasBin: true 1168 2286 2287 + run-parallel@1.2.0: 2288 + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 2289 + 1169 2290 sade@1.8.1: 1170 2291 resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 1171 2292 engines: {node: '>=6'} 1172 2293 2294 + safer-buffer@2.1.2: 2295 + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 2296 + 2297 + sandbox@2.5.6: 2298 + resolution: {integrity: sha512-tnFr7nyiuEhsAGb+xy60SDbij0790X+FgDljh3J/2HaRM6yQgNJkQKHbDH8ld7mR+PozXGgEfJ2Dc/5OyFnwsg==} 2299 + hasBin: true 2300 + 2301 + semver@6.3.1: 2302 + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 2303 + hasBin: true 2304 + 2305 + semver@7.5.4: 2306 + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 2307 + engines: {node: '>=10'} 2308 + hasBin: true 2309 + 1173 2310 semver@7.7.4: 1174 2311 resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} 1175 2312 engines: {node: '>=10'} ··· 1178 2315 set-cookie-parser@3.1.0: 1179 2316 resolution: {integrity: sha512-kjnC1DXBHcxaOaOXBHBeRtltsDG2nUiUni+jP92M9gYdW12rsmx92UsfpH7o5tDRs7I1ZZPSQJQGv3UaRfCiuw==} 1180 2317 2318 + setprototypeof@1.1.1: 2319 + resolution: {integrity: sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==} 2320 + 2321 + shebang-command@2.0.0: 2322 + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 2323 + engines: {node: '>=8'} 2324 + 2325 + shebang-regex@3.0.0: 2326 + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 2327 + engines: {node: '>=8'} 2328 + 2329 + signal-exit@3.0.7: 2330 + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 2331 + 2332 + signal-exit@4.0.2: 2333 + resolution: {integrity: sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==} 2334 + engines: {node: '>=14'} 2335 + 1181 2336 sirv@3.0.2: 1182 2337 resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} 1183 2338 engines: {node: '>=18'} 1184 2339 2340 + smart-buffer@4.2.0: 2341 + resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} 2342 + engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} 2343 + 2344 + smol-toml@1.5.2: 2345 + resolution: {integrity: sha512-QlaZEqcAH3/RtNyet1IPIYPsEWAaYyXXv1Krsi+1L/QHppjX4Ifm8MQsBISz9vE8cHicIq3clogsheili5vhaQ==} 2346 + engines: {node: '>= 18'} 2347 + 2348 + socks-proxy-agent@8.0.5: 2349 + resolution: {integrity: sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==} 2350 + engines: {node: '>= 14'} 2351 + 2352 + socks@2.8.7: 2353 + resolution: {integrity: sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==} 2354 + engines: {node: '>= 10.0.0', npm: '>= 3.0.0'} 2355 + 1185 2356 source-map-js@1.2.1: 1186 2357 resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 1187 2358 engines: {node: '>=0.10.0'} 1188 2359 2360 + source-map@0.6.1: 2361 + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 2362 + engines: {node: '>=0.10.0'} 2363 + 2364 + srvx@0.8.9: 2365 + resolution: {integrity: sha512-wYc3VLZHRzwYrWJhkEqkhLb31TI0SOkfYZDkUhXdp3NoCnNS0FqajiQszZZjfow/VYEuc6Q5sZh9nM6kPy2NBQ==} 2366 + engines: {node: '>=20.16.0'} 2367 + hasBin: true 2368 + 2369 + stat-mode@0.3.0: 2370 + resolution: {integrity: sha512-QjMLR0A3WwFY2aZdV0okfFEJB5TRjkggXZjxP3A1RsWsNHNu3YPv8btmtc6iCFZ0Rul3FE93OYogvhOUClU+ng==} 2371 + 2372 + statuses@1.5.0: 2373 + resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} 2374 + engines: {node: '>= 0.6'} 2375 + 2376 + stream-to-array@2.3.0: 2377 + resolution: {integrity: sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==} 2378 + 2379 + stream-to-promise@2.2.0: 2380 + resolution: {integrity: sha512-HAGUASw8NT0k8JvIVutB2Y/9iBk7gpgEyAudXwNJmZERdMITGdajOa4VJfD/kNiA3TppQpTP4J+CtcHwdzKBAw==} 2381 + 2382 + streamx@2.25.0: 2383 + resolution: {integrity: sha512-0nQuG6jf1w+wddNEEXCF4nTg3LtufWINB5eFEN+5TNZW7KWJp6x87+JFL43vaAUPyCfH1wID+mNVyW6OHtFamg==} 2384 + 2385 + strip-final-newline@2.0.0: 2386 + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 2387 + engines: {node: '>=6'} 2388 + 1189 2389 svelte-check@4.4.5: 1190 2390 resolution: {integrity: sha512-1bSwIRCvvmSHrlK52fOlZmVtUZgil43jNL/2H18pRpa+eQjzGt6e3zayxhp1S7GajPFKNM/2PMCG+DZFHlG9fw==} 1191 2391 engines: {node: '>= 18.0.0'} ··· 1205 2405 resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} 1206 2406 engines: {node: '>=6'} 1207 2407 2408 + tar-stream@3.1.7: 2409 + resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} 2410 + 1208 2411 tar@7.5.12: 1209 2412 resolution: {integrity: sha512-9TsuLcdhOn4XztcQqhNyq1KOwOOED/3k58JAvtULiYqbO8B/0IBAAIE1hj0Svmm58k27TmcigyDI0deMlgG3uw==} 1210 2413 engines: {node: '>=18'} 1211 2414 2415 + tar@7.5.7: 2416 + resolution: {integrity: sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==} 2417 + engines: {node: '>=18'} 2418 + deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me 2419 + 2420 + text-decoder@1.2.7: 2421 + resolution: {integrity: sha512-vlLytXkeP4xvEq2otHeJfSQIRyWxo/oZGEbXrtEEF9Hnmrdly59sUbzZ/QgyWuLYHctCHxFF4tRQZNQ9k60ExQ==} 2422 + 2423 + throttleit@2.1.0: 2424 + resolution: {integrity: sha512-nt6AMGKW1p/70DF/hGBdJB57B8Tspmbp5gfJ8ilhLnt7kkr2ye7hzD6NVG8GGErk2HWF34igrL2CXmNIkzKqKw==} 2425 + engines: {node: '>=18'} 2426 + 2427 + time-span@4.0.0: 2428 + resolution: {integrity: sha512-MyqZCTGLDZ77u4k+jqg4UlrzPTPZ49NDlaekU6uuFaJLzPIN1woaRXCbGeqOfxwc3Y37ZROGAJ614Rdv7Olt+g==} 2429 + engines: {node: '>=10'} 2430 + 2431 + tinyexec@0.3.2: 2432 + resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} 2433 + 1212 2434 tinyglobby@0.2.15: 1213 2435 resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} 1214 2436 engines: {node: '>=12.0.0'} ··· 1216 2438 tlds@1.261.0: 1217 2439 resolution: {integrity: sha512-QXqwfEl9ddlGBaRFXIvNKK6OhipSiLXuRuLJX5DErz0o0Q0rYxulWLdFryTkV5PkdZct5iMInwYEGe/eR++1AA==} 1218 2440 hasBin: true 2441 + 2442 + to-regex-range@5.0.1: 2443 + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2444 + engines: {node: '>=8.0'} 2445 + 2446 + toidentifier@1.0.0: 2447 + resolution: {integrity: sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==} 2448 + engines: {node: '>=0.6'} 1219 2449 1220 2450 totalist@3.0.1: 1221 2451 resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} ··· 1223 2453 1224 2454 tr46@0.0.3: 1225 2455 resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 2456 + 2457 + tree-kill@1.2.2: 2458 + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 2459 + hasBin: true 2460 + 2461 + ts-morph@12.0.0: 2462 + resolution: {integrity: sha512-VHC8XgU2fFW7yO1f/b3mxKDje1vmyzFXHWzOYmKEkCEwcLjDtbdLgBQviqj4ZwP4MJkQtRo6Ha2I29lq/B+VxA==} 2463 + 2464 + ts-toolbelt@6.15.5: 2465 + resolution: {integrity: sha512-FZIXf1ksVyLcfr7M317jbB67XFJhOO1YqdTcuGaq9q5jLUoTikukZ+98TPjKiP2jC5CgmYdWWYs0s2nLSU0/1A==} 1226 2466 1227 2467 tslib@2.8.1: 1228 2468 resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} 1229 2469 2470 + tsx@4.21.0: 2471 + resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==} 2472 + engines: {node: '>=18.0.0'} 2473 + hasBin: true 2474 + 1230 2475 typescript@5.9.3: 1231 2476 resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} 1232 2477 engines: {node: '>=14.17'} 1233 2478 hasBin: true 1234 2479 2480 + uid-promise@1.0.0: 2481 + resolution: {integrity: sha512-R8375j0qwXyIu/7R0tjdF06/sElHqbmdmWC9M2qQHpEVbvE4I5+38KJI7LUUmQMp7NVq4tKHiBMkT0NFM453Ig==} 2482 + 1235 2483 uint8arrays@3.0.0: 1236 2484 resolution: {integrity: sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==} 2485 + 2486 + undici-types@5.26.5: 2487 + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} 1237 2488 1238 2489 undici-types@7.18.2: 1239 2490 resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} 1240 2491 2492 + undici@5.28.4: 2493 + resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} 2494 + engines: {node: '>=14.0'} 2495 + 2496 + undici@6.24.1: 2497 + resolution: {integrity: sha512-sC+b0tB1whOCzbtlx20fx3WgCXwkW627p4EA9uM+/tNNPkSS+eSEld6pAs9nDv7WbY1UUljBMYPtu9BCOrCWKA==} 2498 + engines: {node: '>=18.17'} 2499 + 2500 + undici@7.24.7: 2501 + resolution: {integrity: sha512-H/nlJ/h0ggGC+uRL3ovD+G0i4bqhvsDOpbDv7At5eFLlj2b41L8QliGbnl2H7SnDiYhENphh1tQFJZf+MyfLsQ==} 2502 + engines: {node: '>=20.18.1'} 2503 + 1241 2504 unicode-segmenter@0.14.5: 1242 2505 resolution: {integrity: sha512-jHGmj2LUuqDcX3hqY12Ql+uhUTn8huuxNZGq7GvtF6bSybzH3aFgedYu/KTzQStEgt1Ra2F3HxadNXsNjb3m3g==} 1243 2506 2507 + universalify@2.0.1: 2508 + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} 2509 + engines: {node: '>= 10.0.0'} 2510 + 2511 + unpipe@1.0.0: 2512 + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} 2513 + engines: {node: '>= 0.8'} 2514 + 2515 + uri-js@4.4.1: 2516 + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2517 + 1244 2518 util-deprecate@1.0.2: 1245 2519 resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 2520 + 2521 + vercel@50.42.0: 2522 + resolution: {integrity: sha512-GlPHUBiva1AFNCUItVHNAGjJ2VwzFthw6qPNJAazHvQqMcgaKtEe7iFDU8M/L/oYYEaMoz6rEnr8VdLvkjo5bA==} 2523 + engines: {node: '>= 18'} 2524 + hasBin: true 1246 2525 1247 2526 vite@7.3.1: 1248 2527 resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} ··· 1292 2571 vite: 1293 2572 optional: true 1294 2573 2574 + web-vitals@0.2.4: 2575 + resolution: {integrity: sha512-6BjspCO9VriYy12z356nL6JBS0GYeEcA457YyRzD+dD6XYCQ75NKhcOHUMHentOE7OcVCIXXDvOm0jKFfQG2Gg==} 2576 + 1295 2577 webidl-conversions@3.0.1: 1296 2578 resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} 1297 2579 1298 2580 whatwg-url@5.0.0: 1299 2581 resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} 1300 2582 2583 + which@2.0.2: 2584 + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 2585 + engines: {node: '>= 8'} 2586 + hasBin: true 2587 + 2588 + wrappy@1.0.2: 2589 + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2590 + 2591 + xdg-app-paths@5.1.0: 2592 + resolution: {integrity: sha512-RAQ3WkPf4KTU1A8RtFx3gWywzVKe00tfOPFfl2NDGqbIFENQO4kqAJp7mhQjNj/33W5x5hiWWUdyfPq/5SU3QA==} 2593 + engines: {node: '>=6'} 2594 + 2595 + xdg-portable@7.3.0: 2596 + resolution: {integrity: sha512-sqMMuL1rc0FmMBOzCpd0yuy9trqF2yTTVe+E9ogwCSWQCdDEtQUwrZPT6AxqtsFGRNxycgncbP/xmOOSPw5ZUw==} 2597 + engines: {node: '>= 6.0'} 2598 + 2599 + yallist@4.0.0: 2600 + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2601 + 1301 2602 yallist@5.0.0: 1302 2603 resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} 1303 2604 engines: {node: '>=18'} 1304 2605 2606 + yauzl-clone@1.0.4: 2607 + resolution: {integrity: sha512-igM2RRCf3k8TvZoxR2oguuw4z1xasOnA31joCqHIyLkeWrvAc2Jgay5ISQ2ZplinkoGaJ6orCz56Ey456c5ESA==} 2608 + engines: {node: '>=6'} 2609 + 2610 + yauzl-promise@2.1.3: 2611 + resolution: {integrity: sha512-A1pf6fzh6eYkK0L4Qp7g9jzJSDrM6nN0bOn5T0IbY4Yo3w+YkWlHFkJP7mzknMXjqusHFHlKsK2N+4OLsK2MRA==} 2612 + engines: {node: '>=6'} 2613 + 2614 + yauzl@2.10.0: 2615 + resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} 2616 + 1305 2617 zimmerframe@1.1.4: 1306 2618 resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==} 1307 2619 2620 + zod@3.22.4: 2621 + resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} 2622 + 2623 + zod@3.24.4: 2624 + resolution: {integrity: sha512-OdqJE9UDRPwWsrHjLN2F8bPxvwJBK22EHLWtanu0LSYr5YqzsaaW3RMgmjwr8Rypg5k+meEJdSPXJZXE/yqOMg==} 2625 + 1308 2626 zod@3.25.76: 1309 2627 resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} 2628 + 2629 + zod@4.3.6: 2630 + resolution: {integrity: sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==} 1310 2631 1311 2632 snapshots: 1312 2633 ··· 1361 2682 '@atproto/lexicon': 0.6.2 1362 2683 zod: 3.25.76 1363 2684 2685 + '@bytecodealliance/preview2-shim@0.17.6': {} 2686 + 2687 + '@edge-runtime/format@2.2.1': {} 2688 + 2689 + '@edge-runtime/node-utils@2.3.0': {} 2690 + 2691 + '@edge-runtime/ponyfill@2.4.2': {} 2692 + 2693 + '@edge-runtime/primitives@4.1.0': {} 2694 + 2695 + '@edge-runtime/vm@3.2.0': 2696 + dependencies: 2697 + '@edge-runtime/primitives': 4.1.0 2698 + 2699 + '@emnapi/core@1.9.2': 2700 + dependencies: 2701 + '@emnapi/wasi-threads': 1.2.1 2702 + tslib: 2.8.1 2703 + optional: true 2704 + 2705 + '@emnapi/runtime@1.9.2': 2706 + dependencies: 2707 + tslib: 2.8.1 2708 + optional: true 2709 + 2710 + '@emnapi/wasi-threads@1.2.1': 2711 + dependencies: 2712 + tslib: 2.8.1 2713 + optional: true 2714 + 1364 2715 '@esbuild/aix-ppc64@0.25.12': 2716 + optional: true 2717 + 2718 + '@esbuild/aix-ppc64@0.27.0': 1365 2719 optional: true 1366 2720 1367 2721 '@esbuild/aix-ppc64@0.27.4': ··· 1370 2724 '@esbuild/android-arm64@0.25.12': 1371 2725 optional: true 1372 2726 2727 + '@esbuild/android-arm64@0.27.0': 2728 + optional: true 2729 + 1373 2730 '@esbuild/android-arm64@0.27.4': 1374 2731 optional: true 1375 2732 1376 2733 '@esbuild/android-arm@0.25.12': 1377 2734 optional: true 1378 2735 2736 + '@esbuild/android-arm@0.27.0': 2737 + optional: true 2738 + 1379 2739 '@esbuild/android-arm@0.27.4': 1380 2740 optional: true 1381 2741 1382 2742 '@esbuild/android-x64@0.25.12': 1383 2743 optional: true 1384 2744 2745 + '@esbuild/android-x64@0.27.0': 2746 + optional: true 2747 + 1385 2748 '@esbuild/android-x64@0.27.4': 1386 2749 optional: true 1387 2750 1388 2751 '@esbuild/darwin-arm64@0.25.12': 1389 2752 optional: true 1390 2753 2754 + '@esbuild/darwin-arm64@0.27.0': 2755 + optional: true 2756 + 1391 2757 '@esbuild/darwin-arm64@0.27.4': 1392 2758 optional: true 1393 2759 1394 2760 '@esbuild/darwin-x64@0.25.12': 2761 + optional: true 2762 + 2763 + '@esbuild/darwin-x64@0.27.0': 1395 2764 optional: true 1396 2765 1397 2766 '@esbuild/darwin-x64@0.27.4': ··· 1400 2769 '@esbuild/freebsd-arm64@0.25.12': 1401 2770 optional: true 1402 2771 2772 + '@esbuild/freebsd-arm64@0.27.0': 2773 + optional: true 2774 + 1403 2775 '@esbuild/freebsd-arm64@0.27.4': 1404 2776 optional: true 1405 2777 1406 2778 '@esbuild/freebsd-x64@0.25.12': 2779 + optional: true 2780 + 2781 + '@esbuild/freebsd-x64@0.27.0': 1407 2782 optional: true 1408 2783 1409 2784 '@esbuild/freebsd-x64@0.27.4': ··· 1412 2787 '@esbuild/linux-arm64@0.25.12': 1413 2788 optional: true 1414 2789 2790 + '@esbuild/linux-arm64@0.27.0': 2791 + optional: true 2792 + 1415 2793 '@esbuild/linux-arm64@0.27.4': 1416 2794 optional: true 1417 2795 1418 2796 '@esbuild/linux-arm@0.25.12': 1419 2797 optional: true 1420 2798 2799 + '@esbuild/linux-arm@0.27.0': 2800 + optional: true 2801 + 1421 2802 '@esbuild/linux-arm@0.27.4': 1422 2803 optional: true 1423 2804 1424 2805 '@esbuild/linux-ia32@0.25.12': 1425 2806 optional: true 1426 2807 2808 + '@esbuild/linux-ia32@0.27.0': 2809 + optional: true 2810 + 1427 2811 '@esbuild/linux-ia32@0.27.4': 1428 2812 optional: true 1429 2813 1430 2814 '@esbuild/linux-loong64@0.25.12': 1431 2815 optional: true 1432 2816 2817 + '@esbuild/linux-loong64@0.27.0': 2818 + optional: true 2819 + 1433 2820 '@esbuild/linux-loong64@0.27.4': 1434 2821 optional: true 1435 2822 1436 2823 '@esbuild/linux-mips64el@0.25.12': 1437 2824 optional: true 1438 2825 2826 + '@esbuild/linux-mips64el@0.27.0': 2827 + optional: true 2828 + 1439 2829 '@esbuild/linux-mips64el@0.27.4': 1440 2830 optional: true 1441 2831 1442 2832 '@esbuild/linux-ppc64@0.25.12': 1443 2833 optional: true 1444 2834 2835 + '@esbuild/linux-ppc64@0.27.0': 2836 + optional: true 2837 + 1445 2838 '@esbuild/linux-ppc64@0.27.4': 1446 2839 optional: true 1447 2840 1448 2841 '@esbuild/linux-riscv64@0.25.12': 1449 2842 optional: true 1450 2843 2844 + '@esbuild/linux-riscv64@0.27.0': 2845 + optional: true 2846 + 1451 2847 '@esbuild/linux-riscv64@0.27.4': 1452 2848 optional: true 1453 2849 1454 2850 '@esbuild/linux-s390x@0.25.12': 1455 2851 optional: true 1456 2852 2853 + '@esbuild/linux-s390x@0.27.0': 2854 + optional: true 2855 + 1457 2856 '@esbuild/linux-s390x@0.27.4': 1458 2857 optional: true 1459 2858 1460 2859 '@esbuild/linux-x64@0.25.12': 2860 + optional: true 2861 + 2862 + '@esbuild/linux-x64@0.27.0': 1461 2863 optional: true 1462 2864 1463 2865 '@esbuild/linux-x64@0.27.4': ··· 1466 2868 '@esbuild/netbsd-arm64@0.25.12': 1467 2869 optional: true 1468 2870 2871 + '@esbuild/netbsd-arm64@0.27.0': 2872 + optional: true 2873 + 1469 2874 '@esbuild/netbsd-arm64@0.27.4': 1470 2875 optional: true 1471 2876 1472 2877 '@esbuild/netbsd-x64@0.25.12': 2878 + optional: true 2879 + 2880 + '@esbuild/netbsd-x64@0.27.0': 1473 2881 optional: true 1474 2882 1475 2883 '@esbuild/netbsd-x64@0.27.4': ··· 1478 2886 '@esbuild/openbsd-arm64@0.25.12': 1479 2887 optional: true 1480 2888 2889 + '@esbuild/openbsd-arm64@0.27.0': 2890 + optional: true 2891 + 1481 2892 '@esbuild/openbsd-arm64@0.27.4': 1482 2893 optional: true 1483 2894 1484 2895 '@esbuild/openbsd-x64@0.25.12': 1485 2896 optional: true 1486 2897 2898 + '@esbuild/openbsd-x64@0.27.0': 2899 + optional: true 2900 + 1487 2901 '@esbuild/openbsd-x64@0.27.4': 1488 2902 optional: true 1489 2903 1490 2904 '@esbuild/openharmony-arm64@0.25.12': 1491 2905 optional: true 1492 2906 2907 + '@esbuild/openharmony-arm64@0.27.0': 2908 + optional: true 2909 + 1493 2910 '@esbuild/openharmony-arm64@0.27.4': 1494 2911 optional: true 1495 2912 1496 2913 '@esbuild/sunos-x64@0.25.12': 1497 2914 optional: true 1498 2915 2916 + '@esbuild/sunos-x64@0.27.0': 2917 + optional: true 2918 + 1499 2919 '@esbuild/sunos-x64@0.27.4': 1500 2920 optional: true 1501 2921 1502 2922 '@esbuild/win32-arm64@0.25.12': 1503 2923 optional: true 1504 2924 2925 + '@esbuild/win32-arm64@0.27.0': 2926 + optional: true 2927 + 1505 2928 '@esbuild/win32-arm64@0.27.4': 1506 2929 optional: true 1507 2930 1508 2931 '@esbuild/win32-ia32@0.25.12': 1509 2932 optional: true 1510 2933 2934 + '@esbuild/win32-ia32@0.27.0': 2935 + optional: true 2936 + 1511 2937 '@esbuild/win32-ia32@0.27.4': 1512 2938 optional: true 1513 2939 1514 2940 '@esbuild/win32-x64@0.25.12': 2941 + optional: true 2942 + 2943 + '@esbuild/win32-x64@0.27.0': 1515 2944 optional: true 1516 2945 1517 2946 '@esbuild/win32-x64@0.27.4': ··· 1535 2964 1536 2965 '@ewanc26/tid@1.1.3': {} 1537 2966 1538 - '@ewanc26/ui@0.3.8(@atproto/api@0.18.21)(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(tailwindcss@4.2.2)': 2967 + '@ewanc26/ui@0.3.8(@atproto/api@0.18.21)(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(tailwindcss@4.2.2)': 1539 2968 dependencies: 1540 2969 '@ewanc26/noise-avatar': 0.2.3 1541 2970 '@lucide/svelte': 0.577.0(svelte@5.54.1) 1542 - '@sveltejs/kit': 2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 2971 + '@sveltejs/kit': 2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 1543 2972 svelte: 5.54.1 1544 2973 tailwindcss: 4.2.2 1545 2974 optionalDependencies: ··· 1549 2978 1550 2979 '@ewanc26/utils@0.1.5': {} 1551 2980 2981 + '@fastify/busboy@2.1.1': {} 2982 + 2983 + '@isaacs/balanced-match@4.0.1': {} 2984 + 2985 + '@isaacs/brace-expansion@5.0.1': 2986 + dependencies: 2987 + '@isaacs/balanced-match': 4.0.1 2988 + 1552 2989 '@isaacs/fs-minipass@4.0.1': 1553 2990 dependencies: 1554 2991 minipass: 7.1.3 ··· 1593 3030 - encoding 1594 3031 - supports-color 1595 3032 3033 + '@napi-rs/wasm-runtime@1.1.3(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)': 3034 + dependencies: 3035 + '@emnapi/core': 1.9.2 3036 + '@emnapi/runtime': 1.9.2 3037 + '@tybys/wasm-util': 0.10.1 3038 + optional: true 3039 + 3040 + '@nodelib/fs.scandir@2.1.5': 3041 + dependencies: 3042 + '@nodelib/fs.stat': 2.0.5 3043 + run-parallel: 1.2.0 3044 + 3045 + '@nodelib/fs.stat@2.0.5': {} 3046 + 3047 + '@nodelib/fs.walk@1.2.8': 3048 + dependencies: 3049 + '@nodelib/fs.scandir': 2.1.5 3050 + fastq: 1.20.1 3051 + 3052 + '@oxc-project/types@0.110.0': {} 3053 + 3054 + '@oxc-transform/binding-android-arm-eabi@0.111.0': 3055 + optional: true 3056 + 3057 + '@oxc-transform/binding-android-arm64@0.111.0': 3058 + optional: true 3059 + 3060 + '@oxc-transform/binding-darwin-arm64@0.111.0': 3061 + optional: true 3062 + 3063 + '@oxc-transform/binding-darwin-x64@0.111.0': 3064 + optional: true 3065 + 3066 + '@oxc-transform/binding-freebsd-x64@0.111.0': 3067 + optional: true 3068 + 3069 + '@oxc-transform/binding-linux-arm-gnueabihf@0.111.0': 3070 + optional: true 3071 + 3072 + '@oxc-transform/binding-linux-arm-musleabihf@0.111.0': 3073 + optional: true 3074 + 3075 + '@oxc-transform/binding-linux-arm64-gnu@0.111.0': 3076 + optional: true 3077 + 3078 + '@oxc-transform/binding-linux-arm64-musl@0.111.0': 3079 + optional: true 3080 + 3081 + '@oxc-transform/binding-linux-ppc64-gnu@0.111.0': 3082 + optional: true 3083 + 3084 + '@oxc-transform/binding-linux-riscv64-gnu@0.111.0': 3085 + optional: true 3086 + 3087 + '@oxc-transform/binding-linux-riscv64-musl@0.111.0': 3088 + optional: true 3089 + 3090 + '@oxc-transform/binding-linux-s390x-gnu@0.111.0': 3091 + optional: true 3092 + 3093 + '@oxc-transform/binding-linux-x64-gnu@0.111.0': 3094 + optional: true 3095 + 3096 + '@oxc-transform/binding-linux-x64-musl@0.111.0': 3097 + optional: true 3098 + 3099 + '@oxc-transform/binding-openharmony-arm64@0.111.0': 3100 + optional: true 3101 + 3102 + '@oxc-transform/binding-wasm32-wasi@0.111.0(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)': 3103 + dependencies: 3104 + '@napi-rs/wasm-runtime': 1.1.3(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2) 3105 + transitivePeerDependencies: 3106 + - '@emnapi/core' 3107 + - '@emnapi/runtime' 3108 + optional: true 3109 + 3110 + '@oxc-transform/binding-win32-arm64-msvc@0.111.0': 3111 + optional: true 3112 + 3113 + '@oxc-transform/binding-win32-ia32-msvc@0.111.0': 3114 + optional: true 3115 + 3116 + '@oxc-transform/binding-win32-x64-msvc@0.111.0': 3117 + optional: true 3118 + 1596 3119 '@polka/url@1.0.0-next.29': {} 1597 3120 3121 + '@renovatebot/pep440@4.2.1': {} 3122 + 3123 + '@rolldown/binding-android-arm64@1.0.0-rc.1': 3124 + optional: true 3125 + 3126 + '@rolldown/binding-darwin-arm64@1.0.0-rc.1': 3127 + optional: true 3128 + 3129 + '@rolldown/binding-darwin-x64@1.0.0-rc.1': 3130 + optional: true 3131 + 3132 + '@rolldown/binding-freebsd-x64@1.0.0-rc.1': 3133 + optional: true 3134 + 3135 + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.1': 3136 + optional: true 3137 + 3138 + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.1': 3139 + optional: true 3140 + 3141 + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.1': 3142 + optional: true 3143 + 3144 + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.1': 3145 + optional: true 3146 + 3147 + '@rolldown/binding-linux-x64-musl@1.0.0-rc.1': 3148 + optional: true 3149 + 3150 + '@rolldown/binding-openharmony-arm64@1.0.0-rc.1': 3151 + optional: true 3152 + 3153 + '@rolldown/binding-wasm32-wasi@1.0.0-rc.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)': 3154 + dependencies: 3155 + '@napi-rs/wasm-runtime': 1.1.3(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2) 3156 + transitivePeerDependencies: 3157 + - '@emnapi/core' 3158 + - '@emnapi/runtime' 3159 + optional: true 3160 + 3161 + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.1': 3162 + optional: true 3163 + 3164 + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.1': 3165 + optional: true 3166 + 3167 + '@rolldown/pluginutils@1.0.0-rc.1': {} 3168 + 1598 3169 '@rollup/pluginutils@5.3.0(rollup@4.60.0)': 1599 3170 dependencies: 1600 3171 '@types/estree': 1.0.8 ··· 1678 3249 '@rollup/rollup-win32-x64-msvc@4.60.0': 1679 3250 optional: true 1680 3251 3252 + '@sinclair/typebox@0.25.24': {} 3253 + 1681 3254 '@standard-schema/spec@1.1.0': {} 1682 3255 1683 3256 '@sveltejs/acorn-typescript@1.0.9(acorn@8.16.0)': 1684 3257 dependencies: 1685 3258 acorn: 8.16.0 1686 3259 1687 - '@sveltejs/adapter-vercel@6.3.3(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(rollup@4.60.0)': 3260 + '@sveltejs/adapter-vercel@6.3.3(@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(rollup@4.60.0)': 1688 3261 dependencies: 1689 - '@sveltejs/kit': 2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 3262 + '@sveltejs/kit': 2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 1690 3263 '@vercel/nft': 1.5.0(rollup@4.60.0) 1691 3264 esbuild: 0.25.12 1692 3265 transitivePeerDependencies: ··· 1694 3267 - rollup 1695 3268 - supports-color 1696 3269 1697 - '@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0))': 3270 + '@sveltejs/kit@2.55.0(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0))': 1698 3271 dependencies: 1699 3272 '@standard-schema/spec': 1.1.0 1700 3273 '@sveltejs/acorn-typescript': 1.0.9(acorn@8.16.0) 1701 - '@sveltejs/vite-plugin-svelte': 6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 3274 + '@sveltejs/vite-plugin-svelte': 6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 1702 3275 '@types/cookie': 0.6.0 1703 3276 acorn: 8.16.0 1704 3277 cookie: 0.6.0 ··· 1710 3283 set-cookie-parser: 3.1.0 1711 3284 sirv: 3.0.2 1712 3285 svelte: 5.54.1 1713 - vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0) 3286 + vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0) 1714 3287 optionalDependencies: 1715 3288 typescript: 5.9.3 1716 3289 1717 - '@sveltejs/vite-plugin-svelte-inspector@5.0.2(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0))': 3290 + '@sveltejs/vite-plugin-svelte-inspector@5.0.2(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0))': 1718 3291 dependencies: 1719 - '@sveltejs/vite-plugin-svelte': 6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 3292 + '@sveltejs/vite-plugin-svelte': 6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 1720 3293 obug: 2.1.1 1721 3294 svelte: 5.54.1 1722 - vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0) 3295 + vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0) 1723 3296 1724 - '@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0))': 3297 + '@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0))': 1725 3298 dependencies: 1726 - '@sveltejs/vite-plugin-svelte-inspector': 5.0.2(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)))(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 3299 + '@sveltejs/vite-plugin-svelte-inspector': 5.0.2(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)))(svelte@5.54.1)(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 1727 3300 deepmerge: 4.3.1 1728 3301 magic-string: 0.30.21 1729 3302 obug: 2.1.1 1730 3303 svelte: 5.54.1 1731 - vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0) 1732 - vitefu: 1.1.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)) 3304 + vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0) 3305 + vitefu: 1.1.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)) 1733 3306 1734 3307 '@tailwindcss/node@4.2.2': 1735 3308 dependencies: ··· 1797 3370 postcss-selector-parser: 6.0.10 1798 3371 tailwindcss: 4.2.2 1799 3372 1800 - '@tailwindcss/vite@4.2.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0))': 3373 + '@tailwindcss/vite@4.2.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0))': 1801 3374 dependencies: 1802 3375 '@tailwindcss/node': 4.2.2 1803 3376 '@tailwindcss/oxide': 4.2.2 1804 3377 tailwindcss: 4.2.2 1805 - vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0) 3378 + vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0) 3379 + 3380 + '@tootallnate/once@2.0.0': {} 3381 + 3382 + '@tootallnate/quickjs-emscripten@0.23.0': {} 3383 + 3384 + '@ts-morph/common@0.11.1': 3385 + dependencies: 3386 + fast-glob: 3.3.3 3387 + minimatch: 3.1.5 3388 + mkdirp: 1.0.4 3389 + path-browserify: 1.0.1 3390 + 3391 + '@tybys/wasm-util@0.10.1': 3392 + dependencies: 3393 + tslib: 2.8.1 3394 + optional: true 1806 3395 1807 3396 '@types/cookie@0.6.0': {} 1808 3397 1809 3398 '@types/estree@1.0.8': {} 1810 3399 3400 + '@types/json-schema@7.0.15': {} 3401 + 3402 + '@types/node@20.11.0': 3403 + dependencies: 3404 + undici-types: 5.26.5 3405 + 1811 3406 '@types/node@25.5.0': 1812 3407 dependencies: 1813 3408 undici-types: 7.18.2 ··· 1816 3411 1817 3412 '@typescript-eslint/types@8.57.1': {} 1818 3413 3414 + '@vercel/backends@0.0.57(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3)': 3415 + dependencies: 3416 + '@vercel/build-utils': 13.14.0 3417 + '@vercel/nft': 1.5.0(rollup@4.60.0) 3418 + execa: 3.2.0 3419 + fs-extra: 11.1.0 3420 + oxc-transform: 0.111.0(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2) 3421 + path-to-regexp: 8.3.0 3422 + resolve.exports: 2.0.3 3423 + rolldown: 1.0.0-rc.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2) 3424 + srvx: 0.8.9 3425 + tsx: 4.21.0 3426 + typescript: 5.9.3 3427 + zod: 3.22.4 3428 + transitivePeerDependencies: 3429 + - '@emnapi/core' 3430 + - '@emnapi/runtime' 3431 + - encoding 3432 + - rollup 3433 + - supports-color 3434 + 3435 + '@vercel/blob@2.3.0': 3436 + dependencies: 3437 + async-retry: 1.3.3 3438 + is-buffer: 2.0.5 3439 + is-node-process: 1.2.0 3440 + throttleit: 2.1.0 3441 + undici: 6.24.1 3442 + 3443 + '@vercel/build-utils@13.14.0': 3444 + dependencies: 3445 + '@vercel/python-analysis': 0.11.0 3446 + cjs-module-lexer: 1.2.3 3447 + es-module-lexer: 1.5.0 3448 + 3449 + '@vercel/cervel@0.0.44(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3)': 3450 + dependencies: 3451 + '@vercel/backends': 0.0.57(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3) 3452 + typescript: 5.9.3 3453 + transitivePeerDependencies: 3454 + - '@emnapi/core' 3455 + - '@emnapi/runtime' 3456 + - encoding 3457 + - rollup 3458 + - supports-color 3459 + 3460 + '@vercel/detect-agent@1.2.1': {} 3461 + 3462 + '@vercel/elysia@0.1.60(rollup@4.60.0)': 3463 + dependencies: 3464 + '@vercel/node': 5.7.2(rollup@4.60.0) 3465 + '@vercel/static-config': 3.2.0 3466 + transitivePeerDependencies: 3467 + - encoding 3468 + - rollup 3469 + - supports-color 3470 + 3471 + '@vercel/error-utils@2.0.3': {} 3472 + 3473 + '@vercel/express@0.1.70(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3)': 3474 + dependencies: 3475 + '@vercel/cervel': 0.0.44(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3) 3476 + '@vercel/nft': 1.5.0(rollup@4.60.0) 3477 + '@vercel/node': 5.7.2(rollup@4.60.0) 3478 + '@vercel/static-config': 3.2.0 3479 + fs-extra: 11.1.0 3480 + path-to-regexp: 8.3.0 3481 + ts-morph: 12.0.0 3482 + zod: 3.22.4 3483 + transitivePeerDependencies: 3484 + - '@emnapi/core' 3485 + - '@emnapi/runtime' 3486 + - encoding 3487 + - rollup 3488 + - supports-color 3489 + - typescript 3490 + 3491 + '@vercel/fastify@0.1.63(rollup@4.60.0)': 3492 + dependencies: 3493 + '@vercel/node': 5.7.2(rollup@4.60.0) 3494 + '@vercel/static-config': 3.2.0 3495 + transitivePeerDependencies: 3496 + - encoding 3497 + - rollup 3498 + - supports-color 3499 + 3500 + '@vercel/fun@1.3.0': 3501 + dependencies: 3502 + '@tootallnate/once': 2.0.0 3503 + async-listen: 1.2.0 3504 + debug: 4.3.4 3505 + generic-pool: 3.4.2 3506 + micro: 9.3.5-canary.3 3507 + ms: 2.1.1 3508 + node-fetch: 2.6.7 3509 + path-to-regexp: 8.2.0 3510 + promisepipe: 3.0.0 3511 + semver: 7.5.4 3512 + stat-mode: 0.3.0 3513 + stream-to-promise: 2.2.0 3514 + tar: 7.5.7 3515 + tinyexec: 0.3.2 3516 + tree-kill: 1.2.2 3517 + uid-promise: 1.0.0 3518 + xdg-app-paths: 5.1.0 3519 + yauzl-promise: 2.1.3 3520 + transitivePeerDependencies: 3521 + - encoding 3522 + - supports-color 3523 + 3524 + '@vercel/gatsby-plugin-vercel-analytics@1.0.11': 3525 + dependencies: 3526 + web-vitals: 0.2.4 3527 + 3528 + '@vercel/gatsby-plugin-vercel-builder@2.1.10': 3529 + dependencies: 3530 + '@sinclair/typebox': 0.25.24 3531 + '@vercel/build-utils': 13.14.0 3532 + esbuild: 0.27.0 3533 + etag: 1.8.1 3534 + fs-extra: 11.1.0 3535 + 3536 + '@vercel/go@3.4.7': {} 3537 + 3538 + '@vercel/h3@0.1.69(rollup@4.60.0)': 3539 + dependencies: 3540 + '@vercel/node': 5.7.2(rollup@4.60.0) 3541 + '@vercel/static-config': 3.2.0 3542 + transitivePeerDependencies: 3543 + - encoding 3544 + - rollup 3545 + - supports-color 3546 + 3547 + '@vercel/hono@0.2.63(rollup@4.60.0)': 3548 + dependencies: 3549 + '@vercel/nft': 1.5.0(rollup@4.60.0) 3550 + '@vercel/node': 5.7.2(rollup@4.60.0) 3551 + '@vercel/static-config': 3.2.0 3552 + fs-extra: 11.1.0 3553 + path-to-regexp: 8.3.0 3554 + ts-morph: 12.0.0 3555 + zod: 3.22.4 3556 + transitivePeerDependencies: 3557 + - encoding 3558 + - rollup 3559 + - supports-color 3560 + 3561 + '@vercel/hydrogen@1.3.6': 3562 + dependencies: 3563 + '@vercel/static-config': 3.2.0 3564 + ts-morph: 12.0.0 3565 + 3566 + '@vercel/koa@0.1.43(rollup@4.60.0)': 3567 + dependencies: 3568 + '@vercel/node': 5.7.2(rollup@4.60.0) 3569 + '@vercel/static-config': 3.2.0 3570 + transitivePeerDependencies: 3571 + - encoding 3572 + - rollup 3573 + - supports-color 3574 + 3575 + '@vercel/nestjs@0.2.64(rollup@4.60.0)': 3576 + dependencies: 3577 + '@vercel/node': 5.7.2(rollup@4.60.0) 3578 + '@vercel/static-config': 3.2.0 3579 + transitivePeerDependencies: 3580 + - encoding 3581 + - rollup 3582 + - supports-color 3583 + 3584 + '@vercel/next@4.16.5(rollup@4.60.0)': 3585 + dependencies: 3586 + '@vercel/nft': 1.5.0(rollup@4.60.0) 3587 + transitivePeerDependencies: 3588 + - encoding 3589 + - rollup 3590 + - supports-color 3591 + 1819 3592 '@vercel/nft@1.5.0(rollup@4.60.0)': 1820 3593 dependencies: 1821 3594 '@mapbox/node-pre-gyp': 2.0.3 ··· 1835 3608 - rollup 1836 3609 - supports-color 1837 3610 3611 + '@vercel/node@5.7.2(rollup@4.60.0)': 3612 + dependencies: 3613 + '@edge-runtime/node-utils': 2.3.0 3614 + '@edge-runtime/primitives': 4.1.0 3615 + '@edge-runtime/vm': 3.2.0 3616 + '@types/node': 20.11.0 3617 + '@vercel/build-utils': 13.14.0 3618 + '@vercel/error-utils': 2.0.3 3619 + '@vercel/nft': 1.5.0(rollup@4.60.0) 3620 + '@vercel/static-config': 3.2.0 3621 + async-listen: 3.0.0 3622 + cjs-module-lexer: 1.2.3 3623 + edge-runtime: 2.5.9 3624 + es-module-lexer: 1.4.1 3625 + esbuild: 0.27.0 3626 + etag: 1.8.1 3627 + mime-types: 2.1.35 3628 + node-fetch: 2.6.9 3629 + path-to-regexp: 6.1.0 3630 + path-to-regexp-updated: path-to-regexp@6.3.0 3631 + ts-morph: 12.0.0 3632 + tsx: 4.21.0 3633 + typescript: 5.9.3 3634 + undici: 5.28.4 3635 + transitivePeerDependencies: 3636 + - encoding 3637 + - rollup 3638 + - supports-color 3639 + 3640 + '@vercel/oidc@3.2.0': {} 3641 + 3642 + '@vercel/prepare-flags-definitions@0.2.1': {} 3643 + 3644 + '@vercel/python-analysis@0.11.0': 3645 + dependencies: 3646 + '@bytecodealliance/preview2-shim': 0.17.6 3647 + '@renovatebot/pep440': 4.2.1 3648 + fs-extra: 11.1.1 3649 + js-yaml: 4.1.1 3650 + minimatch: 10.1.1 3651 + smol-toml: 1.5.2 3652 + zod: 3.22.4 3653 + 3654 + '@vercel/python@6.29.0': 3655 + dependencies: 3656 + '@vercel/python-analysis': 0.11.0 3657 + 3658 + '@vercel/redwood@2.4.12(rollup@4.60.0)': 3659 + dependencies: 3660 + '@vercel/nft': 1.5.0(rollup@4.60.0) 3661 + '@vercel/static-config': 3.2.0 3662 + semver: 6.3.1 3663 + ts-morph: 12.0.0 3664 + transitivePeerDependencies: 3665 + - encoding 3666 + - rollup 3667 + - supports-color 3668 + 3669 + '@vercel/remix-builder@5.7.2(rollup@4.60.0)': 3670 + dependencies: 3671 + '@vercel/error-utils': 2.0.3 3672 + '@vercel/nft': 1.5.0(rollup@4.60.0) 3673 + '@vercel/static-config': 3.2.0 3674 + path-to-regexp: 6.1.0 3675 + path-to-regexp-updated: path-to-regexp@6.3.0 3676 + ts-morph: 12.0.0 3677 + transitivePeerDependencies: 3678 + - encoding 3679 + - rollup 3680 + - supports-color 3681 + 3682 + '@vercel/ruby@2.3.2': {} 3683 + 3684 + '@vercel/rust@1.1.0': 3685 + dependencies: 3686 + execa: 5.1.1 3687 + smol-toml: 1.5.2 3688 + 3689 + '@vercel/sandbox@1.9.0': 3690 + dependencies: 3691 + '@vercel/oidc': 3.2.0 3692 + async-retry: 1.3.3 3693 + jsonlines: 0.1.1 3694 + ms: 2.1.3 3695 + picocolors: 1.1.1 3696 + tar-stream: 3.1.7 3697 + undici: 7.24.7 3698 + xdg-app-paths: 5.1.0 3699 + zod: 3.24.4 3700 + transitivePeerDependencies: 3701 + - bare-abort-controller 3702 + - react-native-b4a 3703 + 3704 + '@vercel/static-build@2.9.10': 3705 + dependencies: 3706 + '@vercel/gatsby-plugin-vercel-analytics': 1.0.11 3707 + '@vercel/gatsby-plugin-vercel-builder': 2.1.10 3708 + '@vercel/static-config': 3.2.0 3709 + ts-morph: 12.0.0 3710 + 3711 + '@vercel/static-config@3.2.0': 3712 + dependencies: 3713 + ajv: 8.6.3 3714 + json-schema-to-ts: 1.6.4 3715 + ts-morph: 12.0.0 3716 + 1838 3717 abbrev@3.0.1: {} 1839 3718 1840 3719 acorn-import-attributes@1.9.5(acorn@8.16.0): ··· 1845 3724 1846 3725 agent-base@7.1.4: {} 1847 3726 3727 + ajv@8.6.3: 3728 + dependencies: 3729 + fast-deep-equal: 3.1.3 3730 + json-schema-traverse: 1.0.0 3731 + require-from-string: 2.0.2 3732 + uri-js: 4.4.1 3733 + 3734 + any-promise@1.3.0: {} 3735 + 3736 + arg@4.1.0: {} 3737 + 3738 + argparse@2.0.1: {} 3739 + 1848 3740 aria-query@5.3.1: {} 1849 3741 3742 + ast-types@0.13.4: 3743 + dependencies: 3744 + tslib: 2.8.1 3745 + 3746 + async-listen@1.2.0: {} 3747 + 3748 + async-listen@3.0.0: {} 3749 + 3750 + async-listen@3.0.1: {} 3751 + 3752 + async-retry@1.3.3: 3753 + dependencies: 3754 + retry: 0.13.1 3755 + 1850 3756 async-sema@3.1.1: {} 1851 3757 3758 + asynckit@0.4.0: {} 3759 + 1852 3760 await-lock@2.2.2: {} 1853 3761 1854 3762 axobject-query@4.1.0: {} 1855 3763 3764 + b4a@1.8.0: {} 3765 + 3766 + balanced-match@1.0.2: {} 3767 + 1856 3768 balanced-match@4.0.4: {} 1857 3769 3770 + bare-events@2.8.2: {} 3771 + 3772 + basic-ftp@5.2.1: {} 3773 + 1858 3774 bindings@1.5.0: 1859 3775 dependencies: 1860 3776 file-uri-to-path: 1.0.0 1861 3777 3778 + brace-expansion@1.1.13: 3779 + dependencies: 3780 + balanced-match: 1.0.2 3781 + concat-map: 0.0.1 3782 + 1862 3783 brace-expansion@5.0.4: 1863 3784 dependencies: 1864 3785 balanced-match: 4.0.4 1865 3786 3787 + braces@3.0.3: 3788 + dependencies: 3789 + fill-range: 7.1.1 3790 + 3791 + buffer-crc32@0.2.13: {} 3792 + 3793 + bytes@3.1.0: {} 3794 + 3795 + call-bind-apply-helpers@1.0.2: 3796 + dependencies: 3797 + es-errors: 1.3.0 3798 + function-bind: 1.1.2 3799 + 3800 + chokidar@4.0.0: 3801 + dependencies: 3802 + readdirp: 4.1.2 3803 + 1866 3804 chokidar@4.0.3: 1867 3805 dependencies: 1868 3806 readdirp: 4.1.2 1869 3807 1870 3808 chownr@3.0.0: {} 1871 3809 3810 + cjs-module-lexer@1.2.3: {} 3811 + 1872 3812 clsx@2.1.1: {} 1873 3813 3814 + code-block-writer@10.1.1: {} 3815 + 3816 + combined-stream@1.0.8: 3817 + dependencies: 3818 + delayed-stream: 1.0.0 3819 + 3820 + concat-map@0.0.1: {} 3821 + 1874 3822 consola@3.4.2: {} 1875 3823 3824 + content-type@1.0.4: {} 3825 + 3826 + convert-hrtime@3.0.0: {} 3827 + 3828 + cookie-es@2.0.1: {} 3829 + 1876 3830 cookie@0.6.0: {} 1877 3831 3832 + cross-spawn@7.0.6: 3833 + dependencies: 3834 + path-key: 3.1.1 3835 + shebang-command: 2.0.0 3836 + which: 2.0.2 3837 + 1878 3838 cssesc@3.0.0: {} 1879 3839 3840 + data-uri-to-buffer@6.0.2: {} 3841 + 3842 + debug@4.3.4: 3843 + dependencies: 3844 + ms: 2.1.2 3845 + 1880 3846 debug@4.4.3: 1881 3847 dependencies: 1882 3848 ms: 2.1.3 1883 3849 1884 3850 deepmerge@4.3.1: {} 1885 3851 3852 + degenerator@5.0.1: 3853 + dependencies: 3854 + ast-types: 0.13.4 3855 + escodegen: 2.1.0 3856 + esprima: 4.0.1 3857 + 3858 + delayed-stream@1.0.0: {} 3859 + 3860 + depd@1.1.2: {} 3861 + 1886 3862 detect-libc@2.1.2: {} 1887 3863 1888 3864 devalue@5.6.4: {} 1889 3865 3866 + dunder-proto@1.0.1: 3867 + dependencies: 3868 + call-bind-apply-helpers: 1.0.2 3869 + es-errors: 1.3.0 3870 + gopd: 1.2.0 3871 + 3872 + edge-runtime@2.5.9: 3873 + dependencies: 3874 + '@edge-runtime/format': 2.2.1 3875 + '@edge-runtime/ponyfill': 2.4.2 3876 + '@edge-runtime/vm': 3.2.0 3877 + async-listen: 3.0.1 3878 + mri: 1.2.0 3879 + picocolors: 1.0.0 3880 + pretty-ms: 7.0.1 3881 + signal-exit: 4.0.2 3882 + time-span: 4.0.0 3883 + 3884 + end-of-stream@1.1.0: 3885 + dependencies: 3886 + once: 1.3.3 3887 + 3888 + end-of-stream@1.4.5: 3889 + dependencies: 3890 + once: 1.4.0 3891 + 1890 3892 enhanced-resolve@5.20.1: 1891 3893 dependencies: 1892 3894 graceful-fs: 4.2.11 1893 3895 tapable: 2.3.0 1894 3896 3897 + es-define-property@1.0.1: {} 3898 + 3899 + es-errors@1.3.0: {} 3900 + 3901 + es-module-lexer@1.4.1: {} 3902 + 3903 + es-module-lexer@1.5.0: {} 3904 + 3905 + es-object-atoms@1.1.1: 3906 + dependencies: 3907 + es-errors: 1.3.0 3908 + 3909 + es-set-tostringtag@2.1.0: 3910 + dependencies: 3911 + es-errors: 1.3.0 3912 + get-intrinsic: 1.3.0 3913 + has-tostringtag: 1.0.2 3914 + hasown: 2.0.2 3915 + 1895 3916 esbuild@0.25.12: 1896 3917 optionalDependencies: 1897 3918 '@esbuild/aix-ppc64': 0.25.12 ··· 1921 3942 '@esbuild/win32-ia32': 0.25.12 1922 3943 '@esbuild/win32-x64': 0.25.12 1923 3944 3945 + esbuild@0.27.0: 3946 + optionalDependencies: 3947 + '@esbuild/aix-ppc64': 0.27.0 3948 + '@esbuild/android-arm': 0.27.0 3949 + '@esbuild/android-arm64': 0.27.0 3950 + '@esbuild/android-x64': 0.27.0 3951 + '@esbuild/darwin-arm64': 0.27.0 3952 + '@esbuild/darwin-x64': 0.27.0 3953 + '@esbuild/freebsd-arm64': 0.27.0 3954 + '@esbuild/freebsd-x64': 0.27.0 3955 + '@esbuild/linux-arm': 0.27.0 3956 + '@esbuild/linux-arm64': 0.27.0 3957 + '@esbuild/linux-ia32': 0.27.0 3958 + '@esbuild/linux-loong64': 0.27.0 3959 + '@esbuild/linux-mips64el': 0.27.0 3960 + '@esbuild/linux-ppc64': 0.27.0 3961 + '@esbuild/linux-riscv64': 0.27.0 3962 + '@esbuild/linux-s390x': 0.27.0 3963 + '@esbuild/linux-x64': 0.27.0 3964 + '@esbuild/netbsd-arm64': 0.27.0 3965 + '@esbuild/netbsd-x64': 0.27.0 3966 + '@esbuild/openbsd-arm64': 0.27.0 3967 + '@esbuild/openbsd-x64': 0.27.0 3968 + '@esbuild/openharmony-arm64': 0.27.0 3969 + '@esbuild/sunos-x64': 0.27.0 3970 + '@esbuild/win32-arm64': 0.27.0 3971 + '@esbuild/win32-ia32': 0.27.0 3972 + '@esbuild/win32-x64': 0.27.0 3973 + 1924 3974 esbuild@0.27.4: 1925 3975 optionalDependencies: 1926 3976 '@esbuild/aix-ppc64': 0.27.4 ··· 1950 4000 '@esbuild/win32-ia32': 0.27.4 1951 4001 '@esbuild/win32-x64': 0.27.4 1952 4002 4003 + escodegen@2.1.0: 4004 + dependencies: 4005 + esprima: 4.0.1 4006 + estraverse: 5.3.0 4007 + esutils: 2.0.3 4008 + optionalDependencies: 4009 + source-map: 0.6.1 4010 + 1953 4011 esm-env@1.2.2: {} 4012 + 4013 + esprima@4.0.1: {} 1954 4014 1955 4015 esrap@2.2.4: 1956 4016 dependencies: 1957 4017 '@jridgewell/sourcemap-codec': 1.5.5 1958 4018 '@typescript-eslint/types': 8.57.1 1959 4019 4020 + estraverse@5.3.0: {} 4021 + 1960 4022 estree-walker@2.0.2: {} 1961 4023 4024 + esutils@2.0.3: {} 4025 + 4026 + etag@1.8.1: {} 4027 + 4028 + events-intercept@2.0.0: {} 4029 + 4030 + events-universal@1.0.1: 4031 + dependencies: 4032 + bare-events: 2.8.2 4033 + transitivePeerDependencies: 4034 + - bare-abort-controller 4035 + 4036 + execa@3.2.0: 4037 + dependencies: 4038 + cross-spawn: 7.0.6 4039 + get-stream: 5.2.0 4040 + human-signals: 1.1.1 4041 + is-stream: 2.0.1 4042 + merge-stream: 2.0.0 4043 + npm-run-path: 4.0.1 4044 + onetime: 5.1.2 4045 + p-finally: 2.0.1 4046 + signal-exit: 3.0.7 4047 + strip-final-newline: 2.0.0 4048 + 4049 + execa@5.1.1: 4050 + dependencies: 4051 + cross-spawn: 7.0.6 4052 + get-stream: 6.0.1 4053 + human-signals: 2.1.0 4054 + is-stream: 2.0.1 4055 + merge-stream: 2.0.0 4056 + npm-run-path: 4.0.1 4057 + onetime: 5.1.2 4058 + signal-exit: 3.0.7 4059 + strip-final-newline: 2.0.0 4060 + 4061 + fast-deep-equal@3.1.3: {} 4062 + 4063 + fast-fifo@1.3.2: {} 4064 + 4065 + fast-glob@3.3.3: 4066 + dependencies: 4067 + '@nodelib/fs.stat': 2.0.5 4068 + '@nodelib/fs.walk': 1.2.8 4069 + glob-parent: 5.1.2 4070 + merge2: 1.4.1 4071 + micromatch: 4.0.8 4072 + 4073 + fastq@1.20.1: 4074 + dependencies: 4075 + reusify: 1.1.0 4076 + 4077 + fd-slicer@1.1.0: 4078 + dependencies: 4079 + pend: 1.2.0 4080 + 1962 4081 fdir@6.5.0(picomatch@4.0.3): 1963 4082 optionalDependencies: 1964 4083 picomatch: 4.0.3 1965 4084 1966 4085 file-uri-to-path@1.0.0: {} 1967 4086 4087 + fill-range@7.1.1: 4088 + dependencies: 4089 + to-regex-range: 5.0.1 4090 + 4091 + form-data@4.0.5: 4092 + dependencies: 4093 + asynckit: 0.4.0 4094 + combined-stream: 1.0.8 4095 + es-set-tostringtag: 2.1.0 4096 + hasown: 2.0.2 4097 + mime-types: 2.1.35 4098 + 4099 + fs-extra@11.1.0: 4100 + dependencies: 4101 + graceful-fs: 4.2.11 4102 + jsonfile: 6.2.0 4103 + universalify: 2.0.1 4104 + 4105 + fs-extra@11.1.1: 4106 + dependencies: 4107 + graceful-fs: 4.2.11 4108 + jsonfile: 6.2.0 4109 + universalify: 2.0.1 4110 + 1968 4111 fsevents@2.3.3: 1969 4112 optional: true 1970 4113 4114 + function-bind@1.1.2: {} 4115 + 4116 + generic-pool@3.4.2: {} 4117 + 4118 + get-intrinsic@1.3.0: 4119 + dependencies: 4120 + call-bind-apply-helpers: 1.0.2 4121 + es-define-property: 1.0.1 4122 + es-errors: 1.3.0 4123 + es-object-atoms: 1.1.1 4124 + function-bind: 1.1.2 4125 + get-proto: 1.0.1 4126 + gopd: 1.2.0 4127 + has-symbols: 1.1.0 4128 + hasown: 2.0.2 4129 + math-intrinsics: 1.1.0 4130 + 4131 + get-proto@1.0.1: 4132 + dependencies: 4133 + dunder-proto: 1.0.1 4134 + es-object-atoms: 1.1.1 4135 + 4136 + get-stream@5.2.0: 4137 + dependencies: 4138 + pump: 3.0.4 4139 + 4140 + get-stream@6.0.1: {} 4141 + 4142 + get-tsconfig@4.13.7: 4143 + dependencies: 4144 + resolve-pkg-maps: 1.0.0 4145 + 4146 + get-uri@6.0.5: 4147 + dependencies: 4148 + basic-ftp: 5.2.1 4149 + data-uri-to-buffer: 6.0.2 4150 + debug: 4.4.3 4151 + transitivePeerDependencies: 4152 + - supports-color 4153 + 4154 + glob-parent@5.1.2: 4155 + dependencies: 4156 + is-glob: 4.0.3 4157 + 1971 4158 glob@13.0.6: 1972 4159 dependencies: 1973 4160 minimatch: 10.2.4 1974 4161 minipass: 7.1.3 1975 4162 path-scurry: 2.0.2 1976 4163 4164 + gopd@1.2.0: {} 4165 + 1977 4166 graceful-fs@4.2.11: {} 1978 4167 4168 + has-symbols@1.1.0: {} 4169 + 4170 + has-tostringtag@1.0.2: 4171 + dependencies: 4172 + has-symbols: 1.1.0 4173 + 4174 + hasown@2.0.2: 4175 + dependencies: 4176 + function-bind: 1.1.2 4177 + 1979 4178 hls.js@1.6.15: {} 1980 4179 4180 + http-errors@1.7.3: 4181 + dependencies: 4182 + depd: 1.1.2 4183 + inherits: 2.0.4 4184 + setprototypeof: 1.1.1 4185 + statuses: 1.5.0 4186 + toidentifier: 1.0.0 4187 + 4188 + http-proxy-agent@7.0.2: 4189 + dependencies: 4190 + agent-base: 7.1.4 4191 + debug: 4.4.3 4192 + transitivePeerDependencies: 4193 + - supports-color 4194 + 1981 4195 https-proxy-agent@7.0.6: 1982 4196 dependencies: 1983 4197 agent-base: 7.1.4 ··· 1985 4199 transitivePeerDependencies: 1986 4200 - supports-color 1987 4201 4202 + human-signals@1.1.1: {} 4203 + 4204 + human-signals@2.1.0: {} 4205 + 4206 + iconv-lite@0.4.24: 4207 + dependencies: 4208 + safer-buffer: 2.1.2 4209 + 4210 + inherits@2.0.4: {} 4211 + 4212 + ip-address@10.1.0: {} 4213 + 4214 + is-buffer@2.0.5: {} 4215 + 4216 + is-extglob@2.1.1: {} 4217 + 4218 + is-glob@4.0.3: 4219 + dependencies: 4220 + is-extglob: 2.1.1 4221 + 4222 + is-node-process@1.2.0: {} 4223 + 4224 + is-number@7.0.0: {} 4225 + 1988 4226 is-reference@3.0.3: 1989 4227 dependencies: 1990 4228 '@types/estree': 1.0.8 1991 4229 4230 + is-stream@2.0.1: {} 4231 + 4232 + isexe@2.0.0: {} 4233 + 1992 4234 iso-datestring-validator@2.2.2: {} 1993 4235 1994 4236 jiti@2.6.1: {} 1995 4237 4238 + jose@5.9.6: {} 4239 + 4240 + js-yaml@4.1.1: 4241 + dependencies: 4242 + argparse: 2.0.1 4243 + 4244 + json-schema-to-ts@1.6.4: 4245 + dependencies: 4246 + '@types/json-schema': 7.0.15 4247 + ts-toolbelt: 6.15.5 4248 + 4249 + json-schema-traverse@1.0.0: {} 4250 + 4251 + jsonfile@6.2.0: 4252 + dependencies: 4253 + universalify: 2.0.1 4254 + optionalDependencies: 4255 + graceful-fs: 4.2.11 4256 + 4257 + jsonlines@0.1.1: {} 4258 + 1996 4259 kleur@4.1.5: {} 1997 4260 1998 4261 lightningcss-android-arm64@1.32.0: ··· 2048 4311 2049 4312 lru-cache@11.2.7: {} 2050 4313 4314 + lru-cache@6.0.0: 4315 + dependencies: 4316 + yallist: 4.0.0 4317 + 4318 + lru-cache@7.18.3: {} 4319 + 4320 + luxon@3.7.2: {} 4321 + 2051 4322 magic-string@0.30.21: 2052 4323 dependencies: 2053 4324 '@jridgewell/sourcemap-codec': 1.5.5 2054 4325 4326 + math-intrinsics@1.1.0: {} 4327 + 4328 + merge-stream@2.0.0: {} 4329 + 4330 + merge2@1.4.1: {} 4331 + 4332 + micro@9.3.5-canary.3: 4333 + dependencies: 4334 + arg: 4.1.0 4335 + content-type: 1.0.4 4336 + raw-body: 2.4.1 4337 + 4338 + micromatch@4.0.8: 4339 + dependencies: 4340 + braces: 3.0.3 4341 + picomatch: 2.3.2 4342 + 4343 + mime-db@1.52.0: {} 4344 + 4345 + mime-types@2.1.35: 4346 + dependencies: 4347 + mime-db: 1.52.0 4348 + 4349 + mimic-fn@2.1.0: {} 4350 + 4351 + minimatch@10.1.1: 4352 + dependencies: 4353 + '@isaacs/brace-expansion': 5.0.1 4354 + 2055 4355 minimatch@10.2.4: 2056 4356 dependencies: 2057 4357 brace-expansion: 5.0.4 2058 4358 4359 + minimatch@3.1.5: 4360 + dependencies: 4361 + brace-expansion: 1.1.13 4362 + 2059 4363 minipass@7.1.3: {} 2060 4364 2061 4365 minizlib@3.1.0: 2062 4366 dependencies: 2063 4367 minipass: 7.1.3 4368 + 4369 + mkdirp@1.0.4: {} 2064 4370 2065 4371 mri@1.2.0: {} 2066 4372 2067 4373 mrmime@2.0.1: {} 2068 4374 4375 + ms@2.1.1: {} 4376 + 4377 + ms@2.1.2: {} 4378 + 2069 4379 ms@2.1.3: {} 2070 4380 2071 4381 multiformats@9.9.0: {} 2072 4382 2073 4383 nanoid@3.3.11: {} 2074 4384 4385 + netmask@2.1.1: {} 4386 + 4387 + node-fetch@2.6.7: 4388 + dependencies: 4389 + whatwg-url: 5.0.0 4390 + 4391 + node-fetch@2.6.9: 4392 + dependencies: 4393 + whatwg-url: 5.0.0 4394 + 2075 4395 node-fetch@2.7.0: 2076 4396 dependencies: 2077 4397 whatwg-url: 5.0.0 ··· 2081 4401 nopt@8.1.0: 2082 4402 dependencies: 2083 4403 abbrev: 3.0.1 4404 + 4405 + npm-run-path@4.0.1: 4406 + dependencies: 4407 + path-key: 3.1.1 2084 4408 2085 4409 obug@2.1.1: {} 2086 4410 4411 + once@1.3.3: 4412 + dependencies: 4413 + wrappy: 1.0.2 4414 + 4415 + once@1.4.0: 4416 + dependencies: 4417 + wrappy: 1.0.2 4418 + 4419 + onetime@5.1.2: 4420 + dependencies: 4421 + mimic-fn: 2.1.0 4422 + 4423 + os-paths@4.4.0: {} 4424 + 4425 + oxc-transform@0.111.0(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2): 4426 + optionalDependencies: 4427 + '@oxc-transform/binding-android-arm-eabi': 0.111.0 4428 + '@oxc-transform/binding-android-arm64': 0.111.0 4429 + '@oxc-transform/binding-darwin-arm64': 0.111.0 4430 + '@oxc-transform/binding-darwin-x64': 0.111.0 4431 + '@oxc-transform/binding-freebsd-x64': 0.111.0 4432 + '@oxc-transform/binding-linux-arm-gnueabihf': 0.111.0 4433 + '@oxc-transform/binding-linux-arm-musleabihf': 0.111.0 4434 + '@oxc-transform/binding-linux-arm64-gnu': 0.111.0 4435 + '@oxc-transform/binding-linux-arm64-musl': 0.111.0 4436 + '@oxc-transform/binding-linux-ppc64-gnu': 0.111.0 4437 + '@oxc-transform/binding-linux-riscv64-gnu': 0.111.0 4438 + '@oxc-transform/binding-linux-riscv64-musl': 0.111.0 4439 + '@oxc-transform/binding-linux-s390x-gnu': 0.111.0 4440 + '@oxc-transform/binding-linux-x64-gnu': 0.111.0 4441 + '@oxc-transform/binding-linux-x64-musl': 0.111.0 4442 + '@oxc-transform/binding-openharmony-arm64': 0.111.0 4443 + '@oxc-transform/binding-wasm32-wasi': 0.111.0(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2) 4444 + '@oxc-transform/binding-win32-arm64-msvc': 0.111.0 4445 + '@oxc-transform/binding-win32-ia32-msvc': 0.111.0 4446 + '@oxc-transform/binding-win32-x64-msvc': 0.111.0 4447 + transitivePeerDependencies: 4448 + - '@emnapi/core' 4449 + - '@emnapi/runtime' 4450 + 4451 + p-finally@2.0.1: {} 4452 + 4453 + pac-proxy-agent@7.2.0: 4454 + dependencies: 4455 + '@tootallnate/quickjs-emscripten': 0.23.0 4456 + agent-base: 7.1.4 4457 + debug: 4.4.3 4458 + get-uri: 6.0.5 4459 + http-proxy-agent: 7.0.2 4460 + https-proxy-agent: 7.0.6 4461 + pac-resolver: 7.0.1 4462 + socks-proxy-agent: 8.0.5 4463 + transitivePeerDependencies: 4464 + - supports-color 4465 + 4466 + pac-resolver@7.0.1: 4467 + dependencies: 4468 + degenerator: 5.0.1 4469 + netmask: 2.1.1 4470 + 4471 + parse-ms@2.1.0: {} 4472 + 4473 + path-browserify@1.0.1: {} 4474 + 4475 + path-key@3.1.1: {} 4476 + 2087 4477 path-scurry@2.0.2: 2088 4478 dependencies: 2089 4479 lru-cache: 11.2.7 2090 4480 minipass: 7.1.3 2091 4481 4482 + path-to-regexp@6.1.0: {} 4483 + 4484 + path-to-regexp@6.3.0: {} 4485 + 4486 + path-to-regexp@8.2.0: {} 4487 + 4488 + path-to-regexp@8.3.0: {} 4489 + 4490 + pend@1.2.0: {} 4491 + 4492 + picocolors@1.0.0: {} 4493 + 2092 4494 picocolors@1.1.1: {} 4495 + 4496 + picomatch@2.3.2: {} 2093 4497 2094 4498 picomatch@4.0.3: {} 2095 4499 ··· 2117 4521 2118 4522 prettier@3.8.1: {} 2119 4523 4524 + pretty-ms@7.0.1: 4525 + dependencies: 4526 + parse-ms: 2.1.0 4527 + 4528 + promisepipe@3.0.0: {} 4529 + 4530 + proxy-agent@6.4.0: 4531 + dependencies: 4532 + agent-base: 7.1.4 4533 + debug: 4.4.3 4534 + http-proxy-agent: 7.0.2 4535 + https-proxy-agent: 7.0.6 4536 + lru-cache: 7.18.3 4537 + pac-proxy-agent: 7.2.0 4538 + proxy-from-env: 1.1.0 4539 + socks-proxy-agent: 8.0.5 4540 + transitivePeerDependencies: 4541 + - supports-color 4542 + 4543 + proxy-from-env@1.1.0: {} 4544 + 4545 + pump@3.0.4: 4546 + dependencies: 4547 + end-of-stream: 1.4.5 4548 + once: 1.4.0 4549 + 4550 + punycode@2.3.1: {} 4551 + 4552 + queue-microtask@1.2.3: {} 4553 + 4554 + raw-body@2.4.1: 4555 + dependencies: 4556 + bytes: 3.1.0 4557 + http-errors: 1.7.3 4558 + iconv-lite: 0.4.24 4559 + unpipe: 1.0.0 4560 + 2120 4561 readdirp@4.1.2: {} 2121 4562 4563 + require-from-string@2.0.2: {} 4564 + 2122 4565 resolve-from@5.0.0: {} 2123 4566 4567 + resolve-pkg-maps@1.0.0: {} 4568 + 4569 + resolve.exports@2.0.3: {} 4570 + 4571 + retry@0.13.1: {} 4572 + 4573 + reusify@1.1.0: {} 4574 + 4575 + rolldown@1.0.0-rc.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2): 4576 + dependencies: 4577 + '@oxc-project/types': 0.110.0 4578 + '@rolldown/pluginutils': 1.0.0-rc.1 4579 + optionalDependencies: 4580 + '@rolldown/binding-android-arm64': 1.0.0-rc.1 4581 + '@rolldown/binding-darwin-arm64': 1.0.0-rc.1 4582 + '@rolldown/binding-darwin-x64': 1.0.0-rc.1 4583 + '@rolldown/binding-freebsd-x64': 1.0.0-rc.1 4584 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.1 4585 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.1 4586 + '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.1 4587 + '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.1 4588 + '@rolldown/binding-linux-x64-musl': 1.0.0-rc.1 4589 + '@rolldown/binding-openharmony-arm64': 1.0.0-rc.1 4590 + '@rolldown/binding-wasm32-wasi': 1.0.0-rc.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2) 4591 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.1 4592 + '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.1 4593 + transitivePeerDependencies: 4594 + - '@emnapi/core' 4595 + - '@emnapi/runtime' 4596 + 2124 4597 rollup@4.60.0: 2125 4598 dependencies: 2126 4599 '@types/estree': 1.0.8 ··· 2152 4625 '@rollup/rollup-win32-x64-msvc': 4.60.0 2153 4626 fsevents: 2.3.3 2154 4627 4628 + run-parallel@1.2.0: 4629 + dependencies: 4630 + queue-microtask: 1.2.3 4631 + 2155 4632 sade@1.8.1: 2156 4633 dependencies: 2157 4634 mri: 1.2.0 2158 4635 4636 + safer-buffer@2.1.2: {} 4637 + 4638 + sandbox@2.5.6: 4639 + dependencies: 4640 + '@vercel/sandbox': 1.9.0 4641 + debug: 4.4.3 4642 + zod: 4.3.6 4643 + transitivePeerDependencies: 4644 + - bare-abort-controller 4645 + - react-native-b4a 4646 + - supports-color 4647 + 4648 + semver@6.3.1: {} 4649 + 4650 + semver@7.5.4: 4651 + dependencies: 4652 + lru-cache: 6.0.0 4653 + 2159 4654 semver@7.7.4: {} 2160 4655 2161 4656 set-cookie-parser@3.1.0: {} 2162 4657 4658 + setprototypeof@1.1.1: {} 4659 + 4660 + shebang-command@2.0.0: 4661 + dependencies: 4662 + shebang-regex: 3.0.0 4663 + 4664 + shebang-regex@3.0.0: {} 4665 + 4666 + signal-exit@3.0.7: {} 4667 + 4668 + signal-exit@4.0.2: {} 4669 + 2163 4670 sirv@3.0.2: 2164 4671 dependencies: 2165 4672 '@polka/url': 1.0.0-next.29 2166 4673 mrmime: 2.0.1 2167 4674 totalist: 3.0.1 4675 + 4676 + smart-buffer@4.2.0: {} 4677 + 4678 + smol-toml@1.5.2: {} 4679 + 4680 + socks-proxy-agent@8.0.5: 4681 + dependencies: 4682 + agent-base: 7.1.4 4683 + debug: 4.4.3 4684 + socks: 2.8.7 4685 + transitivePeerDependencies: 4686 + - supports-color 4687 + 4688 + socks@2.8.7: 4689 + dependencies: 4690 + ip-address: 10.1.0 4691 + smart-buffer: 4.2.0 2168 4692 2169 4693 source-map-js@1.2.1: {} 2170 4694 4695 + source-map@0.6.1: 4696 + optional: true 4697 + 4698 + srvx@0.8.9: 4699 + dependencies: 4700 + cookie-es: 2.0.1 4701 + 4702 + stat-mode@0.3.0: {} 4703 + 4704 + statuses@1.5.0: {} 4705 + 4706 + stream-to-array@2.3.0: 4707 + dependencies: 4708 + any-promise: 1.3.0 4709 + 4710 + stream-to-promise@2.2.0: 4711 + dependencies: 4712 + any-promise: 1.3.0 4713 + end-of-stream: 1.1.0 4714 + stream-to-array: 2.3.0 4715 + 4716 + streamx@2.25.0: 4717 + dependencies: 4718 + events-universal: 1.0.1 4719 + fast-fifo: 1.3.2 4720 + text-decoder: 1.2.7 4721 + transitivePeerDependencies: 4722 + - bare-abort-controller 4723 + - react-native-b4a 4724 + 4725 + strip-final-newline@2.0.0: {} 4726 + 2171 4727 svelte-check@4.4.5(picomatch@4.0.3)(svelte@5.54.1)(typescript@5.9.3): 2172 4728 dependencies: 2173 4729 '@jridgewell/trace-mapping': 0.3.31 ··· 2203 4759 2204 4760 tapable@2.3.0: {} 2205 4761 4762 + tar-stream@3.1.7: 4763 + dependencies: 4764 + b4a: 1.8.0 4765 + fast-fifo: 1.3.2 4766 + streamx: 2.25.0 4767 + transitivePeerDependencies: 4768 + - bare-abort-controller 4769 + - react-native-b4a 4770 + 2206 4771 tar@7.5.12: 2207 4772 dependencies: 2208 4773 '@isaacs/fs-minipass': 4.0.1 ··· 2211 4776 minizlib: 3.1.0 2212 4777 yallist: 5.0.0 2213 4778 4779 + tar@7.5.7: 4780 + dependencies: 4781 + '@isaacs/fs-minipass': 4.0.1 4782 + chownr: 3.0.0 4783 + minipass: 7.1.3 4784 + minizlib: 3.1.0 4785 + yallist: 5.0.0 4786 + 4787 + text-decoder@1.2.7: 4788 + dependencies: 4789 + b4a: 1.8.0 4790 + transitivePeerDependencies: 4791 + - react-native-b4a 4792 + 4793 + throttleit@2.1.0: {} 4794 + 4795 + time-span@4.0.0: 4796 + dependencies: 4797 + convert-hrtime: 3.0.0 4798 + 4799 + tinyexec@0.3.2: {} 4800 + 2214 4801 tinyglobby@0.2.15: 2215 4802 dependencies: 2216 4803 fdir: 6.5.0(picomatch@4.0.3) ··· 2218 4805 2219 4806 tlds@1.261.0: {} 2220 4807 4808 + to-regex-range@5.0.1: 4809 + dependencies: 4810 + is-number: 7.0.0 4811 + 4812 + toidentifier@1.0.0: {} 4813 + 2221 4814 totalist@3.0.1: {} 2222 4815 2223 4816 tr46@0.0.3: {} 2224 4817 4818 + tree-kill@1.2.2: {} 4819 + 4820 + ts-morph@12.0.0: 4821 + dependencies: 4822 + '@ts-morph/common': 0.11.1 4823 + code-block-writer: 10.1.1 4824 + 4825 + ts-toolbelt@6.15.5: {} 4826 + 2225 4827 tslib@2.8.1: {} 2226 4828 4829 + tsx@4.21.0: 4830 + dependencies: 4831 + esbuild: 0.27.4 4832 + get-tsconfig: 4.13.7 4833 + optionalDependencies: 4834 + fsevents: 2.3.3 4835 + 2227 4836 typescript@5.9.3: {} 2228 4837 4838 + uid-promise@1.0.0: {} 4839 + 2229 4840 uint8arrays@3.0.0: 2230 4841 dependencies: 2231 4842 multiformats: 9.9.0 4843 + 4844 + undici-types@5.26.5: {} 2232 4845 2233 4846 undici-types@7.18.2: {} 4847 + 4848 + undici@5.28.4: 4849 + dependencies: 4850 + '@fastify/busboy': 2.1.1 4851 + 4852 + undici@6.24.1: {} 4853 + 4854 + undici@7.24.7: {} 2234 4855 2235 4856 unicode-segmenter@0.14.5: {} 2236 4857 4858 + universalify@2.0.1: {} 4859 + 4860 + unpipe@1.0.0: {} 4861 + 4862 + uri-js@4.4.1: 4863 + dependencies: 4864 + punycode: 2.3.1 4865 + 2237 4866 util-deprecate@1.0.2: {} 2238 4867 2239 - vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0): 4868 + vercel@50.42.0(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3): 4869 + dependencies: 4870 + '@vercel/backends': 0.0.57(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3) 4871 + '@vercel/blob': 2.3.0 4872 + '@vercel/build-utils': 13.14.0 4873 + '@vercel/detect-agent': 1.2.1 4874 + '@vercel/elysia': 0.1.60(rollup@4.60.0) 4875 + '@vercel/express': 0.1.70(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(rollup@4.60.0)(typescript@5.9.3) 4876 + '@vercel/fastify': 0.1.63(rollup@4.60.0) 4877 + '@vercel/fun': 1.3.0 4878 + '@vercel/go': 3.4.7 4879 + '@vercel/h3': 0.1.69(rollup@4.60.0) 4880 + '@vercel/hono': 0.2.63(rollup@4.60.0) 4881 + '@vercel/hydrogen': 1.3.6 4882 + '@vercel/koa': 0.1.43(rollup@4.60.0) 4883 + '@vercel/nestjs': 0.2.64(rollup@4.60.0) 4884 + '@vercel/next': 4.16.5(rollup@4.60.0) 4885 + '@vercel/node': 5.7.2(rollup@4.60.0) 4886 + '@vercel/prepare-flags-definitions': 0.2.1 4887 + '@vercel/python': 6.29.0 4888 + '@vercel/redwood': 2.4.12(rollup@4.60.0) 4889 + '@vercel/remix-builder': 5.7.2(rollup@4.60.0) 4890 + '@vercel/ruby': 2.3.2 4891 + '@vercel/rust': 1.1.0 4892 + '@vercel/static-build': 2.9.10 4893 + chokidar: 4.0.0 4894 + esbuild: 0.27.0 4895 + form-data: 4.0.5 4896 + jose: 5.9.6 4897 + luxon: 3.7.2 4898 + proxy-agent: 6.4.0 4899 + sandbox: 2.5.6 4900 + smol-toml: 1.5.2 4901 + transitivePeerDependencies: 4902 + - '@emnapi/core' 4903 + - '@emnapi/runtime' 4904 + - bare-abort-controller 4905 + - encoding 4906 + - react-native-b4a 4907 + - rollup 4908 + - supports-color 4909 + - typescript 4910 + 4911 + vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0): 2240 4912 dependencies: 2241 4913 esbuild: 0.27.4 2242 4914 fdir: 6.5.0(picomatch@4.0.3) ··· 2249 4921 fsevents: 2.3.3 2250 4922 jiti: 2.6.1 2251 4923 lightningcss: 1.32.0 4924 + tsx: 4.21.0 2252 4925 2253 - vitefu@1.1.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)): 4926 + vitefu@1.1.2(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0)): 2254 4927 optionalDependencies: 2255 - vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0) 4928 + vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(tsx@4.21.0) 4929 + 4930 + web-vitals@0.2.4: {} 2256 4931 2257 4932 webidl-conversions@3.0.1: {} 2258 4933 ··· 2261 4936 tr46: 0.0.3 2262 4937 webidl-conversions: 3.0.1 2263 4938 4939 + which@2.0.2: 4940 + dependencies: 4941 + isexe: 2.0.0 4942 + 4943 + wrappy@1.0.2: {} 4944 + 4945 + xdg-app-paths@5.1.0: 4946 + dependencies: 4947 + xdg-portable: 7.3.0 4948 + 4949 + xdg-portable@7.3.0: 4950 + dependencies: 4951 + os-paths: 4.4.0 4952 + 4953 + yallist@4.0.0: {} 4954 + 2264 4955 yallist@5.0.0: {} 2265 4956 4957 + yauzl-clone@1.0.4: 4958 + dependencies: 4959 + events-intercept: 2.0.0 4960 + 4961 + yauzl-promise@2.1.3: 4962 + dependencies: 4963 + yauzl: 2.10.0 4964 + yauzl-clone: 1.0.4 4965 + 4966 + yauzl@2.10.0: 4967 + dependencies: 4968 + buffer-crc32: 0.2.13 4969 + fd-slicer: 1.1.0 4970 + 2266 4971 zimmerframe@1.1.4: {} 2267 4972 4973 + zod@3.22.4: {} 4974 + 4975 + zod@3.24.4: {} 4976 + 2268 4977 zod@3.25.76: {} 4978 + 4979 + zod@4.3.6: {}
+2 -16
src/lib/components/seo/MetaTags.svelte
··· 4 4 interface Props { 5 5 meta: SiteMetadata; 6 6 siteMeta: SiteMetadata; 7 - apInstanceUrl?: string | null; 8 - apUsername?: string | null; 7 + fediverseCreator?: string | null; 9 8 } 10 9 11 - let { meta, siteMeta, apInstanceUrl, apUsername }: Props = $props(); 12 - 13 - // Reactive computed values for fediverse:creator meta tag 14 - const instanceDomain = $derived(apInstanceUrl ? new URL(apInstanceUrl).hostname : null); 15 - const fediverseCreator = $derived( 16 - apUsername && instanceDomain ? `${apUsername}@${instanceDomain}` : null 17 - ); 10 + let { meta, siteMeta, fediverseCreator }: Props = $props(); 18 11 19 - // Merge with defaults 20 12 const finalMeta = $derived({ 21 13 title: meta.title || siteMeta.title, 22 14 description: meta.description || siteMeta.description, ··· 32 24 <title>{finalMeta.title}</title> 33 25 <meta name="description" content={finalMeta.description} /> 34 26 <meta name="keywords" content={finalMeta.keywords} /> 35 - 36 - <!-- Open Graph / Facebook --> 37 27 <meta property="og:type" content="website" /> 38 28 <meta property="og:url" content={finalMeta.url} /> 39 29 <meta property="og:title" content={finalMeta.title} /> ··· 46 36 {#if finalMeta.imageHeight} 47 37 <meta property="og:image:height" content={finalMeta.imageHeight.toString()} /> 48 38 {/if} 49 - 50 - <!-- Fediverse --> 51 39 {#if fediverseCreator} 52 40 <meta name="fediverse:creator" content={fediverseCreator} /> 53 41 {/if} 54 - 55 - <!-- Twitter --> 56 42 <meta name="twitter:card" content="summary_large_image" /> 57 43 <meta name="twitter:url" content={finalMeta.url} /> 58 44 <meta name="twitter:title" content={finalMeta.title} />
+11 -1
src/routes/+layout.svelte
··· 51 51 ...data.meta 52 52 }) 53 53 ); 54 + 55 + // Compute fediverse:creator from AP instance and username 56 + const fediverseCreator = $derived(() => { 57 + if (!data.apInstanceUrl || !data.apUsername) return null; 58 + try { 59 + return `${data.apUsername}@${new URL(data.apInstanceUrl).hostname}`; 60 + } catch { 61 + return null; 62 + } 63 + })(); 54 64 </script> 55 65 56 66 <svelte:head> ··· 83 93 </svelte:head> 84 94 85 95 <!-- Bespoke MetaTags component --> 86 - <MetaTags meta={headMeta} siteMeta={data.siteMeta} apInstanceUrl={data.apInstanceUrl} apUsername={data.apUsername} /> 96 + <MetaTags meta={headMeta} siteMeta={data.siteMeta} fediverseCreator={fediverseCreator} /> 87 97 88 98 <div 89 99 class="flex min-h-screen flex-col overflow-x-hidden bg-canvas-50 text-ink-900 dark:bg-canvas-950 dark:text-ink-50"