From f7b1bd09cab3ed35dd24bdbe2d07227b480d17fc Mon Sep 17 00:00:00 2001 From: Sophia Philo Date: Sun, 25 May 2025 22:44:32 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=EC=A4=91=EA=B0=84=EB=B3=B4=EA=B3=A0?= =?UTF-8?q?=EC=84=9C=20=EC=97=85=EB=A1=9C=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...00\341\205\251\341\204\211\341\205\245.pdf" | Bin 0 -> 276346 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "2025 PNU SW\341\204\222\341\205\241\341\206\250\341\204\211\341\205\263\341\206\270\341\204\200\341\205\251\341\206\274\341\204\203\341\205\251\341\206\274\341\204\216\341\205\246 \341\204\214\341\205\256\341\206\274\341\204\200\341\205\241\341\206\253\341\204\207\341\205\251\341\204\200\341\205\251\341\204\211\341\205\245.pdf" diff --git "a/2025 PNU SW\341\204\222\341\205\241\341\206\250\341\204\211\341\205\263\341\206\270\341\204\200\341\205\251\341\206\274\341\204\203\341\205\251\341\206\274\341\204\216\341\205\246 \341\204\214\341\205\256\341\206\274\341\204\200\341\205\241\341\206\253\341\204\207\341\205\251\341\204\200\341\205\251\341\204\211\341\205\245.pdf" "b/2025 PNU SW\341\204\222\341\205\241\341\206\250\341\204\211\341\205\263\341\206\270\341\204\200\341\205\251\341\206\274\341\204\203\341\205\251\341\206\274\341\204\216\341\205\246 \341\204\214\341\205\256\341\206\274\341\204\200\341\205\241\341\206\253\341\204\207\341\205\251\341\204\200\341\205\251\341\204\211\341\205\245.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..95c93020d482b3342fe82c23a03d85180c3fb301 GIT binary patch literal 276346 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

-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 literal 0 HcmV?d00001 From 6997c7a09a6d614dc2c033903759b00e6eb03862 Mon Sep 17 00:00:00 2001 From: philosophia301 Date: Tue, 22 Jul 2025 23:38:41 +0900 Subject: [PATCH 2/3] feat: frontend baseline code --- frontend/.gitignore | 98 + frontend/README.md | 36 + frontend/app/analysis/page.tsx | 246 + frontend/app/api/speech/route.ts | 1 + frontend/app/api/speech/stream/route.ts | 133 + frontend/app/favicon.ico | Bin 0 -> 25931 bytes frontend/app/globals.css | 122 + frontend/app/interview/page.tsx | 531 ++ frontend/app/layout.tsx | 34 + frontend/app/page.tsx | 221 + frontend/components.json | 21 + frontend/components/navigation.tsx | 74 + frontend/components/ui/alert.tsx | 66 + frontend/components/ui/avatar.tsx | 53 + frontend/components/ui/badge.tsx | 46 + frontend/components/ui/button.tsx | 59 + frontend/components/ui/card.tsx | 92 + frontend/components/ui/input.tsx | 21 + frontend/components/ui/progress.tsx | 31 + frontend/components/ui/select.tsx | 185 + frontend/eslint.config.mjs | 16 + frontend/lib/utils.ts | 6 + frontend/next.config.ts | 7 + frontend/package-lock.json | 8381 +++++++++++++++++++++++ frontend/package.json | 42 + frontend/postcss.config.mjs | 5 + frontend/public/file.svg | 1 + frontend/public/globe.svg | 1 + frontend/public/next.svg | 1 + frontend/public/vercel.svg | 1 + frontend/public/window.svg | 1 + frontend/tailwind.config.ts | 81 + frontend/tsconfig.json | 27 + 33 files changed, 10640 insertions(+) create mode 100644 frontend/.gitignore create mode 100644 frontend/README.md create mode 100644 frontend/app/analysis/page.tsx create mode 100644 frontend/app/api/speech/route.ts create mode 100644 frontend/app/api/speech/stream/route.ts create mode 100644 frontend/app/favicon.ico create mode 100644 frontend/app/globals.css create mode 100644 frontend/app/interview/page.tsx create mode 100644 frontend/app/layout.tsx create mode 100644 frontend/app/page.tsx create mode 100644 frontend/components.json create mode 100644 frontend/components/navigation.tsx create mode 100644 frontend/components/ui/alert.tsx create mode 100644 frontend/components/ui/avatar.tsx create mode 100644 frontend/components/ui/badge.tsx create mode 100644 frontend/components/ui/button.tsx create mode 100644 frontend/components/ui/card.tsx create mode 100644 frontend/components/ui/input.tsx create mode 100644 frontend/components/ui/progress.tsx create mode 100644 frontend/components/ui/select.tsx create mode 100644 frontend/eslint.config.mjs create mode 100644 frontend/lib/utils.ts create mode 100644 frontend/next.config.ts create mode 100644 frontend/package-lock.json create mode 100644 frontend/package.json create mode 100644 frontend/postcss.config.mjs create mode 100644 frontend/public/file.svg create mode 100644 frontend/public/globe.svg create mode 100644 frontend/public/next.svg create mode 100644 frontend/public/vercel.svg create mode 100644 frontend/public/window.svg create mode 100644 frontend/tailwind.config.ts create mode 100644 frontend/tsconfig.json diff --git a/frontend/.gitignore b/frontend/.gitignore new file mode 100644 index 00000000..f6ecf642 --- /dev/null +++ b/frontend/.gitignore @@ -0,0 +1,98 @@ +# Created by https://www.toptal.com/developers/gitignore/api/nextjs,macos,windows +# Edit at https://www.toptal.com/developers/gitignore?templates=nextjs,macos,windows + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### macOS Patch ### +# iCloud generated files +*.icloud + +### NextJS ### +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts + +### Windows ### +# Windows thumbnail cache files +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +# End of https://www.toptal.com/developers/gitignore/api/nextjs,macos,windows \ No newline at end of file diff --git a/frontend/README.md b/frontend/README.md new file mode 100644 index 00000000..e215bc4c --- /dev/null +++ b/frontend/README.md @@ -0,0 +1,36 @@ +This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app). + +## Getting Started + +First, run the development server: + +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +# or +bun dev +``` + +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. + +This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. + +## Learn More + +To learn more about Next.js, take a look at the following resources: + +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. + +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! + +## Deploy on Vercel + +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. + +Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. diff --git a/frontend/app/analysis/page.tsx b/frontend/app/analysis/page.tsx new file mode 100644 index 00000000..4e091cc7 --- /dev/null +++ b/frontend/app/analysis/page.tsx @@ -0,0 +1,246 @@ +"use client" + +import { Download, TrendingUp, Clock, CheckCircle, AlertTriangle, Star } from "lucide-react" +import { Button } from "@/components/ui/button" +import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" +import { Progress } from "@/components/ui/progress" +import { Badge } from "@/components/ui/badge" +import { BarChart, Bar, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer } from "recharts" +import Link from "next/link" + +export default function AnalysisPage() { + const topicData = [ + { topic: "React", timeSpent: 12, questions: 4, success: 85 }, + { topic: "TypeScript", timeSpent: 8, questions: 3, success: 90 }, + { topic: "Algorithms", timeSpent: 15, questions: 5, success: 70 }, + { topic: "System Design", timeSpent: 20, questions: 2, success: 75 }, + { topic: "Node.js", timeSpent: 5, questions: 2, success: 95 }, + ] + + const performanceData = [ + { name: "Technical Knowledge", value: 85, color: "#3b82f6" }, + { name: "Problem Solving", value: 78, color: "#10b981" }, + { name: "Communication", value: 92, color: "#f59e0b" }, + { name: "Code Quality", value: 88, color: "#8b5cf6" }, + ] + + const overallScore = 86 + + const strengths = [ + "Strong understanding of React hooks and lifecycle methods", + "Excellent communication and explanation skills", + "Good grasp of TypeScript advanced features", + "Clean and readable code structure", + "Effective problem-solving approach", + ] + + const improvements = [ + "Algorithm optimization techniques need practice", + "System design scalability concepts could be stronger", + "Time management during coding challenges", + "Edge case handling in solutions", + ] + + const downloadReport = () => { + // Simulate PDF download + const link = document.createElement("a") + link.href = "#" + link.download = "interview-analysis-report.pdf" + link.click() + } + + return ( +

+
+
+ {/* Header */} +
+

Interview Analysis Report

+

Comprehensive evaluation of technical interview performance

+
+ + + Duration: 45 minutes + + + Questions Asked: 16 + + + Topics Covered: 5 + +
+
+ + {/* Overall Score */} + + + Overall Performance + Based on technical skills, problem-solving, and communication + + +
+ + + + +
+ {overallScore}% +
+
+
+ + Strong Performance +
+
+
+ +
+ {/* Performance Breakdown */} + + + + + Performance Breakdown + + Detailed analysis across key areas + + +
+ {performanceData.map((item, index) => ( +
+
+ {item.name} + {item.value}% +
+ +
+ ))} +
+
+
+ + {/* Time Distribution */} + + + Time Distribution by Topic + Minutes spent on each technical area + + + + + + + + + + + + + +
+ + {/* Success Rate by Topic */} + + + Success Rate by Topic + Performance analysis across different technical areas + + +
+ {topicData.map((topic, index) => ( +
+

{topic.topic}

+
{topic.success}%
+
{topic.questions} questions
+ +
+ ))} +
+
+
+ +
+ {/* Strengths */} + + + + + Key Strengths + + + Areas where you excelled during the interview + + + +
    + {strengths.map((strength, index) => ( +
  • + + {strength} +
  • + ))} +
+
+
+ + {/* Areas for Improvement */} + + + + + Areas for Improvement + + + Opportunities to enhance your technical skills + + + +
    + {improvements.map((improvement, index) => ( +
  • + + {improvement} +
  • + ))} +
+
+
+
+ + {/* Action Buttons */} +
+
+ + + + +
+ +

+ Report generated on {new Date().toLocaleDateString()} at {new Date().toLocaleTimeString()} +

