From 6bcbd5400bd723d0c1255907ddb217cfe9c63633 Mon Sep 17 00:00:00 2001 From: yusufipk Date: Wed, 2 Sep 2026 22:05:58 +0300 Subject: [PATCH] Rewrite dashboard and overlay, single /events stream, static client served by the backend Backend: one SSE stream for messages, selection, poll and connection status; reconnect with backoff; no on-disk Innertube session cache; mock only with MOCK_CHAT=1; binds to 127.0.0.1; serves client/out so production runs on one port. Full URLs for links YouTube truncates in chat. Client: components split out, Lucide icons, stream title and status, on-air strip, search, pause, keyboard shortcuts, overlay settings dialog. Overlay themes, position, size, animation and auto-hide via URL, sized for 1080p and scaled with the source. New blueprint theme for the brand background. Removed Tailwind, better-sqlite3, zod, the timezone helpers, Cline memory bank and AGENTS.md. Added ESLint, node:test tests and CI. --- .github/workflows/ci.yml | 22 + .gitignore | 3 +- AGENTS.md | 121 - README.md | 60 +- backend/src/imageProxy.ts | 81 + backend/src/index.ts | 626 ++-- backend/src/ingestion/youtubei.test.ts | 30 + backend/src/ingestion/youtubei.ts | 438 +-- backend/src/liveId.test.ts | 36 + backend/src/liveId.ts | 23 + backend/tsconfig.build.json | 6 +- client/.eslintrc.yaml | 5 + client/app/dashboard/page.tsx | 872 +----- client/app/globals.css | 2219 ++++++------- client/app/layout.tsx | 11 +- client/app/overlay/page.tsx | 253 +- client/app/page.tsx | 23 +- client/components/Badges.tsx | 36 + client/components/ChatList.tsx | 78 + client/components/ConnectForm.tsx | 43 + client/components/MessageBody.tsx | 56 + client/components/MessageCard.tsx | 62 + client/components/OnAir.tsx | 36 + client/components/OverlaySettings.tsx | 108 + client/components/TopBar.tsx | 78 + client/lib/TimezoneContext.tsx | 43 - client/lib/api.ts | 29 + client/lib/config.ts | 2 + client/lib/format.ts | 27 + client/lib/imageProxy.ts | 22 +- client/lib/overlayOptions.ts | 48 + client/lib/timezone.ts | 98 - client/lib/useEvents.ts | 91 + client/next.config.js | 9 +- docs/dashboard.png | Bin 0 -> 783392 bytes memory-bank/activeContext.md | 46 - memory-bank/productContext.md | 20 - memory-bank/progress.md | 65 - memory-bank/projectbrief.md | 21 - memory-bank/systemPatterns.md | 26 - memory-bank/techContext.md | 23 - package.json | 33 +- pnpm-lock.yaml | 4004 ++++++++++++++++++++++++ shared/chat.ts | 44 +- 44 files changed, 6582 insertions(+), 3395 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 AGENTS.md create mode 100644 backend/src/imageProxy.ts create mode 100644 backend/src/ingestion/youtubei.test.ts create mode 100644 backend/src/liveId.test.ts create mode 100644 backend/src/liveId.ts create mode 100644 client/.eslintrc.yaml create mode 100644 client/components/Badges.tsx create mode 100644 client/components/ChatList.tsx create mode 100644 client/components/ConnectForm.tsx create mode 100644 client/components/MessageBody.tsx create mode 100644 client/components/MessageCard.tsx create mode 100644 client/components/OnAir.tsx create mode 100644 client/components/OverlaySettings.tsx create mode 100644 client/components/TopBar.tsx delete mode 100644 client/lib/TimezoneContext.tsx create mode 100644 client/lib/api.ts create mode 100644 client/lib/config.ts create mode 100644 client/lib/format.ts create mode 100644 client/lib/overlayOptions.ts delete mode 100644 client/lib/timezone.ts create mode 100644 client/lib/useEvents.ts create mode 100644 docs/dashboard.png delete mode 100644 memory-bank/activeContext.md delete mode 100644 memory-bank/productContext.md delete mode 100644 memory-bank/progress.md delete mode 100644 memory-bank/projectbrief.md delete mode 100644 memory-bank/systemPatterns.md delete mode 100644 memory-bank/techContext.md create mode 100644 pnpm-lock.yaml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..96a3462 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,22 @@ +name: CI + +on: + push: + branches: [master] + pull_request: + +jobs: + check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: pnpm/action-setup@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + cache: pnpm + - run: pnpm install --frozen-lockfile + - run: pnpm typecheck + - run: pnpm lint + - run: pnpm test + - run: pnpm build diff --git a/.gitignore b/.gitignore index 2022aeb..50fe8e6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ node_modules -pnpm-lock.yaml .env.local .env .DS_Store @@ -33,3 +32,5 @@ node_modules/ # Task files and project management .taskmaster/ prd.txt +.pnpm-store +*.tsbuildinfo diff --git a/AGENTS.md b/AGENTS.md deleted file mode 100644 index c7958ee..0000000 --- a/AGENTS.md +++ /dev/null @@ -1,121 +0,0 @@ -# Cline's Memory Bank - -I am Cline, an expert software engineer with a unique characteristic: my memory resets completely between sessions. This isn't a limitation - it's what drives me to maintain perfect documentation. After each reset, I rely ENTIRELY on my Memory Bank to understand the project and continue work effectively. I MUST read ALL memory bank files at the start of EVERY task - this is not optional. - -## Memory Bank Structure - -The Memory Bank consists of core files and optional context files, all in Markdown format. Files build upon each other in a clear hierarchy: - -flowchart TD -PB[projectbrief.md] --> PC[productContext.md] -PB --> SP[systemPatterns.md] -PB --> TC[techContext.md] - - PC --> AC[activeContext.md] - SP --> AC - TC --> AC - - AC --> P[progress.md] - -### Core Files (Required) - -1. `projectbrief.md` - - Foundation document that shapes all other files - - Created at project start if it doesn't exist - - Defines core requirements and goals - - Source of truth for project scope - -2. `productContext.md` - - Why this project exists - - Problems it solves - - How it should work - - User experience goals - -3. `activeContext.md` - - Current work focus - - Recent changes - - Next steps - - Active decisions and considerations - - Important patterns and preferences - - Learnings and project insights - -4. `systemPatterns.md` - - System architecture - - Key technical decisions - - Design patterns in use - - Component relationships - - Critical implementation paths - -5. `techContext.md` - - Technologies used - - Development setup - - Technical constraints - - Dependencies - - Tool usage patterns - -6. `progress.md` - - What works - - What's left to build - - Current status - - Known issues - - Evolution of project decisions - -### Additional Context - -Create additional files/folders within memory-bank/ when they help organize: - -- Complex feature documentation -- Integration specifications -- API documentation -- Testing strategies -- Deployment procedures - -## Core Workflows - -### Plan Mode - -flowchart TD -Start[Start] --> ReadFiles[Read Memory Bank] -ReadFiles --> CheckFiles{Files Complete?} - - CheckFiles -->|No| Plan[Create Plan] - Plan --> Document[Document in Chat] - - CheckFiles -->|Yes| Verify[Verify Context] - Verify --> Strategy[Develop Strategy] - Strategy --> Present[Present Approach] - -### Act Mode - -flowchart TD -Start[Start] --> Context[Check Memory Bank] -Context --> Update[Update Documentation] -Update --> Execute[Execute Task] -Execute --> Document[Document Changes] - -## Documentation Updates - -Memory Bank updates occur when: - -1. Discovering new project patterns -2. After implementing significant changes -3. When user requests with **update memory bank** (MUST review ALL files) -4. When context needs clarification - -flowchart TD -Start[Update Process] - - subgraph Process - P1[Review ALL Files] - P2[Document Current State] - P3[Clarify Next Steps] - P4[Document Insights & Patterns] - - P1 --> P2 --> P3 --> P4 - end - - Start --> Process - -Note: When triggered by **update memory bank**, I MUST review every memory bank file, even if some don't require updates. Focus particularly on activeContext.md and progress.md as they track current state. - -REMEMBER: After every memory reset, I begin completely fresh. The Memory Bank is my only link to previous work. It must be maintained with precision and clarity, as my effectiveness depends entirely on its accuracy. diff --git a/README.md b/README.md index b2c3703..92cc47c 100644 --- a/README.md +++ b/README.md @@ -1,55 +1,25 @@ -# YouTube Live Chat Client (WIP) +# YTChatHub -Build a desktop-operated, open-source YouTube Live chat client that delivers a fast, reliable stream of messages and allows a streamer to spotlight a selected chat message on an OBS-ready overlay. +![Dashboard during a live stream](docs/dashboard.png) -Currently work in progress bugs might be there. +Open-source YouTube Live chat client for streamers. Watch the chat in a fast dashboard, click a message and it appears on an OBS browser-source overlay. Super Chats, super stickers, memberships, gifted memberships, badges, custom emojis and the chat leaderboard are all shown. Long links in chat arrive with their full URL, not the truncated text YouTube displays. -## Key Features +## Running it -- **High-Performance Chat**: A sleek, minimal dashboard for monitoring YouTube Live chat in real-time. -- **OBS Integration**: Select any message to instantly display it on an OBS-ready overlay. -- **Rich Message Support**: Full support for Super Chats, gifted memberships, and user badges. -- **Compact and Efficient**: A dark, minimalist UI designed to be space-efficient and easy on the eyes. -- **Intelligent Auto-Scroll**: The chat automatically scrolls to new messages but stops when you scroll up to read previous messages. - -## Getting Started - -Follow these instructions to set up the project for local development. - -### Prerequisites - -- [Node.js](https://nodejs.org/) (v20.x or later) -- [pnpm](https://pnpm.io/) - -### Installation - -1. **Clone the repository:** - - ```bash - git clone https://github.com/yusufipk/YTChatHub - cd YTChatHub - ``` - -2. **Install dependencies:** - - ```bash - pnpm install - ``` - -### Running the Application - -To start the development server for both the backend and frontend, run: +Requires Node.js 20+ and pnpm. ```bash -pnpm dev +pnpm install +pnpm build +pnpm start ``` -- The dashboard will be available at `http://localhost:3000/dashboard`. -- The OBS overlay will be available at `http://localhost:3000/overlay`. +Open `http://localhost:4100`, paste the live stream URL or video id, and add the overlay URL from the dashboard's Overlay button as an OBS Browser Source. The overlay's theme, position, size, animation and auto-hide are set in that URL, so different sources can look different. -## Technology Stack +`pnpm dev` runs the backend on 4100 and the Next.js client on 3100 with hot reload. Optional environment variables: `YOUTUBE_LIVE_ID` connects at startup, `PORT` and `HOST` change where the backend listens (it binds to 127.0.0.1 by default), `MOCK_CHAT=1` generates fake messages when nothing is connected. -- **Frontend**: [Next.js](https://nextjs.org/) (React) -- **Backend**: [Node.js](https://nodejs.org/) with [Fastify](https://www.fastify.io/) and [tsx](https://github.com/esbuild-kit/tsx) -- **YouTube Integration**: [youtubei.js](https://github.com/LuanRT/YouTube.js) -- **Styling**: Handcrafted CSS +Keyboard: `/` focuses search, `P` pauses the chat, `Esc` clears the overlay. + +## Stack + +Fastify backend with [youtubei.js](https://github.com/LuanRT/YouTube.js) for chat ingestion, one Server-Sent Events stream for messages, selection and connection status, and a Next.js static export served by the same backend. Chat runs entirely on your machine; YouTube CDN images are proxied and cached locally so OBS never hits rate limits. diff --git a/backend/src/imageProxy.ts b/backend/src/imageProxy.ts new file mode 100644 index 0000000..ca46650 --- /dev/null +++ b/backend/src/imageProxy.ts @@ -0,0 +1,81 @@ +import type { FastifyInstance, FastifyReply } from 'fastify'; +import crypto from 'crypto'; + +type CachedImage = { buffer: Buffer; contentType: string; timestamp: number }; + +const ALLOWED_HOSTS = ['yt3.ggpht.com', 'yt4.ggpht.com', 'i.ytimg.com', 'lh3.googleusercontent.com']; +const CACHE_TTL = 1000 * 60 * 60 * 24; +const MAX_CACHE_SIZE = 1000; +const USER_AGENT = + 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'; + +const imageCache = new Map(); + +function sendImage(reply: FastifyReply, image: CachedImage) { + reply.header('Content-Type', image.contentType); + reply.header('Cache-Control', 'public, max-age=86400'); + reply.header('Access-Control-Allow-Origin', '*'); + return reply.send(image.buffer); +} + +/** GET /proxy/image?url= fetches YouTube CDN images through the backend so the browser does not hit CDN rate limits. */ +export function registerImageProxy(fastify: FastifyInstance): void { + fastify.get<{ Querystring: { url?: string } }>('/proxy/image', async (request, reply) => { + const { url } = request.query; + if (!url || typeof url !== 'string') { + reply.status(400); + return { error: 'url parameter is required' }; + } + + try { + if (!ALLOWED_HOSTS.includes(new URL(url).hostname)) { + reply.status(403); + return { error: 'Only YouTube CDN and Google User Content URLs are allowed' }; + } + } catch { + reply.status(400); + return { error: 'Invalid URL' }; + } + + const cacheKey = crypto.createHash('md5').update(url).digest('hex'); + const cached = imageCache.get(cacheKey); + if (cached && Date.now() - cached.timestamp < CACHE_TTL) { + return sendImage(reply, cached); + } + + try { + const response = await fetch(url, { + headers: { 'User-Agent': USER_AGENT, Referer: 'https://www.youtube.com/' } + }); + + if (!response.ok) { + if (response.status === 429) { + console.warn('[Backend] Rate limited by YouTube CDN for:', url); + if (cached) return sendImage(reply, cached); + } + throw new Error(`Failed to fetch image: ${response.status}`); + } + + const image: CachedImage = { + buffer: Buffer.from(await response.arrayBuffer()), + contentType: response.headers.get('content-type') || 'image/jpeg', + timestamp: Date.now() + }; + imageCache.set(cacheKey, image); + + if (imageCache.size > MAX_CACHE_SIZE) { + // Drop the oldest 20% so eviction is not a per-request cost. + const entries = Array.from(imageCache.entries()).sort((a, b) => a[1].timestamp - b[1].timestamp); + for (const [key] of entries.slice(0, Math.floor(MAX_CACHE_SIZE * 0.2))) imageCache.delete(key); + } + + return sendImage(reply, image); + } catch (error) { + console.error('[Backend] Failed to proxy image:', error); + // A stale copy beats a broken avatar. + if (cached) return sendImage(reply, cached); + reply.status(500); + return { error: 'Failed to fetch image' }; + } + }); +} diff --git a/backend/src/index.ts b/backend/src/index.ts index 2603074..64de7b8 100644 --- a/backend/src/index.ts +++ b/backend/src/index.ts @@ -1,473 +1,291 @@ import Fastify from 'fastify'; import cors from '@fastify/cors'; +import fastifyStatic from '@fastify/static'; import EventEmitter from 'eventemitter3'; -import type { ChatMessage, Poll } from '@shared/chat'; +import { existsSync } from 'fs'; +import type { OutgoingHttpHeaders, ServerResponse } from 'http'; +import path from 'path'; +import type { ChatMessage, ConnectionStatus, Poll, ServerEvent } from '@shared/chat'; import { bootstrapInnertube, type IngestionContext } from './ingestion/youtubei'; -import crypto from 'crypto'; +import { registerImageProxy } from './imageProxy'; +import { extractLiveId } from './liveId'; -const MAX_MESSAGES = 500; -const MAX_REGULAR_MESSAGES = 200; // Keep fewer regular messages +const MAX_REGULAR_MESSAGES = 200; +const MAX_SPECIAL_MESSAGES = 500; +const RETRY_LIMIT = 30; +const RETRY_BASE_MS = 2000; +const RETRY_CAP_MS = 30_000; +const HEARTBEAT_MS = 15_000; +const CORS_ORIGINS = ['http://localhost:3100', 'http://127.0.0.1:3100']; -// Simple in-memory cache for images -const imageCache = new Map(); -const CACHE_TTL = 1000 * 60 * 60 * 24; // 24 hours -const MAX_CACHE_SIZE = 1000; // Maximum number of cached images +type Bus = EventEmitter<{ event: (event: ServerEvent) => void }>; + +const isSpecial = (m: ChatMessage) => !!(m.superChat || m.membershipGift || m.membershipGiftPurchase); +const errorText = (e: unknown) => (e instanceof Error ? e.message : String(e)); + +/** Drops the oldest messages of each class past its cap, in place, without allocating. */ +function trimMessages(store: ChatMessage[]): void { + let regular = 0; + let special = 0; + for (const m of store) isSpecial(m) ? special++ : regular++; + let dropRegular = Math.max(0, regular - MAX_REGULAR_MESSAGES); + let dropSpecial = Math.max(0, special - MAX_SPECIAL_MESSAGES); + if (!dropRegular && !dropSpecial) return; + + let write = 0; + for (const m of store) { + if (isSpecial(m) ? dropSpecial > 0 : dropRegular > 0) { + isSpecial(m) ? dropSpecial-- : dropRegular--; + continue; + } + store[write++] = m; + } + store.length = write; +} + +function writeEvent(res: ServerResponse, event: ServerEvent): void { + res.write(`event: ${event.type}\ndata: ${JSON.stringify(event)}\n\n`); +} export async function startBackend() { - const fastify = Fastify({ - logger: { - level: 'warn', // Only show warnings and errors, not every request - } - }); - - // Register CORS before any routes - await fastify.register(cors, { - origin: '*', - methods: ['GET', 'POST', 'DELETE', 'OPTIONS', 'PUT', 'PATCH'], - allowedHeaders: ['Content-Type', 'Authorization'], - credentials: false - }); + const fastify = Fastify({ logger: { level: 'warn' } }); + await fastify.register(cors, { origin: CORS_ORIGINS, methods: ['GET', 'POST', 'DELETE', 'OPTIONS'] }); const store: ChatMessage[] = []; - let currentSelection: ChatMessage | null = null; - let currentPoll: Poll | null = null; - const overlayEmitter = new EventEmitter<{ update: (message: ChatMessage | null) => void }>(); - const pollEmitter = new EventEmitter<{ update: (poll: Poll | null) => void }>(); - - const rawLiveId = process.env.YOUTUBE_LIVE_ID ?? ''; - const parsedLiveId = extractLiveId(rawLiveId); - const shouldMock = !parsedLiveId; - + const bus: Bus = new EventEmitter(); + const mockEnabled = process.env.MOCK_CHAT === '1'; + let selection: ChatMessage | null = null; + let poll: Poll | null = null; + let status: ConnectionStatus = { state: 'disconnected', liveId: null, title: null, error: null }; let ingestion: IngestionContext | null = null; - let mockInterval: NodeJS.Timeout | null = null; + let retryTimer: NodeJS.Timeout | null = null; + let mockTimer: NodeJS.Timeout | null = null; + // Bumped whenever the active connection changes so a bootstrap that resolves late is discarded. + let generation = 0; - if (!shouldMock) { - try { - console.log(`[Backend] Connecting to YouTube Live ID: ${parsedLiveId}`); - ingestion = await bootstrapInnertube(parsedLiveId); - console.log(`[Backend] ✓ YouTube chat connected successfully`); - ingestion.emitter.on('message', (message) => { - store.push(message); - // Trim regularly to keep regular messages under control - // This ensures we don't wait until hitting MAX_MESSAGES - trimMessages(store); - }); - ingestion.emitter.on('poll', (poll) => { - currentPoll = poll; - pollEmitter.emit('update', poll); - }); - ingestion.emitter.on('error', (error) => { - console.error('[Backend] Innertube ingestion error:', error); - }); - } catch (error) { - console.error('[Backend] Failed to bootstrap Innertube; falling back to mock data:', error); - } - } else { - console.log('[Backend] No YOUTUBE_LIVE_ID found, running in mock mode'); + const emit = (event: ServerEvent) => bus.emit('event', event); + + function setStatus(patch: Partial) { + status = { ...status, ...patch }; + emit({ type: 'status', status }); } - if (!ingestion) { - mockInterval = seedMockMessages(store, overlayEmitter); + function pushMessage(message: ChatMessage) { + store.push(message); + trimMessages(store); + emit({ type: 'message', message }); + } + + function setSelection(message: ChatMessage | null) { + selection = message; + emit({ type: 'selection', message }); + } + + function setPoll(next: Poll | null) { + poll = next; + emit({ type: 'poll', poll: next }); + } + + function clearStore() { + store.length = 0; + emit({ type: 'clear' }); + if (selection) setSelection(null); + if (poll) setPoll(null); + } + + function startMock() { + if (mockTimer || !mockEnabled) return; + console.log('[Backend] MOCK_CHAT=1, generating mock messages'); + const authors = ['Ada', 'Linus', 'Grace', 'Marge']; + let counter = 0; + mockTimer = setInterval(() => { + pushMessage({ + id: `mock-${Date.now()}`, + author: authors[counter % authors.length], + text: `Mock message #${counter}`, + publishedAt: new Date().toISOString() + }); + counter += 1; + }, 2000); + } + + function stopMock() { + if (!mockTimer) return; + clearInterval(mockTimer); + mockTimer = null; + } + + // Stops the live chat and any pending retry; the old connection's listeners are dropped. + function detach() { + generation += 1; + if (retryTimer) { + clearTimeout(retryTimer); + retryTimer = null; + } + if (ingestion) { + ingestion.emitter.removeAllListeners(); + try { + ingestion.liveChat?.stop?.(); + } catch (error) { + console.error('[Backend] Error stopping live chat:', error); + } + ingestion = null; + } + } + + function idle(patch: Partial) { + setStatus({ state: 'disconnected', ...patch }); + startMock(); + } + + function scheduleRetry(liveId: string, attempt: number, reason: string) { + detach(); + if (attempt > RETRY_LIMIT) { + console.error(`[Backend] Giving up on ${liveId} after ${RETRY_LIMIT} attempts: ${reason}`); + idle({ error: `Gave up after ${RETRY_LIMIT} reconnect attempts: ${reason}` }); + return; + } + const delay = Math.min(RETRY_BASE_MS * 2 ** (attempt - 1), RETRY_CAP_MS); + console.warn(`[Backend] Connection lost (${reason}); retry ${attempt}/${RETRY_LIMIT} in ${delay}ms`); + setStatus({ state: 'reconnecting', error: reason }); + retryTimer = setTimeout(() => { + retryTimer = null; + void connect(liveId, attempt); + }, delay); + } + + async function connect(liveId: string, attempt = 0): Promise { + stopMock(); + const gen = ++generation; + if (attempt === 0) setStatus({ state: 'connecting', liveId, title: null, error: null }); + + let ctx: IngestionContext; + try { + ctx = await bootstrapInnertube(liveId); + } catch (error) { + if (gen !== generation) return false; + const reason = errorText(error); + console.error(`[Backend] Failed to connect to ${liveId}: ${reason}`); + if (attempt === 0) idle({ error: reason }); + else scheduleRetry(liveId, attempt + 1, reason); + return false; + } + if (gen !== generation) { + ctx.liveChat.stop(); + return false; + } + + ingestion = ctx; + ctx.emitter.on('message', pushMessage); + ctx.emitter.on('poll', setPoll); + // youtubei.js retries a failed poll itself, 10 times 2s apart, and emits `end` when it gives up; only then rebuild the session. + ctx.emitter.on('end', () => scheduleRetry(liveId, 1, 'live chat ended')); + ctx.emitter.on('error', (error) => console.warn(`[Backend] Live chat poll error, library will retry: ${errorText(error)}`)); + setStatus({ state: 'live', liveId, title: ctx.title, error: null }); + console.log(`[Backend] Connected to ${liveId}${ctx.title ? ` (${ctx.title})` : ''}`); + return true; } fastify.get('/health', async () => ({ status: 'ok', + connection: status, messages: store.length, - selection: currentSelection?.id ?? null, - mode: ingestion ? 'live' : 'mock', - connected: !!ingestion, - liveId: ingestion?.videoId ?? null + selection: selection?.id ?? null, + mock: mockTimer !== null })); - fastify.post<{ Body: { liveId: string } }>('/chat/connect', async (request, reply) => { - const { liveId } = request.body ?? {}; + fastify.post<{ Body: { liveId?: string } }>('/chat/connect', async (request, reply) => { + const liveId = extractLiveId(request.body?.liveId); if (!liveId) { - reply.status(400); - return { error: 'liveId is required' }; - } - - const parsedLiveId = extractLiveId(liveId); - if (!parsedLiveId) { reply.status(400); return { error: 'Invalid YouTube Live ID or URL' }; } - - // Stop mock messages if running - if (mockInterval) { - clearInterval(mockInterval); - mockInterval = null; - console.log('[Backend] Stopped mock messages'); - } - - // Stop existing ingestion if any - if (ingestion) { - try { - ingestion.liveChat?.stop?.(); - } catch (e) { - console.error('[Backend] Error stopping previous connection:', e); - } - ingestion = null; - } - - // Clear messages - store.length = 0; - - try { - console.log(`[Backend] Connecting to YouTube Live ID: ${parsedLiveId}`); - ingestion = await bootstrapInnertube(parsedLiveId); - console.log(`[Backend] ✓ YouTube chat connected successfully`); - - ingestion.emitter.on('message', (message) => { - store.push(message); - // Trim regularly to keep regular messages under control - // This ensures we don't wait until hitting MAX_MESSAGES - trimMessages(store); - }); - - ingestion.emitter.on('poll', (poll) => { - currentPoll = poll; - pollEmitter.emit('update', poll); - }); - - ingestion.emitter.on('error', (error) => { - console.error('[Backend] Innertube ingestion error:', error); - }); - - return { ok: true, liveId: parsedLiveId }; - } catch (error) { - console.error('[Backend] Failed to connect:', error); + detach(); + clearStore(); + if (!(await connect(liveId))) { reply.status(500); - return { error: 'Failed to connect to YouTube Live chat' }; + return { error: status.error ?? 'Failed to connect to YouTube Live chat' }; } + return { ok: true, liveId, title: status.title ?? null }; }); fastify.post('/chat/disconnect', async () => { - if (ingestion) { - try { - ingestion.liveChat?.stop?.(); - console.log('[Backend] Disconnected from YouTube chat'); - } catch (e) { - console.error('[Backend] Error disconnecting:', e); - } - ingestion = null; - } - - // Start mock messages again - if (!mockInterval) { - mockInterval = seedMockMessages(store, overlayEmitter); - console.log('[Backend] Started mock messages'); - } - - store.length = 0; - currentSelection = null; - overlayEmitter.emit('update', null); + detach(); + clearStore(); + idle({ liveId: null, title: null, error: null }); return { ok: true }; }); - fastify.get('/chat/messages', async () => ({ - messages: store - })); - - fastify.get('/poll/current', async () => ({ - poll: currentPoll - })); + fastify.get('/chat/messages', async () => ({ messages: store })); fastify.post<{ Body: { id?: string } }>('/overlay/selection', async (request, reply) => { - const { id } = request.body ?? {}; + const id = request.body?.id; if (!id) { reply.status(400); return { error: 'id is required' }; } - const message = store.find((item) => item.id === id); if (!message) { reply.status(404); return { error: 'message not found' }; } - - currentSelection = message; - overlayEmitter.emit('update', currentSelection); - + setSelection(message); return { ok: true }; }); fastify.delete('/overlay/selection', async () => { - currentSelection = null; - overlayEmitter.emit('update', null); + setSelection(null); return { ok: true }; }); - fastify.get('/poll/stream', async (request, reply) => { + fastify.get('/events', (request, reply) => { reply.hijack(); - const res = reply.raw; - res.setHeader('Content-Type', 'text/event-stream'); - res.setHeader('Cache-Control', 'no-cache'); - res.setHeader('Connection', 'keep-alive'); - res.setHeader('Access-Control-Allow-Origin', '*'); - res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS'); - res.setHeader('Access-Control-Allow-Headers', 'Content-Type'); - res.writeHead(200); - res.write(': connected\n\n'); - - const send = (poll: Poll | null) => { - res.write(`event: poll\ndata: ${JSON.stringify({ poll })}\n\n`); - }; - - const heartbeat = setInterval(() => { - res.write('event: heartbeat\ndata: {}\n\n'); - }, 15000); - - pollEmitter.on('update', send); - - if (currentPoll) { - send(currentPoll); - } + // Headers set by hooks (CORS) are not flushed on a hijacked reply, so copy them. + res.writeHead(200, { + ...(reply.getHeaders() as OutgoingHttpHeaders), + 'Content-Type': 'text/event-stream', + 'Cache-Control': 'no-cache', + Connection: 'keep-alive' + }); + writeEvent(res, { type: 'init', status, messages: store, selection, poll }); + const forward = (event: ServerEvent) => writeEvent(res, event); + bus.on('event', forward); + const heartbeat = setInterval(() => res.write(': ping\n\n'), HEARTBEAT_MS); request.raw.on('close', () => { clearInterval(heartbeat); - pollEmitter.off('update', send); + bus.off('event', forward); }); }); - fastify.get('/overlay/stream', async (request, reply) => { - reply.hijack(); + registerImageProxy(fastify); - const res = reply.raw; - res.setHeader('Content-Type', 'text/event-stream'); - res.setHeader('Cache-Control', 'no-cache'); - res.setHeader('Connection', 'keep-alive'); - res.setHeader('Access-Control-Allow-Origin', '*'); - res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS'); - res.setHeader('Access-Control-Allow-Headers', 'Content-Type'); - res.writeHead(200); - res.write(': connected\n\n'); - - const send = (message: ChatMessage | null) => { - res.write(`event: selection\ndata: ${JSON.stringify({ message })}\n\n`); - }; - - const heartbeat = setInterval(() => { - res.write('event: heartbeat\ndata: {}\n\n'); - }, 15000); - - overlayEmitter.on('update', send); - - if (currentSelection) { - send(currentSelection); - } - - request.raw.on('close', () => { - clearInterval(heartbeat); - overlayEmitter.off('update', send); - }); - }); - - // Image proxy endpoint to avoid YouTube CDN rate limits - fastify.get<{ Querystring: { url: string } }>('/proxy/image', async (request, reply) => { - const { url } = request.query; - - if (!url || typeof url !== 'string') { - reply.status(400); - return { error: 'url parameter is required' }; - } - - // Only allow YouTube CDN and Google User Content domains - const allowedDomains = [ - 'yt3.ggpht.com', - 'yt4.ggpht.com', - 'i.ytimg.com', - 'lh3.googleusercontent.com' // For super stickers - ]; - try { - const urlObj = new URL(url); - if (!allowedDomains.includes(urlObj.hostname)) { - reply.status(403); - return { error: 'Only YouTube CDN and Google User Content URLs are allowed' }; - } - } catch (error) { - reply.status(400); - return { error: 'Invalid URL' }; - } - - // Create cache key from URL - const cacheKey = crypto.createHash('md5').update(url).digest('hex'); - - // Check cache - const cached = imageCache.get(cacheKey); - if (cached && (Date.now() - cached.timestamp) < CACHE_TTL) { - reply.header('Content-Type', cached.contentType); - reply.header('Cache-Control', 'public, max-age=86400'); // 24 hours - reply.header('Access-Control-Allow-Origin', '*'); - return reply.send(cached.buffer); - } - - // Fetch from YouTube - try { - const response = await fetch(url, { - headers: { - 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36', - 'Referer': 'https://www.youtube.com/', - } - }); - - if (!response.ok) { - if (response.status === 429) { - console.warn('[Backend] Rate limited by YouTube CDN for:', url); - // Return from cache even if expired, or return error - if (cached) { - reply.header('Content-Type', cached.contentType); - reply.header('Cache-Control', 'public, max-age=86400'); - reply.header('Access-Control-Allow-Origin', '*'); - return reply.send(cached.buffer); - } - } - throw new Error(`Failed to fetch image: ${response.status}`); - } - - const buffer = Buffer.from(await response.arrayBuffer()); - const contentType = response.headers.get('content-type') || 'image/jpeg'; - - // Cache the image - imageCache.set(cacheKey, { - buffer, - contentType, - timestamp: Date.now() - }); - - // Cleanup old cache entries if we exceed max size - if (imageCache.size > MAX_CACHE_SIZE) { - const entries = Array.from(imageCache.entries()); - entries.sort((a, b) => a[1].timestamp - b[1].timestamp); - const toDelete = entries.slice(0, Math.floor(MAX_CACHE_SIZE * 0.2)); // Remove oldest 20% - toDelete.forEach(([key]) => imageCache.delete(key)); - } - - reply.header('Content-Type', contentType); - reply.header('Cache-Control', 'public, max-age=86400'); - reply.header('Access-Control-Allow-Origin', '*'); - return reply.send(buffer); - } catch (error) { - console.error('[Backend] Failed to proxy image:', error); - - // Try to return stale cache if available - if (cached) { - reply.header('Content-Type', cached.contentType); - reply.header('Cache-Control', 'public, max-age=86400'); - reply.header('Access-Control-Allow-Origin', '*'); - return reply.send(cached.buffer); - } - - reply.status(500); - return { error: 'Failed to fetch image' }; - } - }); + // Production serves the exported Next.js client; in dev the client runs on its own port. + const clientDir = path.resolve(process.cwd(), 'client/out'); + if (existsSync(clientDir)) { + await fastify.register(fastifyStatic, { root: clientDir, index: ['index.html'], redirect: true }); + fastify.get('/', (_request, reply) => reply.redirect('/dashboard/')); + console.log(`[Backend] Serving client from ${clientDir}`); + } else { + console.log('[Backend] client/out not found, serving API only'); + } + const host = process.env.HOST ?? '127.0.0.1'; const port = Number(process.env.PORT ?? 4100); + await fastify.listen({ port, host }); + console.log(`[Backend] Listening on http://${host}:${port}`); - await fastify.listen({ port, host: '0.0.0.0' }); - - console.log(`[Backend] Server listening on http://localhost:${port}`); -} - -function extractLiveId(input: string): string { - if (!input) return ''; - - const trimmed = input.trim(); - if (/^[a-zA-Z0-9_-]{10,}$/.test(trimmed)) { - return trimmed; - } - - try { - const url = new URL(trimmed); - if (url.searchParams.has('v')) { - return url.searchParams.get('v') ?? ''; - } - const pathname = url.pathname.split('/').filter(Boolean).pop(); - return pathname ?? ''; - } catch (error) { - console.warn('Invalid YOUTUBE_LIVE_ID provided', error); - return ''; + const envLiveId = extractLiveId(process.env.YOUTUBE_LIVE_ID); + if (envLiveId) { + // Attempt 1 rather than 0 so a failed startup connect goes through the retry schedule instead of giving up. + void connect(envLiveId, 1); + } else { + if (process.env.YOUTUBE_LIVE_ID) console.warn('[Backend] Ignoring invalid YOUTUBE_LIVE_ID'); + startMock(); } } -/** - * Intelligently trim messages while preserving superchats and memberships - * Regular messages are limited to MAX_REGULAR_MESSAGES - * Superchats and memberships are preserved for the entire session - */ -function trimMessages(store: ChatMessage[]): void { - // Count messages by type - let regularCount = 0; - const specialIndices: number[] = []; - - for (let i = 0; i < store.length; i++) { - const message = store[i]; - const isSpecial = message.superChat || message.membershipGift || - message.membershipGiftPurchase || message.isMember; - if (isSpecial) { - specialIndices.push(i); - } else { - regularCount++; - } - } - - // Only trim if we have too many regular messages - if (regularCount > MAX_REGULAR_MESSAGES) { - const toRemove = regularCount - MAX_REGULAR_MESSAGES; - const specialSet = new Set(specialIndices); - - // Remove oldest regular messages (keep special messages) - let removed = 0; - const newStore: ChatMessage[] = []; - - for (let i = 0; i < store.length; i++) { - const isSpecial = specialSet.has(i); - - if (isSpecial) { - // Always keep special messages - newStore.push(store[i]); - } else { - // Keep regular messages if we haven't removed enough yet - if (removed < toRemove) { - removed++; - // Skip this message (delete it) - } else { - newStore.push(store[i]); - } - } - } - - // Replace store contents - store.length = 0; - store.push(...newStore); - } -} - -function seedMockMessages( - store: ChatMessage[], - overlayEmitter: EventEmitter<{ update: (message: ChatMessage | null) => void }> -): NodeJS.Timeout { - let counter = 0; - const authors = ['Ada', 'Linus', 'Grace', 'Marge']; - return setInterval(() => { - const message: ChatMessage = { - id: `mock-${Date.now()}`, - author: authors[counter % authors.length], - text: `Mock message #${counter}`, - publishedAt: new Date().toISOString() - }; - store.push(message); - // Trim regularly to keep regular messages under control - trimMessages(store); - if (counter % 5 === 0) { - overlayEmitter.emit('update', message); - } - counter += 1; - }, 2000); -} - -// Only run if this is the main module if (require.main === module) { startBackend().catch((error) => { console.error('Failed to start backend', error); diff --git a/backend/src/ingestion/youtubei.test.ts b/backend/src/ingestion/youtubei.test.ts new file mode 100644 index 0000000..5a29984 --- /dev/null +++ b/backend/src/ingestion/youtubei.test.ts @@ -0,0 +1,30 @@ +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { resolveRunUrl } from './youtubei'; + +test('empty input', () => { + assert.equal(resolveRunUrl(undefined), undefined); + assert.equal(resolveRunUrl(''), undefined); +}); + +test('plain https URL is returned unchanged', () => { + assert.equal(resolveRunUrl('https://example.com/path?a=1&b=2'), 'https://example.com/path?a=1&b=2'); + assert.equal(resolveRunUrl('http://example.com'), 'http://example.com'); +}); + +test('site-relative path becomes an absolute youtube.com URL', () => { + assert.equal(resolveRunUrl('/watch?v=dQw4w9WgXcQ'), 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'); + assert.equal(resolveRunUrl('/@channel'), 'https://www.youtube.com/@channel'); +}); + +test('redirect wrapper resolves to the encoded q parameter', () => { + const wrapped = + 'https://www.youtube.com/redirect?event=live_chat&redir_token=TOKEN&q=https%3A%2F%2Fexample.com%2Fp%3Fa%3D1%26b%3D2&html_redirect=1'; + assert.equal(resolveRunUrl(wrapped), 'https://example.com/p?a=1&b=2'); + assert.equal(resolveRunUrl('/redirect?q=https%3A%2F%2Fexample.com'), 'https://example.com'); + assert.equal(resolveRunUrl('https://www.youtube.com/redirect?event=x'), 'https://www.youtube.com/redirect?event=x'); +}); + +test('unparseable input', () => { + assert.equal(resolveRunUrl('not a url'), undefined); +}); diff --git a/backend/src/ingestion/youtubei.ts b/backend/src/ingestion/youtubei.ts index 1595205..bfe720a 100644 --- a/backend/src/ingestion/youtubei.ts +++ b/backend/src/ingestion/youtubei.ts @@ -1,75 +1,121 @@ -import type { ChatMessage, Badge, SuperChatInfo, Poll } from '@shared/chat'; +import type { ChatMessage, Badge, MessageRun, SuperChatInfo, Poll } from '@shared/chat'; import EventEmitter from 'eventemitter3'; -import Innertube, { UniversalCache } from 'youtubei.js'; +import Innertube from 'youtubei.js'; export type IngestionContext = { client: Innertube; liveChat: any; videoId: string; + title: string | null; emitter: ChatEventEmitter; }; -export type ContinuationState = { - messages: ChatMessage[]; - nextToken: string | null; - timeoutMs: number; -}; - export type ChatEventEmitter = EventEmitter<{ message: (message: ChatMessage) => void; poll: (poll: Poll | null) => void; error: (error: unknown) => void; + end: () => void; }>; -const defaultTimeout = 1500; +const SEEN_IDS_CAP = 5000; -// Track message IDs to ensure uniqueness +// YouTube reuses message ids in busy chats; a per-id counter keeps ours unique. const seenIds = new Map(); function generateUniqueId(baseId: string): string { + if (seenIds.size > SEEN_IDS_CAP) seenIds.clear(); const count = seenIds.get(baseId) ?? 0; seenIds.set(baseId, count + 1); - - // If this is the first occurrence of this ID, return it as-is - if (count === 0) { - return baseId; - } - - // Otherwise, append a counter suffix to ensure uniqueness - return `${baseId}#${count}`; + return count === 0 ? baseId : `${baseId}#${count}`; } -function resolveMessageRuns(item: any) { - const runs: { text?: string; emojiUrl?: string; emojiAlt?: string }[] = []; +/** + * Turns the raw navigation URL of a text run into the absolute destination. + * YouTube wraps external links in /redirect?q= and uses site-relative paths for its own. + */ +export function resolveRunUrl(raw: string | undefined): string | undefined { + if (!raw) return undefined; + const absolute = raw.startsWith('/') ? `https://www.youtube.com${raw}` : raw; + try { + const url = new URL(absolute); + if (url.hostname.endsWith('youtube.com') && url.pathname === '/redirect') { + return url.searchParams.get('q') ?? absolute; + } + return absolute; + } catch { + return undefined; + } +} + +// Reads the run endpoint youtubei.js exposes on TextRun. Verified against the library types, not yet against a live chat carrying a long link. +function runUrl(run: any): string | undefined { + return resolveRunUrl( + run?.endpoint?.payload?.url ?? + run?.endpoint?.metadata?.url ?? + run?.navigationEndpoint?.urlEndpoint?.url ?? + run?.navigationEndpoint?.commandMetadata?.webCommandMetadata?.url + ); +} + +// The visible text of a link run may be shortened; the endpoint keeps the full URL. +function isTruncated(text: string, url: string): boolean { + return text.endsWith('...') || text.endsWith('…') || text.length < url.length; +} + +function resolveMessageRuns(item: any): MessageRun[] { + const runs: MessageRun[] = []; const rawRuns = item?.message?.runs; - if (Array.isArray(rawRuns)) { - for (const run of rawRuns) { - if (run?.emoji) { - const url = run.emoji?.image?.[0]?.url; - runs.push({ - emojiUrl: url, - emojiAlt: run.emoji?.shortcuts?.[0] || run.emoji?.emoji_id || '' - }); - } else if (run?.text) { - runs.push({ text: String(run.text) }); - } + if (!Array.isArray(rawRuns)) return runs; + for (const run of rawRuns) { + if (run?.emoji) { + runs.push({ + emojiUrl: run.emoji?.image?.[0]?.url, + emojiAlt: run.emoji?.shortcuts?.[0] || run.emoji?.emoji_id || '' + }); + } else if (run?.text) { + const url = runUrl(run); + runs.push(url ? { text: String(run.text), url } : { text: String(run.text) }); } } return runs; } +function resolveMessageText(item: any): string { + const message = item?.message; + if (!message) return ''; + if (typeof message === 'string') return message; + + if (Array.isArray(message.runs)) { + return message.runs + .map((run: any) => { + if (run?.emoji) { + return (run.emoji.is_custom && run.emoji.shortcuts?.[0]) || run.emoji.emoji_id || run.text || ''; + } + const text = String(run?.text ?? ''); + const url = runUrl(run); + return url && isTruncated(text, url) ? url : text; + }) + .join(''); + } + + return typeof message.toString === 'function' ? message.toString() : ''; +} + export async function bootstrapInnertube(videoId: string): Promise { if (!videoId) { throw new Error('YOUTUBE_LIVE_ID is required to bootstrap Innertube'); } + seenIds.clear(); console.log('[Ingestion] Creating Innertube client...'); - const client = await Innertube.create({ - cache: new UniversalCache(false) - }); + // No cache: even UniversalCache(false) writes session data to os.tmpdir(), and a session captured during a + // network hiccup came back poisoned on every reconnect (YouTube answered 400 "unusual traffic" until it was deleted). + // The player is skipped because chat never needs stream formats. + const client = await Innertube.create({ retrieve_player: false }); console.log('[Ingestion] Fetching video info...'); const info = await client.getInfo(videoId); + const title = info.basic_info?.title ?? null; console.log('[Ingestion] Getting live chat...'); const liveChat = info.getLiveChat(); @@ -81,7 +127,6 @@ export async function bootstrapInnertube(videoId: string): Promise { - // Handle poll updates (just detect active/closed state) if (action?.type === 'UpdateLiveChatPollAction') { const pollId = action?.poll_to_update?.live_chat_poll_id; if (pollId) { @@ -90,7 +135,6 @@ export async function bootstrapInnertube(videoId: string): Promise { const msg = (err as any)?.message || String(err); - // Ignore known non-fatal parser drift issues that YouTube.js auto-generates - if (msg && ( - msg.includes('LiveChatReportModerationStateCommand not found') || - msg.includes('CloseLiveChatActionPanelAction not found') - )) { - return; // ignore noisy parser drift that YouTube.js JITs around - } + // Unknown renderer types are parser drift that youtubei.js generates stubs for; not a connection problem. + if (/\w+(Command|Action) not found/.test(msg)) return; console.error('[Ingestion] Live chat error:', err); emitter.emit('error', err); }); + liveChat.on('end', () => emitter.emit('end')); + console.log('[Ingestion] Starting live chat listener...'); liveChat.start(); console.log('[Ingestion] Live chat listener started'); - return { - client, - liveChat, - videoId, - emitter - }; -} - -export async function fetchChatBatch( - ctx: IngestionContext, - options?: { windowMs?: number } -): Promise { - const windowMs = options?.windowMs ?? defaultTimeout; - const collected: ChatMessage[] = []; - - const listener = (message: ChatMessage) => { - collected.push(message); - }; - - ctx.emitter.on('message', listener); - - await delay(windowMs); - - ctx.emitter.off('message', listener); - - const timeoutMs = ctx.liveChat?.continuation?.timeout_ms; - const validTimeout = typeof timeoutMs === 'number' && !isNaN(timeoutMs) && timeoutMs > 0 - ? timeoutMs - : defaultTimeout; - - return { - messages: collected, - nextToken: ctx.liveChat?.continuation?.token ?? null, - timeoutMs: validTimeout - }; -} - -function resolveMessageText(item: any): string { - if (!item?.message) return ''; - - if (typeof item.message === 'string') { - return item.message; - } - - if (typeof item.message?.toString === 'function') { - return item.message.toString(); - } - - if (Array.isArray(item.message?.runs)) { - return item.message.runs.map((run: any) => { - // Handle emoji objects - for custom emojis, use the shortcut text - if (run.emoji) { - // For custom emojis, use the first shortcut (e.g., ":_heçkır:") - if (run.emoji.is_custom && run.emoji.shortcuts?.[0]) { - return run.emoji.shortcuts[0]; - } - // For standard emojis, use emoji_id (e.g., "❤") - return run.emoji.emoji_id || run.text || ''; - } - return run.text ?? ''; - }).join(''); - } - - return ''; + return { client, liveChat, videoId, title, emitter }; } function resolveTimestamp(timestamp: number | string | undefined): string { @@ -193,68 +171,32 @@ function resolveTimestamp(timestamp: number | string | undefined): string { const numeric = typeof timestamp === 'string' ? Number(timestamp) : timestamp; if (Number.isFinite(numeric)) { - // YouTube timestamps are in microseconds (16 digits) or milliseconds (13 digits) - // If it's microseconds (>= 1e15), divide by 1000 to get milliseconds - // If it's milliseconds (>= 1e12), use as is - let millis: number; - if (numeric >= 1e15) { - // Microseconds - convert to milliseconds - millis = numeric / 1000; - } else if (numeric >= 1e12) { - // Already milliseconds - millis = numeric; - } else { - // Fallback for smaller numbers - millis = numeric; - } - + // YouTube sends microseconds (16 digits) or milliseconds (13 digits). + const millis = numeric >= 1e15 ? numeric / 1000 : numeric; return new Date(millis).toISOString(); } return new Date().toISOString(); } -function extractBadges(item: any): Badge[] { +function extractBadges(list: any): Badge[] { const badges: Badge[] = []; + if (!Array.isArray(list)) return badges; - if (!item.author?.badges) return badges; - - for (const badge of item.author.badges) { - const label = badge.tooltip ?? badge.label ?? ''; + for (const badge of list) { + const label: string = badge.tooltip ?? badge.label ?? ''; + const iconType: string = badge.icon_type ?? ''; const imageUrl = badge.custom_thumbnail?.[0]?.url; + const lower = label.toLowerCase(); - if (label.toLowerCase().includes('moderator')) { + if (iconType === 'MODERATOR' || lower.includes('moderator')) { badges.push({ type: 'moderator', label, imageUrl }); - } else if (label.toLowerCase().includes('member')) { + } else if (lower.includes('member')) { badges.push({ type: 'member', label, imageUrl }); - } else if (label.toLowerCase().includes('verified')) { - badges.push({ type: 'verified', label, imageUrl }); - } else if (label) { - badges.push({ type: 'custom', label, imageUrl }); - } - } - - return badges; -} - -function extractBadgesFromHeader(header: any): Badge[] { - const badges: Badge[] = []; - - if (!header?.author_badges) return badges; - - for (const badge of header.author_badges) { - const label = badge.tooltip ?? ''; - const iconType = badge.icon_type ?? ''; - const imageUrl = badge.custom_thumbnail?.[0]?.url; - - if (label.toLowerCase().includes('moderator') || iconType === 'MODERATOR') { - badges.push({ type: 'moderator', label, imageUrl }); - } else if (label.toLowerCase().includes('member')) { - badges.push({ type: 'member', label, imageUrl }); - } else if (label.toLowerCase().includes('verified') || iconType === 'VERIFIED') { + } else if (iconType === 'VERIFIED' || lower.includes('verified')) { badges.push({ type: 'verified', label, imageUrl }); } else if (iconType === 'OWNER') { - badges.push({ type: 'custom', label: label || 'Owner', imageUrl }); + badges.push({ type: 'owner', label: label || 'Owner', imageUrl }); } else if (label) { badges.push({ type: 'custom', label, imageUrl }); } @@ -264,13 +206,11 @@ function extractBadgesFromHeader(header: any): Badge[] { } function extractLeaderboardRank(item: any): number | undefined { - // Check for before_content_buttons array (where leaderboard badge appears) if (!Array.isArray(item.before_content_buttons)) return undefined; for (const button of item.before_content_buttons) { - // Look for CROWN icon (leaderboard indicator) + // The CROWN button carries the rank as "#3". if (button.icon_name === 'CROWN' && button.title) { - // Title is like "#3", "#1", etc. const match = String(button.title).match(/#(\d+)/); if (match && match[1]) { return parseInt(match[1], 10); @@ -294,8 +234,8 @@ function extractSuperChatInfo(item: any): SuperChatInfo | undefined { let amountText = ''; const candidates = [ - item.purchase_amount, // Correct property name from youtubei.js docs - item.purchase_amount_text, // Fallback + item.purchase_amount, + item.purchase_amount_text, item.purchaseAmountText, item.header?.purchase_amount, item.header?.purchase_amount_text, @@ -325,25 +265,21 @@ function extractSuperChatInfo(item: any): SuperChatInfo | undefined { let currency = ''; if (amountText) { - // Regex to capture currency symbol/code and amount - // Handles: $5.00, €5,00, 5,00 €, 5.00 USD, TRY5.00, TRY 55, etc. + // Handles $5.00, 5,00 EUR, TRY 55 and similar: symbol or code on either side of the number. const match = amountText.match(/([\$\€\£\¥\₹\₺]|[A-Z]{2,3})?\s*([\d,\.]+)\s*([\$\€\£\¥\₹\₺]|[A-Z]{2,3})?/); if (match) { - // Prefer currency symbol/code before the number, fallback to after currency = match[1] || match[3] || ''; amount = match[2]; } else { - // Fallback: use the whole text if no pattern matches amount = amountText; } } - // If we still don't have an amount, use a default if (!amount) { amount = 'Super Chat'; } - let rawColor = item.body_background_color ?? item.bodyBackgroundColor ?? item.headerBackgroundColor; + const rawColor = item.body_background_color ?? item.bodyBackgroundColor ?? item.headerBackgroundColor; let color = '#1e3a8a'; if (rawColor != null) { if (typeof rawColor === 'number') { @@ -355,16 +291,13 @@ function extractSuperChatInfo(item: any): SuperChatInfo | undefined { } } - // Extract super sticker image URL if present let stickerUrl: string | undefined; let stickerAlt: string | undefined; if (Array.isArray(item.sticker) && item.sticker.length > 0) { - // Prefer larger image (first in array is usually largest) const stickerThumb = item.sticker[0]; if (stickerThumb?.url) { - // URLs from YouTube might be protocol-relative (//domain.com) - // Convert to absolute HTTPS URL + // Sticker URLs may be protocol-relative. let url = String(stickerThumb.url); if (url.startsWith('//')) { url = 'https:' + url; @@ -374,7 +307,6 @@ function extractSuperChatInfo(item: any): SuperChatInfo | undefined { stickerUrl = url; } - // Extract accessibility label for alt text if (item.sticker_accessibility_label) { stickerAlt = String(item.sticker_accessibility_label); } @@ -397,9 +329,9 @@ function normalizeAction(action: any): ChatMessage | null { const item = action.item; if (!item) return null; - // Normalize various live chat events const itemType = String(item.type || '').trim(); - const messageText = resolveMessageText(item).toLowerCase(); + const resolvedText = resolveMessageText(item); + const messageText = resolvedText.toLowerCase(); const isText = itemType === 'LiveChatTextMessage'; const isPaid = !!extractSuperChatInfo(item); @@ -407,118 +339,76 @@ function normalizeAction(action: any): ChatMessage | null { const isGiftPurchase = itemType === 'LiveChatSponsorshipsGiftPurchaseAnnouncement'; const isGiftReceived = itemType === 'LiveChatSponsorshipsGiftRedemptionAnnouncement'; - // Check if the message text indicates it's a gift recipient message const isGiftRecipientMessage = messageText.includes('received a gift membership') || messageText.includes('received a membership gift') || messageText.includes('received a gift') || /received\s+a\s+.*membership.*by/i.test(messageText); - // Ignore gift received messages - we only care about the purchaser + // Only the purchaser of a gift is shown, not each recipient. if (isGiftReceived || isGiftRecipientMessage) { return null; } - if (isText || isPaid || isMembership || isGiftPurchase) { - // For gift purchases, author info is in header - const authorSource = isGiftPurchase ? item.header : item; - const badges = isGiftPurchase ? extractBadgesFromHeader(item.header) : extractBadges(item); - const isModerator = badges.some(b => b.type === 'moderator'); - const isMember = badges.some(b => b.type === 'member'); - const isVerified = badges.some(b => b.type === 'verified'); - - // Extract membership level for new members, upgrades, and milestones - let membershipLevel: string | undefined; - if (isMembership) { - const subtext: string = item.header_subtext?.text || ''; - const primaryText: string = item.header_primary_text?.text || ''; - - // Try to capture level name from common phrases - // e.g., "Welcome to User!" => "User" - // e.g., "Upgraded membership to Superuser!" => "Superuser" - let levelFromSub: string | undefined; - const welcomeMatch = subtext.match(/Welcome to\s+(.+?)!/i); - const upgradeMatch = subtext.match(/Upgraded membership to\s+(.+?)!/i); - if (welcomeMatch?.[1]) { - levelFromSub = welcomeMatch[1].trim(); - } else if (upgradeMatch?.[1]) { - levelFromSub = upgradeMatch[1].trim(); - } - - membershipLevel = levelFromSub || primaryText || 'New member'; - } else if (isGiftPurchase) { - // For gift purchases, we don't need membership level - membershipLevel = undefined; - } else if (isPaid) { - membershipLevel = undefined; - } - - // Extract gift count for gift purchases - let giftCount: number | undefined; - if (isGiftPurchase) { - const primaryText = item.header?.primary_text?.text || ''; - // Extract number from "Sent 1 Yusuf İpek gift memberships" - const countMatch = primaryText.match(/sent\s+(\d+)\s+/i); - if (countMatch) { - giftCount = parseInt(countMatch[1], 10); - } - } - - // Extract channel ID - for gifts it's in author_external_channel_id - const authorChannelId = isGiftPurchase - ? item.author_external_channel_id - : item.author?.id; - - // Extract author name and photo - const authorName = isGiftPurchase - ? (item.header?.author_name?.text || 'Unknown') - : String(item.author?.name ?? 'Unknown'); - - const authorPhoto = isGiftPurchase - ? item.header?.author_photo?.[0]?.url - : item.author?.thumbnails?.[0]?.url; - - // Build text with fallback: if no user message, show header subtext/primary for membership events - const resolvedText = resolveMessageText(item); - const membershipFallbackText = isMembership - ? (item.header_subtext?.text || item.header_primary_text?.text || '') - : ''; - - // Use timestamp_usec (microseconds) as it's more accurate than timestamp (milliseconds) - const timestampToUse = item.timestamp_usec ?? item.timestamp; - - // Extract leaderboard rank if present - const leaderboardRank = extractLeaderboardRank(item); - - // Generate a unique ID - YouTube message IDs might not be unique in high-frequency chats - // so we track seen IDs and append a counter if needed - const baseId = String(item.id ?? item.timestamp_usec ?? Date.now()); - const uniqueId = generateUniqueId(baseId); - - return { - id: uniqueId, - author: authorName, - authorPhoto, - authorChannelId: authorChannelId ? String(authorChannelId) : undefined, - text: resolvedText || membershipFallbackText, - runs: (() => { const r = resolveMessageRuns(item); return r.length ? r : undefined; })(), - publishedAt: resolveTimestamp(timestampToUse), - badges: badges.length > 0 ? badges : undefined, - isModerator, - isMember, - isVerified, - superChat: extractSuperChatInfo(item), - membershipGift: isMembership, - membershipGiftPurchase: isGiftPurchase, - membershipLevel, - giftCount, - leaderboardRank - }; + if (!(isText || isPaid || isMembership || isGiftPurchase)) { + return null; } - return null; -} + // Gift purchase announcements carry author data in the header. + const badges = extractBadges(isGiftPurchase ? item.header?.author_badges : item.author?.badges); + const isModerator = badges.some(b => b.type === 'moderator'); + const isMember = badges.some(b => b.type === 'member'); + const isVerified = badges.some(b => b.type === 'verified'); -function delay(ms: number) { - return new Promise((resolve) => setTimeout(resolve, ms)); + let membershipLevel: string | undefined; + if (isMembership) { + const subtext: string = item.header_subtext?.text || ''; + const primaryText: string = item.header_primary_text?.text || ''; + // "Welcome to Level!" or "Upgraded membership to Level!" + const levelMatch = subtext.match(/(?:Welcome to|Upgraded membership to)\s+(.+?)!/i); + membershipLevel = levelMatch?.[1]?.trim() || primaryText || 'New member'; + } + + let giftCount: number | undefined; + if (isGiftPurchase) { + // "Sent 5 Channel gift memberships" + const countMatch = String(item.header?.primary_text?.text || '').match(/sent\s+(\d+)\s+/i); + if (countMatch) { + giftCount = parseInt(countMatch[1], 10); + } + } + + const authorChannelId = isGiftPurchase ? item.author_external_channel_id : item.author?.id; + const authorName = isGiftPurchase + ? (item.header?.author_name?.text || 'Unknown') + : String(item.author?.name ?? 'Unknown'); + const authorPhoto = isGiftPurchase + ? item.header?.author_photo?.[0]?.url + : item.author?.thumbnails?.[0]?.url; + + const membershipFallbackText = isMembership + ? (item.header_subtext?.text || item.header_primary_text?.text || '') + : ''; + + const runs = resolveMessageRuns(item); + + return { + id: generateUniqueId(String(item.id ?? item.timestamp_usec ?? Date.now())), + author: authorName, + authorPhoto, + authorChannelId: authorChannelId ? String(authorChannelId) : undefined, + text: resolvedText || membershipFallbackText, + runs: runs.length ? runs : undefined, + publishedAt: resolveTimestamp(item.timestamp_usec ?? item.timestamp), + badges: badges.length > 0 ? badges : undefined, + isModerator, + isMember, + isVerified, + superChat: extractSuperChatInfo(item), + membershipGift: isMembership, + membershipGiftPurchase: isGiftPurchase, + membershipLevel, + giftCount, + leaderboardRank: extractLeaderboardRank(item) + }; } diff --git a/backend/src/liveId.test.ts b/backend/src/liveId.test.ts new file mode 100644 index 0000000..3471d1e --- /dev/null +++ b/backend/src/liveId.test.ts @@ -0,0 +1,36 @@ +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { extractLiveId } from './liveId'; + +const ID = 'dQw4w9WgXcQ'; + +test('bare id', () => { + assert.equal(extractLiveId(ID), ID); + assert.equal(extractLiveId(` ${ID}\n`), ID); +}); + +test('watch URLs', () => { + assert.equal(extractLiveId(`https://www.youtube.com/watch?v=${ID}`), ID); + assert.equal(extractLiveId(`https://www.youtube.com/watch?v=${ID}&t=42s&feature=share`), ID); + assert.equal(extractLiveId(`https://m.youtube.com/watch?feature=share&v=${ID}`), ID); + assert.equal(extractLiveId(`youtube.com/watch?v=${ID}`), ID); +}); + +test('short and live URLs', () => { + assert.equal(extractLiveId(`https://youtu.be/${ID}`), ID); + assert.equal(extractLiveId(`https://youtu.be/${ID}?si=abc123`), ID); + assert.equal(extractLiveId(`https://www.youtube.com/live/${ID}`), ID); + assert.equal(extractLiveId(`https://www.youtube.com/live/${ID}?feature=share`), ID); + assert.equal(extractLiveId(`https://www.youtube.com/embed/${ID}`), ID); +}); + +test('junk', () => { + assert.equal(extractLiveId(undefined), ''); + assert.equal(extractLiveId(''), ''); + assert.equal(extractLiveId('hello world'), ''); + assert.equal(extractLiveId('dQw4w9WgXc'), ''); + assert.equal(extractLiveId('https://www.youtube.com/'), ''); + assert.equal(extractLiveId('https://www.youtube.com/watch?v=short'), ''); + assert.equal(extractLiveId(`https://example.com/${ID}`), ''); + assert.equal(extractLiveId('http://[bad'), ''); +}); diff --git a/backend/src/liveId.ts b/backend/src/liveId.ts new file mode 100644 index 0000000..cd810c8 --- /dev/null +++ b/backend/src/liveId.ts @@ -0,0 +1,23 @@ +const VIDEO_ID = /^[A-Za-z0-9_-]{11}$/; +const YOUTUBE_HOST = /(^|\.)(youtube\.com|youtube-nocookie\.com|youtu\.be)$/; + +/** + * Extracts the 11-character video id from a bare id or any YouTube URL + * (watch?v=, youtu.be/, /live/, /embed/, with or without scheme). Returns '' for anything else. + */ +export function extractLiveId(input: string | undefined): string { + const trimmed = (input ?? '').trim(); + if (!trimmed) return ''; + if (VIDEO_ID.test(trimmed)) return trimmed; + + let url: URL; + try { + url = new URL(/^https?:\/\//i.test(trimmed) ? trimmed : `https://${trimmed}`); + } catch { + return ''; + } + if (!YOUTUBE_HOST.test(url.hostname)) return ''; + + const candidate = url.searchParams.get('v') ?? url.pathname.split('/').filter(Boolean).pop() ?? ''; + return VIDEO_ID.test(candidate) ? candidate : ''; +} diff --git a/backend/tsconfig.build.json b/backend/tsconfig.build.json index da48075..b4a3d93 100644 --- a/backend/tsconfig.build.json +++ b/backend/tsconfig.build.json @@ -1,7 +1,7 @@ { "extends": "./tsconfig.json", "compilerOptions": { - "declaration": true, - "emitDeclarationOnly": false - } + "declaration": true + }, + "exclude": ["src/**/*.test.ts"] } diff --git a/client/.eslintrc.yaml b/client/.eslintrc.yaml new file mode 100644 index 0000000..8816b26 --- /dev/null +++ b/client/.eslintrc.yaml @@ -0,0 +1,5 @@ +root: true +extends: next/core-web-vitals +rules: + # Images come from the local proxy and the client is a static export; next/image adds nothing here. + "@next/next/no-img-element": off diff --git a/client/app/dashboard/page.tsx b/client/app/dashboard/page.tsx index 385f33a..85a6148 100644 --- a/client/app/dashboard/page.tsx +++ b/client/app/dashboard/page.tsx @@ -1,761 +1,215 @@ 'use client'; -import { useCallback, useEffect, useMemo, useState, useRef } from 'react'; -import type { ChatMessage, Poll } from '@shared/chat'; -import { useTimezone } from '../../lib/TimezoneContext'; -import { formatTimestamp } from '../../lib/timezone'; -import { proxyImageUrl } from '../../lib/imageProxy'; +import { Gift, MessageSquare, Sparkles } from 'lucide-react'; +import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; +import type { ChatMessage } from '@shared/chat'; +import { api } from '../../lib/api'; +import { useEvents } from '../../lib/useEvents'; +import { ChatList } from '../../components/ChatList'; +import { ConnectForm } from '../../components/ConnectForm'; +import { MessageCard } from '../../components/MessageCard'; +import { OnAir } from '../../components/OnAir'; +import { OverlaySettings } from '../../components/OverlaySettings'; +import { TopBar } from '../../components/TopBar'; -// URL regex for detecting links (http/https) -const URL_REGEX = /(https?:\/\/[^\s]+)/gi; +type Toast = { id: number; text: string }; -function parseTextWithLinks(text: string): Array<{ type: 'text' | 'link'; content: string }> { - const parts: Array<{ type: 'text' | 'link'; content: string }> = []; - let lastIndex = 0; - const matches = text.matchAll(URL_REGEX); - - for (const match of matches) { - const url = match[0]; - const index = match.index!; - - // Add text before the URL - if (index > lastIndex) { - parts.push({ type: 'text', content: text.slice(lastIndex, index) }); - } - - // Add the URL - parts.push({ type: 'link', content: url }); - lastIndex = index + url.length; - } - - // Add remaining text - if (lastIndex < text.length) { - parts.push({ type: 'text', content: text.slice(lastIndex) }); - } - - return parts.length > 0 ? parts : [{ type: 'text', content: text }]; +function matches(message: ChatMessage, needle: string): boolean { + if (!needle) return true; + return message.author.toLowerCase().includes(needle) || message.text.toLowerCase().includes(needle); } -const BACKEND_URL = process.env.NEXT_PUBLIC_BACKEND_URL ?? 'http://localhost:4100'; -const POLL_INTERVAL = 2500; - -// Global singleton to prevent multiple SSE connections across all renders/remounts -let globalSSEConnection: EventSource | null = null; -let globalConnectionListeners: Set<(payload: any) => void> = new Set(); - export default function DashboardPage() { - const { messages, refresh, error: pollError } = useChatMessages(); - const { selection, status: overlayStatus } = useOverlaySelection(); - const { poll: currentPoll } = usePoll(); - const { connected, liveId, connect, disconnect, connecting } = useConnection(); - const [confirmUrl, setConfirmUrl] = useState(null); - const [superChatPulse, setSuperChatPulse] = useState(false); - const [memberPulse, setMemberPulse] = useState(false); - const [previouslySelected, setPreviouslySelected] = useState>(new Set()); - const prevSuperChatCountRef = useRef(0); - const prevMemberCountRef = useRef(0); - const hasInitializedRef = useRef(false); + const { stream, status, messages, selection, poll } = useEvents(); + const [search, setSearch] = useState(''); + const [paused, setPaused] = useState(false); + const [settingsOpen, setSettingsOpen] = useState(false); + const [linkToOpen, setLinkToOpen] = useState(null); + const [busy, setBusy] = useState(false); + const [connectError, setConnectError] = useState(null); + const [toasts, setToasts] = useState([]); + const shownBefore = useRef(new Set()); + const searchRef = useRef(null); - const handleSelect = useCallback( + const toast = useCallback((text: string) => { + const id = Date.now() + Math.random(); + setToasts((list) => [...list, { id, text }]); + setTimeout(() => setToasts((list) => list.filter((item) => item.id !== id)), 4000); + }, []); + + const select = useCallback( async (message: ChatMessage) => { try { - // If clicking the already-selected message, clear it if (selection?.id === message.id) { - await fetch(`${BACKEND_URL}/overlay/selection`, { method: 'DELETE' }); + await api.clearSelection(); } else { - // Otherwise, select the new message - await fetch(`${BACKEND_URL}/overlay/selection`, { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ id: message.id }) - }); - - // Mark this message as previously selected - setPreviouslySelected(prev => new Set([...prev, message.id])); + shownBefore.current.add(message.id); + await api.select(message.id); } } catch (error) { - console.error('Failed to select message', error); + toast(`Could not update overlay: ${(error as Error).message}`); } }, - [selection] + [selection, toast] ); - const handleClear = useCallback(async () => { + const clearSelection = useCallback(async () => { try { - await fetch(`${BACKEND_URL}/overlay/selection`, { method: 'DELETE' }); + await api.clearSelection(); } catch (error) { - console.error('Failed to clear selection', error); + toast(`Could not clear overlay: ${(error as Error).message}`); + } + }, [toast]); + + const connect = useCallback(async (liveId: string) => { + setBusy(true); + setConnectError(null); + try { + await api.connect(liveId); + shownBefore.current.clear(); + } catch (error) { + setConnectError((error as Error).message); + } finally { + setBusy(false); } }, []); - useEffect(() => { - const timer = setInterval(() => { - refresh(); - }, POLL_INTERVAL); - - return () => clearInterval(timer); - }, [refresh]); - - const statusHint = useMemo(() => { - if (pollError) return 'Backend unreachable'; - if (overlayStatus === 'connecting') return 'Connecting to overlay…'; - if (overlayStatus === 'error') return 'Overlay stream disconnected'; - return 'Live'; - }, [pollError, overlayStatus]); - - const handleLinkClick = useCallback((url: string) => { - setConfirmUrl(url); - }, []); - - const handleConfirmOpen = useCallback(() => { - if (confirmUrl) { - window.open(confirmUrl, '_blank', 'noopener,noreferrer'); - setConfirmUrl(null); + const disconnect = useCallback(async () => { + try { + await api.disconnect(); + } catch (error) { + toast(`Could not disconnect: ${(error as Error).message}`); } - }, [confirmUrl]); + }, [toast]); - const handleCancelOpen = useCallback(() => { - setConfirmUrl(null); - }, []); - - const superChats = useMemo(() => messages.filter(m => m.superChat), [messages]); - const newMembers = useMemo(() => messages.filter(m => m.membershipGift || m.membershipGiftPurchase), [messages]); - const regularMessages = useMemo(() => messages.filter(m => !m.superChat && !m.membershipGift && !m.membershipGiftPurchase), [messages]); - - // Initialize counts on first load without triggering pulse useEffect(() => { - if (!hasInitializedRef.current && messages.length > 0) { - prevSuperChatCountRef.current = superChats.length; - prevMemberCountRef.current = newMembers.length; - hasInitializedRef.current = true; - } - }, [messages.length, superChats.length, newMembers.length]); + const onKey = (event: KeyboardEvent) => { + const target = event.target as HTMLElement | null; + const typing = target && (target.tagName === 'INPUT' || target.tagName === 'TEXTAREA' || target.tagName === 'SELECT'); + if (typing) { + if (event.key === 'Escape') (target as HTMLElement).blur(); + return; + } + if (event.key === 'Escape') { + if (linkToOpen) setLinkToOpen(null); + else if (settingsOpen) setSettingsOpen(false); + else if (selection) void clearSelection(); + } else if (event.key === '/') { + event.preventDefault(); + searchRef.current?.focus(); + } else if (event.key.toLowerCase() === 'p') { + setPaused((value) => !value); + } + }; + window.addEventListener('keydown', onKey); + return () => window.removeEventListener('keydown', onKey); + }, [selection, linkToOpen, settingsOpen, clearSelection]); - // Detect new superchats and trigger pulse - useEffect(() => { - if (!hasInitializedRef.current) return; - - const prevCount = prevSuperChatCountRef.current; - const currentCount = superChats.length; - - // Trigger pulse if count increased - if (currentCount > prevCount) { - setSuperChatPulse(true); - const timer = setTimeout(() => setSuperChatPulse(false), 10000); - prevSuperChatCountRef.current = currentCount; - return () => clearTimeout(timer); + const needle = search.trim().toLowerCase(); + const groups = useMemo(() => { + const chat: ChatMessage[] = []; + const supers: ChatMessage[] = []; + const members: ChatMessage[] = []; + for (const message of messages) { + if (!matches(message, needle)) continue; + if (message.superChat) supers.push(message); + else if (message.membershipGift || message.membershipGiftPurchase) members.push(message); + else chat.push(message); } - - prevSuperChatCountRef.current = currentCount; - }, [superChats.length]); + return { chat, supers, members }; + }, [messages, needle]); - // Detect new members and trigger pulse - useEffect(() => { - if (!hasInitializedRef.current) return; - - const prevCount = prevMemberCountRef.current; - const currentCount = newMembers.length; - - // Trigger pulse if count increased - if (currentCount > prevCount) { - setMemberPulse(true); - const timer = setTimeout(() => setMemberPulse(false), 10000); - prevMemberCountRef.current = currentCount; - return () => clearTimeout(timer); - } - - prevMemberCountRef.current = currentCount; - }, [newMembers.length]); + const renderCard = (message: ChatMessage) => ( + + ); + + // Mock mode feeds messages while disconnected; keep the dashboard up in that case. + const showConnect = (status.state === 'disconnected' || status.state === 'connecting') && messages.length === 0; return ( -
- {!connected && ( -
-
-

Connect to YouTube Live Stream

-
{ - e.preventDefault(); - const formData = new FormData(e.currentTarget); - const liveId = formData.get('liveId') as string; - if (liveId.trim()) { - connect(liveId.trim()); - } - }}> - - -
-
-
- )} - - {connected && ( +
+ {showConnect ? ( + + ) : ( <> -
- {currentPoll && ( -
- 📊 - Active Poll + setPaused((value) => !value)} + onOverlaySettings={() => setSettingsOpen(true)} + onDisconnect={disconnect} + /> + +
+
+
+ + Chat + {needle && filtered}
- )} -
- Messages {regularMessages.length} +
-
- Superchats {superChats.length} -
-
- Members {newMembers.length} -
- -
- -
-
-
-

💬 CHAT MESSAGES

- -
- ( - handleSelect(message)} - onLinkClick={handleLinkClick} - isPreviouslySelected={previouslySelected.has(message.id)} - /> - )} - emptyState={ -
-

⏳ Waiting for chat messages...

-
- } - /> -
- -
-
-
-

🔥 SUPER CHATS

+
+
+
+ + Super Chats
- ( - handleSelect(message)} - onLinkClick={handleLinkClick} - isPreviouslySelected={previouslySelected.has(message.id)} - /> - )} - emptyState={ -
-

No super chats yet

-
- } - /> +
- -
-
-

⭐ MEMBERSHIPS & MILESTONES

+
+
+ + Memberships
- ( - handleSelect(message)} - onLinkClick={handleLinkClick} - isPreviouslySelected={previouslySelected.has(message.id)} - /> - )} - emptyState={ -
-

No new members yet

-
- } - /> +
)} - {confirmUrl && ( -
-
e.stopPropagation()}> -

Open External Link?

-

{confirmUrl}

+ {settingsOpen && setSettingsOpen(false)} />} + + {linkToOpen && ( +
setLinkToOpen(null)}> +
event.stopPropagation()}> +

Open this link?

+

{linkToOpen}

- - + + setLinkToOpen(null)}> + Open in new tab +
)} + {toasts.length > 0 && ( +
+ {toasts.map((item) => ( +
{item.text}
+ ))} +
+ )}
); } - -function useChatMessages() { - const [messages, setMessages] = useState([]); - const [error, setError] = useState(null); - - const refresh = useCallback(async () => { - try { - const response = await fetch(`${BACKEND_URL}/chat/messages`); - if (!response.ok) throw new Error(`Request failed: ${response.status}`); - const data = await response.json(); - setMessages(Array.isArray(data.messages) ? data.messages : []); - setError(null); - } catch (err) { - setError(err as Error); - } - }, []); - - useEffect(() => { - refresh(); - }, [refresh]); - - return { messages, refresh, error }; -} - -type OverlayStatus = 'connecting' | 'live' | 'error'; - -type SelectionPayload = { - message: ChatMessage | null; -}; - -function useOverlaySelection() { - const [selection, setSelection] = useState(null); - const [status, setStatus] = useState('connecting'); - const listenerRef = useRef<((payload: any) => void) | null>(null); - - useEffect(() => { - // Create global connection if it doesn't exist - if (!globalSSEConnection) { - console.log('[Dashboard] Creating GLOBAL SSE connection'); - globalSSEConnection = new EventSource(`${BACKEND_URL}/overlay/stream`); - - globalSSEConnection.addEventListener('selection', ((event: MessageEvent) => { - try { - const payload: SelectionPayload = JSON.parse(event.data); - // Broadcast to all listeners - globalConnectionListeners.forEach(listener => listener(payload)); - } catch (error) { - console.error('Failed to parse selection payload', error); - } - }) as EventListener); - - globalSSEConnection.addEventListener('heartbeat', () => { - // Heartbeat - connection is alive - }); - - globalSSEConnection.onerror = (error) => { - console.error('[Dashboard] SSE connection error - will auto-reconnect', error); - // EventSource automatically reconnects, no action needed - }; - } - - // Register this component's listener - const myListener = (payload: SelectionPayload) => { - setSelection(payload.message); - setStatus('live'); - }; - - listenerRef.current = myListener; - globalConnectionListeners.add(myListener); - - return () => { - // Unregister this component's listener - if (listenerRef.current) { - globalConnectionListeners.delete(listenerRef.current); - } - // Don't close global connection - other components might use it - }; - }, []); - - return { selection, status }; -} - -function useConnection() { - const [connected, setConnected] = useState(false); - const [liveId, setLiveId] = useState(null); - const [connecting, setConnecting] = useState(false); - - const checkStatus = useCallback(async () => { - try { - const response = await fetch(`${BACKEND_URL}/health`); - const data = await response.json(); - setConnected(data.connected); - setLiveId(data.liveId); - } catch (error) { - console.error('Failed to check connection status', error); - } - }, []); - - useEffect(() => { - checkStatus(); - const interval = setInterval(checkStatus, 5000); - return () => clearInterval(interval); - }, [checkStatus]); - - const connect = useCallback(async (liveId: string) => { - setConnecting(true); - try { - const response = await fetch(`${BACKEND_URL}/chat/connect`, { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ liveId }) - }); - - if (!response.ok) { - const error = await response.json(); - throw new Error(error.error || 'Failed to connect'); - } - - await checkStatus(); - } catch (error) { - console.error('Failed to connect', error); - alert('Failed to connect to YouTube Live chat. Please check the Live ID.'); - } finally { - setConnecting(false); - } - }, [checkStatus]); - - const disconnect = useCallback(async () => { - try { - await fetch(`${BACKEND_URL}/chat/disconnect`, { method: 'POST' }); - await checkStatus(); - } catch (error) { - console.error('Failed to disconnect', error); - } - }, [checkStatus]); - - return { connected, liveId, connect, disconnect, connecting }; -} - -function usePoll() { - const [poll, setPoll] = useState(null); - - useEffect(() => { - // Create SSE connection for polls - const eventSource = new EventSource(`${BACKEND_URL}/poll/stream`); - - eventSource.addEventListener('poll', ((event: MessageEvent) => { - try { - const payload = JSON.parse(event.data); - setPoll(payload.poll); - } catch (error) { - console.error('Failed to parse poll payload', error); - } - }) as EventListener); - - eventSource.addEventListener('heartbeat', () => { - // Heartbeat - connection is alive - }); - - eventSource.onerror = (error) => { - console.error('[Dashboard] Poll SSE connection error', error); - }; - - return () => { - eventSource.close(); - }; - }, []); - - return { poll }; -} - -type ConnectionControlProps = { - connected: boolean; - liveId: string | null; - connecting: boolean; - onConnect: (liveId: string) => void; - onDisconnect: () => void; - inline?: boolean; -}; - -function ConnectionControl({ connected, liveId, connecting, onConnect, onDisconnect, inline }: ConnectionControlProps) { - const [inputValue, setInputValue] = useState(''); - - const handleSubmit = (e: React.FormEvent) => { - e.preventDefault(); - if (inputValue.trim()) { - onConnect(inputValue.trim()); - } - }; - - return ( -
-
- {connected ? ( -
-
- 🟢 Connected - Live ID: {liveId} -
- -
- ) : ( -
-
- - setInputValue(e.target.value)} - placeholder="e.g., dQw4w9WgXcQ or https://youtube.com/watch?v=..." - disabled={connecting} - /> -
- -
- )} -
-
- ); -} - -type ChatItemProps = { - message: ChatMessage; - isSelected: boolean; - onSelect: () => void; - onLinkClick: (url: string) => void; - isPreviouslySelected?: boolean; -}; - -function MessageText({ text, onLinkClick }: { text: string; onLinkClick: (url: string) => void }) { - const parts = parseTextWithLinks(text); - return ( - <> - {parts.map((part, i) => - part.type === 'link' ? ( - { - e.preventDefault(); - e.stopPropagation(); - onLinkClick(part.content); - }} - > - {part.content} - - ) : ( - {part.content} - ) - )} - - ); -} - -type ChatListPanelProps = { - messages: ChatMessage[]; - renderItem: (message: ChatMessage) => React.ReactNode; - emptyState: React.ReactNode; -}; - -function ChatListPanel({ messages, renderItem, emptyState }: ChatListPanelProps) { - const scrollRef = useRef(null); - const wasAtBottomRef = useRef(true); - - useEffect(() => { - const node = scrollRef.current; - if (!node) return; - - const handleScroll = () => { - const isAtBottom = node.scrollHeight - node.scrollTop - node.clientHeight <= 150; - wasAtBottomRef.current = isAtBottom; - }; - - node.addEventListener('scroll', handleScroll); - return () => node.removeEventListener('scroll', handleScroll); - }, []); - - useEffect(() => { - const node = scrollRef.current; - if (node && wasAtBottomRef.current) { - // Use setTimeout with requestAnimationFrame for more reliable scrolling - setTimeout(() => { - requestAnimationFrame(() => { - if (node && wasAtBottomRef.current) { - node.scrollTop = node.scrollHeight; - } - }); - }, 0); - } - }, [messages]); - - return ( -
- {messages.length > 0 ? messages.map(renderItem) : emptyState} -
- ); -} - -function ChatItem({ message, isSelected, onSelect, onLinkClick, isPreviouslySelected }: ChatItemProps) { - const { timezone } = useTimezone(); - - const className = [ - 'chatItem', - isSelected ? 'chatItem--active' : '', - isPreviouslySelected ? 'chatItem--previously-selected' : '' - ].filter(Boolean).join(' '); - - return ( - - ); -} - -function MemberItem({ message, isSelected, onSelect, onLinkClick, isPreviouslySelected }: ChatItemProps) { - const { timezone } = useTimezone(); - - const className = [ - 'memberItem', - isSelected ? 'memberItem--active' : '', - isPreviouslySelected ? 'memberItem--previously-selected' : '' - ].filter(Boolean).join(' '); - - return ( - - ); -} diff --git a/client/app/globals.css b/client/app/globals.css index 1415054..0f43b2c 100644 --- a/client/app/globals.css +++ b/client/app/globals.css @@ -1,13 +1,46 @@ :root { color-scheme: dark; + --bg: #0a0b0e; + --panel: #111318; + --panel-2: #181b22; + --panel-3: #20242d; + --line: rgba(255, 255, 255, 0.07); + --line-strong: rgba(255, 255, 255, 0.14); + --text: #e9eaee; + --muted: #8a8f9e; + --live: #ff4d4d; + --blue: #5b9cff; + --gold: #f5c84c; + --green: #3ecf8e; + --amber: #f0a441; + --accent: var(--blue); + --radius: 10px; + --font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; +} + +* { + box-sizing: border-box; +} + +html, +body { + margin: 0; + height: 100%; } body { - margin: 0; - font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; - background: #0a0a0a; - color: #f4f4f5; - min-height: 100vh; + font-family: var(--font); + font-size: 13px; + line-height: 1.45; + background: var(--bg); + color: var(--text); + -webkit-font-smoothing: antialiased; + font-feature-settings: "tnum"; +} + +body.is-overlay { + background: transparent; + overflow: hidden; } a { @@ -15,1378 +48,1080 @@ a { text-decoration: none; } -main { - min-height: 100vh; -} - -.landing { - display: grid; - place-items: center; - padding: 4rem 1.5rem; -} - -.panel { - background: rgba(21, 23, 28, 0.85); - border: 1px solid rgba(255, 255, 255, 0.08); - border-radius: 16px; - padding: 2.5rem; - max-width: 720px; - width: min(100%, 720px); - box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35); -} - -.panel__title { - font-size: 1.1rem; - font-weight: 600; - margin-bottom: 1rem; -} - -.primary, -.secondary, -.chatItem { +button, +input, +select { font: inherit; - border: none; - cursor: pointer; + color: inherit; } -.primary { - display: inline-block; - margin-top: 1.5rem; - padding: 0.85rem 1.6rem; - border-radius: 999px; - background: linear-gradient(135deg, #ff3b30, #ff9500); - color: #fff; - font-weight: 600; - transition: transform 120ms ease, box-shadow 120ms ease; -} - -.primary:hover { - transform: translateY(-2px); - box-shadow: 0 8px 24px rgba(255, 99, 71, 0.35); -} - -.secondary { - margin-top: 1rem; - padding: 0.6rem 1.2rem; - border-radius: 999px; - background: rgba(255, 255, 255, 0.08); - color: #f4f4f5; +h1, +h2, +p { + margin: 0; } .muted { - color: rgba(244, 244, 245, 0.6); - margin-top: 0.6rem; + color: var(--muted); } -.dashboard { - display: flex; - flex-direction: column; - height: 100vh; - overflow-y: hidden; - overflow-x: hidden; - background: #0a0a0a; -} +/* Buttons */ -.connectionPrompt { - display: flex; - justify-content: center; +.btn { + display: inline-flex; align-items: center; - min-height: 100vh; - padding: 2rem; -} - -.connectionPrompt__content { - max-width: 500px; - width: 100%; -} - -.connectionPrompt__content h2 { - font-size: 1.5rem; - margin-bottom: 1.5rem; - color: #e5e7eb; - text-align: center; -} - -.connectionPrompt__form { - display: flex; - flex-direction: column; - gap: 1rem; -} - -.connectionPrompt__form input { - padding: 0.875rem 1rem; - background: #1a1a1a; - border: 1px solid #2a2a2a; - border-radius: 6px; - color: #e5e7eb; - font-size: 0.95rem; - transition: border-color 150ms ease; -} - -.connectionPrompt__form input:focus { - outline: none; - border-color: #60a5fa; -} - -.connectionPrompt__form input::placeholder { - color: #6b7280; -} - -.connectionPrompt__form button { - padding: 0.875rem 1rem; - background: #60a5fa; - border: none; - border-radius: 6px; - color: #fff; - font-size: 0.95rem; - font-weight: 600; - cursor: pointer; - transition: all 150ms ease; -} - -.connectionPrompt__form button:hover:not(:disabled) { - background: #3b82f6; -} - -.connectionPrompt__form button:disabled { - opacity: 0.5; - cursor: not-allowed; -} - -.dashboard__tabs { - display: flex; - justify-content: space-around; - align-items: center; - background: #1a1a1a; - border-bottom: 1px solid #2a2a2a; - padding: 0.3rem 0.5rem; -} - -.tab { - flex: 1; - text-align: center; - padding: 0.5rem 0.75rem; - font-size: 0.875rem; - font-weight: 500; - color: #9ca3af; - background: #141414; - border-radius: 6px; - margin: 0 0.2rem; - cursor: pointer; - transition: all 200ms ease; -} - -.tab:hover { - background: #1f1f1f; - color: #d1d5db; -} - -.tab__count { - color: #60a5fa; - font-weight: 700; - margin-left: 0.25rem; -} - -.tab--pulse { - animation: tabPulse 1s ease-in-out infinite; -} - -@keyframes tabPulse { - 0%, 100% { - background: #0f0f0f; - box-shadow: 0 0 0 rgba(251, 191, 36, 0); - } - 50% { - background: rgba(251, 191, 36, 0.2); - box-shadow: 0 0 20px rgba(251, 191, 36, 0.4); - } -} - -.message-count { - padding: 0.35rem 0.75rem; - background: rgba(255, 255, 255, 0.08); - border-radius: 999px; - font-size: 0.8rem; - font-weight: 600; - color: #94a3b8; -} - -.dashboard__grid { - flex: 1; - display: flex; - gap: 0; - padding: 0; - width: 100%; - min-height: 0; - height: 100%; - overflow: hidden; -} - -.dashboard__grid-right { - display: flex; - flex-direction: column; - flex: 1; - min-height: 0; - overflow: hidden; -} - -.panel--chat { - flex: 2; - border-right: 1px solid #2a2a2a; - min-width: 0; -} - -.panel--super { - flex: 0 1 auto; - border-bottom: 1px solid #2a2a2a; - min-height: 200px; - max-height: 40%; -} - -.panel--members { - flex: 1; - min-height: 200px; -} - -@media (max-width: 1024px) { - .dashboard__grid { - flex-direction: column; - } - - .panel--chat { - border-right: none; - border-bottom: 1px solid #2a2a2a; - } - - .dashboard__grid-right { - flex-direction: column; - } -} - -.connectionControl { - width: 100%; - padding: 1rem clamp(1rem, 3vw, 2rem); - background: rgba(30, 41, 59, 0.5); - border-bottom: 1px solid rgba(255, 255, 255, 0.1); -} - -.connectionControl__content { - max-width: 960px; - margin: 0 auto; - display: flex; - justify-content: center; -} - -.connectionControl__connected { - display: flex; - justify-content: center; - align-items: center; - gap: 1.25rem; - flex-wrap: wrap; -} - -.connectionControl__info { - display: flex; - align-items: center; - gap: 1.25rem; -} - -.connectionControl__badge { - padding: 0.5rem 1rem; - background: rgba(34, 197, 94, 0.2); - color: #4ade80; - border-radius: 999px; - font-weight: 600; - font-size: 0.9rem; -} - -.connectionControl__liveId { - color: #94a3b8; - font-size: 0.9rem; - font-family: 'Monaco', 'Courier New', monospace; -} - -.connectionControl__form { - display: flex; - gap: 1.25rem; - align-items: flex-end; - justify-content: center; - width: 100%; -} - -.connectionControl__input { - flex: 0 1 460px; - display: flex; - flex-direction: column; - gap: 0.5rem; - max-width: 100%; - min-width: 280px; -} - -.connectionControl__input label { - color: #94a3b8; - font-size: 0.85rem; - font-weight: 500; -} - -.connectionControl__input input { - padding: 0.75rem 1rem; - background: rgba(15, 23, 42, 0.6); - border: 1px solid rgba(255, 255, 255, 0.1); + gap: 6px; + height: 32px; + padding: 0 11px; border-radius: 8px; - color: #e2e8f0; - font-size: 0.95rem; - font-family: 'Monaco', 'Courier New', monospace; - transition: border-color 150ms ease; -} - -.connectionControl__input input:focus { - outline: none; - border-color: rgba(96, 165, 250, 0.5); -} - -.connectionControl__input input::placeholder { - color: #64748b; -} - -.connectionControl__input input:disabled { - opacity: 0.5; - cursor: not-allowed; -} - -.btn-connect, -.btn-disconnect { - padding: 0.75rem 1.5rem; - border: none; - border-radius: 8px; - font-weight: 600; - font-size: 0.95rem; + border: 1px solid var(--line-strong); + background: var(--panel-2); + font-size: 12.5px; + font-weight: 500; cursor: pointer; - transition: all 150ms ease; white-space: nowrap; + transition: background 120ms ease, border-color 120ms ease, color 120ms ease; } -.btn-connect { - background: linear-gradient(135deg, #3b82f6, #8b5cf6); - color: #fff; +.btn:hover { + background: var(--panel-3); } -.btn-connect:hover:not(:disabled) { - transform: translateY(-2px); - box-shadow: 0 8px 24px rgba(59, 130, 246, 0.3); -} - -.btn-connect:disabled { +.btn:disabled { opacity: 0.5; - cursor: not-allowed; + cursor: default; } -.btn-disconnect { - background: rgba(239, 68, 68, 0.15); - color: #ef4444; - border: 1px solid rgba(239, 68, 68, 0.3); -} - -.btn-disconnect:hover { - background: rgba(239, 68, 68, 0.25); - transform: translateY(-1px); -} - -@media (max-width: 768px) { - .connectionControl__form { - flex-direction: column; - align-items: stretch; - justify-content: flex-start; - } - - .connectionControl__connected { - flex-direction: column; - align-items: flex-start; - width: 100%; - } - - .connectionControl__content { - justify-content: flex-start; - } -} - -/* Inline variant for header placement */ -.connectionControl--inline { - width: auto; +.btn--icon { + width: 32px; padding: 0; - background: transparent; - border: 0; -} - -.connectionControl--inline .connectionControl__content { - max-width: none; - margin: 0; -} - -.connectionControl--inline .connectionControl__form { - gap: 0.75rem; -} - -.connectionControl--inline .connectionControl__input { - flex: 0 1 320px; - min-width: 220px; -} - -.connectionControl--inline .btn-connect { - padding: 0.5rem 0.9rem; -} - -.connectionControl--inline .connectionControl__connected { - gap: 0.75rem; -} - - -.panel { - background: #141414; - border: none; - border-radius: 0; - padding: 1rem 1.25rem; - display: flex; - flex-direction: column; - min-height: 0; - min-width: 0; - max-width: 100%; - height: 100%; - overflow: hidden; -} - -.panel__header { - display: flex; - justify-content: flex-start; - align-items: center; - gap: 1rem; - padding: 0.75rem 1rem; - border-bottom: 1px solid #2a2a2a; - background: #141414; - flex-shrink: 0; -} - -.panel__header h2 { - margin: 0; - font-size: 0.8125rem; - color: #9ca3af; - display: flex; - align-items: center; - gap: 0.4rem; - font-weight: 600; - text-transform: uppercase; - letter-spacing: 0.5px; -} - -.badge--count { - background: rgba(96, 165, 250, 0.2); - color: #60a5fa; - padding: 0.25rem 0.6rem; - border-radius: 999px; - font-size: 0.8rem; - font-weight: 700; -} - -.btn-clear { - padding: 0.6rem 1.4rem; - background: rgba(239, 68, 68, 0.15); - color: #ef4444; - border: 1px solid rgba(239, 68, 68, 0.3); - border-radius: 999px; - font-weight: 600; - cursor: pointer; - transition: all 150ms ease; -} - -.btn-clear:hover { - background: rgba(239, 68, 68, 0.25); - transform: translateY(-1px); -} - -.btn-clear-inline { - padding: 0.35rem 0.75rem; - background: rgba(239, 68, 68, 0.15); - color: #ef4444; - border: 1px solid rgba(239, 68, 68, 0.3); - border-radius: 6px; - font-weight: 600; - font-size: 0.75rem; - letter-spacing: 0.5px; - cursor: pointer; - transition: all 150ms ease; - margin-left: auto; -} - -.btn-clear-inline:hover:not(:disabled) { - background: rgba(239, 68, 68, 0.25); - transform: translateY(-1px); -} - -.btn-clear-inline:disabled { - opacity: 0.4; - cursor: not-allowed; - background: rgba(239, 68, 68, 0.08); - border-color: rgba(239, 68, 68, 0.15); -} - -.btn-clear-fixed { - position: fixed; - bottom: 2rem; - right: 2rem; - padding: 0.75rem 2rem; - background: #2a2a2a; - color: #e5e7eb; - border: 1px solid #3a3a3a; - border-radius: 6px; - font-weight: 600; - font-size: 0.9rem; - letter-spacing: 0.5px; - cursor: pointer; - transition: all 200ms ease; - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5); - z-index: 100; -} - -.btn-clear-fixed:hover { - background: #3a3a3a; - transform: translateY(-2px); - box-shadow: 0 6px 16px rgba(0, 0, 0, 0.6); -} - -.btn-reset { - padding: 0.35rem 0.5rem; - background: #2a2a2a; - color: #e5e7eb; - border: 1px solid #3a3a3a; - border-radius: 6px; - font-size: 1rem; - cursor: pointer; - transition: all 200ms ease; - margin-left: auto; - display: flex; - align-items: center; justify-content: center; } -.btn-reset:hover { - background: #3a3a3a; - transform: scale(1.05); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4); +.btn--sm { + height: 26px; + padding: 0 8px; + font-size: 12px; } -.btn-reset:active { - transform: scale(0.95); +.btn--primary { + background: var(--live); + border-color: transparent; + color: #fff; } -.chatList { - display: flex; - flex-direction: column; - gap: 0.375rem; - flex: 1; - overflow-y: auto; - overflow-x: hidden; - padding-right: 0.5rem; /* Add space for scrollbar */ - margin-right: -0.5rem; /* Pull scrollbar into padding */ - padding-bottom: 2rem; /* Add more space at the bottom */ - min-height: 0; - width: 100%; - max-width: 100%; - box-sizing: border-box; +.btn--primary:hover { + background: #ff6363; } -.chatList::-webkit-scrollbar { - width: 6px; +.btn--danger:hover { + color: var(--live); + border-color: rgba(255, 77, 77, 0.5); } -.chatList::-webkit-scrollbar-track { - background: #0a0a0a; - border-radius: 10px; +.btn--active { + color: var(--amber); + border-color: rgba(240, 164, 65, 0.6); } -.chatList::-webkit-scrollbar-thumb { - background: #3a3a3a; - border-radius: 10px; -} +/* Landing */ -.chatList::-webkit-scrollbar-thumb:hover { - background: #4a4a4a; -} - -.chatList__empty { +.landing { + min-height: 100vh; display: grid; place-items: center; - min-height: 300px; - color: #64748b; - font-size: 1.1rem; + padding: 24px; } -.chatItem { +.landing__card { + width: min(100%, 460px); + padding: 32px; + border: 1px solid var(--line); + border-radius: 16px; + background: var(--panel); +} + +.landing__card h1 { + font-size: 22px; + font-weight: 700; + letter-spacing: -0.01em; +} + +.landing__card p { + margin-top: 8px; + color: var(--muted); + font-size: 14px; +} + +.landing__links { + display: flex; + gap: 8px; + margin-top: 20px; +} + +/* Connect */ + +.connect { + min-height: 100vh; + display: grid; + place-items: center; + padding: 24px; +} + +.connect__card { + width: min(100%, 440px); display: flex; flex-direction: column; - gap: 0.375rem; - padding: 0.625rem 0.875rem; - border-radius: 6px; - background: #1f1f1f; - border: 1px solid #2a2a2a; - text-align: left; - transition: all 250ms ease-out; - cursor: pointer; - flex-shrink: 0; - width: 100%; - max-width: 100%; - box-sizing: border-box; + gap: 10px; + padding: 28px; + border: 1px solid var(--line); + border-radius: 16px; + background: var(--panel); } -.chatItem:hover { - background: #262626; - border-color: #3a3a3a; - transform: translateX(2px); +.connect__icon { + width: 40px; + height: 40px; + display: grid; + place-items: center; + border-radius: 12px; + background: rgba(255, 77, 77, 0.14); + color: var(--live); + margin-bottom: 6px; } -.chatItem--active { - background: rgba(59, 130, 246, 0.15); - border-color: rgba(59, 130, 246, 0.5); - box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2); - filter: brightness(0.85); +.connect__card h1 { + font-size: 18px; + font-weight: 650; } -.chatItem--previously-selected { - filter: brightness(0.6); - opacity: 0.7; +.connect__card p { + color: var(--muted); } -/* Ensure active state overrides previously selected state */ -.chatItem--active.chatItem--previously-selected { - filter: brightness(0.85); - opacity: 1; +.connect__card input { + margin-top: 8px; } -.chatItem__header { - display: flex; - gap: 0.75rem; - align-items: flex-start; +.connect__error { + color: var(--live) !important; } -.chatItem__avatar { - width: 36px; - height: 36px; - border-radius: 50%; - object-fit: cover; - border: 2px solid rgba(255, 255, 255, 0.1); +.connect__card .btn { + height: 38px; + justify-content: center; + margin-top: 4px; } -.chatItem__meta { - flex: 1; - display: flex; - flex-direction: column; - gap: 0.25rem; - min-width: 0; - overflow: hidden; +input, +select { + height: 34px; + padding: 0 10px; + border-radius: 8px; + border: 1px solid var(--line-strong); + background: var(--bg); + outline: none; + transition: border-color 120ms ease; } -.chatItem__authorLine { +input:focus, +select:focus { + border-color: var(--blue); +} + +/* Dashboard shell */ + +.dash { + height: 100vh; + display: grid; + /* minmax(0, 1fr) so a long single-line "on air" message cannot widen the page past the viewport. */ + grid-template-columns: minmax(0, 1fr); + grid-template-rows: auto auto minmax(0, 1fr); +} + +.topbar { display: flex; align-items: center; - gap: 0.5rem; - flex-wrap: wrap; + gap: 14px; min-width: 0; - max-width: 100%; + height: 48px; + padding: 0 12px; + border-bottom: 1px solid var(--line); + background: var(--panel); } -.chatItem__author { +.topbar__stream { + display: flex; + align-items: center; + gap: 8px; + min-width: 0; + flex: 0 1 auto; +} + +.topbar__title { font-weight: 600; - font-size: 0.9rem; - color: #e5e7eb; + font-size: 13.5px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + max-width: 34vw; } -.chatItem__membership { - font-weight: 500; - font-size: 0.85rem; - color: #10b981; - font-style: italic; -} - -.chatItem__time { - font-size: 0.75rem; - color: #64748b; -} - -.chatItem__text { - margin: 0; - line-height: 1.5; - color: #9ca3af; - word-break: break-word; - overflow-wrap: break-word; - font-size: 0.875rem; -} - -.chatItem__superchat { - padding: 0.6rem 1rem; - border-radius: 8px; - font-weight: 600; - font-size: 0.9rem; - color: #fff; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); - align-self: flex-start; /* Align to the left */ -} - -.chatItem__superchat-inline { - padding: 0.3rem 0.6rem; - border-radius: 6px; - font-weight: 700; - font-size: 0.85rem; - color: #fff; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); - margin-left: 0.5rem; - display: inline-block; - flex-shrink: 0; +.topbar__stats { + display: flex; + gap: 12px; + margin-left: auto; + color: var(--muted); + font-size: 12px; white-space: nowrap; } -.chatItem__membership { - padding: 0.6rem 1rem; - background: linear-gradient(135deg, #10b981, #059669); +.topbar__actions { + display: flex; + gap: 6px; +} + +.search { + display: flex; + align-items: center; + gap: 8px; + flex: 0 1 380px; + min-width: 160px; + height: 32px; + padding: 0 10px; + border: 1px solid var(--line-strong); border-radius: 8px; + background: var(--bg); + color: var(--muted); +} + +.search:focus-within { + border-color: var(--blue); +} + +.search input { + flex: 1; + height: 100%; + border: 0; + padding: 0; + background: transparent; + color: var(--text); +} + +.dot { + width: 8px; + height: 8px; + border-radius: 50%; + background: var(--muted); + flex: none; +} + +.dot--live { + background: var(--live); + box-shadow: 0 0 0 0 rgba(255, 77, 77, 0.6); + animation: pulse 1.8s ease-out infinite; +} + +.dot--warn { + background: var(--amber); +} + +.dot--danger { + background: var(--live); +} + +@keyframes pulse { + 0% { + box-shadow: 0 0 0 0 rgba(255, 77, 77, 0.55); + } + 100% { + box-shadow: 0 0 0 8px rgba(255, 77, 77, 0); + } +} + +.chip { + display: inline-flex; + align-items: center; + gap: 4px; + height: 20px; + padding: 0 7px; + border-radius: 999px; + font-size: 11px; font-weight: 600; - font-size: 0.9rem; + letter-spacing: 0.02em; + background: var(--panel-3); + color: var(--muted); + white-space: nowrap; +} + +.chip--live { + background: rgba(255, 77, 77, 0.16); + color: var(--live); +} + +.chip--warn { + background: rgba(240, 164, 65, 0.16); + color: var(--amber); +} + +.chip--danger { + background: rgba(255, 77, 77, 0.16); + color: var(--live); +} + +.chip--poll { + background: rgba(91, 156, 255, 0.16); + color: var(--blue); +} + +/* On air strip */ + +.onair { + display: flex; + align-items: center; + gap: 10px; + min-width: 0; + overflow: hidden; + min-height: 40px; + padding: 6px 12px; + border-bottom: 1px solid var(--line); + background: var(--panel); +} + +.onair--live { + background: linear-gradient(90deg, rgba(255, 77, 77, 0.12), var(--panel) 45%); +} + +.onair__label { + font-size: 10.5px; + font-weight: 700; + letter-spacing: 0.1em; + text-transform: uppercase; + color: var(--muted); + flex: none; +} + +.onair--live .onair__label { + color: var(--live); +} + +.onair__author { + font-weight: 600; + flex: none; +} + +.onair__text { + flex: 1; + min-width: 0; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.onair__hint { + color: var(--muted); +} + +/* Panels */ + +.grid { + display: grid; + grid-template-columns: minmax(0, 1fr) 380px; + gap: 1px; + background: var(--line); + min-height: 0; +} + +.side { + display: grid; + grid-template-rows: minmax(0, 1fr) minmax(0, 1fr); + gap: 1px; + min-height: 0; + min-width: 0; +} + +.panel { + display: flex; + flex-direction: column; + min-height: 0; + min-width: 0; + background: var(--bg); +} + +.panel__head { + display: flex; + align-items: center; + gap: 7px; + height: 34px; + padding: 0 12px; + font-size: 11px; + font-weight: 650; + letter-spacing: 0.08em; + text-transform: uppercase; + color: var(--muted); + border-bottom: 1px solid var(--line); + flex: none; +} + +.panel__note { + margin-left: auto; + font-weight: 500; + letter-spacing: 0; + text-transform: none; + color: var(--blue); +} + +.list { + position: relative; + flex: 1; + min-height: 0; +} + +.list__scroll { + height: 100%; + overflow-y: auto; + overflow-x: hidden; + overscroll-behavior: contain; + scrollbar-width: thin; + scrollbar-color: var(--panel-3) transparent; +} + +.list__empty { + padding: 32px 16px; + text-align: center; + color: var(--muted); +} + +.list__jump, +.list__paused { + position: absolute; + left: 50%; + transform: translateX(-50%); + display: inline-flex; + align-items: center; + gap: 5px; + height: 26px; + padding: 0 10px; + border-radius: 999px; + font-size: 12px; + font-weight: 600; + border: 1px solid var(--line-strong); + background: var(--panel-3); + box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4); +} + +.list__jump { + bottom: 10px; + cursor: pointer; + color: var(--text); +} + +.list__paused { + top: 8px; + color: var(--amber); +} + +/* Message cards */ + +.card { + display: block; + width: 100%; + min-width: 0; + overflow: hidden; + padding: 7px 12px 7px 9px; + border: 0; + border-left: 3px solid transparent; + background: transparent; + text-align: left; + cursor: pointer; + transition: background 100ms ease, opacity 150ms ease; +} + +.card:hover { + background: var(--panel); +} + +.card + .card { + border-top: 1px solid var(--line); +} + +.card--selected { + background: rgba(255, 77, 77, 0.1); + border-left-color: var(--live); +} + +.card--selected:hover { + background: rgba(255, 77, 77, 0.14); +} + +.card--seen { + opacity: 0.5; +} + +.card--seen:hover { + opacity: 0.85; +} + +.card--super { + border-left-color: var(--accent); +} + +.card--member { + border-left-color: var(--gold); +} + +.card__head { + display: flex; + align-items: center; + gap: 6px; + min-width: 0; +} + +.card__author { + min-width: 0; + flex: 0 1 auto; + font-weight: 600; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.card--super .card__author { color: #fff; } +.card__time { + margin-left: auto; + color: var(--muted); + font-size: 11px; + flex: none; +} + +.card__text { + margin: 3px 0 0 30px; + font-size: 13.5px; + overflow-wrap: anywhere; +} + +.card__amount { + display: inline-flex; + align-items: center; + height: 20px; + padding: 0 8px; + border-radius: 6px; + background: var(--accent); + color: #fff; + font-weight: 700; + font-size: 12px; + white-space: nowrap; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); +} + +.card__level { + display: inline-flex; + align-items: center; + gap: 4px; + color: var(--gold); + font-size: 12px; + font-weight: 600; + white-space: nowrap; +} + +.avatar { + width: 24px; + height: 24px; + border-radius: 50%; + flex: none; + object-fit: cover; + background: var(--panel-3); +} + +.avatar--sm { + width: 20px; + height: 20px; +} + +.avatar--empty { + display: grid; + place-items: center; + font-size: 11px; + font-weight: 700; + color: var(--muted); +} + +.emoji { + height: 1.35em; + width: auto; + vertical-align: -0.3em; + margin: 0 1px; +} + +.sticker { + display: block; + max-width: 120px; + max-height: 120px; + margin: 6px 0 0 30px; +} + +.link { + color: var(--blue); + text-decoration: underline; + text-decoration-color: rgba(91, 156, 255, 0.4); + text-underline-offset: 2px; + overflow-wrap: anywhere; +} + .badge { - font-size: 0.85rem; - padding: 0.15rem 0.4rem; - border-radius: 4px; - font-weight: 600; display: inline-flex; align-items: center; - gap: 0.25rem; + gap: 2px; + height: 16px; + min-width: 16px; + padding: 0 3px; + border-radius: 4px; + font-size: 10.5px; + font-weight: 700; + flex: none; } .badge--image { width: 16px; height: 16px; padding: 0; - border-radius: 2px; + border-radius: 3px; + object-fit: contain; } .badge--moderator { - background: rgba(239, 68, 68, 0.2); - color: #fca5a5; + background: rgba(91, 156, 255, 0.18); + color: var(--blue); } .badge--member { - background: rgba(34, 197, 94, 0.2); - color: #86efac; + background: rgba(62, 207, 142, 0.18); + color: var(--green); } .badge--verified { - background: rgba(59, 130, 246, 0.2); - color: #93c5fd; + background: rgba(255, 255, 255, 0.12); + color: var(--text); } -.badge--leaderboard { - background: rgba(251, 191, 36, 0.2); - color: #fcd34d; - font-weight: 600; +.badge--owner { + background: rgba(245, 200, 76, 0.2); + color: var(--gold); } -.memberItem { - display: flex; - flex-direction: column; - gap: 0.375rem; - padding: 0.625rem 0.875rem; - border-radius: 6px; - background: #1f1f1f; - border: 1px solid #2a2a2a; - text-align: left; - transition: all 250ms ease-out; - cursor: pointer; - flex-shrink: 0; +.badge--rank { + background: rgba(245, 200, 76, 0.18); + color: var(--gold); } -.memberItem:hover { - background: #262626; - border-color: #3a3a3a; - transform: translateX(2px); -} - -.memberItem--active { - background: rgba(16, 185, 129, 0.15); - border-color: rgba(16, 185, 129, 0.5); - box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2); - filter: brightness(0.85); -} - -.memberItem--previously-selected { - filter: brightness(0.6); - opacity: 0.7; -} - -/* Ensure active state overrides previously selected state */ -.memberItem--active.memberItem--previously-selected { - filter: brightness(0.85); - opacity: 1; -} - -.memberItem__header { - display: flex; - gap: 0.75rem; - align-items: center; -} - -.memberItem__avatar { - width: 40px; - height: 40px; - border-radius: 50%; - object-fit: cover; - border: 2px solid rgba(16, 185, 129, 0.4); -} - -.memberItem__info { - flex: 1; - display: flex; - flex-direction: column; - gap: 0.25rem; -} - -.memberItem__author { - font-weight: 600; - font-size: 0.9rem; - color: #e5e7eb; -} - -.memberItem__level { - font-size: 0.85rem; - color: #6ee7b7; - font-weight: 600; -} - -.memberItem__time { - font-size: 0.7rem; - color: #64748b; -} - -.memberItem__text { - margin: 0; - line-height: 1.4; - color: #d1fae5; - font-size: 0.9rem; -} - -.selectedPreview { - width: 100%; - background: rgba(59, 130, 246, 0.1); - border: 2px solid rgba(59, 130, 246, 0.3); - border-radius: 20px; - padding: 1.5rem; - backdrop-filter: blur(10px); -} - -.selectedPreview h3 { - margin: 0 0 1rem 0; - font-size: 1.2rem; - color: #93c5fd; -} - -.selectedPreview__card { - background: rgba(15, 23, 42, 0.6); - padding: 1.5rem; - border-radius: 14px; - display: flex; - flex-direction: column; - gap: 1rem; -} - -.selectedPreview__header { - display: flex; - gap: 1rem; - align-items: center; -} - -.selectedPreview__avatar { - width: 48px; - height: 48px; - border-radius: 50%; - object-fit: cover; - border: 2px solid rgba(96, 165, 250, 0.4); -} - -.selectedPreview__authorLine { - display: flex; - align-items: center; - gap: 0.5rem; - flex-wrap: wrap; -} - -.selectedPreview__author { - font-weight: 700; - font-size: 1.1rem; - color: #60a5fa; -} - -.selectedPreview__superchat { - padding: 0.75rem 1.25rem; - border-radius: 10px; - font-weight: 600; - color: #fff; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); -} - -.selectedPreview__text { - font-size: 1.1rem; - line-height: 1.6; - color: #f1f5f9; - margin: 0; -} - -.overlay { - min-height: 100vh; - display: grid; - place-items: center; - background: transparent; -} - -@keyframes fadeIn { - from { - opacity: 0; - transform: translateY(20px) scale(0.95); - } - to { - opacity: 1; - transform: translateY(0) scale(1); - } -} - -@keyframes fadeOut { - from { - opacity: 1; - transform: scale(1); - } - to { - opacity: 0; - transform: scale(0.95); - } -} - -.overlay__card { - background: #1f1f1f; - border: 1px solid #3a3a3a; - border-radius: 12px; - padding: 0; - display: flex; - flex-direction: column; - gap: 0; - width: min(100% - 2rem, 600px); - max-width: 95vw; - animation: fadeIn 0.4s ease-out; - box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5); - overflow: hidden; -} - -.overlay__card--fadeOut { - animation: fadeOut 0.3s ease-in forwards; -} - -.overlay__header { - display: flex; - gap: 0.625rem; - align-items: center; - padding: 0.75rem 1rem; - background: rgba(255, 255, 255, 0.03); - border-bottom: 1px solid rgba(255, 255, 255, 0.05); -} - -.overlay__avatar { - width: 36px; - height: 36px; - border-radius: 50%; - object-fit: cover; - border: 2px solid rgba(255, 255, 255, 0.1); - flex-shrink: 0; -} - -.overlay__authorLine { - display: flex; - align-items: center; - gap: 0.375rem; - flex-wrap: wrap; - flex: 1; - min-width: 0; -} - -.overlay__author { - font-size: 0.95rem; - font-weight: 600; - color: #e5e7eb; - margin-right: 0.25rem; -} - -.overlay__badge { - font-size: 0.75rem; -} - -.overlay__badge--image { - width: 16px; - height: 16px; - border-radius: 2px; -} - -/* Inline emoji images */ -.overlay__emoji { - width: 1.2em; - height: 1.2em; - vertical-align: -0.2em; - margin: 0 0.08em; - display: inline-block; -} - -.chatItem__emoji, -.memberItem__emoji { - width: 1.1em; - height: 1.1em; - vertical-align: -0.2em; - margin: 0 0.06em; - display: inline-block; -} - -/* Super sticker images */ -.chatItem__sticker { - display: flex; - justify-content: center; - margin-top: 0.75rem; - padding-top: 0.75rem; - border-top: 1px solid rgba(255, 255, 255, 0.05); -} - -.chatItem__stickerImage { - max-width: 144px; - max-height: 144px; - width: auto; - height: auto; - border-radius: 8px; - object-fit: contain; -} - -.overlay__sticker { - display: flex; - justify-content: center; - margin-top: 0.75rem; - padding-top: 0.75rem; -} - -.overlay__stickerImage { - max-width: 144px; - max-height: 144px; - width: auto; - height: auto; - border-radius: 8px; - object-fit: contain; -} - -/* Message links */ -.message-link { - color: #60a5fa; - text-decoration: underline; - cursor: pointer; - transition: color 0.2s; -} - -.message-link:hover { - color: #93c5fd; -} - -/* Confirmation modal */ -.modal-overlay { - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - background: rgba(0, 0, 0, 0.7); - display: flex; - align-items: center; - justify-content: center; - z-index: 10000; - animation: fadeIn 0.2s ease-out; -} +/* Modal */ .modal { - background: #1f1f1f; - border: 1px solid #3a3a3a; - border-radius: 12px; - padding: 2rem; - max-width: 500px; - width: 90%; - box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5); - animation: slideUp 0.3s ease-out; + position: fixed; + inset: 0; + z-index: 50; + display: grid; + place-items: center; + padding: 24px; + background: rgba(0, 0, 0, 0.6); + backdrop-filter: blur(2px); } -@keyframes slideUp { - from { - transform: translateY(20px); - opacity: 0; - } - to { - transform: translateY(0); - opacity: 1; - } +.modal__card { + width: min(100%, 440px); + display: flex; + flex-direction: column; + gap: 12px; + padding: 20px; + border: 1px solid var(--line-strong); + border-radius: 14px; + background: var(--panel); + box-shadow: 0 24px 60px rgba(0, 0, 0, 0.5); } -.modal__title { - margin: 0 0 1rem 0; - font-size: 1.25rem; - font-weight: 600; - color: #fff; +.modal__card--wide { + width: min(100%, 600px); +} + +.modal__card h2 { + font-size: 16px; + font-weight: 650; +} + +.modal__head { + display: flex; + align-items: center; + justify-content: space-between; } .modal__url { - margin: 0 0 1.5rem 0; - padding: 0.75rem; - background: #0f0f0f; - border: 1px solid #2a2a2a; - border-radius: 6px; - color: #60a5fa; - word-break: break-all; - font-family: monospace; - font-size: 0.9rem; + padding: 10px; + border-radius: 8px; + background: var(--bg); + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 12px; + overflow-wrap: anywhere; } .modal__actions { display: flex; - gap: 0.75rem; + justify-content: flex-end; + gap: 8px; +} + +.fields { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 10px; +} + +.field { + display: flex; + flex-direction: column; + gap: 4px; + font-size: 12px; + color: var(--muted); +} + +.urlbox { + display: flex; + gap: 6px; +} + +.urlbox input { + flex: 1; + min-width: 0; + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 12px; +} + +/* Toasts */ + +.toasts { + position: fixed; + right: 16px; + bottom: 16px; + z-index: 60; + display: flex; + flex-direction: column; + gap: 8px; +} + +.toast { + padding: 10px 14px; + border-radius: 10px; + border: 1px solid rgba(255, 77, 77, 0.4); + background: var(--panel-2); + box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45); + font-size: 12.5px; +} + +@media (max-width: 960px) { + .dash { + height: auto; + min-height: 100vh; + } + + .topbar { + flex-wrap: wrap; + height: auto; + padding: 8px 12px; + } + + .topbar__stats { + margin-left: 0; + } + + .grid { + grid-template-columns: 1fr; + } + + .grid > .panel { + height: 60vh; + } + + .side { + grid-template-rows: 40vh 40vh; + } + + .fields { + grid-template-columns: 1fr; + } +} + +/* OBS overlay */ + +/* Sized for a 1080p canvas and scaled with the source width, so a 4K browser source looks the same as a 1080p one. */ +.ov { + position: fixed; + inset: 0; + display: flex; + padding: 1.5vw; + pointer-events: none; + --unit: calc(100vw / 1920); + --w: 640; + --fs: calc(20 * var(--unit)); +} + +.ov--size-s { + --fs: calc(16 * var(--unit)); +} + +.ov--size-l { + --fs: calc(26 * var(--unit)); +} + +.ov--size-xl { + --fs: calc(34 * var(--unit)); +} + +.ov--bl { + align-items: flex-end; + justify-content: flex-start; +} + +.ov--bc { + align-items: flex-end; + justify-content: center; +} + +.ov--br { + align-items: flex-end; justify-content: flex-end; } -.modal__btn { - padding: 0.625rem 1.25rem; - border: none; - border-radius: 6px; - font-weight: 500; - cursor: pointer; - transition: all 0.2s; - font-size: 0.95rem; +.ov--tl { + align-items: flex-start; + justify-content: flex-start; } -.modal__btn--cancel { - background: #2a2a2a; - color: #fff; -} - -.modal__btn--cancel:hover { - background: #3a3a3a; -} - -.modal__btn--confirm { - background: #60a5fa; - color: #0f0f0f; -} - -.modal__btn--confirm:hover { - background: #93c5fd; -} - -.overlay__superchat, -.overlay__membership { - padding: 0.6rem 1rem; - border-radius: 8px; - font-weight: 600; - font-size: 0.9rem; - color: #fff; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); - align-self: flex-start; -} - -.overlay__superchat-header { - padding: 0.875rem 1rem; - color: #fff; - display: flex; - align-items: center; - gap: 0.625rem; - text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); -} - -.overlay__superchat-avatar { - width: 40px; - height: 40px; - border-radius: 50%; - object-fit: cover; - border: 2px solid rgba(255, 255, 255, 0.3); - flex-shrink: 0; -} - -.overlay__superchat-name { - font-size: 1.35rem; - font-weight: 700; -} - -.overlay__superchat-separator { - font-size: 1.15rem; - font-weight: 600; - opacity: 0.85; - margin: 0 0.125rem; -} - -.overlay__superchat-amount { - font-size: 1.35rem; - font-weight: 700; -} - -.overlay__superchat-text { - padding: 0.75rem 1rem; - font-size: 1.05rem; - line-height: 1.4; - color: #e5e7eb; - font-weight: 400; - text-align: left; - word-break: break-word; - background: rgba(0, 0, 0, 0.25); - border-top: 1px solid rgba(0, 0, 0, 0.2); - margin: 0; -} - -.overlay__membership { - background: linear-gradient(135deg, #10b981, #059669); -} - -.overlay__membership-header { - padding: 0.875rem 1rem; - background: linear-gradient(135deg, #10b981, #059669); - color: #fff; - display: flex; - align-items: center; - gap: 0.625rem; - text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); -} - -.overlay__membership-avatar { - width: 40px; - height: 40px; - border-radius: 50%; - object-fit: cover; - border: 2px solid rgba(255, 255, 255, 0.3); - flex-shrink: 0; -} - -.overlay__membership-info { - display: flex; - align-items: center; - gap: 0.375rem; - flex-wrap: wrap; - flex: 1; - min-width: 0; -} - -.overlay__membership-name { - font-size: 1.35rem; - font-weight: 700; -} - -.overlay__membership-separator { - font-size: 1.15rem; - font-weight: 600; - opacity: 0.85; - margin: 0 0.125rem; -} - -.overlay__membership-level { - font-size: 1.35rem; - font-weight: 700; -} - -.overlay__membership-text { - padding: 0.75rem 1rem; - font-size: 1.05rem; - line-height: 1.4; - color: #e5e7eb; - font-weight: 400; - text-align: left; - word-break: break-word; - background: rgba(0, 0, 0, 0.25); - border-top: 1px solid rgba(0, 0, 0, 0.2); - margin: 0; -} - -.overlay__text { - font-size: 1.05rem; - line-height: 1.4; - color: #d1d5db; - font-weight: 400; - text-align: left; - word-break: break-word; - padding: 0.75rem 1rem; - margin: 0; -} - -.overlay__timestamp { - font-size: 0.7rem; - color: rgba(255, 255, 255, 0.5); - font-weight: 400; - margin-left: auto; - white-space: nowrap; -} - -.overlay__placeholder { - padding: 1rem 1.4rem; - border-radius: 12px; - background: rgba(255, 255, 255, 0.08); - color: rgba(255, 255, 255, 0.75); - display: flex; - align-items: center; +.ov--tc { + align-items: flex-start; justify-content: center; - text-align: center; } -.status { - padding: 0.4rem 0.8rem; - border-radius: 999px; - font-size: 0.85rem; - font-weight: 600; +.ov--tr { + align-items: flex-start; + justify-content: flex-end; } -.status--connecting { - background: rgba(125, 211, 252, 0.2); - color: #7dd3fc; +.ov__card { + max-width: min(calc(var(--w) * var(--unit)), 100%); + padding: 0.7em 0.9em 0.8em; + border-radius: 0.7em; + font-size: var(--fs); + line-height: 1.35; + overflow: hidden; + --card-bg: rgba(12, 13, 17, 0.92); + --card-fg: #fff; + --card-muted: rgba(255, 255, 255, 0.65); + --card-line: rgba(255, 255, 255, 0.1); + background: var(--card-bg); + color: var(--card-fg); + border: 1px solid var(--card-line); + box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45); } -.status--live { - background: rgba(74, 222, 128, 0.2); - color: #4ade80; +.ov--light .ov__card { + --card-bg: rgba(255, 255, 255, 0.96); + --card-fg: #15171c; + --card-muted: rgba(0, 0, 0, 0.55); + --card-line: rgba(0, 0, 0, 0.08); } -.status--error { - background: rgba(248, 113, 113, 0.2); - color: #f87171; +/* Light card tuned for the blueprint paper background: navy ink, drafting-blue rule, paper white. */ +.ov--blueprint .ov__card { + --card-bg: rgba(247, 249, 253, 0.97); + --card-fg: #1b2940; + --card-muted: #5f7392; + --card-line: #5b7fb8; + border-width: 2px; + box-shadow: 0 0.35em 1.2em rgba(27, 41, 64, 0.18); } -/* Poll indicator */ -.poll-indicator { +.ov--blueprint .ov__author { + color: #2f4d80; +} + +.ov--blueprint .ov__card--super { + box-shadow: 0 0 0 2px var(--accent), 0 0.35em 1.2em rgba(27, 41, 64, 0.18); +} + +.ov--blueprint .ov__level { + color: #8a6a12; +} + +.ov--blueprint .badge--rank, +.ov--blueprint .badge--owner { + background: rgba(138, 106, 18, 0.15); + color: #8a6a12; +} + +.ov--blueprint .badge--verified { + background: rgba(27, 41, 64, 0.1); + color: #1b2940; +} + +.ov--glass .ov__card { + --card-bg: rgba(18, 19, 26, 0.55); + --card-line: rgba(255, 255, 255, 0.2); + backdrop-filter: blur(16px) saturate(1.4); +} + +.ov--youtube .ov__card { + --card-bg: linear-gradient(135deg, #e62117, #b31217); + --card-line: rgba(255, 255, 255, 0.18); +} + +.ov__card--super { + border-color: var(--accent); + box-shadow: 0 0 0 2px var(--accent), 0 12px 40px rgba(0, 0, 0, 0.45); +} + +.ov__card--member { + border-color: var(--gold); +} + +.ov__head { display: flex; align-items: center; - gap: 0.5rem; - padding: 0.5rem 0.875rem; - background: rgba(139, 92, 246, 0.15); - border: 1px solid rgba(139, 92, 246, 0.3); - border-radius: 6px; - font-size: 0.875rem; + gap: 0.4em; + font-size: 0.85em; +} + +.ov__avatar { + width: 1.7em; + height: 1.7em; + border-radius: 50%; + object-fit: cover; +} + +.ov__author { + font-weight: 700; +} + +.ov__head .badge { + height: 1.25em; + min-width: 1.25em; + padding: 0 0.25em; + gap: 0.15em; + border-radius: 0.25em; + font-size: 0.8em; +} + +/* Lucide icons carry a pixel size attribute; in the overlay they must follow the font size. */ +.ov__head .badge svg { + width: 1em; + height: 1em; +} + +.ov__head .badge--image { + width: 1.25em; + height: 1.25em; + padding: 0; +} + +.ov__amount { + margin-left: auto; + padding: 0.1em 0.5em; + border-radius: 0.35em; + background: var(--accent); + color: #fff; + font-weight: 800; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3); +} + +.ov__level { + margin-left: auto; + color: var(--gold); font-weight: 600; - color: #c4b5fd; - animation: pollPulse 2s ease-in-out infinite; - margin-right: 0.5rem; } -.poll-indicator__icon { - font-size: 1rem; +.ov__text { + margin-top: 0.3em; + font-weight: 500; + overflow-wrap: anywhere; } -.poll-indicator__text { - white-space: nowrap; +.ov__text .emoji { + height: 1.3em; } -@keyframes pollPulse { - 0%, 100% { - box-shadow: 0 0 0 rgba(139, 92, 246, 0); +.ov__text .link { + color: inherit; + text-decoration: none; +} + +.ov__sticker { + display: block; + max-width: 6em; + max-height: 6em; + margin-top: 0.4em; +} + +.ov--anim-fade .ov__card { + animation: ov-fade-in 240ms ease-out; +} + +.ov--anim-fade .ov__card--leaving { + animation: ov-fade-out 220ms ease-in forwards; +} + +.ov--anim-slide .ov__card { + animation: ov-slide-in 280ms cubic-bezier(0.2, 0.8, 0.2, 1); +} + +.ov--anim-slide .ov__card--leaving { + animation: ov-slide-out 220ms ease-in forwards; +} + +.ov--tl.ov--anim-slide, +.ov--tc.ov--anim-slide, +.ov--tr.ov--anim-slide { + --slide: -24px; +} + +.ov--bl.ov--anim-slide, +.ov--bc.ov--anim-slide, +.ov--br.ov--anim-slide { + --slide: 24px; +} + +@keyframes ov-fade-in { + from { + opacity: 0; + transform: scale(0.97); } - 50% { - box-shadow: 0 0 20px rgba(139, 92, 246, 0.4); + to { + opacity: 1; + transform: scale(1); + } +} + +@keyframes ov-fade-out { + to { + opacity: 0; + transform: scale(0.97); + } +} + +@keyframes ov-slide-in { + from { + opacity: 0; + transform: translateY(var(--slide)); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +@keyframes ov-slide-out { + to { + opacity: 0; + transform: translateY(var(--slide)); } } diff --git a/client/app/layout.tsx b/client/app/layout.tsx index 68200be..c71ab73 100644 --- a/client/app/layout.tsx +++ b/client/app/layout.tsx @@ -1,20 +1,15 @@ import './globals.css'; import type { ReactNode } from 'react'; -import { TimezoneProvider } from '../lib/TimezoneContext'; export const metadata = { - title: 'YouTube Chat Client', - description: 'High-performance YouTube Live chat dashboard' + title: 'YTChatHub', + description: 'YouTube Live chat dashboard with an OBS overlay' }; export default function RootLayout({ children }: { children: ReactNode }) { return ( - - - {children} - - + {children} ); } diff --git a/client/app/overlay/page.tsx b/client/app/overlay/page.tsx index c3673e2..198ba75 100644 --- a/client/app/overlay/page.tsx +++ b/client/app/overlay/page.tsx @@ -1,211 +1,86 @@ 'use client'; -import { useEffect, useState, useRef } from 'react'; +import { useEffect, useState } from 'react'; import type { ChatMessage } from '@shared/chat'; +import { Badges } from '../../components/Badges'; +import { MessageBody } from '../../components/MessageBody'; +import { formatAmount } from '../../lib/format'; import { proxyImageUrl } from '../../lib/imageProxy'; +import { DEFAULT_OPTIONS, parseOverlayOptions, type OverlayOptions } from '../../lib/overlayOptions'; +import { useEvents } from '../../lib/useEvents'; -const BACKEND_URL = process.env.NEXT_PUBLIC_BACKEND_URL ?? 'http://localhost:4100'; +const SWAP_MS = 220; -type SelectionPayload = { - message: ChatMessage | null; -}; +function membershipLabel(message: ChatMessage): string { + if (message.membershipGiftPurchase && message.giftCount) { + return `Gifted ${message.giftCount} membership${message.giftCount > 1 ? 's' : ''}`; + } + return message.membershipLevel || 'New member'; +} export default function OverlayPage() { - const [message, setMessage] = useState(null); - const [displayMessage, setDisplayMessage] = useState(null); - const [connected, setConnected] = useState(false); - const [fadingOut, setFadingOut] = useState(false); - const [switching, setSwitching] = useState(false); - const connectionRef = useRef(null); - const switchTimeoutRef = useRef(null); + const { selection } = useEvents(); + const [options, setOptions] = useState(DEFAULT_OPTIONS); + const [shown, setShown] = useState(null); + const [leaving, setLeaving] = useState(false); + const [expired, setExpired] = useState(false); useEffect(() => { - // Prevent multiple connections - if (connectionRef.current) { - console.log('[Overlay] SSE already connected'); + setOptions(parseOverlayOptions(window.location.search)); + document.body.classList.add('is-overlay'); + return () => document.body.classList.remove('is-overlay'); + }, []); + + // Swap with a short exit animation so a new pick never pops in over the old one. + useEffect(() => { + if ((selection?.id ?? null) === (shown?.id ?? null)) return; + if (!shown || options.anim === 'none') { + setShown(selection); + setExpired(false); return; } + setLeaving(true); + const timer = setTimeout(() => { + setShown(selection); + setExpired(false); + setLeaving(false); + }, SWAP_MS); + return () => clearTimeout(timer); + }, [selection, shown, options.anim]); - console.log('[Overlay] Creating SSE connection'); - const source = new EventSource(`${BACKEND_URL}/overlay/stream`); - connectionRef.current = source; - - const onSelection = (event: MessageEvent) => { - try { - const payload: SelectionPayload = JSON.parse(event.data); - setMessage(payload.message); - setConnected(true); - } catch (error) { - console.error('overlay: failed to parse payload', error); - } - }; - - source.addEventListener('selection', onSelection as EventListener); - source.addEventListener('heartbeat', () => setConnected(true)); - source.onerror = () => setConnected(false); - - return () => { - console.log('[Overlay] Closing SSE connection'); - source.removeEventListener('selection', onSelection as EventListener); - source.close(); - connectionRef.current = null; - if (switchTimeoutRef.current) { - clearTimeout(switchTimeoutRef.current); - } - }; - }, []); // Empty dependency array - only connect once - - // Handle message transitions useEffect(() => { - // Clear any pending timeout - if (switchTimeoutRef.current) { - clearTimeout(switchTimeoutRef.current); - switchTimeoutRef.current = null; - } + if (!options.hide || !shown) return; + const timer = setTimeout(() => setExpired(true), options.hide * 1000); + return () => clearTimeout(timer); + }, [shown, options.hide]); - if (message === null && displayMessage !== null) { - // Deselecting - fade out - setFadingOut(true); - setSwitching(false); - switchTimeoutRef.current = setTimeout(() => { - setDisplayMessage(null); - setFadingOut(false); - }, 300); - } else if (message !== null && displayMessage !== null && message.id !== displayMessage.id) { - // Switching between messages - fade out then fade in - setSwitching(true); - setFadingOut(true); - switchTimeoutRef.current = setTimeout(() => { - setDisplayMessage(message); - setFadingOut(false); - setSwitching(false); - }, 300); - } else if (message !== null && displayMessage === null) { - // First message - just show it - setDisplayMessage(message); - setFadingOut(false); - setSwitching(false); - } - }, [message, displayMessage]); + const message = expired ? null : shown; + const kind = message?.superChat ? 'super' : message?.membershipGift || message?.membershipGiftPurchase ? 'member' : 'chat'; return ( -
- {displayMessage ? ( -
- {displayMessage.superChat ? ( - <> -
- {displayMessage.authorPhoto && ( - {displayMessage.author} - )} - {displayMessage.author} - - - - {displayMessage.superChat.currency}{displayMessage.superChat.currency ? ' ' : ''}{displayMessage.superChat.amount} - -
- {displayMessage.runs?.length ? ( -

- {displayMessage.runs.map((r, i) => - r.emojiUrl ? ( - {r.emojiAlt - ) : ( - {r.text} - ) - )} -

- ) : displayMessage.text && displayMessage.text !== 'N/A' && ( -

{displayMessage.text}

- )} - {displayMessage.superChat.stickerUrl && ( -
- {displayMessage.superChat.stickerAlt { - // Hide image on error - e.currentTarget.style.display = 'none'; - }} - /> -
- )} - - ) : (displayMessage.membershipGift || displayMessage.membershipGiftPurchase) ? ( - <> -
- {displayMessage.authorPhoto && ( - {displayMessage.author} - )} -
- {displayMessage.author} - - - - {displayMessage.membershipGiftPurchase && displayMessage.giftCount - ? `Sent ${displayMessage.giftCount} Gift Membership${displayMessage.giftCount > 1 ? 's' : ''}` - : displayMessage.membershipLevel || 'New Member'} - -
-
- {displayMessage.runs?.length ? ( -

- {displayMessage.runs.map((r, i) => - r.emojiUrl ? ( - {r.emojiAlt - ) : ( - {r.text} - ) - )} -

- ) : displayMessage.text && displayMessage.text !== 'N/A' && ( -

{displayMessage.text}

- )} - - ) : ( - <> -
- {displayMessage.authorPhoto && ( - {displayMessage.author} - )} -
-
- {displayMessage.author} - {displayMessage.leaderboardRank && ( - - 👑 #{displayMessage.leaderboardRank} - - )} - {displayMessage.badges && displayMessage.badges.map((badge, i) => ( - badge.imageUrl ? ( - {badge.label} - ) : ( - - {badge.type === 'moderator' && '🛡️'} - {badge.type === 'member' && '⭐'} - {badge.type === 'verified' && '✓'} - - ) - ))} -
-
-
- {displayMessage.runs?.length ? ( -

- {displayMessage.runs.map((r, i) => - r.emojiUrl ? ( - {r.emojiAlt - ) : ( - {r.text} - ) - )} -

- ) : displayMessage.text && displayMessage.text !== 'N/A' && ( -

{displayMessage.text}

- )} - +
+ {message && ( +
+
+ {message.authorPhoto && } + {message.author} + + {message.superChat && {formatAmount(message.superChat.amount, message.superChat.currency)}} + {kind === 'member' && {membershipLabel(message)}} +
+ + {message.superChat?.stickerUrl && ( + {message.superChat.stickerAlt { + event.currentTarget.hidden = true; + }} + /> )}
- ) : null} + )}
); } diff --git a/client/app/page.tsx b/client/app/page.tsx index 30d4b85..a573d45 100644 --- a/client/app/page.tsx +++ b/client/app/page.tsx @@ -1,17 +1,22 @@ import Link from 'next/link'; +import { LayoutDashboard, MonitorPlay } from 'lucide-react'; export default function HomePage() { return (
-
-

YouTube Chat Client

-

- Launch the dashboard to monitor live chat and control the overlay that feeds OBS. -

- - Open Dashboard - -

Overlay preview lives at /overlay for the OBS browser source.

+
+

YTChatHub

+

Watch a YouTube Live chat, pick a message, and it appears on your OBS overlay.

+
+ + + Open dashboard + + + + Overlay for OBS + +
); diff --git a/client/components/Badges.tsx b/client/components/Badges.tsx new file mode 100644 index 0000000..3a77bba --- /dev/null +++ b/client/components/Badges.tsx @@ -0,0 +1,36 @@ +import { BadgeCheck, Crown, Shield, Star, Tv } from 'lucide-react'; +import type { ChatMessage } from '@shared/chat'; +import { proxyImageUrl } from '../lib/imageProxy'; + +const ICONS = { + moderator: Shield, + member: Star, + verified: BadgeCheck, + owner: Tv, + custom: null +} as const; + +export function Badges({ message }: { message: ChatMessage }) { + return ( + <> + {message.leaderboardRank && ( + + + {message.leaderboardRank} + + )} + {message.badges?.map((badge, i) => { + if (badge.imageUrl) { + return {badge.label; + } + const Icon = ICONS[badge.type]; + if (!Icon) return null; + return ( + + + + ); + })} + + ); +} diff --git a/client/components/ChatList.tsx b/client/components/ChatList.tsx new file mode 100644 index 0000000..29ea779 --- /dev/null +++ b/client/components/ChatList.tsx @@ -0,0 +1,78 @@ +'use client'; + +import { ArrowDown } from 'lucide-react'; +import { useEffect, useLayoutEffect, useRef, useState, type ReactNode } from 'react'; +import type { ChatMessage } from '@shared/chat'; + +type Props = { + messages: ChatMessage[]; + paused?: boolean; + render: (message: ChatMessage) => ReactNode; + empty: string; +}; + +const BOTTOM_THRESHOLD = 80; + +/** + * Scroll container that follows new messages while the user is at the bottom. + * Scrolling up stops following and shows a jump button with the unseen count. + * While paused the list is frozen at its current contents. + */ +export function ChatList({ messages, paused = false, render, empty }: Props) { + const scroller = useRef(null); + const following = useRef(true); + const [unseen, setUnseen] = useState(0); + const [frozen, setFrozen] = useState(null); + + useEffect(() => { + setFrozen(paused ? messages : null); + // Only the pause flag should snapshot; message updates while paused must not refresh the snapshot. + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [paused]); + + const shown = frozen ?? messages; + + useLayoutEffect(() => { + const node = scroller.current; + if (!node) return; + if (following.current) { + node.scrollTop = node.scrollHeight; + setUnseen(0); + } else { + setUnseen((count) => count + 1); + } + }, [shown]); + + const onScroll = () => { + const node = scroller.current; + if (!node) return; + const atBottom = node.scrollHeight - node.scrollTop - node.clientHeight <= BOTTOM_THRESHOLD; + following.current = atBottom; + if (atBottom) setUnseen(0); + }; + + const jump = () => { + const node = scroller.current; + if (!node) return; + following.current = true; + node.scrollTop = node.scrollHeight; + setUnseen(0); + }; + + return ( +
+
+ {shown.length ? shown.map(render) :

{empty}

} +
+ {unseen > 0 && !following.current && ( + + )} + {paused && frozen && messages.length > frozen.length && ( + Paused, {messages.length - frozen.length} waiting + )} +
+ ); +} diff --git a/client/components/ConnectForm.tsx b/client/components/ConnectForm.tsx new file mode 100644 index 0000000..1cc1b23 --- /dev/null +++ b/client/components/ConnectForm.tsx @@ -0,0 +1,43 @@ +'use client'; + +import { Radio } from 'lucide-react'; +import { useState, type FormEvent } from 'react'; + +type Props = { + busy: boolean; + error?: string | null; + onConnect: (liveId: string) => void; +}; + +export function ConnectForm({ busy, error, onConnect }: Props) { + const [value, setValue] = useState(''); + + const submit = (event: FormEvent) => { + event.preventDefault(); + if (value.trim()) onConnect(value.trim()); + }; + + return ( +
+
+ + + +

Connect to a live stream

+

Paste the video URL or the 11 character video id of a stream that is live now.

+ setValue(event.target.value)} + placeholder="https://youtube.com/watch?v=…" + disabled={busy} + spellCheck={false} + /> + {error &&

{error}

} + +
+
+ ); +} diff --git a/client/components/MessageBody.tsx b/client/components/MessageBody.tsx new file mode 100644 index 0000000..c3c81f8 --- /dev/null +++ b/client/components/MessageBody.tsx @@ -0,0 +1,56 @@ +'use client'; + +import type { ChatMessage, MessageRun } from '@shared/chat'; +import { proxyImageUrl } from '../lib/imageProxy'; +import { splitLinks } from '../lib/format'; + +type Props = { + message: ChatMessage; + className?: string; + /** When given, links are clickable and call this instead of navigating. When omitted links render as text. */ + onLink?: (url: string) => void; +}; + +function runsOf(message: ChatMessage): MessageRun[] { + if (message.runs?.length) return message.runs; + if (message.text && message.text !== 'N/A') return [{ text: message.text }]; + return []; +} + +export function MessageBody({ message, className, onLink }: Props) { + const runs = runsOf(message); + if (!runs.length) return null; + + const link = (url: string, label: string, key: number) => + onLink ? ( + { + event.preventDefault(); + event.stopPropagation(); + onLink(url); + }} + > + {label} + + ) : ( + {label} + ); + + return ( +

+ {runs.map((run, i) => { + if (run.emojiUrl) { + return {run.emojiAlt; + } + if (run.url) return link(run.url, run.text || run.url, i); + return splitLinks(run.text ?? '').map((part, j) => + part.type === 'link' ? link(part.content, part.content, i * 1000 + j) : {part.content} + ); + })} +

+ ); +} diff --git a/client/components/MessageCard.tsx b/client/components/MessageCard.tsx new file mode 100644 index 0000000..c858db6 --- /dev/null +++ b/client/components/MessageCard.tsx @@ -0,0 +1,62 @@ +'use client'; + +import { Gift } from 'lucide-react'; +import type { ChatMessage } from '@shared/chat'; +import { proxyImageUrl } from '../lib/imageProxy'; +import { formatAmount, formatTime } from '../lib/format'; +import { Badges } from './Badges'; +import { MessageBody } from './MessageBody'; + +type Props = { + message: ChatMessage; + selected: boolean; + wasSelected: boolean; + onSelect: (message: ChatMessage) => void; + onLink: (url: string) => void; +}; + +function membershipLabel(message: ChatMessage): string { + if (message.membershipGiftPurchase && message.giftCount) { + return `Gifted ${message.giftCount} membership${message.giftCount > 1 ? 's' : ''}`; + } + return message.membershipLevel || 'New member'; +} + +export function MessageCard({ message, selected, wasSelected, onSelect, onLink }: Props) { + const kind = message.superChat ? 'super' : message.membershipGift || message.membershipGiftPurchase ? 'member' : 'chat'; + const className = ['card', `card--${kind}`, selected && 'card--selected', wasSelected && 'card--seen'].filter(Boolean).join(' '); + const accent = message.superChat?.color; + + return ( + + ); +} diff --git a/client/components/OnAir.tsx b/client/components/OnAir.tsx new file mode 100644 index 0000000..9fdde46 --- /dev/null +++ b/client/components/OnAir.tsx @@ -0,0 +1,36 @@ +'use client'; + +import { X } from 'lucide-react'; +import type { ChatMessage } from '@shared/chat'; +import { proxyImageUrl } from '../lib/imageProxy'; +import { formatAmount } from '../lib/format'; +import { MessageBody } from './MessageBody'; + +type Props = { selection: ChatMessage | null; onClear: () => void }; + +/** Mirrors what the OBS overlay is showing right now, so the operator never has to guess. */ +export function OnAir({ selection, onClear }: Props) { + return ( +
+ On air + {selection ? ( + <> + {selection.authorPhoto && } + {selection.author} + {selection.superChat && ( + + {formatAmount(selection.superChat.amount, selection.superChat.currency)} + + )} + + + + ) : ( + Nothing on the overlay. Click a message to show it, click again to hide it. + )} +
+ ); +} diff --git a/client/components/OverlaySettings.tsx b/client/components/OverlaySettings.tsx new file mode 100644 index 0000000..5edef68 --- /dev/null +++ b/client/components/OverlaySettings.tsx @@ -0,0 +1,108 @@ +'use client'; + +import { Check, Copy, ExternalLink, X } from 'lucide-react'; +import { useEffect, useState } from 'react'; +import { ANIMATIONS, buildOverlayUrl, DEFAULT_OPTIONS, POSITIONS, SIZES, THEMES, type OverlayOptions } from '../lib/overlayOptions'; + +const STORAGE_KEY = 'ytchathub.overlay'; + +const LABELS: Record = { + bl: 'Bottom left', bc: 'Bottom center', br: 'Bottom right', + tl: 'Top left', tc: 'Top center', tr: 'Top right', + s: 'Small', m: 'Medium', l: 'Large', xl: 'Extra large', + dark: 'Dark', light: 'Light', blueprint: 'Blueprint (light, brand)', glass: 'Glass', youtube: 'YouTube red', + fade: 'Fade', slide: 'Slide', none: 'None' +}; + +function load(): OverlayOptions { + try { + const raw = localStorage.getItem(STORAGE_KEY); + if (raw) return { ...DEFAULT_OPTIONS, ...JSON.parse(raw) }; + } catch { + // storage unavailable or corrupt + } + return DEFAULT_OPTIONS; +} + +export function OverlaySettings({ onClose }: { onClose: () => void }) { + const [options, setOptions] = useState(DEFAULT_OPTIONS); + const [origin, setOrigin] = useState(''); + const [copied, setCopied] = useState(false); + + useEffect(() => { + setOptions(load()); + setOrigin(window.location.origin); + }, []); + + useEffect(() => { + try { + localStorage.setItem(STORAGE_KEY, JSON.stringify(options)); + } catch { + // storage unavailable + } + }, [options]); + + const url = buildOverlayUrl(origin, options); + const set = (key: K, value: OverlayOptions[K]) => setOptions((prev) => ({ ...prev, [key]: value })); + + const copy = async () => { + try { + await navigator.clipboard.writeText(url); + setCopied(true); + setTimeout(() => setCopied(false), 1500); + } catch { + // clipboard blocked; the URL is still selectable in the field + } + }; + + const select = (key: K, label: string, values: readonly OverlayOptions[K][]) => ( + + ); + + return ( +
+
event.stopPropagation()}> +
+

Overlay for OBS

+ +
+

Add the URL below as a Browser Source. Settings are stored in the URL, so one source can have its own look.

+
+ {select('theme', 'Theme', THEMES)} + {select('pos', 'Position', POSITIONS)} + {select('size', 'Text size', SIZES)} + {select('anim', 'Animation', ANIMATIONS)} + + +
+
+ event.target.select()} /> + + + + Open + +
+

Recommended Browser Source size: 1920 × 1080, with “Shutdown source when not visible” off so the connection stays warm.

+
+
+ ); +} diff --git a/client/components/TopBar.tsx b/client/components/TopBar.tsx new file mode 100644 index 0000000..d34d452 --- /dev/null +++ b/client/components/TopBar.tsx @@ -0,0 +1,78 @@ +'use client'; + +import { BarChart3, MonitorPlay, Pause, Play, Search, Unplug } from 'lucide-react'; +import type { RefObject } from 'react'; +import type { ConnectionStatus, Poll } from '@shared/chat'; +import type { StreamState } from '../lib/useEvents'; + +type Props = { + status: ConnectionStatus; + stream: StreamState; + poll: Poll | null; + counts: { chat: number; super: number; members: number }; + search: string; + searchRef: RefObject; + onSearch: (value: string) => void; + paused: boolean; + onTogglePause: () => void; + onOverlaySettings: () => void; + onDisconnect: () => void; +}; + +function statusLabel(status: ConnectionStatus, stream: StreamState): { text: string; tone: string } { + if (stream === 'error') return { text: 'Backend unreachable', tone: 'danger' }; + if (stream === 'connecting') return { text: 'Connecting to backend', tone: 'muted' }; + switch (status.state) { + case 'live': + return { text: 'Live', tone: 'live' }; + case 'connecting': + return { text: 'Connecting', tone: 'warn' }; + case 'reconnecting': + return { text: 'Reconnecting', tone: 'warn' }; + default: + return { text: status.error ? `Disconnected: ${status.error}` : 'Disconnected', tone: 'danger' }; + } +} + +export function TopBar({ status, stream, poll, counts, search, searchRef, onSearch, paused, onTogglePause, onOverlaySettings, onDisconnect }: Props) { + const label = statusLabel(status, stream); + return ( +
+
+ + {status.title || status.liveId || 'No stream'} + {label.text} + {poll?.active && ( + + + Poll + + )} +
+ + + +
+ {counts.chat} chat + {counts.super} super + {counts.members} members +
+ +
+ + + +
+
+ ); +} diff --git a/client/lib/TimezoneContext.tsx b/client/lib/TimezoneContext.tsx deleted file mode 100644 index 0f8904a..0000000 --- a/client/lib/TimezoneContext.tsx +++ /dev/null @@ -1,43 +0,0 @@ -'use client'; - -import React, { createContext, useContext, useState, useEffect } from 'react'; -import { getBrowserTimezone } from './timezone'; - -interface TimezoneContextType { - timezone: string; - setTimezone: (timezone: string) => void; -} - -const TimezoneContext = createContext(undefined); - -export function TimezoneProvider({ children }: { children: React.ReactNode }) { - // Initialize with detected timezone immediately to avoid empty string - const [timezone, setTimezone] = useState(() => { - try { - return getBrowserTimezone(); - } catch (error) { - console.warn('Failed to detect timezone on initialization:', error); - return 'UTC'; - } - }); - - useEffect(() => { - // Re-detect browser timezone on mount (in case it changed) - const detectedTimezone = getBrowserTimezone(); - setTimezone(detectedTimezone); - }, []); - - return ( - - {children} - - ); -} - -export function useTimezone() { - const context = useContext(TimezoneContext); - if (context === undefined) { - throw new Error('useTimezone must be used within a TimezoneProvider'); - } - return context; -} diff --git a/client/lib/api.ts b/client/lib/api.ts new file mode 100644 index 0000000..3edd1ff --- /dev/null +++ b/client/lib/api.ts @@ -0,0 +1,29 @@ +import { BACKEND_URL } from './config'; + +async function call(path: string, init?: RequestInit): Promise { + const response = await fetch(`${BACKEND_URL}${path}`, init); + if (!response.ok) { + let message = `HTTP ${response.status}`; + try { + const body = await response.json(); + if (body?.error) message = String(body.error); + } catch { + // body was not JSON + } + throw new Error(message); + } + return response.json() as Promise; +} + +const json = (body: unknown): RequestInit => ({ + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(body) +}); + +export const api = { + connect: (liveId: string) => call<{ ok: true; liveId: string }>('/chat/connect', json({ liveId })), + disconnect: () => call('/chat/disconnect', { method: 'POST' }), + select: (id: string) => call('/overlay/selection', json({ id })), + clearSelection: () => call('/overlay/selection', { method: 'DELETE' }) +}; diff --git a/client/lib/config.ts b/client/lib/config.ts new file mode 100644 index 0000000..80c5b31 --- /dev/null +++ b/client/lib/config.ts @@ -0,0 +1,2 @@ +/** Backend origin. Empty means same origin, which is the case when the backend serves the built client. */ +export const BACKEND_URL = (process.env.NEXT_PUBLIC_BACKEND_URL ?? '').replace(/\/$/, ''); diff --git a/client/lib/format.ts b/client/lib/format.ts new file mode 100644 index 0000000..53f8db2 --- /dev/null +++ b/client/lib/format.ts @@ -0,0 +1,27 @@ +export function formatTime(iso: string): string { + const date = new Date(iso); + if (Number.isNaN(date.getTime())) return ''; + return date.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }); +} + +const URL_PATTERN = /(https?:\/\/[^\s<>"']+)/gi; + +export type TextPart = { type: 'text' | 'link'; content: string }; + +/** Splits plain text into text and link parts. Used only for runs YouTube did not mark as links. */ +export function splitLinks(text: string): TextPart[] { + const parts: TextPart[] = []; + let last = 0; + for (const match of text.matchAll(URL_PATTERN)) { + const index = match.index ?? 0; + if (index > last) parts.push({ type: 'text', content: text.slice(last, index) }); + parts.push({ type: 'link', content: match[0] }); + last = index + match[0].length; + } + if (last < text.length) parts.push({ type: 'text', content: text.slice(last) }); + return parts; +} + +export function formatAmount(amount: string, currency: string): string { + return currency ? `${currency} ${amount}` : amount; +} diff --git a/client/lib/imageProxy.ts b/client/lib/imageProxy.ts index e1b5c5e..062639a 100644 --- a/client/lib/imageProxy.ts +++ b/client/lib/imageProxy.ts @@ -1,27 +1,17 @@ -const BACKEND_URL = process.env.NEXT_PUBLIC_BACKEND_URL ?? 'http://localhost:4100'; +import { BACKEND_URL } from './config'; -/** - * Converts a YouTube CDN image URL to use our backend proxy - * This prevents 429 rate limit errors from YouTube's CDN - */ +const PROXIED_HOSTS = new Set(['yt3.ggpht.com', 'yt4.ggpht.com', 'i.ytimg.com', 'lh3.googleusercontent.com']); + +/** Routes YouTube CDN images through the backend cache so OBS and the dashboard do not hit CDN rate limits. */ export function proxyImageUrl(url: string | undefined): string | undefined { if (!url) return undefined; - - // Check if it's a YouTube CDN URL - const youtubeCdnDomains = ['yt3.ggpht.com', 'yt4.ggpht.com', 'i.ytimg.com']; - try { - const urlObj = new URL(url); - if (youtubeCdnDomains.includes(urlObj.hostname)) { - // Proxy through our backend + const parsed = new URL(url); + if (PROXIED_HOSTS.has(parsed.hostname)) { return `${BACKEND_URL}/proxy/image?url=${encodeURIComponent(url)}`; } } catch { - // If URL parsing fails, return as-is return url; } - - // Return non-YouTube URLs as-is return url; } - diff --git a/client/lib/overlayOptions.ts b/client/lib/overlayOptions.ts new file mode 100644 index 0000000..a925561 --- /dev/null +++ b/client/lib/overlayOptions.ts @@ -0,0 +1,48 @@ +export const THEMES = ['dark', 'light', 'blueprint', 'glass', 'youtube'] as const; +export const POSITIONS = ['bl', 'bc', 'br', 'tl', 'tc', 'tr'] as const; +export const SIZES = ['s', 'm', 'l', 'xl'] as const; +export const ANIMATIONS = ['fade', 'slide', 'none'] as const; + +export type OverlayOptions = { + theme: (typeof THEMES)[number]; + pos: (typeof POSITIONS)[number]; + size: (typeof SIZES)[number]; + anim: (typeof ANIMATIONS)[number]; + /** Seconds before the overlay hides the message by itself. 0 keeps it until cleared. */ + hide: number; + /** Max card width in pixels. */ + width: number; +}; + +export const DEFAULT_OPTIONS: OverlayOptions = { theme: 'dark', pos: 'bl', size: 'm', anim: 'fade', hide: 0, width: 640 }; + +function pick(list: T, value: string | null, fallback: T[number]): T[number] { + return value && (list as readonly string[]).includes(value) ? (value as T[number]) : fallback; +} + +export function parseOverlayOptions(search: string): OverlayOptions { + const params = new URLSearchParams(search); + const hide = Number(params.get('hide')); + const width = Number(params.get('w')); + return { + theme: pick(THEMES, params.get('theme'), DEFAULT_OPTIONS.theme), + pos: pick(POSITIONS, params.get('pos'), DEFAULT_OPTIONS.pos), + size: pick(SIZES, params.get('size'), DEFAULT_OPTIONS.size), + anim: pick(ANIMATIONS, params.get('anim'), DEFAULT_OPTIONS.anim), + hide: Number.isFinite(hide) && hide >= 0 ? Math.floor(hide) : DEFAULT_OPTIONS.hide, + width: Number.isFinite(width) && width >= 240 ? Math.floor(width) : DEFAULT_OPTIONS.width + }; +} + +/** Only non-default values go in the URL so the plain /overlay/ link keeps working. */ +export function buildOverlayUrl(origin: string, options: OverlayOptions): string { + const params = new URLSearchParams(); + if (options.theme !== DEFAULT_OPTIONS.theme) params.set('theme', options.theme); + if (options.pos !== DEFAULT_OPTIONS.pos) params.set('pos', options.pos); + if (options.size !== DEFAULT_OPTIONS.size) params.set('size', options.size); + if (options.anim !== DEFAULT_OPTIONS.anim) params.set('anim', options.anim); + if (options.hide !== DEFAULT_OPTIONS.hide) params.set('hide', String(options.hide)); + if (options.width !== DEFAULT_OPTIONS.width) params.set('w', String(options.width)); + const query = params.toString(); + return `${origin}/overlay/${query ? `?${query}` : ''}`; +} diff --git a/client/lib/timezone.ts b/client/lib/timezone.ts deleted file mode 100644 index 3602c04..0000000 --- a/client/lib/timezone.ts +++ /dev/null @@ -1,98 +0,0 @@ -/** - * Timezone utilities for handling browser timezone detection and formatting - */ - -export function getBrowserTimezone(): string { - try { - return Intl.DateTimeFormat().resolvedOptions().timeZone; - } catch (error) { - console.warn('Failed to detect browser timezone, falling back to UTC:', error); - return 'UTC'; - } -} - -export function formatTimestamp( - isoString: string, - timezone?: string, - options?: Intl.DateTimeFormatOptions -): string { - const date = new Date(isoString); - - if (!date || isNaN(date.getTime())) { - return 'Invalid date'; - } - - const defaultOptions: Intl.DateTimeFormatOptions = { - hour: '2-digit', - minute: '2-digit', - second: '2-digit', - hour12: false, - ...options - }; - - const targetTimezone = timezone || getBrowserTimezone(); - - // If no valid timezone, fall back to local time - if (!targetTimezone || targetTimezone === '') { - console.warn('No valid timezone provided, using local time'); - return date.toLocaleTimeString('en-US', defaultOptions); - } - - try { - const result = new Intl.DateTimeFormat('en-US', { - ...defaultOptions, - timeZone: targetTimezone - }).format(date); - - return result; - } catch (error) { - console.warn('Failed to format timestamp with timezone, falling back to local:', error); - - // Try GMT+3 as a fallback if the detected timezone fails - try { - const gmt3Result = new Intl.DateTimeFormat('en-US', { - ...defaultOptions, - timeZone: 'Europe/Istanbul' // GMT+3 - }).format(date); - return gmt3Result; - } catch (gmt3Error) { - console.warn('GMT+3 fallback also failed:', gmt3Error); - return date.toLocaleTimeString('en-US', defaultOptions); - } - } -} - -export function formatTimestampWithDate( - isoString: string, - timezone?: string, - options?: Intl.DateTimeFormatOptions -): string { - const date = new Date(isoString); - - if (!date || isNaN(date.getTime())) { - return 'Invalid date'; - } - - const defaultOptions: Intl.DateTimeFormatOptions = { - year: 'numeric', - month: '2-digit', - day: '2-digit', - hour: '2-digit', - minute: '2-digit', - second: '2-digit', - hour12: false, - ...options - }; - - const targetTimezone = timezone || getBrowserTimezone(); - - try { - return new Intl.DateTimeFormat('en-US', { - ...defaultOptions, - timeZone: targetTimezone - }).format(date); - } catch (error) { - console.warn('Failed to format timestamp with timezone, falling back to local:', error); - return date.toLocaleString('en-US', defaultOptions); - } -} diff --git a/client/lib/useEvents.ts b/client/lib/useEvents.ts new file mode 100644 index 0000000..17e211b --- /dev/null +++ b/client/lib/useEvents.ts @@ -0,0 +1,91 @@ +'use client'; + +import { useEffect, useReducer } from 'react'; +import type { ChatMessage, ConnectionStatus, Poll, ServerEvent, ServerEventType } from '@shared/chat'; +import { BACKEND_URL } from './config'; + +export type StreamState = 'connecting' | 'open' | 'error'; + +export type EventsState = { + stream: StreamState; + status: ConnectionStatus; + messages: ChatMessage[]; + selection: ChatMessage | null; + poll: Poll | null; +}; + +const MAX_REGULAR = 200; +const EVENT_TYPES: ServerEventType[] = ['init', 'message', 'selection', 'poll', 'status', 'clear']; + +const initialState: EventsState = { + stream: 'connecting', + status: { state: 'disconnected', liveId: null }, + messages: [], + selection: null, + poll: null +}; + +export function isSpecial(message: ChatMessage): boolean { + return !!(message.superChat || message.membershipGift || message.membershipGiftPurchase); +} + +/** Appends a message and drops the oldest regular ones past the cap. Special messages are always kept. */ +function append(list: ChatMessage[], message: ChatMessage): ChatMessage[] { + const next = [...list, message]; + let regular = 0; + for (const item of next) if (!isSpecial(item)) regular += 1; + let drop = regular - MAX_REGULAR; + if (drop <= 0) return next; + return next.filter((item) => { + if (drop > 0 && !isSpecial(item)) { + drop -= 1; + return false; + } + return true; + }); +} + +type Action = ServerEvent | { type: 'stream'; stream: StreamState }; + +function reducer(state: EventsState, action: Action): EventsState { + switch (action.type) { + case 'stream': + return { ...state, stream: action.stream }; + case 'init': + return { ...state, status: action.status, messages: action.messages, selection: action.selection, poll: action.poll }; + case 'message': + return { ...state, messages: append(state.messages, action.message) }; + case 'selection': + return { ...state, selection: action.message }; + case 'poll': + return { ...state, poll: action.poll }; + case 'status': + return { ...state, status: action.status }; + case 'clear': + return { ...state, messages: [], selection: null, poll: null }; + default: + return state; + } +} + +/** Single SSE subscription to the backend. EventSource reconnects on its own and the server replays state on `init`. */ +export function useEvents(): EventsState { + const [state, dispatch] = useReducer(reducer, initialState); + + useEffect(() => { + const source = new EventSource(`${BACKEND_URL}/events`); + const onEvent = (event: Event) => { + try { + dispatch(JSON.parse((event as MessageEvent).data)); + } catch (error) { + console.error('Bad event payload', error); + } + }; + for (const type of EVENT_TYPES) source.addEventListener(type, onEvent); + source.onopen = () => dispatch({ type: 'stream', stream: 'open' }); + source.onerror = () => dispatch({ type: 'stream', stream: 'error' }); + return () => source.close(); + }, []); + + return state; +} diff --git a/client/next.config.js b/client/next.config.js index 95f56c7..c268303 100644 --- a/client/next.config.js +++ b/client/next.config.js @@ -1,11 +1,10 @@ /** @type {import('next').NextConfig} */ const nextConfig = { reactStrictMode: true, - experimental: { - serverActions: { - bodySizeLimit: '2mb' - } - } + // Static export: the backend serves `client/out` so production runs on a single port. + output: 'export', + trailingSlash: true, + images: { unoptimized: true } }; module.exports = nextConfig; diff --git a/docs/dashboard.png b/docs/dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..69e67a7964c24694b316efa0ba8707edc452bccd GIT binary patch literal 783392 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%0AY5OxNf^e)9G2Yh%Tx%sKaV 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%0DPlUhfVme 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

bgZ=^RO!EeU} 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 literal 0 HcmV?d00001 diff --git a/memory-bank/activeContext.md b/memory-bank/activeContext.md deleted file mode 100644 index dea518c..0000000 --- a/memory-bank/activeContext.md +++ /dev/null @@ -1,46 +0,0 @@ -# Active Context - -## Current Focus -- **Live YouTube integration active**: Backend connects to real YouTube Live chat via Innertube -- **Dark minimalist UI redesign**: Clean dashboard with dark theme (#0a0a0a background), tab-based navigation, grid layout, and minimal spacing -- **Connection flow**: Shows connection prompt on startup, disappears after connecting to YouTube Live stream -- **Rich message parsing**: Full support for superchats, memberships, badges (moderator, member, verified) -- **Timezone-aware timestamps**: All message timestamps display in user's local timezone with proper browser detection -- **Visual selection feedback**: Previously selected messages show dimmed state for better user experience -- **Image proxy implemented**: Backend proxies all YouTube CDN images with caching to prevent 429 rate limit errors - -## Recent Decisions -- Fixed CORS issues by setting headers on raw response object after `reply.hijack()` for SSE endpoint -- Added `.env` loading via `tsx --env-file=.env` for YouTube Live ID configuration -- Enhanced `ChatMessage` type to include badges, author photos, superchat info, and membership status -- Redesigned dashboard with gradient backgrounds, centered layout, and modern glass-morphism effects -- Separated overlay preview into its own highlighted section that only appears when a message is selected -- Centered overlay message card content so live chat, superchat, and membership boxes align for OBS -- **UI Layout Fixed**: Adjusted the dashboard grid to eliminate unnecessary space and properly align content. The Super Chat card is now left-aligned for better visual consistency. -- **Currency Parsing**: Improved the backend logic to correctly parse Super Chat amounts and currencies, including for non-standard formats like TRY. The hardcoded 'USD' fallback has been removed. -- **Conditional Auto-Scroll**: Implemented intelligent auto-scrolling that only activates when the user is at the bottom of the chat, preventing interruptions when reading older messages. -- **Overlay Redesign**: The overlay has been completely restyled to match the dashboard's compact, dark theme with optimized spacing (30-40% more compact). -- **Overlay Timestamps Removed**: Removed timestamps from overlay for cleaner OBS display while keeping them in dashboard. -- **Gifted Memberships**: The 'Memberships & Milestones' panel now correctly displays the user who purchased the gift, not the recipient. -- **Timestamp Resolution Fixed**: Resolved critical issue where timestamps showed 1970 epoch time. Now uses `timestamp_usec` (microseconds) from YouTube data and converts properly to user's local timezone. -- **Timezone Support**: Implemented browser timezone detection and proper timestamp formatting across dashboard using `Intl.DateTimeFormat` with GMT+3 fallback. -- **Visual Selection States**: Added three-tier visual feedback system - active (selected), normal, and previously-selected (dimmed) states for better user experience. -- **UI Polish**: Fixed pulse animations on initial load, hidden N/A messages. -- **Image Proxy**: Added `/proxy/image` endpoint in backend with in-memory caching (24hr TTL, max 1000 images) to prevent YouTube CDN 429 rate limit errors. All avatars, badges, and emojis now route through proxy with stale-on-error fallback. -- **Message Switching Animation**: Added smooth fade-out/fade-in transitions when switching between selected messages in overlay (300ms duration). -- **Smart Message Preservation**: Implemented intelligent message trimming - regular chat messages limited to 200, but superchats and memberships preserved for entire session. Trimming happens on every message to prevent loss of special messages. -- **Super Sticker Support**: Added full support for super sticker image display. Backend parser extracts sticker URL and accessibility label from `item.sticker` array in YouTube data. Added `stickerUrl` and `stickerAlt` fields to `SuperChatInfo` type. Image proxy whitelist updated to include `lh3.googleusercontent.com` domain. Dashboard and overlay both render super stickers with 144x144px max dimensions, centered layout, and graceful error handling that hides broken images. Protocol-relative URLs (`//domain.com`) are automatically converted to HTTPS. -- **Leaderboard Badge Support**: Implemented YouTube leaderboard rank display (Top Chatter feature). Backend parser extracts rank from `before_content_buttons` array with CROWN icon, parsing rank number from title field (e.g., "#3"). Added `leaderboardRank` field to `ChatMessage` type. Dashboard and overlay render leaderboard badge with crown emoji (👑) and rank number, styled with golden background (rgba(251, 191, 36, 0.2)) and yellow text (#fcd34d) for prominence. -- **Task Master AI Integration**: Initialized Task Master AI with OpenRouter's x-ai/grok-code-fast-1 (main), google/gemini-2.5-pro (research), and google/gemini-2.5-flash (fallback) models. Successfully completed Task 2 (Super Sticker Display), Task 3 (Leaderboard Badge), and Task 4 (Live Poll Indicator). -- **Live Poll Indicator**: Added simple poll detection that shows a pulsing "📊 Active Poll" indicator in the dashboard header when a YouTube poll is active. Backend listens for `UpdateLiveChatPollAction` and `CloseLiveChatActionPanelAction`/`RemoveBannerForLiveChatCommand` events. Indicator automatically appears/disappears based on poll state. Note: YouTube's API does not provide live vote percentages, so the feature only indicates poll presence without showing results. - -## Immediate Next Steps -1. Implement user authentication via YouTube OAuth 2.0 (Task 5) -2. Add persistent image cache with SQLite (Task 6) -3. Develop overlay theme controls (Task 7) -4. Add error recovery and reconnection logic for stream interruptions - -## Open Questions -- Whether to add message search/filtering UI controls -- Whether to persist Innertube visitor data between runs -- Should image cache be persistent across restarts? diff --git a/memory-bank/productContext.md b/memory-bank/productContext.md deleted file mode 100644 index 7484afc..0000000 --- a/memory-bank/productContext.md +++ /dev/null @@ -1,20 +0,0 @@ -# Product Context - -## Why This Project Exists -Live streamers rely on YouTube’s default chat panel, which can feel sluggish, cluttered, and unreliable during high-traffic moments. Streamers also need a smoother workflow to feature chat messages inside OBS without manual copy/paste or third-party widgets. - -## Target Users -- Primary: Single YouTube streamer operating their own broadcast setup. -- Secondary: Community contributors who want to customize or extend the client for similar use cases. - -## User Goals -- Launch the app locally and connect to their live chat with minimal configuration. -- View chat in a fast, filterable interface that highlights new messages clearly. -- Select a message to instantly display in an overlay browser source within OBS. -- Trust that the app will keep running throughout long streams without desync or crashes. - -## Experience Principles -- **Performance First:** Avoid lag by batching updates, minimizing re-renders, and offloading work to background processes. -- **Operational Clarity:** Provide clear status indicators for connection health, rate limits, and overlay sync. -- **Low Friction:** Onboarding should consist of OAuth login once and a simple start command. -- **Extensible:** Keep architecture modular so advanced users can add features (moderation tools, multi-stream support) later. diff --git a/memory-bank/progress.md b/memory-bank/progress.md deleted file mode 100644 index e0dd94b..0000000 --- a/memory-bank/progress.md +++ /dev/null @@ -1,65 +0,0 @@ -# Progress Tracker - -## Phase 0 – Foundations -- [x] Create Memory Bank documentation. -- [x] Simplify project layout (single package, shared types via alias). -- [x] Document setup instructions for the new command set. - -## Phase 1 – Core Infrastructure -- [x] Implement Innertube client bootstrap (retrieve context, manage continuation tokens). -- [x] Build backend poller with full normalization and comprehensive message parsing. -- [x] Expose REST+SSE endpoints for chat and overlay delivery. -- [x] Fix CORS issues for cross-origin SSE connections. -- [x] Parse badges (moderator, member, verified), superchats, and membership gifts. - -## Phase 2 – Operator Dashboard -- [x] Implement modern chat feed UI with live status indicators. -- [x] Display user avatars, badges, and special message types (superchats, memberships). -- [x] Provide message selection controls with visual feedback. -- [x] Centered layout with gradient backgrounds and glass-morphism effects. -- [x] Message count display and connection status. -- [x] Conditional auto-scrolling for chat panels. -- [x] Timezone-aware timestamp formatting for all messages. -- [x] Visual selection state management (active, normal, previously-selected). -- [x] Fix super sticker image not showing. -- [x] Add chat leaderboard badge. -- [x] Show active poll indicator. - -## Phase 3 – OBS Overlay Experience -- [x] Create overlay page that consumes SSE stream at `/overlay`. -- [x] Style overlay with modern design including avatars, badges, and superchat displays. -- [x] Ensure transparent background for OBS browser source. -- [x] Display new member announcements on overlay. -- [x] Optimize overlay spacing for efficient use (30-40% more compact). -- [x] Remove timestamps from overlay for cleaner display. -- [x] Add smooth fade transitions when switching between messages. - -## Phase 4 – Reliability & Polish -- [x] Implement image proxy with caching to prevent YouTube CDN 429 errors. -- [x] Implement smart message storage that preserves superchats/memberships. -- [ ] Add log-in and unique stream id for each logged in user -- [ ] Do a security check -- [ ] Refactor the code -- [ ] Ensure the deployment. -- [ ] Write tests (unit/integration) and contributor documentation. - -## Phase 5 - Customization -- [ ] Add customization options - -## Current Status -- **✅ YouTube Integration Live**: Backend connects to real YouTube Live chat and parses all message types -- **✅ Modern UI Complete**: Dashboard features centered layout, gradient backgrounds, badges, and superchat displays -- **✅ CORS Fixed**: Overlay SSE stream works cross-origin for OBS integration -- **✅ Rich Parsing**: Moderators, members, verified users, superchats, and membership gifts all detected and displayed. Currency parsing is now more robust. -- **✅ UI Polished**: The dashboard and overlay layouts have been refined for better spacing and alignment. Overlay is 30-40% more compact. -- **✅ Auto-Scroll Implemented**: Chat panels now auto-scroll intelligently. -- **✅ Timestamp Resolution Fixed**: Critical bug resolved - timestamps now display correct current time instead of 1970 epoch -- **✅ Timezone Support**: Dashboard timestamps display in user's local timezone with browser detection and GMT+3 fallback -- **✅ Visual Selection States**: Three-tier feedback system (active/normal/previously-selected) for better UX -- **✅ Image Proxy Implemented**: Backend now proxies all YouTube CDN images (avatars, badges, emojis, super stickers) with 24hr in-memory cache to prevent 429 rate limit errors. Added lh3.googleusercontent.com domain for super stickers. -- **✅ Overlay Animations**: Smooth fade-out/in transitions when switching between messages -- **✅ Smart Storage**: Regular messages limited to 200, superchats and memberships preserved for entire session -- **✅ Super Sticker Support**: Super sticker images now display correctly in both dashboard and overlay with proper error handling and accessibility labels -- **✅ Leaderboard Badge Support**: YouTube leaderboard ranks (Top Chatter) now display with crown emoji and rank number next to usernames in both dashboard and overlay with golden styling -- **✅ Live Poll Indicator**: Pulsing poll indicator shows in dashboard header when a YouTube poll is active, automatically hides when closed -- **Next**: Implement user authentication, add persistent image cache, develop overlay theme controls diff --git a/memory-bank/projectbrief.md b/memory-bank/projectbrief.md deleted file mode 100644 index f312086..0000000 --- a/memory-bank/projectbrief.md +++ /dev/null @@ -1,21 +0,0 @@ -# Project Brief - -## Vision -Build a desktop-operated, open-source YouTube Live chat client that delivers a fast, reliable stream of messages and allows a streamer to spotlight a selected chat message on an OBS-ready overlay. - -## Core Requirements -- Mirror chat from a single YouTube Live stream with low latency and high stability. -- Provide an operator dashboard to browse, search, and filter live chat messages. -- Enable one-click selection of a message and broadcast it to an overlay page consumable in OBS. -- Keep setup approachable: clone repo, configure environment variables/OAuth, and run locally. -- Prioritize performance and resilience over advanced user management or multi-stream support. - -## Constraints -- Runs on the streamer’s personal computer; no external hosting assumed. -- No end-user authentication beyond stored YouTube OAuth credentials. -- Must tolerate YouTube API rate limits and intermittent network issues without crashing. - -## Success Criteria -- **Responsive Dashboard**: The operator dashboard remains responsive during long streams (>4 hours) without memory leaks. -- **Instant Overlay Updates**: The OBS overlay updates in real-time when a message is selected. -- **Comprehensive Documentation**: The project includes a detailed README and a well-maintained Memory Bank to facilitate easy setup and contribution. diff --git a/memory-bank/systemPatterns.md b/memory-bank/systemPatterns.md deleted file mode 100644 index e426587..0000000 --- a/memory-bank/systemPatterns.md +++ /dev/null @@ -1,26 +0,0 @@ -# System Patterns - -## Architecture Overview -- **Project Layout:** Single pnpm package with three top-level folders: `client/` (Next.js dashboard + overlay), `backend/` (Node ingestion + realtime gateway), and `shared/` (typescript definitions shared between both). -- **Data Flow:** - 1. Backend worker polls YouTube Live chat through the Innertube (`youtubei.js`) API, maintaining continuation tokens. - 2. Messages are stored in-memory (optionally persisted later) and emitted over an internal event bus. - 3. Client dashboard fetches chat data via REST and pushes selection updates via REST. - 4. Overlay page consumes a Server-Sent Events stream to stay in sync with the selected message. -- **Realtime Delivery:** SSE for one-directional updates to OBS browser source; leave room to switch to WebSockets if we need bidirectional control later. - -## Key Patterns & Practices -- Abstract ingestion behind a module (`backend/src/ingestion/youtubei.ts`) so alternate providers (official API, headless browser) can be swapped in quickly. -- Cache Innertube visitor data and API keys locally when we extend functionality, keeping startup fast and resilient to key rotations. -- Use shared TypeScript definitions via the `@shared` path alias to maintain type safety across backend and client. -- Centralized logging in the backend with structured payloads for easier debugging during long streams. -- Graceful degradation: backoff strategies for fetch failures and mock-data fallback keep the UI usable even without credentials. -- **Timezone Context Pattern**: React context provider (`TimezoneContext`) manages browser timezone detection and shares across components for consistent timestamp formatting. -- **Selection State Management**: Three-tier visual state system (active/selected, normal, previously-selected) with CSS class composition for clear user feedback. -- **Timestamp Resolution**: Backend uses `timestamp_usec` (microseconds) from YouTube data, converts to milliseconds, and frontend formats in user's local timezone. -- **Image Proxy Pattern**: Backend `/proxy/image` endpoint caches YouTube CDN images (avatars, badges, emojis) with MD5-hashed keys, 24hr TTL, and 1000-image LRU eviction. Returns stale cache on 429 errors or network failures. Frontend `proxyImageUrl()` helper transparently rewrites YouTube CDN URLs to use proxy. -- **Smart Message Storage**: Intelligent trimming system preserves all superchats and memberships for entire session while limiting regular messages to 200 most recent. Trimming occurs on every message addition to prevent special message loss. Uses order-preserving algorithm that identifies special messages by index and removes only oldest regular messages. -- **Overlay Animation System**: Two-state approach with `message` (backend data) and `displayMessage` (UI state) enables smooth fade transitions when switching messages. 300ms fade-out followed by content swap and automatic fade-in. -- **Super Sticker Parsing**: Backend `extractSuperChatInfo()` function detects super stickers via `item.sticker` array. Extracts largest image (144x144px) from sticker thumbnails array, handles protocol-relative URLs by converting to HTTPS, and captures accessibility labels for screen readers. Frontend conditionally renders stickers with error handling that hides broken images via `onError` handler. -- **Leaderboard Badge Parsing**: Backend `extractLeaderboardRank()` function scans `before_content_buttons` array for CROWN icon entries. Extracts rank number from title field using regex pattern `/#(\d+)/`. Returns numeric rank or undefined if not present. Frontend displays badge with crown emoji and rank using golden color scheme for visual prominence. -- **Poll Detection System**: Backend listens for `UpdateLiveChatPollAction` events to detect active polls and emits simple poll state (id + active flag) via SSE. Frontend displays pulsing purple poll indicator in dashboard header when poll is active. Poll closes automatically when backend receives `CloseLiveChatActionPanelAction` or `RemoveBannerForLiveChatCommand` events. Note: YouTube's live chat API does not provide vote percentages even with authentication, so only poll presence is indicated. diff --git a/memory-bank/techContext.md b/memory-bank/techContext.md deleted file mode 100644 index ab276b9..0000000 --- a/memory-bank/techContext.md +++ /dev/null @@ -1,23 +0,0 @@ -# Tech Context - -## Primary Stack -- **Frontend:** Next.js 15 (App Router) + React 19 + TypeScript, styled with handcrafted CSS for now (Tailwind/shadcn still optional future add-ons). -- **Backend Worker:** Node.js service run with `tsx`, using `youtubei.js` for Innertube chat ingestion, `fastify` + `@fastify/cors` for REST/SSE transport, and `eventemitter3` for internal pub/sub. -- **Shared Types:** Simple TypeScript module in `shared/chat.ts`, imported via the `@shared/*` path alias defined in `tsconfig.base.json`. -- **Realtime:** Server-Sent Events for overlay updates; WebSockets remain a future enhancement option. -- **Timezone Handling:** Browser timezone detection via `Intl.DateTimeFormat().resolvedOptions().timeZone` with GMT+3 fallback for international users. - -## Tooling & Commands -- Single root `package.json`; `pnpm install` manages all deps. -- `pnpm dev` runs backend (`tsx backend/src/index.ts`) and client (`next dev client`) concurrently via `concurrently`. -- `pnpm build` compiles the backend with `tsc` and builds the Next app; `pnpm start:backend` / `pnpm start:client` serve production bundles separately. - -## Environment & Dependencies -- Requires `YOUTUBE_LIVE_ID` (or full URL) to enable real chat ingestion; omitted value triggers mock mode. -- Optional overrides for Innertube API keys/version can be supplied through env vars when needed. -- `better-sqlite3` is included for future persistence work but not yet wired in. - -## Constraints & Considerations -- Innertube endpoints may break; keep ingestion module adaptable and plan for a headless-browser fallback. -- Project expected to run on the streamer’s machine; dependencies must remain cross-platform and avoid heavyweight native builds where possible. -- No separate package boundaries anymore, so TypeScript path aliases and import hygiene are important to prevent tangled relative paths. diff --git a/package.json b/package.json index 8047083..d0c604e 100644 --- a/package.json +++ b/package.json @@ -1,41 +1,40 @@ { "name": "youtube-client", - "version": "0.1.0", + "version": "0.2.0", "private": true, - "description": "High-performance YouTube Live chat client for streamers.", + "description": "YouTube Live chat client for streamers with an OBS overlay.", "license": "MIT", "packageManager": "pnpm@8.15.4", "scripts": { - "dev": "concurrently \"pnpm dev:backend\" \"pnpm dev:client\"", - "dev:backend": "tsx backend/src/index.ts", - "dev:client": "next dev client", - "build": "pnpm build:backend && pnpm build:client", + "dev": "concurrently -n backend,client -c blue,magenta \"pnpm dev:backend\" \"pnpm dev:client\"", + "dev:backend": "tsx watch backend/src/index.ts", + "dev:client": "NEXT_PUBLIC_BACKEND_URL=http://localhost:4100 next dev client -p 3100", + "build": "pnpm build:client && pnpm build:backend", "build:backend": "tsc -p backend/tsconfig.build.json", "build:client": "next build client", - "start": "concurrently \"pnpm start:backend\" \"pnpm start:client\"", - "start:backend": "node backend/dist/backend/src/index.js", - "start:client": "next start client", - "lint": "next lint client" + "start": "node backend/dist/backend/src/index.js", + "lint": "next lint client", + "typecheck": "tsc -p backend/tsconfig.json --noEmit && tsc -p client/tsconfig.json --noEmit", + "test": "tsx --test backend/src/**/*.test.ts" }, "dependencies": { "@fastify/cors": "^11.1.0", - "better-sqlite3": "^12.4.1", + "@fastify/static": "^8.2.0", "eventemitter3": "^5.0.1", "fastify": "^5.6.1", + "lucide-react": "^0.544.0", "next": "^15.5.4", "react": "^19.2.0", "react-dom": "^19.2.0", - "youtubei.js": "^15.1.1", - "zod": "^4.1.11" + "youtubei.js": "^15.1.1" }, "devDependencies": { "@types/node": "^20.16.5", "@types/react": "19.2.0", - "autoprefixer": "^10.4.21", "concurrently": "^8.2.2", - "postcss": "^8.5.6", - "tailwindcss": "^4.1.14", + "eslint": "^9.36.0", + "eslint-config-next": "^15.5.4", "tsx": "^4.19.1", "typescript": "^5.9.3" } -} \ No newline at end of file +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..41301e5 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,4004 @@ +lockfileVersion: '6.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +dependencies: + '@fastify/cors': + specifier: ^11.1.0 + version: 11.2.0 + '@fastify/static': + specifier: ^8.2.0 + version: 8.3.0 + eventemitter3: + specifier: ^5.0.1 + version: 5.0.4 + fastify: + specifier: ^5.6.1 + version: 5.8.5 + lucide-react: + specifier: ^0.544.0 + version: 0.544.0(react@19.2.6) + next: + specifier: ^15.5.4 + version: 15.5.16(react-dom@19.2.6)(react@19.2.6) + react: + specifier: ^19.2.0 + version: 19.2.6 + react-dom: + specifier: ^19.2.0 + version: 19.2.6(react@19.2.6) + youtubei.js: + specifier: ^15.1.1 + version: 15.1.1 + +devDependencies: + '@types/node': + specifier: ^20.16.5 + version: 20.19.39 + '@types/react': + specifier: 19.2.0 + version: 19.2.0 + concurrently: + specifier: ^8.2.2 + version: 8.2.2 + eslint: + specifier: ^9.36.0 + version: 9.39.5 + eslint-config-next: + specifier: ^15.5.4 + version: 15.5.25(eslint@9.39.5)(typescript@5.9.3) + tsx: + specifier: ^4.19.1 + version: 4.21.0 + typescript: + specifier: ^5.9.3 + version: 5.9.3 + +packages: + + /@babel/runtime@7.29.2: + resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==} + engines: {node: '>=6.9.0'} + dev: true + + /@bufbuild/protobuf@2.12.0: + resolution: {integrity: sha512-B/XlCaFIP8LOwzo+bz5uFzATYokcwCKQcghqnlfwSmM5eX/qTkvDBnDPs+gXtX/RyjxJ4DRikECcPJbyALA8FA==} + dev: false + + /@emnapi/core@1.10.0: + resolution: {integrity: sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==} + requiresBuild: true + dependencies: + '@emnapi/wasi-threads': 1.2.1 + tslib: 2.8.1 + dev: true + optional: true + + /@emnapi/runtime@1.10.0: + resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==} + requiresBuild: true + dependencies: + tslib: 2.8.1 + optional: true + + /@emnapi/wasi-threads@1.2.1: + resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==} + requiresBuild: true + dependencies: + tslib: 2.8.1 + dev: true + optional: true + + /@esbuild/aix-ppc64@0.27.7: + resolution: {integrity: sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm64@0.27.7: + resolution: {integrity: sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.27.7: + resolution: {integrity: sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.27.7: + resolution: {integrity: sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.27.7: + resolution: {integrity: sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.27.7: + resolution: {integrity: sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.27.7: + resolution: {integrity: sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.27.7: + resolution: {integrity: sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.27.7: + resolution: {integrity: sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.27.7: + resolution: {integrity: sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.27.7: + resolution: {integrity: sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.27.7: + resolution: {integrity: sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.27.7: + resolution: {integrity: sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.27.7: + resolution: {integrity: sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.27.7: + resolution: {integrity: sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.27.7: + resolution: {integrity: sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.27.7: + resolution: {integrity: sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-arm64@0.27.7: + resolution: {integrity: sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.27.7: + resolution: {integrity: sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-arm64@0.27.7: + resolution: {integrity: sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.27.7: + resolution: {integrity: sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openharmony-arm64@0.27.7: + resolution: {integrity: sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.27.7: + resolution: {integrity: sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.27.7: + resolution: {integrity: sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.27.7: + resolution: {integrity: sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.27.7: + resolution: {integrity: sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@eslint-community/eslint-utils@4.10.1(eslint@9.39.5): + resolution: {integrity: sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint: 9.39.5 + eslint-visitor-keys: 3.4.3 + dev: true + + /@eslint-community/regexpp@4.12.2: + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true + + /@eslint/config-array@0.21.2: + resolution: {integrity: sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@eslint/object-schema': 2.1.7 + debug: 4.4.3 + minimatch: 3.1.5 + transitivePeerDependencies: + - supports-color + dev: true + + /@eslint/config-helpers@0.4.2: + resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@eslint/core': 0.17.0 + dev: true + + /@eslint/core@0.17.0: + resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@types/json-schema': 7.0.15 + dev: true + + /@eslint/eslintrc@3.3.7: + resolution: {integrity: sha512-F42g89Qd5oAWtp0k0nnSrjziAKza7w8SVT4mStc18LZMaRb4J1HQAHLCalEtDCxrTuksx7NU9qsmeLwpOfPqWw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + ajv: 6.15.0 + debug: 4.4.3 + espree: 10.4.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.3.2 + minimatch: 3.1.5 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@eslint/js@9.39.5: + resolution: {integrity: sha512-QywQuszQh77pIXCsq998c8hbhSTI/azTty1Z6N53dmAudKHhy573j3yvRLsX2BSp8YpLtoCEG8E9DJe+8zUh4A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /@eslint/object-schema@2.1.7: + resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /@eslint/plugin-kit@0.4.1: + resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@eslint/core': 0.17.0 + levn: 0.4.1 + dev: true + + /@fastify/accept-negotiator@2.1.0: + resolution: {integrity: sha512-F3EVbzWt+xcnVaOHmWyIlpuFtbxOln7HDZQsh09MtMmMm/CipMayNt8hnIL8VQi54u2ZociDbf+iluGYkf7B1A==} + dev: false + + /@fastify/ajv-compiler@4.0.5: + resolution: {integrity: sha512-KoWKW+MhvfTRWL4qrhUwAAZoaChluo0m0vbiJlGMt2GXvL4LVPQEjt8kSpHI3IBq5Rez8fg+XeH3cneztq+C7A==} + dependencies: + ajv: 8.20.0 + ajv-formats: 3.0.1(ajv@8.20.0) + fast-uri: 3.1.2 + dev: false + + /@fastify/cors@11.2.0: + resolution: {integrity: sha512-LbLHBuSAdGdSFZYTLVA3+Ch2t+sA6nq3Ejc6XLAKiQ6ViS2qFnvicpj0htsx03FyYeLs04HfRNBsz/a8SvbcUw==} + dependencies: + fastify-plugin: 5.1.0 + toad-cache: 3.7.0 + dev: false + + /@fastify/error@4.2.0: + resolution: {integrity: sha512-RSo3sVDXfHskiBZKBPRgnQTtIqpi/7zhJOEmAxCiBcM7d0uwdGdxLlsCaLzGs8v8NnxIRlfG0N51p5yFaOentQ==} + dev: false + + /@fastify/fast-json-stringify-compiler@5.0.3: + resolution: {integrity: sha512-uik7yYHkLr6fxd8hJSZ8c+xF4WafPK+XzneQDPU+D10r5X19GW8lJcom2YijX2+qtFF1ENJlHXKFM9ouXNJYgQ==} + dependencies: + fast-json-stringify: 6.4.0 + dev: false + + /@fastify/forwarded@3.0.1: + resolution: {integrity: sha512-JqDochHFqXs3C3Ml3gOY58zM7OqO9ENqPo0UqAjAjH8L01fRZqwX9iLeX34//kiJubF7r2ZQHtBRU36vONbLlw==} + dev: false + + /@fastify/merge-json-schemas@0.2.1: + resolution: {integrity: sha512-OA3KGBCy6KtIvLf8DINC5880o5iBlDX4SxzLQS8HorJAbqluzLRn80UXU0bxZn7UOFhFgpRJDasfwn9nG4FG4A==} + dependencies: + dequal: 2.0.3 + dev: false + + /@fastify/proxy-addr@5.1.0: + resolution: {integrity: sha512-INS+6gh91cLUjB+PVHfu1UqcB76Sqtpyp7bnL+FYojhjygvOPA9ctiD/JDKsyD9Xgu4hUhCSJBPig/w7duNajw==} + dependencies: + '@fastify/forwarded': 3.0.1 + ipaddr.js: 2.4.0 + dev: false + + /@fastify/send@4.1.1: + resolution: {integrity: sha512-BYo+EiaKwlxH+WetGk6hAs1d39iP0y1gqB8lGF/qwkJ9ZZ/cBY1vx5NvExb9Sc3yRMFjD5X4Eyh4e4+TzRkzdw==} + dependencies: + '@lukeed/ms': 2.0.2 + escape-html: 1.0.3 + fast-decode-uri-component: 1.0.1 + http-errors: 2.0.1 + mime: 3.0.0 + dev: false + + /@fastify/static@8.3.0: + resolution: {integrity: sha512-yKxviR5PH1OKNnisIzZKmgZSus0r2OZb8qCSbqmw34aolT4g3UlzYfeBRym+HJ1J471CR8e2ldNub4PubD1coA==} + dependencies: + '@fastify/accept-negotiator': 2.1.0 + '@fastify/send': 4.1.1 + content-disposition: 0.5.4 + fastify-plugin: 5.1.0 + fastq: 1.20.1 + glob: 11.1.0 + dev: false + + /@humanfs/core@0.19.2: + resolution: {integrity: sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==} + engines: {node: '>=18.18.0'} + dependencies: + '@humanfs/types': 0.15.0 + dev: true + + /@humanfs/node@0.16.8: + resolution: {integrity: sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==} + engines: {node: '>=18.18.0'} + dependencies: + '@humanfs/core': 0.19.2 + '@humanfs/types': 0.15.0 + '@humanwhocodes/retry': 0.4.3 + dev: true + + /@humanfs/types@0.15.0: + resolution: {integrity: sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==} + engines: {node: '>=18.18.0'} + dev: true + + /@humanwhocodes/module-importer@1.0.1: + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + dev: true + + /@humanwhocodes/retry@0.4.3: + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} + engines: {node: '>=18.18'} + dev: true + + /@img/colour@1.1.0: + resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==} + engines: {node: '>=18'} + requiresBuild: true + dev: false + optional: true + + /@img/sharp-darwin-arm64@0.34.5: + resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.2.4 + dev: false + optional: true + + /@img/sharp-darwin-x64@0.34.5: + resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.2.4 + dev: false + optional: true + + /@img/sharp-libvips-darwin-arm64@1.2.4: + resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-darwin-x64@1.2.4: + resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linux-arm64@1.2.4: + resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linux-arm@1.2.4: + resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linux-ppc64@1.2.4: + resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linux-riscv64@1.2.4: + resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linux-s390x@1.2.4: + resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linux-x64@1.2.4: + resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linuxmusl-arm64@1.2.4: + resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-libvips-linuxmusl-x64@1.2.4: + resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-linux-arm64@0.34.5: + resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.2.4 + dev: false + optional: true + + /@img/sharp-linux-arm@0.34.5: + resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.2.4 + dev: false + optional: true + + /@img/sharp-linux-ppc64@0.34.5: + resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ppc64] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-ppc64': 1.2.4 + dev: false + optional: true + + /@img/sharp-linux-riscv64@0.34.5: + resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [riscv64] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-riscv64': 1.2.4 + dev: false + optional: true + + /@img/sharp-linux-s390x@0.34.5: + resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.2.4 + dev: false + optional: true + + /@img/sharp-linux-x64@0.34.5: + resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.2.4 + dev: false + optional: true + + /@img/sharp-linuxmusl-arm64@0.34.5: + resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + dev: false + optional: true + + /@img/sharp-linuxmusl-x64@0.34.5: + resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + requiresBuild: true + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + dev: false + optional: true + + /@img/sharp-wasm32@0.34.5: + resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + requiresBuild: true + dependencies: + '@emnapi/runtime': 1.10.0 + dev: false + optional: true + + /@img/sharp-win32-arm64@0.34.5: + resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-win32-ia32@0.34.5: + resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@img/sharp-win32-x64@0.34.5: + resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@isaacs/cliui@9.0.0: + resolution: {integrity: sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==} + engines: {node: '>=18'} + dev: false + + /@lukeed/ms@2.0.2: + resolution: {integrity: sha512-9I2Zn6+NJLfaGoz9jN3lpwDgAYvfGeNYdbAIjJOqzs4Tpc+VU3Jqq4IofSUBKajiDS8k9fZIg18/z13mpk1bsA==} + engines: {node: '>=8'} + dev: false + + /@napi-rs/wasm-runtime@1.2.3(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0): + resolution: {integrity: sha512-UMduMbqO5s5zF2NkNacMT/yK5Y5QiKvWr2+50bzIIxFDwVJ2h49b+oyjaCGPhJxd2/gC2x39EHv/gHVuu36x2Q==} + engines: {node: ^20.19.0 || ^22.13.0 || >=23.5.0} + requiresBuild: true + peerDependencies: + '@emnapi/core': ^1.7.1 || ^2.0.0-alpha.4 + '@emnapi/runtime': ^1.7.1 || ^2.0.0-alpha.4 + dependencies: + '@emnapi/core': 1.10.0 + '@emnapi/runtime': 1.10.0 + '@tybys/wasm-util': 0.10.3 + dev: true + optional: true + + /@next/env@15.5.16: + resolution: {integrity: sha512-9QMKolCl+JnJtaRAQSXy4RQrhgfe8W7/G1+Hl3QSB/HZY7zQMzTwPDdTRwwio8BS96ps1MHpHhbS8qxoNV3JIQ==} + dev: false + + /@next/eslint-plugin-next@15.5.25: + resolution: {integrity: sha512-dAzOqZQCAOgIq5yQpsuMBZcwxK0AtzGqHMQpxNWYLQlvf79rsP3SDwdGPNQC4ySaMSihOQXMO/VXubQ3JWW+3A==} + dependencies: + fast-glob: 3.3.1 + dev: true + + /@next/swc-darwin-arm64@15.5.16: + resolution: {integrity: sha512-wzdER4JZj+31vNkhaZ1Ght3IsNI8DMwj7VqadfIOqJB5sh8FiOqNSopYADQn6mgEPomzDd/DHqBcfo2fmVMYtg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@next/swc-darwin-x64@15.5.16: + resolution: {integrity: sha512-PPTo+cvcanxkuDEuDyZGk28ntmu0WjfkxqlG7hw9Mhsiribs4x1C6h2Culn0cJKqsne1gFjjZRK3ax7WYlSxgg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-arm64-gnu@15.5.16: + resolution: {integrity: sha512-Jl0IL9P7S8uNl5oI1TqrQmfmLp7OqjWM58000pVnUVIsHrvPP6m9QDW/uNWYUbmd+8IYvc6MTeZKICstBMBpew==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-arm64-musl@15.5.16: + resolution: {integrity: sha512-Zf0BIqv/o5uOWfyRkzgGhyV2Tky7HLt0bG+w7XWdaU1JpyX0tltM3TrSfa/Y9c597SJG4CzN47+u2InhgZZ4vg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-x64-gnu@15.5.16: + resolution: {integrity: sha512-HCDDU1TRLeUDV180QQTWrs5Oa4lIcI7XH9nF0UVUVmYLN/boZ6LqyFtm3814gc1fv+lOVyKaw5B6bVC9BpXTSQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-linux-x64-musl@15.5.16: + resolution: {integrity: sha512-kvXUY1dn5wxKuMkXxQRUbPjEnKxW1PR9uKOm0zpIpj3574+cFfaePhYFmBVtrOuwt+w34OdDzNaJr5Iixf+HBQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@next/swc-win32-arm64-msvc@15.5.16: + resolution: {integrity: sha512-zpOQuF+eyENMXRjglp2hZCIrUjTdO37suEBnDn1mX4PXSuetXZDMLpjKOh4dYSw3SiDTnOoOUwBl5i5Elr6nnQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@next/swc-win32-x64-msvc@15.5.16: + resolution: {integrity: sha512-LnwKYpiSmIzXlTq76hMeeIzZoDcFwu848p6H+QBkGFJIbZphgzNUPdHruJcHM/bFnaFeco0l1Frie5I27VKglA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@nodelib/fs.scandir@2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: true + + /@nodelib/fs.stat@2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: true + + /@nodelib/fs.walk@1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.20.1 + dev: true + + /@nolyfill/is-core-module@1.0.39: + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} + engines: {node: '>=12.4.0'} + dev: true + + /@pinojs/redact@0.4.0: + resolution: {integrity: sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg==} + dev: false + + /@rtsao/scc@1.1.0: + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + dev: true + + /@rushstack/eslint-patch@1.16.1: + resolution: {integrity: sha512-TvZbIpeKqGQQ7X0zSCvPH9riMSFQFSggnfBjFZ1mEoILW+UuXCKwOoPcgjMwiUtRqFZ8jWhPJc4um14vC6I4ag==} + dev: true + + /@swc/helpers@0.5.15: + resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} + dependencies: + tslib: 2.8.1 + dev: false + + /@tybys/wasm-util@0.10.3: + resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==} + requiresBuild: true + dependencies: + tslib: 2.8.1 + dev: true + optional: true + + /@types/estree@1.0.9: + resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==} + dev: true + + /@types/json-schema@7.0.15: + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + dev: true + + /@types/json5@0.0.29: + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + dev: true + + /@types/node@20.19.39: + resolution: {integrity: sha512-orrrD74MBUyK8jOAD/r0+lfa1I2MO6I+vAkmAWzMYbCcgrN4lCrmK52gRFQq/JRxfYPfonkr4b0jcY7Olqdqbw==} + dependencies: + undici-types: 6.21.0 + dev: true + + /@types/react@19.2.0: + resolution: {integrity: sha512-1LOH8xovvsKsCBq1wnT4ntDUdCJKmnEakhsuoUSy6ExlHCkGP2hqnatagYTgFk6oeL0VU31u7SNjunPN+GchtA==} + dependencies: + csstype: 3.2.3 + dev: true + + /@typescript-eslint/eslint-plugin@8.69.0(@typescript-eslint/parser@8.69.0)(eslint@9.39.5)(typescript@5.9.3): + resolution: {integrity: sha512-t5jQTKPIgVW1PE6dR6H6Qz5gm8zjMlX5/2gRaOGd9eO6V7J+tQc6iWKukEe7dY8u9HyYasQ0yfF0/FSSTEO2gA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.69.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.69.0(eslint@9.39.5)(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.69.0 + '@typescript-eslint/type-utils': 8.69.0(eslint@9.39.5)(typescript@5.9.3) + '@typescript-eslint/utils': 8.69.0(eslint@9.39.5)(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.69.0 + eslint: 9.39.5 + ignore: 7.0.8 + natural-compare: 1.4.0 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser@8.69.0(eslint@9.39.5)(typescript@5.9.3): + resolution: {integrity: sha512-l4b0DhWioGg6Gt2ebGlvfkFMOjRsauxtsnDRwUSRX1qHq3HdTfQHV8wW9zEXeciai6HfeaKOedQn2Zoofx3WBw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + dependencies: + '@typescript-eslint/scope-manager': 8.69.0 + '@typescript-eslint/types': 8.69.0 + '@typescript-eslint/typescript-estree': 8.69.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.69.0 + debug: 4.4.3 + eslint: 9.39.5 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/project-service@8.69.0(typescript@5.9.3): + resolution: {integrity: sha512-yi4obFrHMmnsesWehHbkg9zMA7Jt8cXT+mKM08G999pH1yT6nqgsHx7MYm0uY1wAj8CqiBXYRJ7WAT0QdQHQXg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + dependencies: + '@typescript-eslint/tsconfig-utils': 8.69.0(typescript@5.9.3) + '@typescript-eslint/types': 8.69.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/scope-manager@8.69.0: + resolution: {integrity: sha512-ewfspqWvSxKSOaplqAUNbaSFO0eB6w1EtQ+esfYFRm3614Ty4uNtExkcbgd6nWsXphbqKyf9ZYdbZdv2xEoWEQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@typescript-eslint/types': 8.69.0 + '@typescript-eslint/visitor-keys': 8.69.0 + dev: true + + /@typescript-eslint/tsconfig-utils@8.69.0(typescript@5.9.3): + resolution: {integrity: sha512-xNqK7YTDZsLniQMV/4rpFR8Z5JlqeRvVjuG1YgF/mdPVH84HSD19L8CczMA0qg2RfwEV231GHH3VnToJDo4MfQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + dependencies: + typescript: 5.9.3 + dev: true + + /@typescript-eslint/type-utils@8.69.0(eslint@9.39.5)(typescript@5.9.3): + resolution: {integrity: sha512-ZfoJAVg3JZndQEpEl9petVlxau3lRuElc4HRMuAlLCf8to04/iHz692RUSNmXKDjEuJmIL+KZ2/BsOcBc16dsA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + dependencies: + '@typescript-eslint/types': 8.69.0 + '@typescript-eslint/typescript-estree': 8.69.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.69.0(eslint@9.39.5)(typescript@5.9.3) + debug: 4.4.3 + eslint: 9.39.5 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/types@8.69.0: + resolution: {integrity: sha512-K3VrubUPhlo9VDBS6QdI8YB5j7ClpqLRdefcz6PFrhnwicehBweqQ9Evhl4l+FYz0HdDmMqIiSX0aldGRYtDCA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /@typescript-eslint/typescript-estree@8.69.0(typescript@5.9.3): + resolution: {integrity: sha512-AdFkgqck3Vudb/kWnxlyafU/4aBhHrbQ9locP2N4psXTy5mOBg0SHJumnLvx7r6g1gV4DKvUFwV2nJZBoqOD8w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + dependencies: + '@typescript-eslint/project-service': 8.69.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.69.0(typescript@5.9.3) + '@typescript-eslint/types': 8.69.0 + '@typescript-eslint/visitor-keys': 8.69.0 + debug: 4.4.3 + minimatch: 10.2.6 + semver: 7.7.4 + tinyglobby: 0.2.17 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/utils@8.69.0(eslint@9.39.5)(typescript@5.9.3): + resolution: {integrity: sha512-tUbx60BBqQa31kXF5MCsOOLL5E/WzUuxIn7YpAvq+eaUlqvk8/NXnXMBNAdLCr0icjkzem7iUA5QqWHe/hJ1aw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + dependencies: + '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.5) + '@typescript-eslint/scope-manager': 8.69.0 + '@typescript-eslint/types': 8.69.0 + '@typescript-eslint/typescript-estree': 8.69.0(typescript@5.9.3) + eslint: 9.39.5 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/visitor-keys@8.69.0: + resolution: {integrity: sha512-+rmdgPA+EXkNgKYvHvFfhrs35utXbwaC5PGpDquSXcoXQDKUA5UjV0LmTucG/4JXkM31BTu4TilHtrN8IVBe8w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@typescript-eslint/types': 8.69.0 + eslint-visitor-keys: 5.0.1 + dev: true + + /@unrs/resolver-binding-android-arm-eabi@1.12.2: + resolution: {integrity: sha512-g5T90pqg1bo/7mytQx6F4iBNC0Wsh9cu+z9veDbFjc7HjpesJFWD7QMS0NGStXM075+7dJPPVvBbpZlnrdpi/w==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-android-arm64@1.12.2: + resolution: {integrity: sha512-YGCRZv/9GLhwmz6mYDeTsm/92BAyR28l6c2ReweVW5pWgfsitWLY8upvfRlGdoyD8HjeTHSYJWyZGD4KJA/nFQ==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-darwin-arm64@1.12.2: + resolution: {integrity: sha512-u9DiNT1auQMO20A9SyTuG3wUgQWB9Z7KjAg0uFuCDR1FsAY8A0CG2S6JpHS1xwm/w1G08bjXZDcyOCjv1WAm2w==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-darwin-x64@1.12.2: + resolution: {integrity: sha512-f7rPLi/T1HVKZu/u6t87lroib16n8vrSzcyxI7lg4BGO9UF26KhQL44sd9eOUgrTYhvRXtWOIZT5PejdPyJfUA==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-freebsd-x64@1.12.2: + resolution: {integrity: sha512-BpcOjWCJub6nRZUS2zA20pmLvjtqAtGejETaIyRLiZiQf++cbrjltLA5NN/xaXfqeOBOSlMFbemIl5/S5tljmg==} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-arm-gnueabihf@1.12.2: + resolution: {integrity: sha512-vZTDvdSISZjJx66OzJqtsOhzifbqRjbmI1Mnu49fQDwog5GtDI4QidRiEAYbZCRj9C8YZEW+3ZjqsyS9GR4k2A==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-arm-musleabihf@1.12.2: + resolution: {integrity: sha512-BiPI+IrIlwcW4nLLMM21+B1dFPzd55yAVgVGrdgDjNef+ch03GdxrcyaIz8X9SsQirh/kCQ7mviyWlMxdh2D7g==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-arm64-gnu@1.12.2: + resolution: {integrity: sha512-zJc0H99FEPoFfSrNpa91HYfxzfAJCr502oxNK1cfdC9hlaFI43RT+JFCann9JUgZmLzzntChHyn13Sgn9ljHNg==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-arm64-musl@1.12.2: + resolution: {integrity: sha512-KQ3Lki6l+Pz1k/eBipN41ES+YUK30beLGb9YqcB1O542cyLCNE6GaxrfcY3T6EezmGGk84wb5XyO9loTM9tkcA==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-loong64-gnu@1.12.2: + resolution: {integrity: sha512-3SJGEh1DborhG6pyxvhPzCT4bbSIVihsvgJc13P1bHG7KLdNDaF9T3gsTwFc7Jw/5Y5/iWOjkEx7Zy0NvCGX3Q==} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-loong64-musl@1.12.2: + resolution: {integrity: sha512-jiuG/Obbel7uw1PwHNFfrkiKhLAF6mnyZ6aWlOAVN9WqKm8v0OFGnciJIHu8+CMvXLQ8AD51LPzAoUfT21D5Ew==} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-ppc64-gnu@1.12.2: + resolution: {integrity: sha512-q7xRvVpmcfeL+LlZg8Pbbo6QaTZwDU5BaGZbwfhkEsXJn3Was8xYfE0RBH266xZt0rM6B7i8xAYIvjthuUIWHg==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-riscv64-gnu@1.12.2: + resolution: {integrity: sha512-0CVdx6lcnT3Q9inOH8tsMIOJ6ImndllMjqJHg8RLVdB7Vq4SfkEXl9mCSsVNuNA4MCYycRicCUxPCabVHJRr6A==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-riscv64-musl@1.12.2: + resolution: {integrity: sha512-iOwlRo9vnp6R6ohHQS11n0NnfdXx/omhkocmIfaPRpQhKZ+3BDMkkdRVh53qjkFkpPddf+FETA28NwGN7l5l+w==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-s390x-gnu@1.12.2: + resolution: {integrity: sha512-HYJtLfXq94q8iZNFT1lknx258wlkkWhZeUXJRqzKBBUJ00CvZ+N33zgbCqimLjsyw5Va6uUxhVa12mI+kaveEw==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-x64-gnu@1.12.2: + resolution: {integrity: sha512-mPsUhunKKDih5O96Y6enDQyHc1SqBPlY1E/SfMWDM3EdJ95Z9CArPeCVwCCqbP45ljvivdEk8Fxn+SIb1rDAJQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-linux-x64-musl@1.12.2: + resolution: {integrity: sha512-azrt6+5ydLd8Vt210AAFis/lZevSfPw93EJRIJG+xPu4WCJ8K0kppCTpMyLPcKT7H15M4Jnt2tMp5bOvCkRC6A==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-openharmony-arm64@1.12.2: + resolution: {integrity: sha512-YZ9hP4O0X9PQb8eO980qmLNGH4zT3I9+SZTdt0Pr0YyuGQhYKoOZkV02VzrzyOZJ5xIJ3UFIenKkUkGg8GjgWQ==} + cpu: [arm64] + os: [openharmony] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-wasm32-wasi@1.12.2: + resolution: {integrity: sha512-tYFDIkMxSflfEc/h92ZWNsZlHSwgimbNHSO3PL2JWQHfCuC2q316jMyYU9TIWZsFK2bQwyK5VAdYgn8ygPj69A==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + requiresBuild: true + dependencies: + '@emnapi/core': 1.10.0 + '@emnapi/runtime': 1.10.0 + '@napi-rs/wasm-runtime': 1.2.3(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0) + dev: true + optional: true + + /@unrs/resolver-binding-win32-arm64-msvc@1.12.2: + resolution: {integrity: sha512-qzNyg3xL0VPQmCaUh+N5jSitce6k+uCBfMDesWRnlULOZaqUkaJ0ybdT+UqlAWJoQjuqfIU/0Ptx9bteN4D82g==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-win32-ia32-msvc@1.12.2: + resolution: {integrity: sha512-WD9sY00OfpHVGfsnHZoA8jVT+esS/Bg8z8jzxp5BnDCjjwsuKsPQrzswwpFy4J1AUJbXPRfkpcX0mXrzeXW79g==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@unrs/resolver-binding-win32-x64-msvc@1.12.2: + resolution: {integrity: sha512-nAB74NfSNKknqQ1RrYj6uz8FcXEomu/MATJZxh/x+BArzN2U3JbOYC0APYzUIGhVY3m5hRxA8VPNdPBoG8txlA==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /abstract-logging@2.0.1: + resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==} + dev: false + + /acorn-jsx@5.3.2(acorn@8.16.0): + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 8.16.0 + dev: true + + /acorn@8.16.0: + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} + engines: {node: '>=0.4.0'} + hasBin: true + + /ajv-formats@3.0.1(ajv@8.20.0): + resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + dependencies: + ajv: 8.20.0 + dev: false + + /ajv@6.15.0: + resolution: {integrity: sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==} + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + dev: true + + /ajv@8.20.0: + resolution: {integrity: sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==} + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.2 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + dev: false + + /ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + dev: true + + /ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 + dev: true + + /argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + dev: true + + /aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + dev: true + + /array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + dev: true + + /array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-object-atoms: 1.1.2 + get-intrinsic: 1.3.0 + is-string: 1.1.1 + math-intrinsics: 1.1.0 + dev: true + + /array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + es-shim-unscopables: 1.1.0 + dev: true + + /array.prototype.findlastindex@1.2.6: + resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + es-shim-unscopables: 1.1.0 + dev: true + + /array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-shim-unscopables: 1.1.0 + dev: true + + /array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-shim-unscopables: 1.1.0 + dev: true + + /array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-shim-unscopables: 1.1.0 + dev: true + + /arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + dev: true + + /ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + dev: true + + /async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + dev: true + + /atomic-sleep@1.0.0: + resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==} + engines: {node: '>=8.0.0'} + dev: false + + /available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + dependencies: + possible-typed-array-names: 1.1.0 + dev: true + + /avvio@9.2.0: + resolution: {integrity: sha512-2t/sy01ArdHHE0vRH5Hsay+RtCZt3dLPji7W7/MMOCEgze5b7SNDC4j5H6FnVgPkI1MTNFGzHdHrVXDDl7QSSQ==} + dependencies: + '@fastify/error': 4.2.0 + fastq: 1.20.1 + dev: false + + /axe-core@4.13.0: + resolution: {integrity: sha512-UzGt8zg7Ny8djbYMhxl2zuEevVa7r2gJjYY5Lwr1xM7+XU2nd6CkIWFTVcCIbAP63vSz71NaVyyuSk9lHKcy0A==} + engines: {node: '>=4'} + dev: true + + /axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + dev: true + + /balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true + + /balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + + /brace-expansion@1.1.18: + resolution: {integrity: sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==} + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + dev: true + + /brace-expansion@5.0.9: + resolution: {integrity: sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==} + engines: {node: 20 || >=22} + dependencies: + balanced-match: 4.0.4 + + /braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + dependencies: + fill-range: 7.1.1 + dev: true + + /call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + dev: true + + /call-bind@1.0.9: + resolution: {integrity: sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + dev: true + + /call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + dev: true + + /callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + dev: true + + /caniuse-lite@1.0.30001792: + resolution: {integrity: sha512-hVLMUZFgR4JJ6ACt1uEESvQN1/dBVqPAKY0hgrV70eN3391K6juAfTjKZLKvOMsx8PxA7gsY1/tLMMTcfFLLpw==} + dev: false + + /chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + dev: true + + /client-only@0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + dev: false + + /cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + dev: true + + /color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 + dev: true + + /color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + dev: true + + /concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: true + + /concurrently@8.2.2: + resolution: {integrity: sha512-1dP4gpXFhei8IOtlXRE/T/4H88ElHgTiUzh71YUmtjTEHMSRS2Z/fgOxHSxxusGHogsRfxNq1vyAwxSC+EVyDg==} + engines: {node: ^14.13.0 || >=16.0.0} + hasBin: true + dependencies: + chalk: 4.1.2 + date-fns: 2.30.0 + lodash: 4.18.1 + rxjs: 7.8.2 + shell-quote: 1.8.3 + spawn-command: 0.0.2 + supports-color: 8.1.1 + tree-kill: 1.2.2 + yargs: 17.7.2 + dev: true + + /content-disposition@0.5.4: + resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} + engines: {node: '>= 0.6'} + dependencies: + safe-buffer: 5.2.1 + dev: false + + /cookie@1.1.1: + resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} + engines: {node: '>=18'} + dev: false + + /cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + /csstype@3.2.3: + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} + dev: true + + /damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + dev: true + + /data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + dev: true + + /data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + dev: true + + /data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + dev: true + + /date-fns@2.30.0: + resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} + engines: {node: '>=0.11'} + dependencies: + '@babel/runtime': 7.29.2 + dev: true + + /debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.3 + dev: true + + /debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.3 + dev: true + + /deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: true + + /define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + dev: true + + /define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + dev: true + + /depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + dev: false + + /dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + dev: false + + /detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + requiresBuild: true + dev: false + optional: true + + /doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + dependencies: + esutils: 2.0.3 + dev: true + + /dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + dev: true + + /emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + dev: true + + /emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: true + + /es-abstract-get@1.0.0: + resolution: {integrity: sha512-6PMWXpdhshVvFp+FoWYs1EvG1Nj0tvk0dZM+XcK0xMEM1czRVcP6ohqPWHy6qPagSpC8j4+p89WXlT+xXJs/fg==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + is-callable: 1.2.7 + object-inspect: 1.13.4 + dev: true + + /es-abstract@1.24.2: + resolution: {integrity: sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==} + engines: {node: '>= 0.4'} + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.9 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.4 + function.prototype.name: 1.2.0 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.4 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.2 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.4 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.11 + string.prototype.trimend: 1.0.10 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.8 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.22 + dev: true + + /es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + dev: true + + /es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + dev: true + + /es-iterator-helpers@1.4.0: + resolution: {integrity: sha512-c/A0P0oxkACDc+cKWw8evLXK83oBKgn0qPOqCYT4x9uolpCIJAcYvJC9QYKNDRPsTeGyCrQ326jrvgZWdCdK5Q==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-set-tostringtag: 2.1.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.5 + math-intrinsics: 1.1.0 + dev: true + + /es-object-atoms@1.1.2: + resolution: {integrity: sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + dev: true + + /es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.4 + dev: true + + /es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} + dependencies: + hasown: 2.0.4 + dev: true + + /es-to-primitive@1.3.4: + resolution: {integrity: sha512-yPDz7wqpg1/mmHLmS3tcfTfbw5f1eryXvyghYBffGdERwe+mV7ZcWzTR8LR17Kvqt3qfPurjlonmnq3MKXIOXw==} + engines: {node: '>= 0.4'} + dependencies: + es-abstract-get: 1.0.0 + es-define-property: 1.0.1 + es-errors: 1.3.0 + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + dev: true + + /esbuild@0.27.7: + resolution: {integrity: sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==} + engines: {node: '>=18'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/aix-ppc64': 0.27.7 + '@esbuild/android-arm': 0.27.7 + '@esbuild/android-arm64': 0.27.7 + '@esbuild/android-x64': 0.27.7 + '@esbuild/darwin-arm64': 0.27.7 + '@esbuild/darwin-x64': 0.27.7 + '@esbuild/freebsd-arm64': 0.27.7 + '@esbuild/freebsd-x64': 0.27.7 + '@esbuild/linux-arm': 0.27.7 + '@esbuild/linux-arm64': 0.27.7 + '@esbuild/linux-ia32': 0.27.7 + '@esbuild/linux-loong64': 0.27.7 + '@esbuild/linux-mips64el': 0.27.7 + '@esbuild/linux-ppc64': 0.27.7 + '@esbuild/linux-riscv64': 0.27.7 + '@esbuild/linux-s390x': 0.27.7 + '@esbuild/linux-x64': 0.27.7 + '@esbuild/netbsd-arm64': 0.27.7 + '@esbuild/netbsd-x64': 0.27.7 + '@esbuild/openbsd-arm64': 0.27.7 + '@esbuild/openbsd-x64': 0.27.7 + '@esbuild/openharmony-arm64': 0.27.7 + '@esbuild/sunos-x64': 0.27.7 + '@esbuild/win32-arm64': 0.27.7 + '@esbuild/win32-ia32': 0.27.7 + '@esbuild/win32-x64': 0.27.7 + dev: true + + /escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + dev: true + + /escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + dev: false + + /escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + dev: true + + /eslint-config-next@15.5.25(eslint@9.39.5)(typescript@5.9.3): + resolution: {integrity: sha512-hB1oClZzRO3vMAeMmBMch0FHNJ4irH74LvQWDEMHkJtG/Us9+SAsg1f5Pvcw9jz4tc8wSGnvbmF050BRAAIbBg==} + peerDependencies: + eslint: ^7.23.0 || ^8.0.0 || ^9.0.0 + typescript: '>=3.3.1' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@next/eslint-plugin-next': 15.5.25 + '@rushstack/eslint-patch': 1.16.1 + '@typescript-eslint/eslint-plugin': 8.69.0(@typescript-eslint/parser@8.69.0)(eslint@9.39.5)(typescript@5.9.3) + '@typescript-eslint/parser': 8.69.0(eslint@9.39.5)(typescript@5.9.3) + eslint: 9.39.5 + eslint-import-resolver-node: 0.3.10 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.5) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.69.0)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.5) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.5) + eslint-plugin-react: 7.37.5(eslint@9.39.5) + eslint-plugin-react-hooks: 5.2.0(eslint@9.39.5) + typescript: 5.9.3 + transitivePeerDependencies: + - eslint-import-resolver-webpack + - eslint-plugin-import-x + - supports-color + dev: true + + /eslint-import-resolver-node@0.3.10: + resolution: {integrity: sha512-tRrKqFyCaKict5hOd244sL6EQFNycnMQnBe+j8uqGNXYzsImGbGUU4ibtoaBmv5FLwJwcFJNeg1GeVjQfbMrDQ==} + dependencies: + debug: 3.2.7 + is-core-module: 2.16.2 + resolve: 2.0.0-next.7 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.5): + resolution: {integrity: sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + eslint-plugin-import-x: '*' + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + dependencies: + '@nolyfill/is-core-module': 1.0.39 + debug: 4.4.3 + eslint: 9.39.5 + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.69.0)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.5) + get-tsconfig: 4.14.0 + is-bun-module: 2.0.0 + stable-hash: 0.0.5 + tinyglobby: 0.2.17 + unrs-resolver: 1.12.2 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-module-utils@2.14.0(@typescript-eslint/parser@8.69.0)(eslint-import-resolver-node@0.3.10)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.5): + resolution: {integrity: sha512-W2WCRZ9Dqntd+2u8jJcVMV2PKulc6RdLgUUoh/yQr3uB6lo/ZOeGx11sv60/8S4QFFKNslAlWhr9u0Ef7ZW6Ig==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + dependencies: + '@typescript-eslint/parser': 8.69.0(eslint@9.39.5)(typescript@5.9.3) + debug: 3.2.7 + eslint: 9.39.5 + eslint-import-resolver-node: 0.3.10 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.5) + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.69.0)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.5): + resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + dependencies: + '@rtsao/scc': 1.1.0 + '@typescript-eslint/parser': 8.69.0(eslint@9.39.5)(typescript@5.9.3) + array-includes: 3.1.9 + array.prototype.findlastindex: 1.2.6 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 9.39.5 + eslint-import-resolver-node: 0.3.10 + eslint-module-utils: 2.14.0(@typescript-eslint/parser@8.69.0)(eslint-import-resolver-node@0.3.10)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.5) + hasown: 2.0.4 + is-core-module: 2.16.2 + is-glob: 4.0.3 + minimatch: 3.1.5 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.1 + semver: 6.3.1 + string.prototype.trimend: 1.0.10 + tsconfig-paths: 3.15.0 + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + dev: true + + /eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.5): + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 + dependencies: + aria-query: 5.3.2 + array-includes: 3.1.9 + array.prototype.flatmap: 1.3.3 + ast-types-flow: 0.0.8 + axe-core: 4.13.0 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 9.39.5 + hasown: 2.0.4 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.5 + object.fromentries: 2.0.8 + safe-regex-test: 1.1.0 + string.prototype.includes: 2.0.1 + dev: true + + /eslint-plugin-react-hooks@5.2.0(eslint@9.39.5): + resolution: {integrity: sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 + dependencies: + eslint: 9.39.5 + dev: true + + /eslint-plugin-react@7.37.5(eslint@9.39.5): + resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + dependencies: + array-includes: 3.1.9 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.3 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.4.0 + eslint: 9.39.5 + estraverse: 5.3.0 + hasown: 2.0.4 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.5 + object.entries: 1.1.9 + object.fromentries: 2.0.8 + object.values: 1.2.1 + prop-types: 15.8.1 + resolve: 2.0.0-next.7 + semver: 6.3.1 + string.prototype.matchall: 4.1.0 + string.prototype.repeat: 1.0.0 + dev: true + + /eslint-scope@8.4.0: + resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + dev: true + + /eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /eslint-visitor-keys@4.2.1: + resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /eslint-visitor-keys@5.0.1: + resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + dev: true + + /eslint@9.39.5: + resolution: {integrity: sha512-DgZS62aPLXKlnxILS/AYCoRvHaZeXceIzlXPkkGGzJWSow1aEk0lbTlxUSlyjC8jcaKxAdOnTDz+o1JFSBsyjw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + dependencies: + '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.5) + '@eslint-community/regexpp': 4.12.2 + '@eslint/config-array': 0.21.2 + '@eslint/config-helpers': 0.4.2 + '@eslint/core': 0.17.0 + '@eslint/eslintrc': 3.3.7 + '@eslint/js': 9.39.5 + '@eslint/plugin-kit': 0.4.1 + '@humanfs/node': 0.16.8 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.3 + '@types/estree': 1.0.9 + ajv: 6.15.0 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.3 + escape-string-regexp: 4.0.0 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + esquery: 1.7.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.5 + natural-compare: 1.4.0 + optionator: 0.9.4 + transitivePeerDependencies: + - supports-color + dev: true + + /espree@10.4.0: + resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) + eslint-visitor-keys: 4.2.1 + dev: true + + /esquery@1.7.0: + resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} + engines: {node: '>=0.10'} + dependencies: + estraverse: 5.3.0 + dev: true + + /esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + dependencies: + estraverse: 5.3.0 + dev: true + + /estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + dev: true + + /esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + dev: true + + /eventemitter3@5.0.4: + resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} + dev: false + + /fast-decode-uri-component@1.0.1: + resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==} + dev: false + + /fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + /fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + dev: true + + /fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + dev: true + + /fast-json-stringify@6.4.0: + resolution: {integrity: sha512-ibRCQ0GZKJIQ+P3Et1h0LhPgp3PMTYk0MH8O+kW3lNYsvmaQww5Nn3f1jf73Q0jR1Yz3a1CDP4/NZD3vOajWJQ==} + dependencies: + '@fastify/merge-json-schemas': 0.2.1 + ajv: 8.20.0 + ajv-formats: 3.0.1(ajv@8.20.0) + fast-uri: 3.1.2 + json-schema-ref-resolver: 3.0.0 + rfdc: 1.4.1 + dev: false + + /fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: true + + /fast-querystring@1.1.2: + resolution: {integrity: sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==} + dependencies: + fast-decode-uri-component: 1.0.1 + dev: false + + /fast-uri@3.1.2: + resolution: {integrity: sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==} + dev: false + + /fastify-plugin@5.1.0: + resolution: {integrity: sha512-FAIDA8eovSt5qcDgcBvDuX/v0Cjz0ohGhENZ/wpc3y+oZCY2afZ9Baqql3g/lC+OHRnciQol4ww7tuthOb9idw==} + dev: false + + /fastify@5.8.5: + resolution: {integrity: sha512-Yqptv59pQzPgQUSIm87hMqHJmdkb1+GPxdE6vW6FRyVE9G86mt7rOghitiU4JHRaTyDUk9pfeKmDeu70lAwM4Q==} + dependencies: + '@fastify/ajv-compiler': 4.0.5 + '@fastify/error': 4.2.0 + '@fastify/fast-json-stringify-compiler': 5.0.3 + '@fastify/proxy-addr': 5.1.0 + abstract-logging: 2.0.1 + avvio: 9.2.0 + fast-json-stringify: 6.4.0 + find-my-way: 9.6.0 + light-my-request: 6.6.0 + pino: 10.3.1 + process-warning: 5.0.0 + rfdc: 1.4.1 + secure-json-parse: 4.1.0 + semver: 7.7.4 + toad-cache: 3.7.0 + dev: false + + /fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + dependencies: + reusify: 1.1.0 + + /fdir@6.5.0(picomatch@4.0.7): + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + dependencies: + picomatch: 4.0.7 + dev: true + + /file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + dependencies: + flat-cache: 4.0.1 + dev: true + + /fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + dependencies: + to-regex-range: 5.0.1 + dev: true + + /find-my-way@9.6.0: + resolution: {integrity: sha512-Zf4Xve4RymLl7NgaavNebZ01joJ8MfVerOG43wy7SHLO+r+K0C6d/SE0BiR7AV5V1VOCFlOP7ecdo+I4qmiHrQ==} + engines: {node: '>=20'} + dependencies: + fast-deep-equal: 3.1.3 + fast-querystring: 1.1.2 + safe-regex2: 5.1.1 + dev: false + + /find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + dev: true + + /flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + dependencies: + flatted: 3.4.4 + keyv: 4.5.4 + dev: true + + /flatted@3.4.4: + resolution: {integrity: sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==} + dev: true + + /for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + dependencies: + is-callable: 1.2.7 + dev: true + + /foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + dev: false + + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + dev: true + + /function.prototype.name@1.2.0: + resolution: {integrity: sha512-jObKIik1P2QjPHP5nz5BaOtUlfgS0fWo8IUByNXkM+o+02sJOi94em77GwJKQSJ3gfPHdgzLNrHc1uokV4P/ew==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + es-define-property: 1.0.1 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + hasown: 2.0.4 + is-callable: 1.2.7 + is-document.all: 1.0.0 + dev: true + + /functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + dev: true + + /generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + dev: true + + /get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + dev: true + + /get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.4 + math-intrinsics: 1.1.0 + dev: true + + /get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.2 + dev: true + + /get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + dev: true + + /get-tsconfig@4.14.0: + resolution: {integrity: sha512-yTb+8DXzDREzgvYmh6s9vHsSVCHeC0G3PI5bEXNBHtmshPnO+S5O7qgLEOn0I5QvMy6kpZN8K1NKGyilLb93wA==} + dependencies: + resolve-pkg-maps: 1.0.0 + dev: true + + /glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob@11.1.0: + resolution: {integrity: sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw==} + engines: {node: 20 || >=22} + deprecated: Old versions of glob 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 + hasBin: true + dependencies: + foreground-child: 3.3.1 + jackspeak: 4.2.3 + minimatch: 10.2.6 + minipass: 7.1.3 + package-json-from-dist: 1.0.1 + path-scurry: 2.0.2 + dev: false + + /globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + dev: true + + /globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + dev: true + + /gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + dev: true + + /has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + dev: true + + /has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: true + + /has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + dependencies: + es-define-property: 1.0.1 + dev: true + + /has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + dependencies: + dunder-proto: 1.0.1 + dev: true + + /has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + dev: true + + /has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + dependencies: + has-symbols: 1.1.0 + dev: true + + /hasown@2.0.4: + resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} + engines: {node: '>= 0.4'} + dependencies: + function-bind: 1.1.2 + dev: true + + /http-errors@2.0.1: + resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==} + engines: {node: '>= 0.8'} + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.2 + toidentifier: 1.0.1 + dev: false + + /ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + dev: true + + /ignore@7.0.8: + resolution: {integrity: sha512-YYNsSlXBjMk92SKnkwvB5LOVSa6OznlFUGcsvrFgNJbJCd0M1XKeFVRc8ZByeCqz32FivYNHJVooLmdqrmvp/Q==} + engines: {node: '>= 4'} + dev: true + + /import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + dev: true + + /imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + dev: true + + /inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: false + + /internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + hasown: 2.0.4 + side-channel: 1.1.1 + dev: true + + /ipaddr.js@2.4.0: + resolution: {integrity: sha512-9VGk3HGanVE6JoZXHiCpnGy5X0jYDnN4EA4lntFPj+1vIWlFhIylq2CrrCOJH9EAhc5CYhq18F2Av2tgoAPsYQ==} + engines: {node: '>= 10'} + dev: false + + /is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + dev: true + + /is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + dev: true + + /is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + dependencies: + has-bigints: 1.1.0 + dev: true + + /is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + dev: true + + /is-bun-module@2.0.0: + resolution: {integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==} + dependencies: + semver: 7.7.4 + dev: true + + /is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + dev: true + + /is-core-module@2.16.2: + resolution: {integrity: sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==} + engines: {node: '>= 0.4'} + dependencies: + hasown: 2.0.4 + dev: true + + /is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + dev: true + + /is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + dev: true + + /is-document.all@1.0.0: + resolution: {integrity: sha512-+XSoyS05OdBbhFuELhgTCpFNHkpBOJqtsZfUFFpe5QTw+9Sjbh8zitxhQkYAo6wV7e1Vb8cAPvpCk9jGam/82g==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + dev: true + + /is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + dev: true + + /is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + dev: true + + /is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + dev: true + + /is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + dev: true + + /is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + dependencies: + is-extglob: 2.1.1 + dev: true + + /is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + dev: true + + /is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + dev: true + + /is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + dev: true + + /is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + dev: true + + /is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.4 + dev: true + + /is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + dev: true + + /is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + dev: true + + /is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + dev: true + + /is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + dev: true + + /is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + dependencies: + which-typed-array: 1.1.22 + dev: true + + /is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + dev: true + + /is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + dev: true + + /is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + dev: true + + /isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + dev: true + + /isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + /iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.4 + es-object-atoms: 1.1.2 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + has-symbols: 1.1.0 + set-function-name: 2.0.2 + dev: true + + /jackspeak@4.2.3: + resolution: {integrity: sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==} + engines: {node: 20 || >=22} + dependencies: + '@isaacs/cliui': 9.0.0 + dev: false + + /jintr@3.3.1: + resolution: {integrity: sha512-nnOzyhf0SLpbWuZ270Omwbj5LcXUkTcZkVnK8/veJXtSZOiATM5gMZMdmzN75FmTyj+NVgrGaPdH12zIJ24oIA==} + dependencies: + acorn: 8.16.0 + dev: false + + /js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + dev: true + + /js-yaml@4.3.2: + resolution: {integrity: sha512-SFNOvSJ+Dgf/9An904Yx+CgSlIPCkIpao4qo51lpee25TIRejdH3rhR4EZMGoNx3/TP3O+wzWuiTFl4sqbltzA==} + hasBin: true + dependencies: + argparse: 2.0.1 + dev: true + + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + dev: true + + /json-schema-ref-resolver@3.0.0: + resolution: {integrity: sha512-hOrZIVL5jyYFjzk7+y7n5JDzGlU8rfWDuYyHwGa2WA8/pcmMHezp2xsVwxrebD/Q9t8Nc5DboieySDpCp4WG4A==} + dependencies: + dequal: 2.0.3 + dev: false + + /json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true + + /json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + dev: false + + /json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + dev: true + + /json5@1.0.2: + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true + dependencies: + minimist: 1.2.8 + dev: true + + /jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + dependencies: + array-includes: 3.1.9 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 + dev: true + + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + dependencies: + json-buffer: 3.0.1 + dev: true + + /language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + dev: true + + /language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} + dependencies: + language-subtag-registry: 0.3.23 + dev: true + + /levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + dev: true + + /light-my-request@6.6.0: + resolution: {integrity: sha512-CHYbu8RtboSIoVsHZ6Ye4cj4Aw/yg2oAFimlF7mNvfDV192LR7nDiKtSIfCuLT7KokPSTn/9kfVLm5OGN0A28A==} + dependencies: + cookie: 1.1.1 + process-warning: 4.0.1 + set-cookie-parser: 2.7.2 + dev: false + + /locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + dependencies: + p-locate: 5.0.0 + dev: true + + /lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: true + + /lodash@4.18.1: + resolution: {integrity: sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==} + dev: true + + /loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + dependencies: + js-tokens: 4.0.0 + dev: true + + /lru-cache@11.5.2: + resolution: {integrity: sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==} + engines: {node: 20 || >=22} + dev: false + + /lucide-react@0.544.0(react@19.2.6): + resolution: {integrity: sha512-t5tS44bqd825zAW45UQxpG2CvcC4urOwn2TrwSH8u+MjeE+1NnWl6QqeQ/6NdjMqdOygyiT9p3Ev0p1NJykxjw==} + peerDependencies: + react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 + dependencies: + react: 19.2.6 + dev: false + + /math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + dev: true + + /merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: true + + /micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + dependencies: + braces: 3.0.3 + picomatch: 2.3.2 + dev: true + + /mime@3.0.0: + resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} + engines: {node: '>=10.0.0'} + hasBin: true + dev: false + + /minimatch@10.2.6: + resolution: {integrity: sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==} + engines: {node: 18 || 20 || >=22} + dependencies: + brace-expansion: 5.0.9 + + /minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + dependencies: + brace-expansion: 1.1.18 + dev: true + + /minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + dev: true + + /minipass@7.1.3: + resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==} + engines: {node: '>=16 || 14 >=14.17'} + dev: false + + /ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + dev: true + + /nanoid@3.3.12: + resolution: {integrity: sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: false + + /napi-postinstall@0.3.4: + resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + hasBin: true + dev: true + + /natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + dev: true + + /next@15.5.16(react-dom@19.2.6)(react@19.2.6): + resolution: {integrity: sha512-aZExBk/V6JCu3NCFc90twdj9L/M3y0+ukeQwUAZbOiqRhAX+h2oMEa0NZFhcpj6HYRYjVS3V2/3xvyOpNnmw7A==} + engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.51.1 + babel-plugin-react-compiler: '*' + react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + dependencies: + '@next/env': 15.5.16 + '@swc/helpers': 0.5.15 + caniuse-lite: 1.0.30001792 + postcss: 8.4.31 + react: 19.2.6 + react-dom: 19.2.6(react@19.2.6) + styled-jsx: 5.1.6(react@19.2.6) + optionalDependencies: + '@next/swc-darwin-arm64': 15.5.16 + '@next/swc-darwin-x64': 15.5.16 + '@next/swc-linux-arm64-gnu': 15.5.16 + '@next/swc-linux-arm64-musl': 15.5.16 + '@next/swc-linux-x64-gnu': 15.5.16 + '@next/swc-linux-x64-musl': 15.5.16 + '@next/swc-win32-arm64-msvc': 15.5.16 + '@next/swc-win32-x64-msvc': 15.5.16 + sharp: 0.34.5 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + dev: false + + /node-exports-info@1.6.2: + resolution: {integrity: sha512-kXs9Go0cah0qHVV2v389IXQLdLCeE1xfFtjOAF+iobu0OIoG1pje8At2vMHyaPMiPMnG/LWP50twML21eMcAag==} + engines: {node: '>= 0.4'} + dependencies: + array.prototype.flatmap: 1.3.3 + es-errors: 1.3.0 + object.entries: 1.1.9 + semver: 6.3.1 + dev: true + + /object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + dev: true + + /object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + dev: true + + /object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + dev: true + + /object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.2 + has-symbols: 1.1.0 + object-keys: 1.1.1 + dev: true + + /object.entries@1.1.9: + resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.2 + dev: true + + /object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-object-atoms: 1.1.2 + dev: true + + /object.groupby@1.0.3: + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + dev: true + + /object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.2 + dev: true + + /on-exit-leak-free@2.1.2: + resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==} + engines: {node: '>=14.0.0'} + dev: false + + /optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + dev: true + + /own-keys@1.0.2: + resolution: {integrity: sha512-19YVAg7T+WTrxggPukVq7DjTv6+PJ867TmhCvBsYwmbFCsZd344rq2Ld1p0wo8f8Qrrhgp82c6FJRqdXWtSEhg==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + dev: true + + /p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + dependencies: + yocto-queue: 0.1.0 + dev: true + + /p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + dependencies: + p-limit: 3.1.0 + dev: true + + /package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + dev: false + + /parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + dependencies: + callsites: 3.1.0 + dev: true + + /path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + dev: true + + /path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + /path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + dev: true + + /path-scurry@2.0.2: + resolution: {integrity: sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==} + engines: {node: 18 || 20 || >=22} + dependencies: + lru-cache: 11.5.2 + minipass: 7.1.3 + dev: false + + /picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + dev: false + + /picomatch@2.3.2: + resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==} + engines: {node: '>=8.6'} + dev: true + + /picomatch@4.0.7: + resolution: {integrity: sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==} + engines: {node: '>=12'} + dev: true + + /pino-abstract-transport@3.0.0: + resolution: {integrity: sha512-wlfUczU+n7Hy/Ha5j9a/gZNy7We5+cXp8YL+X+PG8S0KXxw7n/JXA3c46Y0zQznIJ83URJiwy7Lh56WLokNuxg==} + dependencies: + split2: 4.2.0 + dev: false + + /pino-std-serializers@7.1.0: + resolution: {integrity: sha512-BndPH67/JxGExRgiX1dX0w1FvZck5Wa4aal9198SrRhZjH3GxKQUKIBnYJTdj2HDN3UQAS06HlfcSbQj2OHmaw==} + dev: false + + /pino@10.3.1: + resolution: {integrity: sha512-r34yH/GlQpKZbU1BvFFqOjhISRo1MNx1tWYsYvmj6KIRHSPMT2+yHOEb1SG6NMvRoHRF0a07kCOox/9yakl1vg==} + hasBin: true + dependencies: + '@pinojs/redact': 0.4.0 + atomic-sleep: 1.0.0 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 3.0.0 + pino-std-serializers: 7.1.0 + process-warning: 5.0.0 + quick-format-unescaped: 4.0.4 + real-require: 0.2.0 + safe-stable-stringify: 2.5.0 + sonic-boom: 4.2.1 + thread-stream: 4.0.0 + dev: false + + /possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + dev: true + + /postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.12 + picocolors: 1.1.1 + source-map-js: 1.2.1 + dev: false + + /prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + dev: true + + /process-warning@4.0.1: + resolution: {integrity: sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==} + dev: false + + /process-warning@5.0.0: + resolution: {integrity: sha512-a39t9ApHNx2L4+HBnQKqxxHNs1r7KF+Intd8Q/g1bUh6q0WIp9voPXJ/x0j+ZL45KF1pJd9+q2jLIRMfvEshkA==} + dev: false + + /prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + dev: true + + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + dev: true + + /queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: true + + /quick-format-unescaped@4.0.4: + resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==} + dev: false + + /react-dom@19.2.6(react@19.2.6): + resolution: {integrity: sha512-0prMI+hvBbPjsWnxDLxlCGyM8PN6UuWjEUCYmZhO67xIV9Xasa/r/vDnq+Xyq4Lo27g8QSbO5YzARu0D1Sps3g==} + peerDependencies: + react: ^19.2.6 + dependencies: + react: 19.2.6 + scheduler: 0.27.0 + dev: false + + /react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + dev: true + + /react@19.2.6: + resolution: {integrity: sha512-sfWGGfavi0xr8Pg0sVsyHMAOziVYKgPLNrS7ig+ivMNb3wbCBw3KxtflsGBAwD3gYQlE/AEZsTLgToRrSCjb0Q==} + engines: {node: '>=0.10.0'} + dev: false + + /real-require@0.2.0: + resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==} + engines: {node: '>= 12.13.0'} + dev: false + + /reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + dev: true + + /regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + dev: true + + /require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + dev: true + + /require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + dev: false + + /resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + dev: true + + /resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + dev: true + + /resolve@2.0.0-next.7: + resolution: {integrity: sha512-tqt+NBWwyaMgw3zDsnygx4CByWjQEJHOPMdslYhppaQSJUtL/D4JO9CcBBlhPoI8lz9oJIDXkwXfhF4aWqP8xQ==} + engines: {node: '>= 0.4'} + hasBin: true + dependencies: + es-errors: 1.3.0 + is-core-module: 2.16.2 + node-exports-info: 1.6.2 + object-keys: 1.1.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: true + + /ret@0.5.0: + resolution: {integrity: sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==} + engines: {node: '>=10'} + dev: false + + /reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + /rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + dev: false + + /run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + dependencies: + queue-microtask: 1.2.3 + dev: true + + /rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} + dependencies: + tslib: 2.8.1 + dev: true + + /safe-array-concat@1.1.4: + resolution: {integrity: sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==} + engines: {node: '>=0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + dev: true + + /safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + dev: false + + /safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + dev: true + + /safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + dev: true + + /safe-regex2@5.1.1: + resolution: {integrity: sha512-mOSBvHGDZMuIEZMdOz/aCEYDCv0E7nfcNsIhUF+/P+xC7Hyf3FkvymqgPbg9D1EdSGu+uKbJgy09K/RKKc7kJA==} + hasBin: true + dependencies: + ret: 0.5.0 + dev: false + + /safe-stable-stringify@2.5.0: + resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==} + engines: {node: '>=10'} + dev: false + + /scheduler@0.27.0: + resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} + dev: false + + /secure-json-parse@4.1.0: + resolution: {integrity: sha512-l4KnYfEyqYJxDwlNVyRfO2E4NTHfMKAWdUuA8J0yve2Dz/E/PdBepY03RvyJpssIpRFwJoCD55wA+mEDs6ByWA==} + dev: false + + /semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + dev: true + + /semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + engines: {node: '>=10'} + hasBin: true + + /set-cookie-parser@2.7.2: + resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==} + dev: false + + /set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + dev: true + + /set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + dev: true + + /set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + dev: true + + /setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + dev: false + + /sharp@0.34.5: + resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + requiresBuild: true + dependencies: + '@img/colour': 1.1.0 + detect-libc: 2.1.2 + semver: 7.7.4 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.34.5 + '@img/sharp-darwin-x64': 0.34.5 + '@img/sharp-libvips-darwin-arm64': 1.2.4 + '@img/sharp-libvips-darwin-x64': 1.2.4 + '@img/sharp-libvips-linux-arm': 1.2.4 + '@img/sharp-libvips-linux-arm64': 1.2.4 + '@img/sharp-libvips-linux-ppc64': 1.2.4 + '@img/sharp-libvips-linux-riscv64': 1.2.4 + '@img/sharp-libvips-linux-s390x': 1.2.4 + '@img/sharp-libvips-linux-x64': 1.2.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + '@img/sharp-linux-arm': 0.34.5 + '@img/sharp-linux-arm64': 0.34.5 + '@img/sharp-linux-ppc64': 0.34.5 + '@img/sharp-linux-riscv64': 0.34.5 + '@img/sharp-linux-s390x': 0.34.5 + '@img/sharp-linux-x64': 0.34.5 + '@img/sharp-linuxmusl-arm64': 0.34.5 + '@img/sharp-linuxmusl-x64': 0.34.5 + '@img/sharp-wasm32': 0.34.5 + '@img/sharp-win32-arm64': 0.34.5 + '@img/sharp-win32-ia32': 0.34.5 + '@img/sharp-win32-x64': 0.34.5 + dev: false + optional: true + + /shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + dependencies: + shebang-regex: 3.0.0 + + /shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + /shell-quote@1.8.3: + resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==} + engines: {node: '>= 0.4'} + dev: true + + /side-channel-list@1.0.1: + resolution: {integrity: sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + dev: true + + /side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + dev: true + + /side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + dev: true + + /side-channel@1.1.1: + resolution: {integrity: sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.1 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + dev: true + + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + dev: false + + /sonic-boom@4.2.1: + resolution: {integrity: sha512-w6AxtubXa2wTXAUsZMMWERrsIRAdrK0Sc+FUytWvYAhBJLyuI4llrMIC1DtlNSdI99EI86KZum2MMq3EAZlF9Q==} + dependencies: + atomic-sleep: 1.0.0 + dev: false + + /source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + dev: false + + /spawn-command@0.0.2: + resolution: {integrity: sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==} + dev: true + + /split2@4.2.0: + resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} + engines: {node: '>= 10.x'} + dev: false + + /stable-hash@0.0.5: + resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} + dev: true + + /statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + dev: false + + /stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + dev: true + + /string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + dev: true + + /string.prototype.includes@2.0.1: + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-abstract: 1.24.2 + dev: true + + /string.prototype.matchall@4.1.0: + resolution: {integrity: sha512-tHNHTxInrYLCga9O9YGxWA3G9/nnzQw8UGAyqGx3Ar1pSTTzIuM4woFSq4SowkXCjJIwq5sIiQvEfRI9tCH1qQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-errors: 1.3.0 + es-object-atoms: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 + set-function-name: 2.0.2 + side-channel: 1.1.1 + dev: true + + /string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + dependencies: + define-properties: 1.2.1 + es-abstract: 1.24.2 + dev: true + + /string.prototype.trim@1.2.11: + resolution: {integrity: sha512-PwvK7BU+CMTJGYQCTZb5RWXIML92lftJLhQz1tBzgKiqGxJaMlBAa48POXaNAC2s4y8jr3EFqrkF9+44neS46w==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.2 + es-object-atoms: 1.1.2 + has-property-descriptors: 1.0.2 + safe-regex-test: 1.1.0 + dev: true + + /string.prototype.trimend@1.0.10: + resolution: {integrity: sha512-2+3aDAOmPTmuFwjDnmJG2ctEkQKVki7vOSqaxkv42Mowj1V6PnvuwFCRrR5lChUux1TBskPjfkeTOhqczDMxTw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.2 + dev: true + + /string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + define-properties: 1.2.1 + es-object-atoms: 1.1.2 + dev: true + + /strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + dependencies: + ansi-regex: 5.0.1 + dev: true + + /strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + dev: true + + /strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + dev: true + + /styled-jsx@5.1.6(react@19.2.6): + resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + dependencies: + client-only: 0.0.1 + react: 19.2.6 + dev: false + + /supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + dependencies: + has-flag: 4.0.0 + dev: true + + /supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + dependencies: + has-flag: 4.0.0 + dev: true + + /supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + dev: true + + /thread-stream@4.0.0: + resolution: {integrity: sha512-4iMVL6HAINXWf1ZKZjIPcz5wYaOdPhtO8ATvZ+Xqp3BTdaqtAwQkNmKORqcIo5YkQqGXq5cwfswDwMqqQNrpJA==} + engines: {node: '>=20'} + dependencies: + real-require: 0.2.0 + dev: false + + /tinyglobby@0.2.17: + resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} + engines: {node: '>=12.0.0'} + dependencies: + fdir: 6.5.0(picomatch@4.0.7) + picomatch: 4.0.7 + dev: true + + /to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + dependencies: + is-number: 7.0.0 + dev: true + + /toad-cache@3.7.0: + resolution: {integrity: sha512-/m8M+2BJUpoJdgAHoG+baCwBT+tf2VraSfkBgl0Y00qIWt41DJ8R5B8nsEw0I58YwF5IZH6z24/2TobDKnqSWw==} + engines: {node: '>=12'} + dev: false + + /toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + dev: false + + /tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + dev: true + + /ts-api-utils@2.5.0(typescript@5.9.3): + resolution: {integrity: sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + dependencies: + typescript: 5.9.3 + dev: true + + /tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + dependencies: + '@types/json5': 0.0.29 + json5: 1.0.2 + minimist: 1.2.8 + strip-bom: 3.0.0 + dev: true + + /tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + /tsx@4.21.0: + resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==} + engines: {node: '>=18.0.0'} + hasBin: true + dependencies: + esbuild: 0.27.7 + get-tsconfig: 4.14.0 + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + dev: true + + /typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + dev: true + + /typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + dev: true + + /typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.9 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + dev: true + + /typed-array-length@1.0.8: + resolution: {integrity: sha512-phPGCwqr2+Qo0fwniCE8e4pKnGu/yFb5nD5Y8bf0EEeiI5GklnACYA9GFy/DrAeRrKHXvHn+1SUsOWgJp6RO+g==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.9 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + dev: true + + /typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + dev: true + + /unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + dev: true + + /undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + dev: true + + /undici@6.25.0: + resolution: {integrity: sha512-ZgpWDC5gmNiuY9CnLVXEH8rl50xhRCuLNA97fAUnKi8RRuV4E6KG31pDTsLVUKnohJE0I3XDrTeEydAXRw47xg==} + engines: {node: '>=18.17'} + dev: false + + /unrs-resolver@1.12.2: + resolution: {integrity: sha512-dmlRxBJJayXjqTwC+JtF1HhJmgf3ftQ3YejFcZrf4+KKtJv0qDsK1pjqaaVjG7wJ5NJ6UVP1OqRMQ71Z4C3rxQ==} + requiresBuild: true + dependencies: + napi-postinstall: 0.3.4 + optionalDependencies: + '@unrs/resolver-binding-android-arm-eabi': 1.12.2 + '@unrs/resolver-binding-android-arm64': 1.12.2 + '@unrs/resolver-binding-darwin-arm64': 1.12.2 + '@unrs/resolver-binding-darwin-x64': 1.12.2 + '@unrs/resolver-binding-freebsd-x64': 1.12.2 + '@unrs/resolver-binding-linux-arm-gnueabihf': 1.12.2 + '@unrs/resolver-binding-linux-arm-musleabihf': 1.12.2 + '@unrs/resolver-binding-linux-arm64-gnu': 1.12.2 + '@unrs/resolver-binding-linux-arm64-musl': 1.12.2 + '@unrs/resolver-binding-linux-loong64-gnu': 1.12.2 + '@unrs/resolver-binding-linux-loong64-musl': 1.12.2 + '@unrs/resolver-binding-linux-ppc64-gnu': 1.12.2 + '@unrs/resolver-binding-linux-riscv64-gnu': 1.12.2 + '@unrs/resolver-binding-linux-riscv64-musl': 1.12.2 + '@unrs/resolver-binding-linux-s390x-gnu': 1.12.2 + '@unrs/resolver-binding-linux-x64-gnu': 1.12.2 + '@unrs/resolver-binding-linux-x64-musl': 1.12.2 + '@unrs/resolver-binding-openharmony-arm64': 1.12.2 + '@unrs/resolver-binding-wasm32-wasi': 1.12.2 + '@unrs/resolver-binding-win32-arm64-msvc': 1.12.2 + '@unrs/resolver-binding-win32-ia32-msvc': 1.12.2 + '@unrs/resolver-binding-win32-x64-msvc': 1.12.2 + dev: true + + /uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + dependencies: + punycode: 2.3.1 + dev: true + + /which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + dev: true + + /which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.2.0 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.22 + dev: true + + /which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + dev: true + + /which-typed-array@1.1.22: + resolution: {integrity: sha512-fvO4ExWMFsqyhG3AiPAObMuY1lxaqgYcxbc49CNdWDDECOJNgQyvsOWVwbZc+qf3rzRtxojBK+CMEv0Ld5CYpw==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.9 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + dev: true + + /which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + + /word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + dev: true + + /wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + + /y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + dev: true + + /yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + dev: true + + /yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + dev: true + + /yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: true + + /youtubei.js@15.1.1: + resolution: {integrity: sha512-fuEDj9Ky6cAQg93BrRVCbr+GTYNZQAIFZrx/a3oDRuGc3Mf5bS0dQfoYwwgjtSV7sgAKQEEdGtzRdBzOc8g72Q==} + dependencies: + '@bufbuild/protobuf': 2.12.0 + jintr: 3.3.1 + undici: 6.25.0 + dev: false diff --git a/shared/chat.ts b/shared/chat.ts index c0db088..9c0a3b8 100644 --- a/shared/chat.ts +++ b/shared/chat.ts @@ -1,26 +1,27 @@ export type Badge = { - type: 'moderator' | 'member' | 'verified' | 'custom'; + type: 'moderator' | 'member' | 'verified' | 'owner' | 'custom'; label?: string; - icon?: string; - imageUrl?: string; // For custom membership badges + imageUrl?: string; }; export type SuperChatInfo = { amount: string; currency: string; color: string; - stickerUrl?: string; // For super stickers - stickerAlt?: string; // Accessibility label for super stickers + stickerUrl?: string; + stickerAlt?: string; }; export type MessageRun = { text?: string; + /** Full destination URL when YouTube rendered this run as a link. The visible text may be truncated. */ + url?: string; emojiUrl?: string; emojiAlt?: string; }; export type Poll = { - id: string; // live_chat_poll_id from YouTube + id: string; active: boolean; }; @@ -30,7 +31,7 @@ export type ChatMessage = { authorPhoto?: string; authorChannelId?: string; text: string; - runs?: MessageRun[]; // structured runs for emojis + runs?: MessageRun[]; publishedAt: string; badges?: Badge[]; isModerator?: boolean; @@ -39,7 +40,30 @@ export type ChatMessage = { superChat?: SuperChatInfo; membershipGift?: boolean; membershipGiftPurchase?: boolean; - membershipLevel?: string; // e.g., "New member", "Member (6 months)", etc. - giftCount?: number; // Number of memberships gifted - leaderboardRank?: number; // YouTube leaderboard rank (1, 2, 3, etc.) + membershipLevel?: string; + giftCount?: number; + leaderboardRank?: number; }; + +export type ConnectionState = 'disconnected' | 'connecting' | 'live' | 'reconnecting'; + +export type ConnectionStatus = { + state: ConnectionState; + liveId: string | null; + title?: string | null; + error?: string | null; +}; + +/** + * Events pushed on the single `/events` SSE stream. + * `init` is sent once per connection with the full current state; the rest are deltas. + */ +export type ServerEvent = + | { type: 'init'; status: ConnectionStatus; messages: ChatMessage[]; selection: ChatMessage | null; poll: Poll | null } + | { type: 'message'; message: ChatMessage } + | { type: 'selection'; message: ChatMessage | null } + | { type: 'poll'; poll: Poll | null } + | { type: 'status'; status: ConnectionStatus } + | { type: 'clear' }; + +export type ServerEventType = ServerEvent['type'];

7t^s+P7b&`Kvfctt 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