+
+
+
+
+ ) +} diff --git a/frontend/app/api/speech/route.ts b/frontend/app/api/speech/route.ts new file mode 100644 index 00000000..0519ecba --- /dev/null +++ b/frontend/app/api/speech/route.ts @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/app/api/speech/stream/route.ts b/frontend/app/api/speech/stream/route.ts new file mode 100644 index 00000000..d4e0e229 --- /dev/null +++ b/frontend/app/api/speech/stream/route.ts @@ -0,0 +1,133 @@ +import speech from '@google-cloud/speech' +import { NextRequest, NextResponse } from 'next/server' + +const client = new speech.SpeechClient() + +// 전역 스트림 관리 +interface StreamData { + stream: ReturnType + lastResult: { + transcript: string + isFinal: boolean + timestamp: number + } | null + audioBuffer: Buffer[] +} + +const activeStreams = new Map() + +export async function POST(request: NextRequest) { + try { + const { action, sessionId, audioData } = await request.json() + + if (action === 'start') { + return startRecognition(sessionId) + } else if (action === 'audio') { + return processAudio(sessionId, audioData) + } else if (action === 'stop') { + return stopRecognition(sessionId) + } + + return NextResponse.json({ error: 'Invalid action' }, { status: 400 }) + } catch (error) { + console.error('API Error:', error) + return NextResponse.json({ error: 'Internal Server Error' }, { status: 500 }) + } +} + +function startRecognition(sessionId: string) { + const config = { + encoding: 'WEBM_OPUS' as const, + sampleRateHertz: 48000, + languageCode: 'ko-KR', + enableAutomaticPunctuation: true, + model: 'latest_long', + } + + const request = { + config, + interimResults: true, + } + + const recognizeStream = client + .streamingRecognize(request) + .on('error', (err) => { + console.error('Speech API Error:', err) + activeStreams.delete(sessionId) + }) + .on('data', (data) => { + // 스트림 데이터를 저장하여 클라이언트가 polling으로 가져갈 수 있도록 함 + const streamData = activeStreams.get(sessionId) + if (streamData) { + streamData.lastResult = { + transcript: data.results[0]?.alternatives[0]?.transcript || '', + isFinal: data.results[0]?.isFinal || false, + timestamp: Date.now() + } + } + }) + + activeStreams.set(sessionId, { + stream: recognizeStream, + lastResult: null, + audioBuffer: [] + }) + + return NextResponse.json({ status: 'started', sessionId }) +} + +function processAudio(sessionId: string, audioData: string) { + const streamData = activeStreams.get(sessionId) + if (!streamData || !streamData.stream) { + return NextResponse.json({ error: 'No active stream' }, { status: 400 }) + } + + try { + const audioBuffer = Buffer.from(audioData, 'base64') + streamData.stream.write(audioBuffer) + + // 최신 결과 반환 + const result = streamData.lastResult + streamData.lastResult = null // 읽은 후 초기화 + + return NextResponse.json({ + status: 'processing', + result: result + }) + } catch (error) { + console.error('Audio processing error:', error) + return NextResponse.json({ error: 'Audio processing failed' }, { status: 500 }) + } +} + +function stopRecognition(sessionId: string) { + const streamData = activeStreams.get(sessionId) + if (streamData && streamData.stream) { + streamData.stream.end() + activeStreams.delete(sessionId) + } + + return NextResponse.json({ status: 'stopped' }) +} + +// GET 요청으로 최신 결과 polling +export async function GET(request: NextRequest) { + const { searchParams } = new URL(request.url) + const sessionId = searchParams.get('sessionId') + + if (!sessionId) { + return NextResponse.json({ error: 'sessionId required' }, { status: 400 }) + } + + const streamData = activeStreams.get(sessionId) + if (!streamData) { + return NextResponse.json({ error: 'No active stream' }, { status: 404 }) + } + + const result = streamData.lastResult + streamData.lastResult = null // 읽은 후 초기화 + + return NextResponse.json({ + result: result + }) +} \ No newline at end of file diff --git a/frontend/app/favicon.ico b/frontend/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..718d6fea4835ec2d246af9800eddb7ffb276240c GIT binary patch literal 25931 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 LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/frontend/app/globals.css b/frontend/app/globals.css new file mode 100644 index 00000000..dc98be74 --- /dev/null +++ b/frontend/app/globals.css @@ -0,0 +1,122 @@ +@import "tailwindcss"; +@import "tw-animate-css"; + +@custom-variant dark (&:is(.dark *)); + +@theme inline { + --color-background: var(--background); + --color-foreground: var(--foreground); + --font-sans: var(--font-geist-sans); + --font-mono: var(--font-geist-mono); + --color-sidebar-ring: var(--sidebar-ring); + --color-sidebar-border: var(--sidebar-border); + --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); + --color-sidebar-accent: var(--sidebar-accent); + --color-sidebar-primary-foreground: var(--sidebar-primary-foreground); + --color-sidebar-primary: var(--sidebar-primary); + --color-sidebar-foreground: var(--sidebar-foreground); + --color-sidebar: var(--sidebar); + --color-chart-5: var(--chart-5); + --color-chart-4: var(--chart-4); + --color-chart-3: var(--chart-3); + --color-chart-2: var(--chart-2); + --color-chart-1: var(--chart-1); + --color-ring: var(--ring); + --color-input: var(--input); + --color-border: var(--border); + --color-destructive: var(--destructive); + --color-accent-foreground: var(--accent-foreground); + --color-accent: var(--accent); + --color-muted-foreground: var(--muted-foreground); + --color-muted: var(--muted); + --color-secondary-foreground: var(--secondary-foreground); + --color-secondary: var(--secondary); + --color-primary-foreground: var(--primary-foreground); + --color-primary: var(--primary); + --color-popover-foreground: var(--popover-foreground); + --color-popover: var(--popover); + --color-card-foreground: var(--card-foreground); + --color-card: var(--card); + --radius-sm: calc(var(--radius) - 4px); + --radius-md: calc(var(--radius) - 2px); + --radius-lg: var(--radius); + --radius-xl: calc(var(--radius) + 4px); +} + +:root { + --radius: 0.625rem; + --background: oklch(1 0 0); + --foreground: oklch(0.145 0 0); + --card: oklch(1 0 0); + --card-foreground: oklch(0.145 0 0); + --popover: oklch(1 0 0); + --popover-foreground: oklch(0.145 0 0); + --primary: oklch(0.205 0 0); + --primary-foreground: oklch(0.985 0 0); + --secondary: oklch(0.97 0 0); + --secondary-foreground: oklch(0.205 0 0); + --muted: oklch(0.97 0 0); + --muted-foreground: oklch(0.556 0 0); + --accent: oklch(0.97 0 0); + --accent-foreground: oklch(0.205 0 0); + --destructive: oklch(0.577 0.245 27.325); + --border: oklch(0.922 0 0); + --input: oklch(0.922 0 0); + --ring: oklch(0.708 0 0); + --chart-1: oklch(0.646 0.222 41.116); + --chart-2: oklch(0.6 0.118 184.704); + --chart-3: oklch(0.398 0.07 227.392); + --chart-4: oklch(0.828 0.189 84.429); + --chart-5: oklch(0.769 0.188 70.08); + --sidebar: oklch(0.985 0 0); + --sidebar-foreground: oklch(0.145 0 0); + --sidebar-primary: oklch(0.205 0 0); + --sidebar-primary-foreground: oklch(0.985 0 0); + --sidebar-accent: oklch(0.97 0 0); + --sidebar-accent-foreground: oklch(0.205 0 0); + --sidebar-border: oklch(0.922 0 0); + --sidebar-ring: oklch(0.708 0 0); +} + +.dark { + --background: oklch(0.145 0 0); + --foreground: oklch(0.985 0 0); + --card: oklch(0.205 0 0); + --card-foreground: oklch(0.985 0 0); + --popover: oklch(0.205 0 0); + --popover-foreground: oklch(0.985 0 0); + --primary: oklch(0.922 0 0); + --primary-foreground: oklch(0.205 0 0); + --secondary: oklch(0.269 0 0); + --secondary-foreground: oklch(0.985 0 0); + --muted: oklch(0.269 0 0); + --muted-foreground: oklch(0.708 0 0); + --accent: oklch(0.269 0 0); + --accent-foreground: oklch(0.985 0 0); + --destructive: oklch(0.704 0.191 22.216); + --border: oklch(1 0 0 / 10%); + --input: oklch(1 0 0 / 15%); + --ring: oklch(0.556 0 0); + --chart-1: oklch(0.488 0.243 264.376); + --chart-2: oklch(0.696 0.17 162.48); + --chart-3: oklch(0.769 0.188 70.08); + --chart-4: oklch(0.627 0.265 303.9); + --chart-5: oklch(0.645 0.246 16.439); + --sidebar: oklch(0.205 0 0); + --sidebar-foreground: oklch(0.985 0 0); + --sidebar-primary: oklch(0.488 0.243 264.376); + --sidebar-primary-foreground: oklch(0.985 0 0); + --sidebar-accent: oklch(0.269 0 0); + --sidebar-accent-foreground: oklch(0.985 0 0); + --sidebar-border: oklch(1 0 0 / 10%); + --sidebar-ring: oklch(0.556 0 0); +} + +@layer base { + * { + @apply border-border outline-ring/50; + } + body { + @apply bg-background text-foreground; + } +} diff --git a/frontend/app/interview/page.tsx b/frontend/app/interview/page.tsx new file mode 100644 index 00000000..c25193a2 --- /dev/null +++ b/frontend/app/interview/page.tsx @@ -0,0 +1,531 @@ +"use client" + + +import { Avatar, AvatarFallback } from "@/components/ui/avatar" +import { Badge } from "@/components/ui/badge" +import { Button } from "@/components/ui/button" +import { Card, CardContent, CardHeader } from "@/components/ui/card" +import { Input } from "@/components/ui/input" +import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select" +import { ArrowRight, Bot, Clock, Mic, MicOff, Plus, Send, User } from "lucide-react" +import Link from "next/link" +import { useEffect, useRef, useState } from "react" + +interface Message { + id: string + sender: "candidate" | "interviewer" + content: string + timestamp: string +} + +interface Question { + id: string + category: string + difficulty: "Easy" | "Medium" | "Hard" + question: string + followUps: string[] +} + +export default function InterviewDashboard() { + const [messages, setMessages] = useState([ + { + id: "1", + sender: "interviewer", + content: + "안녕하세요! 기술 면접에 오신 것을 환영합니다. 이력서와 GitHub 프로필을 검토했습니다. 간단한 자기소개부터 시작해보겠습니다. React와 TypeScript 경험에 대해 말씀해 주시겠어요?", + timestamp: "10:00 AM", + }, + ]) + const [newMessage, setNewMessage] = useState("") + const [isRecording, setIsRecording] = useState(false) + const [selectedDifficulty, setSelectedDifficulty] = useState("all") + const [selectedTopic, setSelectedTopic] = useState("all") + const [showQuestions, setShowQuestions] = useState(true) + const [currentTranscript, setCurrentTranscript] = useState("") + const [sessionId, setSessionId] = useState("") + + const messagesEndRef = useRef(null) + const mediaRecorderRef = useRef(null) + const pollingIntervalRef = useRef(null) + + const questions: Question[] = [ + { + id: "1", + category: "React", + difficulty: "Medium", + question: "useEffect와 useLayoutEffect 훅의 차이점을 설명해주세요.", + followUps: [ + "언제 둘 중 하나를 선택하시겠습니까?", + "실제 예제를 제공해 주실 수 있나요?", + "렌더링 사이클에 어떤 영향을 미치나요?", + ], + }, + { + id: "2", + category: "System Design", + difficulty: "Hard", + question: "수백만 명의 사용자를 처리할 수 있는 실시간 채팅 애플리케이션을 설계해주세요.", + followUps: [ + "메시지 지속성을 어떻게 처리하시겠습니까?", + "WebSocket 연결을 어떻게 확장하시겠습니까?", + "메시지 전달 보장을 어떻게 구현하시겠습니까?", + ], + }, + { + id: "3", + category: "Algorithms", + difficulty: "Easy", + question: "내장 메서드를 사용하지 않고 문자열을 뒤집는 함수를 구현해주세요.", + followUps: [ + "시간 복잡도는 어떻게 되나요?", + "공간을 위해 최적화할 수 있나요?", + "Unicode 문자는 어떻게 처리하시겠습니까?", + ], + }, + { + id: "4", + category: "TypeScript", + difficulty: "Medium", + question: "제네릭 제약조건을 설명하고 언제 사용하는지 예제를 제공해주세요.", + followUps: [ + "타입 안전성을 어떻게 향상시키나요?", + "실제 사용 사례를 보여주실 수 있나요?", + "조건부 타입은 어떤가요?", + ], + }, + ] + + const filteredQuestions = questions.filter((q) => { + const difficultyMatch = selectedDifficulty === "all" || q.difficulty === selectedDifficulty + const topicMatch = selectedTopic === "all" || q.category.toLowerCase().includes(selectedTopic.toLowerCase()) + return difficultyMatch && topicMatch + }) + + useEffect(() => { + messagesEndRef.current?.scrollIntoView({ behavior: "smooth" }) + }, [messages]) + + useEffect(() => { + // 컴포넌트 마운트 시 세션 ID 생성 + setSessionId(Date.now().toString()) + }, []) + + const startRecording = async () => { + try { + const stream = await navigator.mediaDevices.getUserMedia({ audio: true }) + const mediaRecorder = new MediaRecorder(stream, { + mimeType: 'audio/webm;codecs=opus' + }) + mediaRecorderRef.current = mediaRecorder + + // 서버에 녹음 시작 신호 + await fetch('/api/speech/stream', { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({ action: 'start', sessionId }) + }) + + mediaRecorder.ondataavailable = async (event) => { + if (event.data.size > 0) { + const reader = new FileReader() + reader.onload = async () => { + const base64Audio = (reader.result as string).split(',')[1] + + try { + const response = await fetch('/api/speech/stream', { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({ + action: 'audio', + sessionId, + audioData: base64Audio + }) + }) + + const data = await response.json() + if (data.result && data.result.transcript) { + setCurrentTranscript(data.result.transcript) + + // 최종 결과인 경우 메시지로 추가 + if (data.result.isFinal) { + addTranscriptAsMessage(data.result.transcript) + setCurrentTranscript("") + } + } + } catch (error) { + console.error('Audio processing error:', error) + } + } + reader.readAsDataURL(event.data) + } + } + + mediaRecorder.start(1000) // 1초마다 데이터 청크 생성 + setIsRecording(true) + + // 결과 polling 시작 + startPolling() + + } catch (error) { + console.error('Error starting recording:', error) + alert('마이크 접근 권한이 필요합니다.') + } + } + + const stopRecording = async () => { + if (mediaRecorderRef.current && isRecording) { + mediaRecorderRef.current.stop() + mediaRecorderRef.current.stream.getTracks().forEach(track => track.stop()) + mediaRecorderRef.current = null + setIsRecording(false) + + // 서버에 녹음 중지 신호 + await fetch('/api/speech/stream', { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({ action: 'stop', sessionId }) + }) + + // polling 중지 + if (pollingIntervalRef.current) { + clearInterval(pollingIntervalRef.current) + pollingIntervalRef.current = null + } + + // 현재 transcript가 있으면 메시지로 추가 + if (currentTranscript.trim()) { + addTranscriptAsMessage(currentTranscript) + setCurrentTranscript("") + } + } + } + + const startPolling = () => { + pollingIntervalRef.current = setInterval(async () => { + try { + const response = await fetch(`/api/speech/stream?sessionId=${sessionId}`) + const data = await response.json() + + if (data.result && data.result.transcript) { + setCurrentTranscript(data.result.transcript) + + if (data.result.isFinal) { + addTranscriptAsMessage(data.result.transcript) + setCurrentTranscript("") + } + } + } catch (error) { + console.error('Polling error:', error) + } + }, 500) // 0.5초마다 polling + } + + const addTranscriptAsMessage = (transcript: string) => { + if (transcript.trim()) { + const message: Message = { + id: Date.now().toString(), + sender: "candidate", + content: transcript, + timestamp: new Date().toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }), + } + setMessages((prev) => [...prev, message]) + + // 면접관 응답 시뮬레이션 + setTimeout(() => { + const responses = [ + "좋은 답변이네요. 더 자세히 설명해 주실 수 있나요?", + "흥미로운 접근 방식입니다. 예외 상황은 어떻게 처리하시겠습니까?", + "좋은 설명입니다. 구현에 대해 더 깊이 살펴보겠습니다.", + "알겠습니다. 성능 고려사항은 어떤가요?", + ] + + const response: Message = { + id: (Date.now() + 1).toString(), + sender: "interviewer", + content: responses[Math.floor(Math.random() * responses.length)], + timestamp: new Date().toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }), + } + + setMessages((prev) => [...prev, response]) + }, 1500) + } + } + + const sendMessage = () => { + if (!newMessage.trim()) return + + const message: Message = { + id: Date.now().toString(), + sender: "candidate", + content: newMessage, + timestamp: new Date().toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }), + } + + setMessages((prev) => [...prev, message]) + setNewMessage("") + + // 면접관 응답 시뮬레이션 + setTimeout(() => { + const responses = [ + "좋은 답변이네요. 더 자세히 설명해 주실 수 있나요?", + "흥미로운 접근 방식입니다. 예외 상황은 어떻게 처리하시겠습니까?", + "좋은 설명입니다. 구현에 대해 더 깊이 살펴보겠습니다.", + "알겠습니다. 성능 고려사항은 어떤가요?", + ] + + const response: Message = { + id: (Date.now() + 1).toString(), + sender: "interviewer", + content: responses[Math.floor(Math.random() * responses.length)], + timestamp: new Date().toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }), + } + + setMessages((prev) => [...prev, response]) + }, 1500) + } + + const addQuestionToChat = (question: string) => { + const message: Message = { + id: Date.now().toString(), + sender: "interviewer", + content: question, + timestamp: new Date().toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }), + } + setMessages((prev) => [...prev, message]) + } + + const getDifficultyColor = (difficulty: string) => { + switch (difficulty) { + case "Easy": + return "bg-green-100 text-green-800" + case "Medium": + return "bg-yellow-100 text-yellow-800" + case "Hard": + return "bg-red-100 text-red-800" + default: + return "bg-gray-100 text-gray-800" + } + } + + return ( +
+
+ {/* Main Chat Area */} +
+ {/* Header */} +
+
+
+
+
+ 실시간 면접 +
+
+ + 23:45 +
+ {isRecording && ( +
+
+ 녹음 중 +
+ )} +
+
+ + + + +
+
+
+ + {/* Messages */} +
+ {messages.map((message) => ( +
+ {message.sender === "interviewer" && ( + + + + + + )} + +
+

{message.content}

+

+ {message.timestamp} +

+
+ + {message.sender === "candidate" && ( + + + + + + )} +
+ ))} + + {/* 현재 transcript 표시 */} + {currentTranscript && ( +
+
+

{currentTranscript}

+

입력 중...

+
+ + + + + +
+ )} + +
+
+ + {/* Input Area */} +
+
+
+ setNewMessage(e.target.value)} + onKeyPress={(e) => e.key === "Enter" && sendMessage()} + className="pr-12" + disabled={isRecording} + /> + +
+ +
+ {isRecording && ( +

+ 🎤 음성을 인식하고 있습니다. 말씀을 멈추면 자동으로 텍스트로 변환됩니다. +

+ )} +
+
+ + {/* Question Recommendation Sidebar */} + {showQuestions && ( +
+
+

추천 질문

+ +
+
+ + +
+ +
+ + +
+
+
+ +
+ {filteredQuestions.map((question) => ( + + +
+ + {question.category} + + + {question.difficulty === "Easy" ? "쉬움" : question.difficulty === "Medium" ? "보통" : "어려움"} + +
+
+ +

{question.question}

+ + + + {question.followUps.length > 0 && ( +
+

후속 질문 제안:

+ {question.followUps.map((followUp, index) => ( +
+ +
+ ))} +
+ )} +
+
+ ))} +
+
+ )} +
+
+ ) +} diff --git a/frontend/app/layout.tsx b/frontend/app/layout.tsx new file mode 100644 index 00000000..f7fa87eb --- /dev/null +++ b/frontend/app/layout.tsx @@ -0,0 +1,34 @@ +import type { Metadata } from "next"; +import { Geist, Geist_Mono } from "next/font/google"; +import "./globals.css"; + +const geistSans = Geist({ + variable: "--font-geist-sans", + subsets: ["latin"], +}); + +const geistMono = Geist_Mono({ + variable: "--font-geist-mono", + subsets: ["latin"], +}); + +export const metadata: Metadata = { + title: "Create Next App", + description: "Generated by create next app", +}; + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return ( + + + {children} + + + ); +} diff --git a/frontend/app/page.tsx b/frontend/app/page.tsx new file mode 100644 index 00000000..9ad0ffab --- /dev/null +++ b/frontend/app/page.tsx @@ -0,0 +1,221 @@ +"use client" + +import type React from "react" + +import { Alert, AlertDescription } from "@/components/ui/alert" +import { Button } from "@/components/ui/button" +import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" +import { Input } from "@/components/ui/input" +import { Progress } from "@/components/ui/progress" +import { AlertCircle, CheckCircle, FileText, Github, Upload } from "lucide-react" +import Link from "next/link" +import { useState } from "react" + +export default function UploadPage() { + const [dragActive, setDragActive] = useState(false) + const [uploadedFile, setUploadedFile] = useState(null) + const [githubUrl, setGithubUrl] = useState("") + const [uploadProgress, setUploadProgress] = useState(0) + const [isUploading, setIsUploading] = useState(false) + const [githubFetched, setGithubFetched] = useState(false) + const [validationError, setValidationError] = useState("") + + const handleDrag = (e: React.DragEvent) => { + e.preventDefault() + e.stopPropagation() + if (e.type === "dragenter" || e.type === "dragover") { + setDragActive(true) + } else if (e.type === "dragleave") { + setDragActive(false) + } + } + + const handleDrop = (e: React.DragEvent) => { + e.preventDefault() + e.stopPropagation() + setDragActive(false) + + const files = e.dataTransfer.files + if (files && files[0]) { + const file = files[0] + if (file.type === "application/pdf" || file.type.includes("word")) { + setUploadedFile(file) + simulateUpload() + } else { + setValidationError("Please upload a PDF or Word document") + } + } + } + + const handleFileInput = (e: React.ChangeEvent) => { + const files = e.target.files + if (files && files[0]) { + setUploadedFile(files[0]) + simulateUpload() + } + } + + const simulateUpload = () => { + setIsUploading(true) + setValidationError("") + let progress = 0 + const interval = setInterval(() => { + progress += 10 + setUploadProgress(progress) + if (progress >= 100) { + clearInterval(interval) + setIsUploading(false) + } + }, 200) + } + + const handleGithubFetch = () => { + if (!githubUrl.includes("github.com")) { + setValidationError("Please enter a valid GitHub URL") + return + } + setValidationError("") + setGithubFetched(true) + } + + const isReadyForInterview = uploadedFile && githubFetched + + return ( +
+
+
+
+

AI Technical Interview Assistant

+

+ Upload your resume and GitHub profile to get started with personalized interview preparation +

+
+ +
+ {/* Resume Upload */} + + + + + Resume Upload + + Upload your resume in PDF or Word format + + +
+ + + {uploadedFile ? ( +
+ +

{uploadedFile.name}

+

Resume uploaded successfully

+
+ ) : ( +
+ +

Drag and drop your resume here, or click to browse

+

PDF, DOC, DOCX up to 10MB

+
+ )} +
+ + {isUploading && ( +
+
+ Uploading... + {uploadProgress}% +
+ +
+ )} +
+
+ + {/* GitHub Profile */} + + + + + GitHub Profile + + Connect your GitHub to analyze your coding experience + + +
+ setGithubUrl(e.target.value)} + className="w-full" + /> + +
+ + {githubFetched && ( + + + + Successfully fetched 12 repositories. Found expertise in React, TypeScript, Python, and Node.js. + + + )} +
+
+
+ + {validationError && ( + + + {validationError} + + )} + + {/* Action Buttons */} +
+ + + + + {!isReadyForInterview && ( +

+ Please upload your resume and connect your GitHub profile to continue +

+ )} +
+
+
+
+ ) +} diff --git a/frontend/components.json b/frontend/components.json new file mode 100644 index 00000000..335484f9 --- /dev/null +++ b/frontend/components.json @@ -0,0 +1,21 @@ +{ + "$schema": "https://ui.shadcn.com/schema.json", + "style": "new-york", + "rsc": true, + "tsx": true, + "tailwind": { + "config": "", + "css": "app/globals.css", + "baseColor": "neutral", + "cssVariables": true, + "prefix": "" + }, + "aliases": { + "components": "@/components", + "utils": "@/lib/utils", + "ui": "@/components/ui", + "lib": "@/lib", + "hooks": "@/hooks" + }, + "iconLibrary": "lucide" +} \ No newline at end of file diff --git a/frontend/components/navigation.tsx b/frontend/components/navigation.tsx new file mode 100644 index 00000000..f1eaa244 --- /dev/null +++ b/frontend/components/navigation.tsx @@ -0,0 +1,74 @@ +"use client" + +import { useState } from "react" +import Link from "next/link" +import { usePathname } from "next/navigation" +import { Brain, Menu, X } from "lucide-react" +import { Button } from "@/components/ui/button" + +export function Navigation() { + const [isOpen, setIsOpen] = useState(false) + const pathname = usePathname() + + const navItems = [ + { href: "/", label: "Upload" }, + { href: "/interview", label: "Interview" }, + { href: "/analysis", label: "Analysis" }, + ] + + return ( + + ) +} diff --git a/frontend/components/ui/alert.tsx b/frontend/components/ui/alert.tsx new file mode 100644 index 00000000..14213546 --- /dev/null +++ b/frontend/components/ui/alert.tsx @@ -0,0 +1,66 @@ +import * as React from "react" +import { cva, type VariantProps } from "class-variance-authority" + +import { cn } from "@/lib/utils" + +const alertVariants = cva( + "relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current", + { + variants: { + variant: { + default: "bg-card text-card-foreground", + destructive: + "text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90", + }, + }, + defaultVariants: { + variant: "default", + }, + } +) + +function Alert({ + className, + variant, + ...props +}: React.ComponentProps<"div"> & VariantProps) { + return ( +
+ ) +} + +function AlertTitle({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function AlertDescription({ + className, + ...props +}: React.ComponentProps<"div">) { + return ( +
+ ) +} + +export { Alert, AlertTitle, AlertDescription } diff --git a/frontend/components/ui/avatar.tsx b/frontend/components/ui/avatar.tsx new file mode 100644 index 00000000..71e428b4 --- /dev/null +++ b/frontend/components/ui/avatar.tsx @@ -0,0 +1,53 @@ +"use client" + +import * as React from "react" +import * as AvatarPrimitive from "@radix-ui/react-avatar" + +import { cn } from "@/lib/utils" + +function Avatar({ + className, + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function AvatarImage({ + className, + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function AvatarFallback({ + className, + ...props +}: React.ComponentProps) { + return ( + + ) +} + +export { Avatar, AvatarImage, AvatarFallback } diff --git a/frontend/components/ui/badge.tsx b/frontend/components/ui/badge.tsx new file mode 100644 index 00000000..02054139 --- /dev/null +++ b/frontend/components/ui/badge.tsx @@ -0,0 +1,46 @@ +import * as React from "react" +import { Slot } from "@radix-ui/react-slot" +import { cva, type VariantProps } from "class-variance-authority" + +import { cn } from "@/lib/utils" + +const badgeVariants = cva( + "inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden", + { + variants: { + variant: { + default: + "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90", + secondary: + "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90", + destructive: + "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60", + outline: + "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground", + }, + }, + defaultVariants: { + variant: "default", + }, + } +) + +function Badge({ + className, + variant, + asChild = false, + ...props +}: React.ComponentProps<"span"> & + VariantProps & { asChild?: boolean }) { + const Comp = asChild ? Slot : "span" + + return ( + + ) +} + +export { Badge, badgeVariants } diff --git a/frontend/components/ui/button.tsx b/frontend/components/ui/button.tsx new file mode 100644 index 00000000..a2df8dce --- /dev/null +++ b/frontend/components/ui/button.tsx @@ -0,0 +1,59 @@ +import * as React from "react" +import { Slot } from "@radix-ui/react-slot" +import { cva, type VariantProps } from "class-variance-authority" + +import { cn } from "@/lib/utils" + +const buttonVariants = cva( + "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", + { + variants: { + variant: { + default: + "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90", + destructive: + "bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60", + outline: + "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50", + secondary: + "bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80", + ghost: + "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50", + link: "text-primary underline-offset-4 hover:underline", + }, + size: { + default: "h-9 px-4 py-2 has-[>svg]:px-3", + sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5", + lg: "h-10 rounded-md px-6 has-[>svg]:px-4", + icon: "size-9", + }, + }, + defaultVariants: { + variant: "default", + size: "default", + }, + } +) + +function Button({ + className, + variant, + size, + asChild = false, + ...props +}: React.ComponentProps<"button"> & + VariantProps & { + asChild?: boolean + }) { + const Comp = asChild ? Slot : "button" + + return ( + + ) +} + +export { Button, buttonVariants } diff --git a/frontend/components/ui/card.tsx b/frontend/components/ui/card.tsx new file mode 100644 index 00000000..d05bbc6c --- /dev/null +++ b/frontend/components/ui/card.tsx @@ -0,0 +1,92 @@ +import * as React from "react" + +import { cn } from "@/lib/utils" + +function Card({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function CardHeader({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function CardTitle({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function CardDescription({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function CardAction({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function CardContent({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function CardFooter({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +export { + Card, + CardHeader, + CardFooter, + CardTitle, + CardAction, + CardDescription, + CardContent, +} diff --git a/frontend/components/ui/input.tsx b/frontend/components/ui/input.tsx new file mode 100644 index 00000000..03295ca6 --- /dev/null +++ b/frontend/components/ui/input.tsx @@ -0,0 +1,21 @@ +import * as React from "react" + +import { cn } from "@/lib/utils" + +function Input({ className, type, ...props }: React.ComponentProps<"input">) { + return ( + + ) +} + +export { Input } diff --git a/frontend/components/ui/progress.tsx b/frontend/components/ui/progress.tsx new file mode 100644 index 00000000..e7a416c3 --- /dev/null +++ b/frontend/components/ui/progress.tsx @@ -0,0 +1,31 @@ +"use client" + +import * as React from "react" +import * as ProgressPrimitive from "@radix-ui/react-progress" + +import { cn } from "@/lib/utils" + +function Progress({ + className, + value, + ...props +}: React.ComponentProps) { + return ( + + + + ) +} + +export { Progress } diff --git a/frontend/components/ui/select.tsx b/frontend/components/ui/select.tsx new file mode 100644 index 00000000..dcbbc0ca --- /dev/null +++ b/frontend/components/ui/select.tsx @@ -0,0 +1,185 @@ +"use client" + +import * as React from "react" +import * as SelectPrimitive from "@radix-ui/react-select" +import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react" + +import { cn } from "@/lib/utils" + +function Select({ + ...props +}: React.ComponentProps) { + return +} + +function SelectGroup({ + ...props +}: React.ComponentProps) { + return +} + +function SelectValue({ + ...props +}: React.ComponentProps) { + return +} + +function SelectTrigger({ + className, + size = "default", + children, + ...props +}: React.ComponentProps & { + size?: "sm" | "default" +}) { + return ( + + {children} + + + + + ) +} + +function SelectContent({ + className, + children, + position = "popper", + ...props +}: React.ComponentProps) { + return ( + + + + + {children} + + + + + ) +} + +function SelectLabel({ + className, + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function SelectItem({ + className, + children, + ...props +}: React.ComponentProps) { + return ( + + + + + + + {children} + + ) +} + +function SelectSeparator({ + className, + ...props +}: React.ComponentProps) { + return ( + + ) +} + +function SelectScrollUpButton({ + className, + ...props +}: React.ComponentProps) { + return ( + + + + ) +} + +function SelectScrollDownButton({ + className, + ...props +}: React.ComponentProps) { + return ( + + + + ) +} + +export { + Select, + SelectContent, + SelectGroup, + SelectItem, + SelectLabel, + SelectScrollDownButton, + SelectScrollUpButton, + SelectSeparator, + SelectTrigger, + SelectValue, +} diff --git a/frontend/eslint.config.mjs b/frontend/eslint.config.mjs new file mode 100644 index 00000000..c85fb67c --- /dev/null +++ b/frontend/eslint.config.mjs @@ -0,0 +1,16 @@ +import { dirname } from "path"; +import { fileURLToPath } from "url"; +import { FlatCompat } from "@eslint/eslintrc"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +const compat = new FlatCompat({ + baseDirectory: __dirname, +}); + +const eslintConfig = [ + ...compat.extends("next/core-web-vitals", "next/typescript"), +]; + +export default eslintConfig; diff --git a/frontend/lib/utils.ts b/frontend/lib/utils.ts new file mode 100644 index 00000000..bd0c391d --- /dev/null +++ b/frontend/lib/utils.ts @@ -0,0 +1,6 @@ +import { clsx, type ClassValue } from "clsx" +import { twMerge } from "tailwind-merge" + +export function cn(...inputs: ClassValue[]) { + return twMerge(clsx(inputs)) +} diff --git a/frontend/next.config.ts b/frontend/next.config.ts new file mode 100644 index 00000000..e9ffa308 --- /dev/null +++ b/frontend/next.config.ts @@ -0,0 +1,7 @@ +import type { NextConfig } from "next"; + +const nextConfig: NextConfig = { + /* config options here */ +}; + +export default nextConfig; diff --git a/frontend/package-lock.json b/frontend/package-lock.json new file mode 100644 index 00000000..593c8edf --- /dev/null +++ b/frontend/package-lock.json @@ -0,0 +1,8381 @@ +{ + "name": "interview-mate", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "interview-mate", + "version": "0.1.0", + "dependencies": { + "@google-cloud/speech": "^7.2.0", + "@radix-ui/react-avatar": "^1.1.10", + "@radix-ui/react-progress": "^1.1.7", + "@radix-ui/react-select": "^2.2.5", + "@radix-ui/react-slot": "^1.2.3", + "@types/ws": "^8.18.1", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "lucide-react": "^0.525.0", + "next": "15.2.4", + "node-record-lpcm16": "^1.0.1", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "recharts": "^3.1.0", + "tailwind-merge": "^3.3.1", + "tailwindcss-animate": "^1.0.7", + "ws": "^8.18.3" + }, + "devDependencies": { + "@eslint/eslintrc": "^3", + "@tailwindcss/postcss": "^4", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "eslint": "^9", + "eslint-config-next": "15.2.4", + "tailwindcss": "^4.1.11", + "tw-animate-css": "^1.3.5", + "typescript": "^5" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@emnapi/core": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.4.5.tgz", + "integrity": "sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.0.4", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.5.tgz", + "integrity": "sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==", + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.4.tgz", + "integrity": "sha512-PJR+bOmMOPH8AtcTGAyYNiuJ3/Fcoj2XN/gBEWzDIKh254XO+mM9XoXHk5GNEhodxeMznbg7BlRojVbKN+gC6g==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.0.tgz", + "integrity": "sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.0.tgz", + "integrity": "sha512-ViuymvFmcJi04qdZeDc2whTHryouGcDlaxPqarTD0ZE10ISpxGUVZGZDx4w01upyIynL3iu6IXH2bS1NhclQMw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.1.tgz", + "integrity": "sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "9.31.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.31.0.tgz", + "integrity": "sha512-LOm5OVt7D4qiKCqoiPbA7LWmI+tbw1VbTUowBcUMgQSuM6poJufkFkYDcQpo5KfgD39TnNySV26QjOh7VFpSyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.4.tgz", + "integrity": "sha512-Ul5l+lHEcw3L5+k8POx6r74mxEYKG5kOb6Xpy2gCRW6zweT6TEhAf8vhxGgjhqrd/VO/Dirhsb+1hNpD1ue9hw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.15.1", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.2.tgz", + "integrity": "sha512-wNB5ooIKHQc+Kui96jE/n69rHFWAVoxn5CAzL1Xdd8FG03cgY3MLO+GF9U3W737fYDSgPWA6MReKhBQBop6Pcw==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.10" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.2.tgz", + "integrity": "sha512-7cfaOQuCS27HD7DX+6ib2OrnW+b4ZBwDNnCcT0uTyidcmyWb03FnQqJybDBoCnpdxwBSfA94UAYlRCt7mV+TbA==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.2", + "@floating-ui/utils": "^0.2.10" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.4.tgz", + "integrity": "sha512-JbbpPhp38UmXDDAu60RJmbeme37Jbgsm7NrHGgzYYFKmblzRUh6Pa641dII6LsjwF4XlScDrde2UAzDo/b9KPw==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.2" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz", + "integrity": "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==", + "license": "MIT" + }, + "node_modules/@google-cloud/common": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@google-cloud/common/-/common-6.0.0.tgz", + "integrity": "sha512-IXh04DlkLMxWgYLIUYuHHKXKOUwPDzDgke1ykkkJPe48cGIS9kkL2U/o0pm4ankHLlvzLF/ma1eO86n/bkumIA==", + "license": "Apache-2.0", + "dependencies": { + "@google-cloud/projectify": "^4.0.0", + "@google-cloud/promisify": "^4.0.0", + "arrify": "^2.0.0", + "duplexify": "^4.1.3", + "extend": "^3.0.2", + "google-auth-library": "^10.0.0-rc.1", + "html-entities": "^2.5.2", + "retry-request": "^8.0.0", + "teeny-request": "^10.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@google-cloud/projectify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-4.0.0.tgz", + "integrity": "sha512-MmaX6HeSvyPbWGwFq7mXdo0uQZLGBYCwziiLIGq5JVX+/bdI3SAq6bP98trV5eTWfLuvsMcIC1YJOF2vfteLFA==", + "license": "Apache-2.0", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@google-cloud/promisify": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-4.1.0.tgz", + "integrity": "sha512-G/FQx5cE/+DqBbOpA5jKsegGwdPniU6PuIEMt+qxWgFxvxuFOzVmp6zYchtYuwAWV5/8Dgs0yAmjvNZv3uXLQg==", + "license": "Apache-2.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/@google-cloud/speech": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@google-cloud/speech/-/speech-7.2.0.tgz", + "integrity": "sha512-bklwpRJlZH6XPsljFkaibeTx5JsbMQZPlhMxTAITs8uY/EOqUkockhQscgpRC4A6Jdl7iHTZfZbYqHRaClS5Mg==", + "license": "Apache-2.0", + "dependencies": { + "@google-cloud/common": "^6.0.0", + "@types/pumpify": "^1.4.4", + "google-gax": "^5.0.0", + "pumpify": "^2.0.1", + "stream-events": "^1.0.5", + "uuid": "^11.1.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@grpc/grpc-js": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.13.4.tgz", + "integrity": "sha512-GsFaMXCkMqkKIvwCQjCrwH+GHbPKBjhwo/8ZuUkWHqbI73Kky9I+pQltrlT0+MWpedCoosda53lgjYfyEPgxBg==", + "license": "Apache-2.0", + "dependencies": { + "@grpc/proto-loader": "^0.7.13", + "@js-sdsl/ordered-map": "^4.4.2" + }, + "engines": { + "node": ">=12.10.0" + } + }, + "node_modules/@grpc/proto-loader": { + "version": "0.7.15", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.15.tgz", + "integrity": "sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ==", + "license": "Apache-2.0", + "dependencies": { + "lodash.camelcase": "^4.3.0", + "long": "^5.0.0", + "protobufjs": "^7.2.5", + "yargs": "^17.7.2" + }, + "bin": { + "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz", + "integrity": "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.0.4" + } + }, + "node_modules/@img/sharp-darwin-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz", + "integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz", + "integrity": "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz", + "integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz", + "integrity": "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==", + "cpu": [ + "arm" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz", + "integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz", + "integrity": "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==", + "cpu": [ + "s390x" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz", + "integrity": "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz", + "integrity": "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==", + "cpu": [ + "arm64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz", + "integrity": "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==", + "cpu": [ + "x64" + ], + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz", + "integrity": "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==", + "cpu": [ + "arm" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.0.5" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz", + "integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.0.4" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz", + "integrity": "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==", + "cpu": [ + "s390x" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.0.4" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz", + "integrity": "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz", + "integrity": "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==", + "cpu": [ + "arm64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz", + "integrity": "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz", + "integrity": "sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==", + "cpu": [ + "wasm32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.2.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz", + "integrity": "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==", + "cpu": [ + "ia32" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz", + "integrity": "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==", + "cpu": [ + "x64" + ], + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", + "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.29", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", + "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@js-sdsl/ordered-map": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@js-sdsl/ordered-map/-/ordered-map-4.4.2.tgz", + "integrity": "sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", + "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.10.0" + } + }, + "node_modules/@next/env": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-15.2.4.tgz", + "integrity": "sha512-+SFtMgoiYP3WoSswuNmxJOCwi06TdWE733D+WPjpXIe4LXGULwEaofiiAy6kbS0+XjM5xF5n3lKuBwN2SnqD9g==", + "license": "MIT" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.2.4.tgz", + "integrity": "sha512-O8ScvKtnxkp8kL9TpJTTKnMqlkZnS+QxwoQnJwPGBxjBbzd6OVVPEJ5/pMNrktSyXQD/chEfzfFzYLM6JANOOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-glob": "3.3.1" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.2.4.tgz", + "integrity": "sha512-1AnMfs655ipJEDC/FHkSr0r3lXBgpqKo4K1kiwfUf3iE68rDFXZ1TtHdMvf7D0hMItgDZ7Vuq3JgNMbt/+3bYw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.2.4.tgz", + "integrity": "sha512-3qK2zb5EwCwxnO2HeO+TRqCubeI/NgCe+kL5dTJlPldV/uwCnUgC7VbEzgmxbfrkbjehL4H9BPztWOEtsoMwew==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.2.4.tgz", + "integrity": "sha512-HFN6GKUcrTWvem8AZN7tT95zPb0GUGv9v0d0iyuTb303vbXkkbHDp/DxufB04jNVD+IN9yHy7y/6Mqq0h0YVaQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.2.4.tgz", + "integrity": "sha512-Oioa0SORWLwi35/kVB8aCk5Uq+5/ZIumMK1kJV+jSdazFm2NzPDztsefzdmzzpx5oGCJ6FkUC7vkaUseNTStNA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.2.4.tgz", + "integrity": "sha512-yb5WTRaHdkgOqFOZiu6rHV1fAEK0flVpaIN2HB6kxHVSy/dIajWbThS7qON3W9/SNOH2JWkVCyulgGYekMePuw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.2.4.tgz", + "integrity": "sha512-Dcdv/ix6srhkM25fgXiyOieFUkz+fOYkHlydWCtB0xMST6X9XYI3yPDKBZt1xuhOytONsIFJFB08xXYsxUwJLw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.2.4.tgz", + "integrity": "sha512-dW0i7eukvDxtIhCYkMrZNQfNicPDExt2jPb9AZPpL7cfyUo7QSNl1DjsHjmmKp6qNAqUESyT8YFl/Aw91cNJJg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.2.4.tgz", + "integrity": "sha512-SbnWkJmkS7Xl3kre8SdMF6F/XDh1DTFEhp0jRTj/uB8iPKoU2bb2NDfcu+iifv1+mxQEd1g2vvSxcZbXSKyWiQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.4.0" + } + }, + "node_modules/@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", + "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", + "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", + "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", + "license": "BSD-3-Clause", + "dependencies": { + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" + } + }, + "node_modules/@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", + "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", + "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", + "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", + "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==", + "license": "BSD-3-Clause" + }, + "node_modules/@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", + "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==", + "license": "BSD-3-Clause" + }, + "node_modules/@radix-ui/number": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", + "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==", + "license": "MIT" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.2.tgz", + "integrity": "sha512-XnbHrrprsNqZKQhStrSwgRUQzoCI1glLzdw79xiZPoofhGICeZRSQ3dIxAKH1gb3OHfNf4d6f+vAv3kil2eggA==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", + "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.10.tgz", + "integrity": "sha512-V8piFfWapM5OmNCXTzVQY+E1rDa53zY+MQ4Y7356v4fFz6vqCyUtIz2rUD44ZEdwg78/jKmMJHj07+C/Z/rcog==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz", + "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz", + "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz", + "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.10.tgz", + "integrity": "sha512-IM1zzRV4W3HtVgftdQiiOmA0AdJlCtMLe00FXaHwgt3rAnNsIyDqshvkIW3hj/iu5hu8ERP7KIYki6NkqDxAwQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.2", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-escape-keydown": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.2.tgz", + "integrity": "sha512-fyjAACV62oPV925xFCrH8DR5xWhg9KYtJT4s3u54jxp+L/hbpTY2kIeEFFbFe+a/HCE94zGQMZLIpVTPVZDhaA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", + "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz", + "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.7.tgz", + "integrity": "sha512-IUFAccz1JyKcf/RjB552PlWwxjeCJB8/4KxT7EhBHOJM+mN7LdW+B3kacJXILm32xawcMMjb2i0cIZpo+f9kiQ==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-rect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", + "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-progress/-/react-progress-1.1.7.tgz", + "integrity": "sha512-vPdg/tF6YC/ynuBIJlk1mm7Le0VgW6ub6J2UWnTQ7/D23KXcPI1qy+0vBkgKgd38RCMJavBXpB83HPNFMTb0Fg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.2.5.tgz", + "integrity": "sha512-HnMTdXEVuuyzx63ME0ut4+sEMYW6oouHWNGUZc7ddvUWIcfCva/AMoqEW/3wnEllriMWBa0RHspCYnfCWJQYmA==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.2", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.10", + "@radix-ui/react-focus-guards": "1.1.2", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.7", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz", + "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz", + "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz", + "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz", + "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-is-hydrated": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.0.tgz", + "integrity": "sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==", + "license": "MIT", + "dependencies": { + "use-sync-external-store": "^1.5.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz", + "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz", + "integrity": "sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz", + "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz", + "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz", + "integrity": "sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz", + "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", + "license": "MIT" + }, + "node_modules/@reduxjs/toolkit": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.8.2.tgz", + "integrity": "sha512-MYlOhQ0sLdw4ud48FoC5w0dH9VfWQjtCjreKwYTT3l+r427qYC5Y8PihNutepr8XrNaBUDQo9khWUwQxZaqt5A==", + "license": "MIT", + "dependencies": { + "@standard-schema/spec": "^1.0.0", + "@standard-schema/utils": "^0.3.0", + "immer": "^10.0.3", + "redux": "^5.0.1", + "redux-thunk": "^3.1.0", + "reselect": "^5.1.0" + }, + "peerDependencies": { + "react": "^16.9.0 || ^17.0.0 || ^18 || ^19", + "react-redux": "^7.2.1 || ^8.1.3 || ^9.0.0" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + }, + "react-redux": { + "optional": true + } + } + }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.12.0.tgz", + "integrity": "sha512-5EwMtOqvJMMa3HbmxLlF74e+3/HhwBTMcvt3nqVJgGCozO6hzIPOBlwm8mGVNR9SN2IJpxSnlxczyDjcn7qIyw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@standard-schema/spec": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.0.0.tgz", + "integrity": "sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==", + "license": "MIT" + }, + "node_modules/@standard-schema/utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@standard-schema/utils/-/utils-0.3.0.tgz", + "integrity": "sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==", + "license": "MIT" + }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", + "license": "Apache-2.0" + }, + "node_modules/@swc/helpers": { + "version": "0.5.15", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", + "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + } + }, + "node_modules/@tailwindcss/node": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.11.tgz", + "integrity": "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "enhanced-resolve": "^5.18.1", + "jiti": "^2.4.2", + "lightningcss": "1.30.1", + "magic-string": "^0.30.17", + "source-map-js": "^1.2.1", + "tailwindcss": "4.1.11" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.11.tgz", + "integrity": "sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.4", + "tar": "^7.4.3" + }, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.1.11", + "@tailwindcss/oxide-darwin-arm64": "4.1.11", + "@tailwindcss/oxide-darwin-x64": "4.1.11", + "@tailwindcss/oxide-freebsd-x64": "4.1.11", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.11", + "@tailwindcss/oxide-linux-arm64-gnu": "4.1.11", + "@tailwindcss/oxide-linux-arm64-musl": "4.1.11", + "@tailwindcss/oxide-linux-x64-gnu": "4.1.11", + "@tailwindcss/oxide-linux-x64-musl": "4.1.11", + "@tailwindcss/oxide-wasm32-wasi": "4.1.11", + "@tailwindcss/oxide-win32-arm64-msvc": "4.1.11", + "@tailwindcss/oxide-win32-x64-msvc": "4.1.11" + } + }, + "node_modules/@tailwindcss/oxide-android-arm64": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.11.tgz", + "integrity": "sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-arm64": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.11.tgz", + "integrity": "sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-darwin-x64": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.11.tgz", + "integrity": "sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-freebsd-x64": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.11.tgz", + "integrity": "sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.11.tgz", + "integrity": "sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.11.tgz", + "integrity": "sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.11.tgz", + "integrity": "sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.11.tgz", + "integrity": "sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.11.tgz", + "integrity": "sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.11.tgz", + "integrity": "sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g==", + "bundleDependencies": [ + "@napi-rs/wasm-runtime", + "@emnapi/core", + "@emnapi/runtime", + "@tybys/wasm-util", + "@emnapi/wasi-threads", + "tslib" + ], + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@emnapi/wasi-threads": "^1.0.2", + "@napi-rs/wasm-runtime": "^0.2.11", + "@tybys/wasm-util": "^0.9.0", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.11.tgz", + "integrity": "sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.11.tgz", + "integrity": "sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/postcss": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.11.tgz", + "integrity": "sha512-q/EAIIpF6WpLhKEuQSEVMZNMIY8KhWoAemZ9eylNAih9jxMGAYPPWBn3I9QL/2jZ+e7OEz/tZkX5HwbBR4HohA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "@tailwindcss/node": "4.1.11", + "@tailwindcss/oxide": "4.1.11", + "postcss": "^8.4.41", + "tailwindcss": "4.1.11" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.0.tgz", + "integrity": "sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/caseless": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.5.tgz", + "integrity": "sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==", + "license": "MIT" + }, + "node_modules/@types/d3-array": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.1.tgz", + "integrity": "sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==", + "license": "MIT" + }, + "node_modules/@types/d3-color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", + "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==", + "license": "MIT" + }, + "node_modules/@types/d3-ease": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz", + "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==", + "license": "MIT" + }, + "node_modules/@types/d3-interpolate": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", + "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==", + "license": "MIT", + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@types/d3-path": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz", + "integrity": "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==", + "license": "MIT" + }, + "node_modules/@types/d3-scale": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.9.tgz", + "integrity": "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==", + "license": "MIT", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-shape": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.7.tgz", + "integrity": "sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==", + "license": "MIT", + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@types/d3-time": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.4.tgz", + "integrity": "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==", + "license": "MIT" + }, + "node_modules/@types/d3-timer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", + "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==", + "license": "MIT" + }, + "node_modules/@types/duplexify": { + "version": "3.6.4", + "resolved": "https://registry.npmjs.org/@types/duplexify/-/duplexify-3.6.4.tgz", + "integrity": "sha512-2eahVPsd+dy3CL6FugAzJcxoraWhUghZGEQJns1kTKfCXWKJ5iG/VkaB05wRVrDKHfOFKqb0X0kXh91eE99RZg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.19.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.9.tgz", + "integrity": "sha512-cuVNgarYWZqxRJDQHEB58GEONhOK79QVR/qYx4S7kcUObQvUwvFnYxJuuHUKm2aieN9X3yZB4LZsuYNU1Qphsw==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/pumpify": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/@types/pumpify/-/pumpify-1.4.4.tgz", + "integrity": "sha512-+cWbQUecD04MQYkjNBhPmcUIP368aloYmqm+ImdMKA8rMpxRNAhZAD6gIj+sAVTF1DliqrT/qUp6aGNi/9U3tw==", + "license": "MIT", + "dependencies": { + "@types/duplexify": "*", + "@types/node": "*" + } + }, + "node_modules/@types/react": { + "version": "19.1.8", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.8.tgz", + "integrity": "sha512-AwAfQ2Wa5bCx9WP8nZL2uMZWod7J7/JSplxbTmBQ5ms6QpqNYm672H0Vu9ZVKVngQ+ii4R/byguVEUZQyeg44g==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.1.6", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.6.tgz", + "integrity": "sha512-4hOiT/dwO8Ko0gV1m/TJZYk3y0KBnY9vzDh7W+DH17b2HFSOGgdj33dhihPeuy3l0q23+4e+hoXHV6hCC4dCXw==", + "devOptional": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.0.0" + } + }, + "node_modules/@types/request": { + "version": "2.48.12", + "resolved": "https://registry.npmjs.org/@types/request/-/request-2.48.12.tgz", + "integrity": "sha512-G3sY+NpsA9jnwm0ixhAFQSJ3Q9JkpLZpJbI3GMv0mIAT0y3mRabYeINzal5WOChIiaTEGQYlHOKgkaM9EisWHw==", + "license": "MIT", + "dependencies": { + "@types/caseless": "*", + "@types/node": "*", + "@types/tough-cookie": "*", + "form-data": "^2.5.0" + } + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", + "license": "MIT" + }, + "node_modules/@types/use-sync-external-store": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.6.tgz", + "integrity": "sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==", + "license": "MIT" + }, + "node_modules/@types/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", + "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/type-utils": "8.38.0", + "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", + "graphemer": "^1.4.0", + "ignore": "^7.0.0", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.38.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", + "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", + "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.38.0", + "@typescript-eslint/types": "^8.38.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", + "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", + "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", + "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/utils": "8.38.0", + "debug": "^4.3.4", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", + "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.38.0", + "@typescript-eslint/tsconfig-utils": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.38.0.tgz", + "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.7.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", + "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.38.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", + "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", + "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", + "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", + "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", + "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", + "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", + "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", + "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", + "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", + "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", + "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", + "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", + "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", + "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", + "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", + "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", + "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", + "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", + "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/aria-hidden": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.3.tgz", + "integrity": "sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==", + "dev": true, + "license": "MPL-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/bignumber.js": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz", + "integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", + "license": "BSD-3-Clause" + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001727", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz", + "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/class-variance-authority": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.1.tgz", + "integrity": "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==", + "license": "Apache-2.0", + "dependencies": { + "clsx": "^2.1.1" + }, + "funding": { + "url": "https://polar.sh/cva" + } + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "license": "MIT", + "optional": true, + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "license": "MIT", + "optional": true, + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/d3-array": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", + "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "license": "ISC", + "dependencies": { + "internmap": "1 - 2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-format": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", + "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "license": "ISC", + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "license": "ISC", + "dependencies": { + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-shape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", + "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "license": "ISC", + "dependencies": { + "d3-path": "^3.1.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", + "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "license": "ISC", + "dependencies": { + "d3-array": "2 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time-format": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", + "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "license": "ISC", + "dependencies": { + "d3-time": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js-light": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz", + "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==", + "license": "MIT" + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-libc": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "devOptional": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/duplexify": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.3.tgz", + "integrity": "sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", + "stream-shift": "^1.0.2" + } + }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.18.2", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.2.tgz", + "integrity": "sha512-6Jw4sE1maoRJo3q8MsSIn2onJFbLTOjY9hlx4DZXmOKvLRd1Ok2kXmAGXaafL2+ijsJZ1ClYbl/pmqr9+k4iUQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/es-abstract": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", + "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.6", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.4", + "safe-array-concat": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-toolkit": { + "version": "1.39.7", + "resolved": "https://registry.npmjs.org/es-toolkit/-/es-toolkit-1.39.7.tgz", + "integrity": "sha512-ek/wWryKouBrZIjkwW2BFf91CWOIMvoy2AE5YYgUrfWsJQM2Su1LoLtrw8uusEpN9RfqLlV/0FVNjT0WMv8Bxw==", + "license": "MIT", + "workspaces": [ + "docs", + "benchmarks" + ] + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.31.0.tgz", + "integrity": "sha512-QldCVh/ztyKJJZLr4jXNUByx3gR+TDYZCRXEktiZoUR3PGy4qCmSbkxcIle8GEwGpb5JBZazlaJ/CxLidXdEbQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.0", + "@eslint/config-helpers": "^0.3.0", + "@eslint/core": "^0.15.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.31.0", + "@eslint/plugin-kit": "^0.3.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-config-next": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.2.4.tgz", + "integrity": "sha512-v4gYjd4eYIme8qzaJItpR5MMBXJ0/YV07u7eb50kEnlEmX7yhOjdUdzz70v4fiINYRjLf8X8TbogF0k7wlz6sA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@next/eslint-plugin-next": "15.2.4", + "@rushstack/eslint-patch": "^1.10.3", + "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.31.0", + "eslint-plugin-jsx-a11y": "^6.10.0", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^5.0.0" + }, + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0 || ^9.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz", + "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.4.0", + "get-tsconfig": "^4.10.0", + "is-bun-module": "^2.0.0", + "stable-hash": "^0.0.5", + "tinyglobby": "^0.2.13", + "unrs-resolver": "^1.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-import-resolver-typescript" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.1", + "hasown": "^2.0.2", + "is-core-module": "^2.16.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.1", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.9", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", + "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", + "license": "MIT" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/form-data": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.5.tgz", + "integrity": "sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.35", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "license": "MIT", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gaxios": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-7.1.1.tgz", + "integrity": "sha512-Odju3uBUJyVCkW64nLD4wKLhbh93bh6vIg/ZIXkWiLPBrdgtc65+tls/qml+un3pr6JqYVFDZbbmLDQT68rTOQ==", + "license": "Apache-2.0", + "dependencies": { + "extend": "^3.0.2", + "https-proxy-agent": "^7.0.1", + "node-fetch": "^3.3.2" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/gcp-metadata": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-7.0.1.tgz", + "integrity": "sha512-UcO3kefx6dCcZkgcTGgVOTFb7b1LlQ02hY1omMjjrrBzkajRMCFgYOjs7J71WqnuG1k2b+9ppGL7FsOfhZMQKQ==", + "license": "Apache-2.0", + "dependencies": { + "gaxios": "^7.0.0", + "google-logging-utils": "^1.0.0", + "json-bigint": "^1.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.1.tgz", + "integrity": "sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/google-auth-library": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-10.1.0.tgz", + "integrity": "sha512-GspVjZj1RbyRWpQ9FbAXMKjFGzZwDKnUHi66JJ+tcjcu5/xYAP1pdlWotCuIkMwjfVsxxDvsGZXGLzRt72D0sQ==", + "license": "Apache-2.0", + "dependencies": { + "base64-js": "^1.3.0", + "ecdsa-sig-formatter": "^1.0.11", + "gaxios": "^7.0.0", + "gcp-metadata": "^7.0.0", + "google-logging-utils": "^1.0.0", + "gtoken": "^8.0.0", + "jws": "^4.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/google-gax": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-5.0.1.tgz", + "integrity": "sha512-I8fTFXvIG8tYpiDxDXwCXoFsTVsvHJ2GA7DToH+eaRccU8r3nqPMFghVb2GdHSVcu4pq9ScRyB2S1BjO+vsa1Q==", + "license": "Apache-2.0", + "dependencies": { + "@grpc/grpc-js": "^1.12.6", + "@grpc/proto-loader": "^0.7.13", + "abort-controller": "^3.0.0", + "duplexify": "^4.1.3", + "google-auth-library": "^10.1.0", + "google-logging-utils": "^1.1.1", + "node-fetch": "^3.3.2", + "object-hash": "^3.0.0", + "proto3-json-serializer": "^3.0.0", + "protobufjs": "^7.5.3", + "retry-request": "^8.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/google-logging-utils": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-1.1.1.tgz", + "integrity": "sha512-rcX58I7nqpu4mbKztFeOAObbomBbHU2oIb/d3tJfF3dizGSApqtSwYJigGCooHdnMyQBIw8BrWyK96w3YXgr6A==", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/gtoken": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-8.0.0.tgz", + "integrity": "sha512-+CqsMbHPiSTdtSO14O51eMNlrp9N79gmeqmXeouJOhfucAedHw9noVe/n5uJk3tbKE6a+6ZCQg3RPhVhHByAIw==", + "license": "MIT", + "dependencies": { + "gaxios": "^7.0.0", + "jws": "^4.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "license": "MIT" + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "license": "MIT", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/immer": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz", + "integrity": "sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "license": "MIT", + "optional": true + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bun-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", + "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.7.1" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/jiti": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-bigint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", + "license": "MIT", + "dependencies": { + "bignumber.js": "^9.0.0" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/jwa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz", + "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==", + "license": "MIT", + "dependencies": { + "buffer-equal-constant-time": "^1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", + "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", + "license": "MIT", + "dependencies": { + "jwa": "^2.0.0", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, + "license": "MIT", + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lightningcss": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.1.tgz", + "integrity": "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-darwin-arm64": "1.30.1", + "lightningcss-darwin-x64": "1.30.1", + "lightningcss-freebsd-x64": "1.30.1", + "lightningcss-linux-arm-gnueabihf": "1.30.1", + "lightningcss-linux-arm64-gnu": "1.30.1", + "lightningcss-linux-arm64-musl": "1.30.1", + "lightningcss-linux-x64-gnu": "1.30.1", + "lightningcss-linux-x64-musl": "1.30.1", + "lightningcss-win32-arm64-msvc": "1.30.1", + "lightningcss-win32-x64-msvc": "1.30.1" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.1.tgz", + "integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.1.tgz", + "integrity": "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.1.tgz", + "integrity": "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.1.tgz", + "integrity": "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.1.tgz", + "integrity": "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.1.tgz", + "integrity": "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.1.tgz", + "integrity": "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.1.tgz", + "integrity": "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.1.tgz", + "integrity": "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.1.tgz", + "integrity": "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/long": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz", + "integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==", + "license": "Apache-2.0" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lucide-react": { + "version": "0.525.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.525.0.tgz", + "integrity": "sha512-Tm1txJ2OkymCGkvwoHt33Y2JpN5xucVq1slHcgE6Lk0WjDfjgKWor5CdVER8U6DvcfMwh4M8XxmpTiyzfmfDYQ==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minizlib": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz", + "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/mkdirp": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", + "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/napi-postinstall": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.2.tgz", + "integrity": "sha512-tWVJxJHmBWLy69PvO96TZMZDrzmw5KeiZBz3RHmiM2XZ9grBJ2WgMAFVVg25nqp3ZjTFUs2Ftw1JhscL3Teliw==", + "dev": true, + "license": "MIT", + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/next": { + "version": "15.2.4", + "resolved": "https://registry.npmjs.org/next/-/next-15.2.4.tgz", + "integrity": "sha512-VwL+LAaPSxEkd3lU2xWbgEOtrM8oedmyhBqaVNmgKB+GvZlCy9rgaEc+y2on0wv+l0oSFqLtYD6dcC1eAedUaQ==", + "license": "MIT", + "dependencies": { + "@next/env": "15.2.4", + "@swc/counter": "0.1.3", + "@swc/helpers": "0.5.15", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "postcss": "8.4.31", + "styled-jsx": "5.1.6" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": "^18.18.0 || ^19.8.0 || >= 20.0.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "15.2.4", + "@next/swc-darwin-x64": "15.2.4", + "@next/swc-linux-arm64-gnu": "15.2.4", + "@next/swc-linux-arm64-musl": "15.2.4", + "@next/swc-linux-x64-gnu": "15.2.4", + "@next/swc-linux-x64-musl": "15.2.4", + "@next/swc-win32-arm64-msvc": "15.2.4", + "@next/swc-win32-x64-msvc": "15.2.4", + "sharp": "^0.33.5" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "@playwright/test": "^1.41.2", + "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 + } + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "deprecated": "Use your platform's native DOMException instead", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", + "license": "MIT", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, + "node_modules/node-record-lpcm16": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/node-record-lpcm16/-/node-record-lpcm16-1.0.1.tgz", + "integrity": "sha512-H75GMOP8ErnF67m21+qSgj4USnzv5RLfm7OkEItdIi+soNKoJZpMQPX6umM8Cn9nVPSgd/dBUtc1msst5MmABA==", + "license": "ISC", + "dependencies": { + "debug": "^2.6.8" + } + }, + "node_modules/node-record-lpcm16/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/node-record-lpcm16/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/proto3-json-serializer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-3.0.1.tgz", + "integrity": "sha512-Rug90pDIefARAG9MgaFjd0yR/YP4bN3Fov00kckXMjTZa0x86c4WoWfCQFdSeWi9DvRXjhfLlPDIvODB5LOTfg==", + "license": "Apache-2.0", + "dependencies": { + "protobufjs": "^7.4.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/protobufjs": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.3.tgz", + "integrity": "sha512-sildjKwVqOI2kmFDiXQ6aEB0fjYTafpEvIBs8tOR8qI4spuL9OPROLVu2qZqi/xgCfsHIwVqlaF8JBjWFHnKbw==", + "hasInstallScript": true, + "license": "BSD-3-Clause", + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/pump": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", + "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", + "license": "MIT", + "dependencies": { + "duplexify": "^4.1.1", + "inherits": "^2.0.3", + "pump": "^3.0.0" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", + "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.0.tgz", + "integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.26.0" + }, + "peerDependencies": { + "react": "^19.1.0" + } + }, + "node_modules/react-is": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.1.0.tgz", + "integrity": "sha512-Oe56aUPnkHyyDxxkvqtd7KkdQP5uIUfHxd5XTb3wE9d/kRnZLmKbDB0GWk919tdQ+mxxPtG6EAs6RMT6i1qtHg==", + "license": "MIT", + "peer": true + }, + "node_modules/react-redux": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.2.0.tgz", + "integrity": "sha512-ROY9fvHhwOD9ySfrF0wmvu//bKCQ6AeZZq1nJNtbDC+kk5DuSuNX/n6YWYF/SYy7bSba4D4FSz8DJeKY/S/r+g==", + "license": "MIT", + "dependencies": { + "@types/use-sync-external-store": "^0.0.6", + "use-sync-external-store": "^1.4.0" + }, + "peerDependencies": { + "@types/react": "^18.2.25 || ^19", + "react": "^18.0 || ^19", + "redux": "^5.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "redux": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.1.tgz", + "integrity": "sha512-HpMh8+oahmIdOuS5aFKKY6Pyog+FNaZV/XyJOq7b4YFwsFHe5yYfdbIalI4k3vU2nSDql7YskmUseHsRrJqIPA==", + "license": "MIT", + "dependencies": { + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", + "license": "MIT", + "dependencies": { + "react-style-singleton": "^2.2.2", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-style-singleton": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", + "license": "MIT", + "dependencies": { + "get-nonce": "^1.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/recharts": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/recharts/-/recharts-3.1.0.tgz", + "integrity": "sha512-NqAqQcGBmLrfDs2mHX/bz8jJCQtG2FeXfE0GqpZmIuXIjkpIwj8sd9ad0WyvKiBKPd8ZgNG0hL85c8sFDwascw==", + "license": "MIT", + "dependencies": { + "@reduxjs/toolkit": "1.x.x || 2.x.x", + "clsx": "^2.1.1", + "decimal.js-light": "^2.5.1", + "es-toolkit": "^1.39.3", + "eventemitter3": "^5.0.1", + "immer": "^10.1.1", + "react-redux": "8.x.x || 9.x.x", + "reselect": "5.1.1", + "tiny-invariant": "^1.3.3", + "use-sync-external-store": "^1.2.2", + "victory-vendor": "^37.0.2" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-is": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/redux": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", + "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==", + "license": "MIT" + }, + "node_modules/redux-thunk": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-3.1.0.tgz", + "integrity": "sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==", + "license": "MIT", + "peerDependencies": { + "redux": "^5.0.0" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/reselect": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz", + "integrity": "sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w==", + "license": "MIT" + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/retry-request": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/retry-request/-/retry-request-8.0.0.tgz", + "integrity": "sha512-dJkZNmyV9C8WKUmbdj1xcvVlXBSvsUQCkg89TCK8rD72RdSn9A2jlXlS2VuYSTHoPJjJEfUHhjNYrlvuksF9cg==", + "license": "MIT", + "dependencies": { + "@types/request": "^2.48.12", + "extend": "^3.0.2", + "teeny-request": "^10.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", + "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "devOptional": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/sharp": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.5.tgz", + "integrity": "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==", + "hasInstallScript": true, + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "color": "^4.2.3", + "detect-libc": "^2.0.3", + "semver": "^7.6.3" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.33.5", + "@img/sharp-darwin-x64": "0.33.5", + "@img/sharp-libvips-darwin-arm64": "1.0.4", + "@img/sharp-libvips-darwin-x64": "1.0.4", + "@img/sharp-libvips-linux-arm": "1.0.5", + "@img/sharp-libvips-linux-arm64": "1.0.4", + "@img/sharp-libvips-linux-s390x": "1.0.4", + "@img/sharp-libvips-linux-x64": "1.0.4", + "@img/sharp-libvips-linuxmusl-arm64": "1.0.4", + "@img/sharp-libvips-linuxmusl-x64": "1.0.4", + "@img/sharp-linux-arm": "0.33.5", + "@img/sharp-linux-arm64": "0.33.5", + "@img/sharp-linux-s390x": "0.33.5", + "@img/sharp-linux-x64": "0.33.5", + "@img/sharp-linuxmusl-arm64": "0.33.5", + "@img/sharp-linuxmusl-x64": "0.33.5", + "@img/sharp-wasm32": "0.33.5", + "@img/sharp-win32-ia32": "0.33.5", + "@img/sharp-win32-x64": "0.33.5" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "license": "MIT", + "optional": true, + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stable-hash": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true, + "license": "MIT" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/stream-events": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz", + "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==", + "license": "MIT", + "dependencies": { + "stubs": "^3.0.0" + } + }, + "node_modules/stream-shift": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", + "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==", + "license": "MIT" + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stubs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", + "integrity": "sha512-PdHt7hHUJKxvTCgbKX9C1V/ftOcjJQgz8BZwNfV5c4B6dcGqlpelTbJ999jBGZ2jYiPAwcX5dP6oBwVlBlUbxw==", + "license": "MIT" + }, + "node_modules/styled-jsx": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", + "integrity": "sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==", + "license": "MIT", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "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 + } + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwind-merge": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-3.3.1.tgz", + "integrity": "sha512-gBXpgUm/3rp1lMZZrM/w7D8GKqshif0zAymAhbCyIt8KMe+0v9DQ7cdYLR4FHH/cKpdTXb+A/tKKU3eolfsI+g==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwindcss": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.11.tgz", + "integrity": "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA==", + "license": "MIT" + }, + "node_modules/tailwindcss-animate": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz", + "integrity": "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==", + "license": "MIT", + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders" + } + }, + "node_modules/tapable": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz", + "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", + "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "dev": true, + "license": "ISC", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/teeny-request": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-10.1.0.tgz", + "integrity": "sha512-3ZnLvgWF29jikg1sAQ1g0o+lr5JX6sVgYvfUJazn7ZjJroDBUTWp44/+cFVX0bULjv4vci+rBD+oGVAkWqhUbw==", + "license": "Apache-2.0", + "dependencies": { + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "node-fetch": "^3.3.2", + "stream-events": "^1.0.5" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/teeny-request/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/teeny-request/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tiny-invariant": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", + "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", + "license": "MIT" + }, + "node_modules/tinyglobby": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", + "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.4.4", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.4.6", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz", + "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tw-animate-css": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/tw-animate-css/-/tw-animate-css-1.3.5.tgz", + "integrity": "sha512-t3u+0YNoloIhj1mMXs779P6MO9q3p3mvGn4k1n3nJPqJw/glZcuijG2qTSN4z4mgNRfW5ZC3aXJFLwDtiipZXA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Wombosvideo" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "license": "MIT" + }, + "node_modules/unrs-resolver": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", + "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "napi-postinstall": "^0.3.0" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.11.1", + "@unrs/resolver-binding-android-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-x64": "1.11.1", + "@unrs/resolver-binding-freebsd-x64": "1.11.1", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", + "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-musl": "1.11.1", + "@unrs/resolver-binding-wasm32-wasi": "1.11.1", + "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", + "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", + "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sidecar": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", + "license": "MIT", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.5.0.tgz", + "integrity": "sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/uuid": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.1.0.tgz", + "integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/esm/bin/uuid" + } + }, + "node_modules/victory-vendor": { + "version": "37.3.6", + "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-37.3.6.tgz", + "integrity": "sha512-SbPDPdDBYp+5MJHhBCAyI7wKM3d5ivekigc2Dk2s7pgbZ9wIgIBYGVw4zGHBml/qTFbexrofXW6Gu4noGxrOwQ==", + "license": "MIT AND ISC", + "dependencies": { + "@types/d3-array": "^3.0.3", + "@types/d3-ease": "^3.0.0", + "@types/d3-interpolate": "^3.0.1", + "@types/d3-scale": "^4.0.2", + "@types/d3-shape": "^3.1.0", + "@types/d3-time": "^3.0.0", + "@types/d3-timer": "^3.0.0", + "d3-array": "^3.1.6", + "d3-ease": "^3.0.1", + "d3-interpolate": "^3.0.1", + "d3-scale": "^4.0.2", + "d3-shape": "^3.1.0", + "d3-time": "^3.0.0", + "d3-timer": "^3.0.1" + } + }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/ws": { + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 00000000..4f5b976f --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,42 @@ +{ + "name": "interview-mate", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev --turbopack", + "build": "next build", + "start": "next start", + "lint": "next lint" + }, + "dependencies": { + "@google-cloud/speech": "^7.2.0", + "@radix-ui/react-avatar": "^1.1.10", + "@radix-ui/react-progress": "^1.1.7", + "@radix-ui/react-select": "^2.2.5", + "@radix-ui/react-slot": "^1.2.3", + "@types/ws": "^8.18.1", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "lucide-react": "^0.525.0", + "next": "15.2.4", + "node-record-lpcm16": "^1.0.1", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "recharts": "^3.1.0", + "tailwind-merge": "^3.3.1", + "tailwindcss-animate": "^1.0.7", + "ws": "^8.18.3" + }, + "devDependencies": { + "@eslint/eslintrc": "^3", + "@tailwindcss/postcss": "^4", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "eslint": "^9", + "eslint-config-next": "15.2.4", + "tailwindcss": "^4.1.11", + "tw-animate-css": "^1.3.5", + "typescript": "^5" + } +} diff --git a/frontend/postcss.config.mjs b/frontend/postcss.config.mjs new file mode 100644 index 00000000..c7bcb4b1 --- /dev/null +++ b/frontend/postcss.config.mjs @@ -0,0 +1,5 @@ +const config = { + plugins: ["@tailwindcss/postcss"], +}; + +export default config; diff --git a/frontend/public/file.svg b/frontend/public/file.svg new file mode 100644 index 00000000..004145cd --- /dev/null +++ b/frontend/public/file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/public/globe.svg b/frontend/public/globe.svg new file mode 100644 index 00000000..567f17b0 --- /dev/null +++ b/frontend/public/globe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/public/next.svg b/frontend/public/next.svg new file mode 100644 index 00000000..5174b28c --- /dev/null +++ b/frontend/public/next.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/public/vercel.svg b/frontend/public/vercel.svg new file mode 100644 index 00000000..77053960 --- /dev/null +++ b/frontend/public/vercel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/public/window.svg b/frontend/public/window.svg new file mode 100644 index 00000000..b2b2a44f --- /dev/null +++ b/frontend/public/window.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/tailwind.config.ts b/frontend/tailwind.config.ts new file mode 100644 index 00000000..4a44240d --- /dev/null +++ b/frontend/tailwind.config.ts @@ -0,0 +1,81 @@ +import type { Config } from "tailwindcss" + +const config: Config = { + darkMode: ["class"], + content: [ + "./pages/**/*.{ts,tsx}", + "./components/**/*.{ts,tsx}", + "./app/**/*.{ts,tsx}", + "./src/**/*.{ts,tsx}", + "*.{js,ts,jsx,tsx,mdx}", + ], + prefix: "", + theme: { + container: { + center: true, + padding: "2rem", + screens: { + "2xl": "1400px", + }, + }, + extend: { + colors: { + border: "hsl(var(--border))", + input: "hsl(var(--input))", + ring: "hsl(var(--ring))", + background: "hsl(var(--background))", + foreground: "hsl(var(--foreground))", + primary: { + DEFAULT: "hsl(var(--primary))", + foreground: "hsl(var(--primary-foreground))", + }, + secondary: { + DEFAULT: "hsl(var(--secondary))", + foreground: "hsl(var(--secondary-foreground))", + }, + destructive: { + DEFAULT: "hsl(var(--destructive))", + foreground: "hsl(var(--destructive-foreground))", + }, + muted: { + DEFAULT: "hsl(var(--muted))", + foreground: "hsl(var(--muted-foreground))", + }, + accent: { + DEFAULT: "hsl(var(--accent))", + foreground: "hsl(var(--accent-foreground))", + }, + popover: { + DEFAULT: "hsl(var(--popover))", + foreground: "hsl(var(--popover-foreground))", + }, + card: { + DEFAULT: "hsl(var(--card))", + foreground: "hsl(var(--card-foreground))", + }, + }, + borderRadius: { + lg: "var(--radius)", + md: "calc(var(--radius) - 2px)", + sm: "calc(var(--radius) - 4px)", + }, + keyframes: { + "accordion-down": { + from: { height: "0" }, + to: { height: "var(--radix-accordion-content-height)" }, + }, + "accordion-up": { + from: { height: "var(--radix-accordion-content-height)" }, + to: { height: "0" }, + }, + }, + animation: { + "accordion-down": "accordion-down 0.2s ease-out", + "accordion-up": "accordion-up 0.2s ease-out", + }, + }, + }, + plugins: [require("tailwindcss-animate")], +} satisfies Config + +export default config diff --git a/frontend/tsconfig.json b/frontend/tsconfig.json new file mode 100644 index 00000000..d8b93235 --- /dev/null +++ b/frontend/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "target": "ES2017", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./*"] + } + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"] +} From 00416b99111d25451ef6489d7c63ee2d08b8d2f9 Mon Sep 17 00:00:00 2001 From: soutabucks Date: Wed, 23 Jul 2025 16:03:22 +0900 Subject: [PATCH 3/3] Add baseBackendFile --- .../interviewAI/interviewAI/.gitattributes | 3 + backend/interviewAI/interviewAI/.gitignore | 37 +++ backend/interviewAI/interviewAI/build.gradle | 39 +++ .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 43764 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + backend/interviewAI/interviewAI/gradlew | 251 ++++++++++++++++++ backend/interviewAI/interviewAI/gradlew.bat | 94 +++++++ .../interviewAI/interviewAI/settings.gradle | 1 + .../interviewAI/InterviewAiApplication.java | 13 + .../interviewAI/ServletInitializer.java | 13 + .../src/main/resources/application.properties | 1 + .../InterviewAiApplicationTests.java | 13 + 12 files changed, 472 insertions(+) create mode 100644 backend/interviewAI/interviewAI/.gitattributes create mode 100644 backend/interviewAI/interviewAI/.gitignore create mode 100644 backend/interviewAI/interviewAI/build.gradle create mode 100644 backend/interviewAI/interviewAI/gradle/wrapper/gradle-wrapper.jar create mode 100644 backend/interviewAI/interviewAI/gradle/wrapper/gradle-wrapper.properties create mode 100644 backend/interviewAI/interviewAI/gradlew create mode 100644 backend/interviewAI/interviewAI/gradlew.bat create mode 100644 backend/interviewAI/interviewAI/settings.gradle create mode 100644 backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/InterviewAiApplication.java create mode 100644 backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/ServletInitializer.java create mode 100644 backend/interviewAI/interviewAI/src/main/resources/application.properties create mode 100644 backend/interviewAI/interviewAI/src/test/java/studyGroup/interviewAI/InterviewAiApplicationTests.java diff --git a/backend/interviewAI/interviewAI/.gitattributes b/backend/interviewAI/interviewAI/.gitattributes new file mode 100644 index 00000000..8af972cd --- /dev/null +++ b/backend/interviewAI/interviewAI/.gitattributes @@ -0,0 +1,3 @@ +/gradlew text eol=lf +*.bat text eol=crlf +*.jar binary diff --git a/backend/interviewAI/interviewAI/.gitignore b/backend/interviewAI/interviewAI/.gitignore new file mode 100644 index 00000000..c2065bc2 --- /dev/null +++ b/backend/interviewAI/interviewAI/.gitignore @@ -0,0 +1,37 @@ +HELP.md +.gradle +build/ +!gradle/wrapper/gradle-wrapper.jar +!**/src/main/**/build/ +!**/src/test/**/build/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache +bin/ +!**/src/main/**/bin/ +!**/src/test/**/bin/ + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr +out/ +!**/src/main/**/out/ +!**/src/test/**/out/ + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ + +### VS Code ### +.vscode/ diff --git a/backend/interviewAI/interviewAI/build.gradle b/backend/interviewAI/interviewAI/build.gradle new file mode 100644 index 00000000..0c070edd --- /dev/null +++ b/backend/interviewAI/interviewAI/build.gradle @@ -0,0 +1,39 @@ +plugins { + id 'java' + id 'war' + id 'org.springframework.boot' version '3.5.3' + id 'io.spring.dependency-management' version '1.1.7' +} + +group = 'studyGroup' +version = '0.0.1-SNAPSHOT' + +java { + toolchain { + languageVersion = JavaLanguageVersion.of(24) + } +} + +configurations { + compileOnly { + extendsFrom annotationProcessor + } +} + +repositories { + mavenCentral() +} + +dependencies { + implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' + implementation 'org.springframework.boot:spring-boot-starter-web' + compileOnly 'org.projectlombok:lombok' + annotationProcessor 'org.projectlombok:lombok' + providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' + testImplementation 'org.springframework.boot:spring-boot-starter-test' + testRuntimeOnly 'org.junit.platform:junit-platform-launcher' +} + +tasks.named('test') { + useJUnitPlatform() +} diff --git a/backend/interviewAI/interviewAI/gradle/wrapper/gradle-wrapper.jar b/backend/interviewAI/interviewAI/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..1b33c55baabb587c669f562ae36f953de2481846 GIT binary patch literal 43764 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 '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH="\\\"\\\"" + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/backend/interviewAI/interviewAI/gradlew.bat b/backend/interviewAI/interviewAI/gradlew.bat new file mode 100644 index 00000000..db3a6ac2 --- /dev/null +++ b/backend/interviewAI/interviewAI/gradlew.bat @@ -0,0 +1,94 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH= + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/backend/interviewAI/interviewAI/settings.gradle b/backend/interviewAI/interviewAI/settings.gradle new file mode 100644 index 00000000..b106dcb1 --- /dev/null +++ b/backend/interviewAI/interviewAI/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'interviewAI' diff --git a/backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/InterviewAiApplication.java b/backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/InterviewAiApplication.java new file mode 100644 index 00000000..24736361 --- /dev/null +++ b/backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/InterviewAiApplication.java @@ -0,0 +1,13 @@ +package studyGroup.interviewAI; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class InterviewAiApplication { + + public static void main(String[] args) { + SpringApplication.run(InterviewAiApplication.class, args); + } + +} diff --git a/backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/ServletInitializer.java b/backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/ServletInitializer.java new file mode 100644 index 00000000..4e17cad1 --- /dev/null +++ b/backend/interviewAI/interviewAI/src/main/java/studyGroup/interviewAI/ServletInitializer.java @@ -0,0 +1,13 @@ +package studyGroup.interviewAI; + +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; + +public class ServletInitializer extends SpringBootServletInitializer { + + @Override + protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { + return application.sources(InterviewAiApplication.class); + } + +} diff --git a/backend/interviewAI/interviewAI/src/main/resources/application.properties b/backend/interviewAI/interviewAI/src/main/resources/application.properties new file mode 100644 index 00000000..61e1144d --- /dev/null +++ b/backend/interviewAI/interviewAI/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.application.name=interviewAI diff --git a/backend/interviewAI/interviewAI/src/test/java/studyGroup/interviewAI/InterviewAiApplicationTests.java b/backend/interviewAI/interviewAI/src/test/java/studyGroup/interviewAI/InterviewAiApplicationTests.java new file mode 100644 index 00000000..55c69d79 --- /dev/null +++ b/backend/interviewAI/interviewAI/src/test/java/studyGroup/interviewAI/InterviewAiApplicationTests.java @@ -0,0 +1,13 @@ +package studyGroup.interviewAI; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class InterviewAiApplicationTests { + + @Test + void contextLoads() { + } + +}