├── .env.example ├── .eslintrc.json ├── .gitignore ├── README.md ├── app ├── (preview) │ ├── actions.tsx │ ├── globals.css │ ├── layout.tsx │ ├── opengraph-image.png │ ├── page.tsx │ ├── twitter-image.png │ └── uncut-sans.woff2 └── favicon.ico ├── components ├── camera-view.tsx ├── data.ts ├── hub-view.tsx ├── icons.tsx ├── markdown.tsx ├── message.tsx ├── usage-view.tsx └── use-scroll-to-bottom.ts ├── next.config.mjs ├── package-lock.json ├── package.json ├── pnpm-lock.yaml ├── postcss.config.mjs ├── public ├── patio.jpg ├── side.jpg └── yard.jpg ├── tailwind.config.ts └── tsconfig.json /.env.example: -------------------------------------------------------------------------------- 1 | OPENAI_API_KEY=sk-**** -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | .yarn/install-state.gz 8 | 9 | # testing 10 | /coverage 11 | 12 | # next.js 13 | /.next/ 14 | /out/ 15 | 16 | # production 17 | /build 18 | 19 | # misc 20 | .DS_Store 21 | *.pem 22 | 23 | # debug 24 | npm-debug.log* 25 | yarn-debug.log* 26 | yarn-error.log* 27 | 28 | # local env files 29 | .env*.local 30 | 31 | # vercel 32 | .vercel 33 | 34 | # typescript 35 | *.tsbuildinfo 36 | next-env.d.ts 37 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Generative UI with React Server Components and Vercel AI SDK 2 | 3 | > **Note**: Development of AI SDK RSC is currently paused. For more information, see [Migrating from AI SDK RSC](https://sdk.vercel.ai/docs/ai-sdk-rsc/migrating-to-ui#background). 4 | 5 | This example demonstrates how to use the [Vercel AI SDK](https://sdk.vercel.ai/docs) with [Next.js](https://nextjs.org/) and the `streamUI` function to create generative user interfaces by streaming React Server Components to the client. 6 | 7 | ## Deploy your own 8 | 9 | [![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fvercel-labs%2Fai-sdk-preview-rsc-genui&env=OPENAI_API_KEY&envDescription=API%20keys%20needed%20for%20application&envLink=platform.openai.com) 10 | 11 | ## How to use 12 | 13 | Run [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app) with [npm](https://docs.npmjs.com/cli/init), [Yarn](https://yarnpkg.com/lang/en/docs/cli/create/), or [pnpm](https://pnpm.io) to bootstrap the example: 14 | 15 | ```bash 16 | npx create-next-app --example https://github.com/vercel-labs/ai-sdk-preview-rsc-genui ai-sdk-preview-rsc-genui-example 17 | ``` 18 | 19 | ```bash 20 | yarn create next-app --example https://github.com/vercel-labs/ai-sdk-preview-rsc-genui ai-sdk-preview-rsc-genui-example 21 | ``` 22 | 23 | ```bash 24 | pnpm create next-app --example https://github.com/vercel-labs/ai-sdk-preview-rsc-genui ai-sdk-preview-rsc-genui-example 25 | ``` 26 | 27 | To run the example locally you need to: 28 | 29 | 1. Sign up for accounts with the AI providers you want to use (e.g., OpenAI, Anthropic). 30 | 2. Obtain API keys for each provider. 31 | 3. Set the required environment variables as shown in the `.env.example` file, but in a new file called `.env`. 32 | 4. `npm install` to install the required dependencies. 33 | 5. `npm run dev` to launch the development server. 34 | 35 | 36 | ## Learn More 37 | 38 | To learn more about Vercel AI SDK or Next.js take a look at the following resources: 39 | 40 | - [Vercel AI SDK docs](https://sdk.vercel.ai/docs) 41 | - [Vercel AI Playground](https://play.vercel.ai) 42 | - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. 43 | -------------------------------------------------------------------------------- /app/(preview)/actions.tsx: -------------------------------------------------------------------------------- 1 | import { Message, TextStreamMessage } from "@/components/message"; 2 | import { openai } from "@ai-sdk/openai"; 3 | import { CoreMessage, generateId } from "ai"; 4 | import { 5 | createAI, 6 | createStreamableValue, 7 | getMutableAIState, 8 | streamUI, 9 | } from "ai/rsc"; 10 | import { ReactNode } from "react"; 11 | import { z } from "zod"; 12 | import { CameraView } from "@/components/camera-view"; 13 | import { HubView } from "@/components/hub-view"; 14 | import { UsageView } from "@/components/usage-view"; 15 | 16 | export interface Hub { 17 | climate: Record<"low" | "high", number>; 18 | lights: Array<{ name: string; status: boolean }>; 19 | locks: Array<{ name: string; isLocked: boolean }>; 20 | } 21 | 22 | let hub: Hub = { 23 | climate: { 24 | low: 23, 25 | high: 25, 26 | }, 27 | lights: [ 28 | { name: "patio", status: true }, 29 | { name: "kitchen", status: false }, 30 | { name: "garage", status: true }, 31 | ], 32 | locks: [{ name: "back door", isLocked: true }], 33 | }; 34 | 35 | const sendMessage = async (message: string) => { 36 | "use server"; 37 | 38 | const messages = getMutableAIState("messages"); 39 | 40 | messages.update([ 41 | ...(messages.get() as CoreMessage[]), 42 | { role: "user", content: message }, 43 | ]); 44 | 45 | const contentStream = createStreamableValue(""); 46 | const textComponent = ; 47 | 48 | const { value: stream } = await streamUI({ 49 | model: openai("gpt-4o"), 50 | system: `\ 51 | - you are a friendly home automation assistant 52 | - reply in lower case 53 | `, 54 | messages: messages.get() as CoreMessage[], 55 | text: async function* ({ content, done }) { 56 | if (done) { 57 | messages.done([ 58 | ...(messages.get() as CoreMessage[]), 59 | { role: "assistant", content }, 60 | ]); 61 | 62 | contentStream.done(); 63 | } else { 64 | contentStream.update(content); 65 | } 66 | 67 | return textComponent; 68 | }, 69 | tools: { 70 | viewCameras: { 71 | description: "view current active cameras", 72 | parameters: z.object({}), 73 | generate: async function* ({}) { 74 | const toolCallId = generateId(); 75 | 76 | messages.done([ 77 | ...(messages.get() as CoreMessage[]), 78 | { 79 | role: "assistant", 80 | content: [ 81 | { 82 | type: "tool-call", 83 | toolCallId, 84 | toolName: "viewCameras", 85 | args: {}, 86 | }, 87 | ], 88 | }, 89 | { 90 | role: "tool", 91 | content: [ 92 | { 93 | type: "tool-result", 94 | toolName: "viewCameras", 95 | toolCallId, 96 | result: `The active cameras are currently displayed on the screen`, 97 | }, 98 | ], 99 | }, 100 | ]); 101 | 102 | return } />; 103 | }, 104 | }, 105 | viewHub: { 106 | description: 107 | "view the hub that contains current quick summary and actions for temperature, lights, and locks", 108 | parameters: z.object({}), 109 | generate: async function* ({}) { 110 | const toolCallId = generateId(); 111 | 112 | messages.done([ 113 | ...(messages.get() as CoreMessage[]), 114 | { 115 | role: "assistant", 116 | content: [ 117 | { 118 | type: "tool-call", 119 | toolCallId, 120 | toolName: "viewHub", 121 | args: {}, 122 | }, 123 | ], 124 | }, 125 | { 126 | role: "tool", 127 | content: [ 128 | { 129 | type: "tool-result", 130 | toolName: "viewHub", 131 | toolCallId, 132 | result: hub, 133 | }, 134 | ], 135 | }, 136 | ]); 137 | 138 | return } />; 139 | }, 140 | }, 141 | updateHub: { 142 | description: "update the hub with new values", 143 | parameters: z.object({ 144 | hub: z.object({ 145 | climate: z.object({ 146 | low: z.number(), 147 | high: z.number(), 148 | }), 149 | lights: z.array( 150 | z.object({ name: z.string(), status: z.boolean() }), 151 | ), 152 | locks: z.array( 153 | z.object({ name: z.string(), isLocked: z.boolean() }), 154 | ), 155 | }), 156 | }), 157 | generate: async function* ({ hub: newHub }) { 158 | hub = newHub; 159 | const toolCallId = generateId(); 160 | 161 | messages.done([ 162 | ...(messages.get() as CoreMessage[]), 163 | { 164 | role: "assistant", 165 | content: [ 166 | { 167 | type: "tool-call", 168 | toolCallId, 169 | toolName: "updateHub", 170 | args: { hub }, 171 | }, 172 | ], 173 | }, 174 | { 175 | role: "tool", 176 | content: [ 177 | { 178 | type: "tool-result", 179 | toolName: "updateHub", 180 | toolCallId, 181 | result: `The hub has been updated with the new values`, 182 | }, 183 | ], 184 | }, 185 | ]); 186 | 187 | return } />; 188 | }, 189 | }, 190 | viewUsage: { 191 | description: "view current usage for electricity, water, or gas", 192 | parameters: z.object({ 193 | type: z.enum(["electricity", "water", "gas"]), 194 | }), 195 | generate: async function* ({ type }) { 196 | const toolCallId = generateId(); 197 | 198 | messages.done([ 199 | ...(messages.get() as CoreMessage[]), 200 | { 201 | role: "assistant", 202 | content: [ 203 | { 204 | type: "tool-call", 205 | toolCallId, 206 | toolName: "viewUsage", 207 | args: { type }, 208 | }, 209 | ], 210 | }, 211 | { 212 | role: "tool", 213 | content: [ 214 | { 215 | type: "tool-result", 216 | toolName: "viewUsage", 217 | toolCallId, 218 | result: `The current usage for ${type} is currently displayed on the screen`, 219 | }, 220 | ], 221 | }, 222 | ]); 223 | 224 | return ( 225 | } /> 226 | ); 227 | }, 228 | }, 229 | }, 230 | }); 231 | 232 | return stream; 233 | }; 234 | 235 | export type UIState = Array; 236 | 237 | export type AIState = { 238 | chatId: string; 239 | messages: Array; 240 | }; 241 | 242 | export const AI = createAI({ 243 | initialAIState: { 244 | chatId: generateId(), 245 | messages: [], 246 | }, 247 | initialUIState: [], 248 | actions: { 249 | sendMessage, 250 | }, 251 | onSetAIState: async ({ state, done }) => { 252 | "use server"; 253 | 254 | if (done) { 255 | // save to database 256 | } 257 | }, 258 | }); 259 | -------------------------------------------------------------------------------- /app/(preview)/globals.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | 5 | :root { 6 | --foreground-rgb: 0, 0, 0; 7 | --background-start-rgb: 214, 219, 220; 8 | --background-end-rgb: 255, 255, 255; 9 | } 10 | 11 | @font-face { 12 | font-family: "uncut sans"; 13 | src: url("./uncut-sans.woff2") format("woff2"); 14 | } 15 | 16 | * { 17 | font-family: "uncut sans", sans-serif; 18 | } 19 | 20 | @media (prefers-color-scheme: dark) { 21 | :root { 22 | --foreground-rgb: 255, 255, 255; 23 | --background-start-rgb: 0, 0, 0; 24 | --background-end-rgb: 0, 0, 0; 25 | } 26 | } 27 | 28 | body { 29 | color: rgb(var(--foreground-rgb)); 30 | background: linear-gradient( 31 | to bottom, 32 | transparent, 33 | rgb(var(--background-end-rgb)) 34 | ) 35 | rgb(var(--background-start-rgb)); 36 | } 37 | 38 | @layer utilities { 39 | .text-balance { 40 | text-wrap: balance; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /app/(preview)/layout.tsx: -------------------------------------------------------------------------------- 1 | import "./globals.css"; 2 | import { Metadata } from "next"; 3 | import { Toaster } from "sonner"; 4 | import { AI } from "./actions"; 5 | 6 | export const metadata: Metadata = { 7 | metadataBase: new URL("https://ai-sdk-preview-rsc-genui.vercel.dev"), 8 | title: "Generative User Interfaces Preview", 9 | description: "Generative UI with React Server Components and Vercel AI SDK", 10 | }; 11 | 12 | export default function RootLayout({ 13 | children, 14 | }: Readonly<{ 15 | children: React.ReactNode; 16 | }>) { 17 | return ( 18 | 19 | 20 | 21 | {children} 22 | 23 | 24 | ); 25 | } 26 | -------------------------------------------------------------------------------- /app/(preview)/opengraph-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/ai-sdk-preview-rsc-genui/c28974022b240b38e2f634e73bb5dcb4c920470b/app/(preview)/opengraph-image.png -------------------------------------------------------------------------------- /app/(preview)/page.tsx: -------------------------------------------------------------------------------- 1 | "use client"; 2 | 3 | import { ReactNode, useRef, useState } from "react"; 4 | import { useActions } from "ai/rsc"; 5 | import { Message } from "@/components/message"; 6 | import { useScrollToBottom } from "@/components/use-scroll-to-bottom"; 7 | import { motion } from "framer-motion"; 8 | import { MasonryIcon, VercelIcon } from "@/components/icons"; 9 | import Link from "next/link"; 10 | 11 | export default function Home() { 12 | const { sendMessage } = useActions(); 13 | 14 | const [input, setInput] = useState(""); 15 | const [messages, setMessages] = useState>([]); 16 | 17 | const inputRef = useRef(null); 18 | const [messagesContainerRef, messagesEndRef] = 19 | useScrollToBottom(); 20 | 21 | const suggestedActions = [ 22 | { title: "View all", label: "my cameras", action: "View all my cameras" }, 23 | { title: "Show me", label: "my smart home hub", action: "Show me my smart home hub" }, 24 | { 25 | title: "How much", 26 | label: "electricity have I used this month?", 27 | action: "Show electricity usage", 28 | }, 29 | { 30 | title: "How much", 31 | label: "water have I used this month?", 32 | action: "Show water usage", 33 | }, 34 | ]; 35 | 36 | return ( 37 |
38 |
39 |
43 | {messages.length === 0 && ( 44 | 45 |
46 |

47 | 48 | + 49 | 50 |

51 |

52 | The streamUI function allows you to stream React Server 53 | Components along with your language model generations to 54 | integrate dynamic user interfaces into your application. 55 |

56 |

57 | {" "} 58 | Learn more about the{" "} 59 | 64 | streamUI{" "} 65 | 66 | hook from Vercel AI SDK. 67 |

68 |
69 |
70 | )} 71 | {messages.map((message) => message)} 72 |
73 |
74 | 75 |
76 | {messages.length === 0 && 77 | suggestedActions.map((action, index) => ( 78 | 1 ? "hidden sm:block" : "block"} 84 | > 85 | 107 | 108 | ))} 109 |
110 | 111 |
{ 114 | event.preventDefault(); 115 | 116 | setMessages((messages) => [ 117 | ...messages, 118 | , 119 | ]); 120 | setInput(""); 121 | 122 | const response: ReactNode = await sendMessage(input); 123 | setMessages((messages) => [...messages, response]); 124 | }} 125 | > 126 | { 132 | setInput(event.target.value); 133 | }} 134 | /> 135 | 136 |
137 |
138 | ); 139 | } 140 | -------------------------------------------------------------------------------- /app/(preview)/twitter-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/ai-sdk-preview-rsc-genui/c28974022b240b38e2f634e73bb5dcb4c920470b/app/(preview)/twitter-image.png -------------------------------------------------------------------------------- /app/(preview)/uncut-sans.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/ai-sdk-preview-rsc-genui/c28974022b240b38e2f634e73bb5dcb4c920470b/app/(preview)/uncut-sans.woff2 -------------------------------------------------------------------------------- /app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/ai-sdk-preview-rsc-genui/c28974022b240b38e2f634e73bb5dcb4c920470b/app/favicon.ico -------------------------------------------------------------------------------- /components/camera-view.tsx: -------------------------------------------------------------------------------- 1 | "use client"; 2 | 3 | import { motion } from "framer-motion"; 4 | 5 | export const CameraView = () => { 6 | return ( 7 |
8 |
9 |
10 | 21 |
22 | Front Yard 23 |
24 |
25 | 26 |
27 | 38 |
39 | Patio 40 |
41 |
42 | 53 |
54 | Side 55 |
56 |
57 |
58 |
59 |
60 |
61 | ); 62 | }; 63 | -------------------------------------------------------------------------------- /components/data.ts: -------------------------------------------------------------------------------- 1 | export type Usage = { day: string; amount: number; clean: number }; 2 | 3 | interface Usages { 4 | water: Array; 5 | gas: Array; 6 | electricity: Array; 7 | } 8 | 9 | function generateUsages(startDay: number, days: number): Usages { 10 | const generateUsage = ( 11 | day: number, 12 | min: number, 13 | max: number, 14 | cleanPercentage: number = 0, 15 | ): Usage => { 16 | const amount = Number((Math.random() * (max - min) + min).toFixed(1)); 17 | return { 18 | day: String(day), 19 | amount, 20 | clean: Number((amount * cleanPercentage).toFixed(1)), 21 | }; 22 | }; 23 | 24 | const generateSequence = (start: number, count: number) => { 25 | return Array.from({ length: count }, (_, i) => { 26 | let day = start + i; 27 | if (day > 31) day -= 31; 28 | return day; 29 | }); 30 | }; 31 | 32 | const sequence = generateSequence(startDay, days); 33 | 34 | return { 35 | water: sequence.map((day) => generateUsage(day, 30, 165)), 36 | gas: sequence.map((day) => generateUsage(day, 1, 6)), 37 | electricity: sequence.map((day) => generateUsage(day, 20, 55, 0.55)), 38 | }; 39 | } 40 | 41 | export const USAGES: Usages = generateUsages(23, 14); 42 | -------------------------------------------------------------------------------- /components/hub-view.tsx: -------------------------------------------------------------------------------- 1 | "use client"; 2 | 3 | import { Hub } from "@/app/(preview)/actions"; 4 | import { GuageIcon, LightningIcon, LockIcon } from "./icons"; 5 | import { motion } from "framer-motion"; 6 | import { scaleLinear } from "d3-scale"; 7 | 8 | export const HubView = ({ hub }: { hub: Hub }) => { 9 | const countToHeight = scaleLinear() 10 | .domain([0, hub.lights.length]) 11 | .range([0, 32]); 12 | 13 | return ( 14 |
15 | 21 |
22 | 23 |
24 |
25 |
Climate
26 |
27 | {`${hub.climate.low}-${hub.climate.high}°C`} 28 |
29 |
30 |
31 | 32 | 38 |
41 |
42 | 43 |
44 | hub.status).length === hub.lights.length ? "rounded-md" : "rounded-b-md"}`} 46 | initial={{ height: 0 }} 47 | animate={{ 48 | height: countToHeight( 49 | hub.lights.filter((hub) => hub.status).length, 50 | ), 51 | }} 52 | /> 53 |
54 |
55 |
Lights
56 |
57 | {`${hub.lights.filter((hub) => hub.status).length}/${ 58 | hub.lights.length 59 | } On`} 60 |
61 |
62 |
63 | 64 | 70 |
71 | 72 |
73 |
74 |
Security
75 |
76 | {`${hub.locks.filter((hub) => hub.isLocked).length}/${ 77 | hub.locks.length 78 | } Locked`} 79 |
80 |
81 |
82 |
83 | ); 84 | }; 85 | -------------------------------------------------------------------------------- /components/icons.tsx: -------------------------------------------------------------------------------- 1 | export const BotIcon = () => { 2 | return ( 3 | 10 | 16 | 17 | ); 18 | }; 19 | 20 | export const UserIcon = () => { 21 | return ( 22 | 30 | 36 | 37 | ); 38 | }; 39 | 40 | export const AttachmentIcon = () => { 41 | return ( 42 | 49 | 55 | 56 | ); 57 | }; 58 | 59 | export const VercelIcon = ({ size = 17 }) => { 60 | return ( 61 | 68 | 74 | 75 | ); 76 | }; 77 | 78 | export const GuageIcon = () => { 79 | return ( 80 | 87 | 93 | 94 | ); 95 | }; 96 | 97 | export const LightningIcon = () => { 98 | return ( 99 | 106 | 112 | 113 | ); 114 | }; 115 | 116 | export const LockIcon = () => { 117 | return ( 118 | 125 | 131 | 132 | ); 133 | }; 134 | 135 | export const MasonryIcon = () => { 136 | return ( 137 | 144 | 150 | 151 | ); 152 | }; 153 | 154 | export const GitIcon = () => { 155 | return ( 156 | 163 | 164 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | ); 178 | }; 179 | -------------------------------------------------------------------------------- /components/markdown.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactMarkdown from "react-markdown"; 3 | import remarkGfm from "remark-gfm"; 4 | 5 | export const NonMemoizedMarkdown = ({ children }: { children: string }) => { 6 | const components = { 7 | code: ({ node, inline, className, children, ...props }: any) => { 8 | const match = /language-(\w+)/.exec(className || ""); 9 | return !inline && match ? ( 10 |
14 |           {children}
15 |         
16 | ) : ( 17 | 21 | {children} 22 | 23 | ); 24 | }, 25 | ol: ({ node, children, ...props }: any) => { 26 | return ( 27 |
    28 | {children} 29 |
30 | ); 31 | }, 32 | li: ({ node, children, ...props }: any) => { 33 | return ( 34 |
  • 35 | {children} 36 |
  • 37 | ); 38 | }, 39 | ul: ({ node, children, ...props }: any) => { 40 | return ( 41 |
      42 | {children} 43 |
    44 | ); 45 | }, 46 | strong: ({ node, children, ...props }: any) => { 47 | return ( 48 | 49 | {children} 50 | 51 | ); 52 | }, 53 | }; 54 | 55 | return ( 56 | 57 | {children} 58 | 59 | ); 60 | }; 61 | 62 | export const Markdown = React.memo( 63 | NonMemoizedMarkdown, 64 | (prevProps, nextProps) => prevProps.children === nextProps.children, 65 | ); 66 | -------------------------------------------------------------------------------- /components/message.tsx: -------------------------------------------------------------------------------- 1 | "use client"; 2 | 3 | import { motion } from "framer-motion"; 4 | import { BotIcon, UserIcon } from "./icons"; 5 | import { ReactNode } from "react"; 6 | import { StreamableValue, useStreamableValue } from "ai/rsc"; 7 | import { Markdown } from "./markdown"; 8 | 9 | export const TextStreamMessage = ({ 10 | content, 11 | }: { 12 | content: StreamableValue; 13 | }) => { 14 | const [text] = useStreamableValue(content); 15 | 16 | return ( 17 | 22 |
    23 | 24 |
    25 | 26 |
    27 |
    28 | {text} 29 |
    30 |
    31 |
    32 | ); 33 | }; 34 | 35 | export const Message = ({ 36 | role, 37 | content, 38 | }: { 39 | role: "assistant" | "user"; 40 | content: string | ReactNode; 41 | }) => { 42 | return ( 43 | 48 |
    49 | {role === "assistant" ? : } 50 |
    51 | 52 |
    53 |
    54 | {content} 55 |
    56 |
    57 |
    58 | ); 59 | }; 60 | -------------------------------------------------------------------------------- /components/usage-view.tsx: -------------------------------------------------------------------------------- 1 | "use client"; 2 | 3 | import { scaleLinear } from "d3-scale"; 4 | import { motion } from "framer-motion"; 5 | import { USAGES } from "@/components/data"; 6 | import { useWindowSize } from "react-use"; 7 | 8 | export const UsageView = ({ 9 | type, 10 | }: { 11 | type: "electricity" | "gas" | "water"; 12 | }) => { 13 | const { width } = useWindowSize(); 14 | const usages = USAGES[type].slice(0, width < 768 ? 7 : 14); 15 | const maxUsage = Math.max(...usages.map((usage) => usage.amount)); 16 | const usageToHeight = scaleLinear().domain([0, maxUsage]).range([0, 150]); 17 | const color = 18 | type === "electricity" ? "green" : type === "gas" ? "orange" : "blue"; 19 | 20 | return ( 21 |
    22 | 28 |
    Average Usage
    29 |
    30 | {`${( 31 | usages.reduce((acc, usage) => acc + usage.amount, 0) / 14 32 | ).toFixed()} ${ 33 | type === "electricity" ? "kWh" : type === "gas" ? "m³" : "L" 34 | }`} 35 |
    36 |
    37 | 38 |
    39 | 45 | {[100, 75, 50, 25, 0].map((label) => ( 46 |
    47 | {label} 48 |
    49 | ))} 50 |
    51 | 52 |
    53 | {usages.map((usage, index) => ( 54 |
    58 | 67 | {type === "electricity" && ( 68 | 75 | )} 76 | 81 | {usage.day} 82 | 83 |
    84 | ))} 85 |
    86 | 87 | 93 |
    94 |
    95 |
    Total
    96 |
    97 | {type === "electricity" && ( 98 |
    99 |
    100 |
    Clean
    101 |
    102 | )} 103 | 104 |
    105 | 106 |
    107 |
    108 |
    109 |
    110 |
    111 |
    112 |
    113 | ); 114 | }; 115 | -------------------------------------------------------------------------------- /components/use-scroll-to-bottom.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useRef, RefObject } from "react"; 2 | 3 | export function useScrollToBottom(): [ 4 | RefObject, 5 | RefObject, 6 | ] { 7 | const containerRef = useRef(null); 8 | const endRef = useRef(null); 9 | 10 | useEffect(() => { 11 | const container = containerRef.current; 12 | const end = endRef.current; 13 | 14 | if (container && end) { 15 | const observer = new MutationObserver(() => { 16 | end.scrollIntoView({ behavior: "smooth" }); 17 | }); 18 | 19 | observer.observe(container, { 20 | childList: true, 21 | subtree: true, 22 | }); 23 | 24 | return () => observer.disconnect(); 25 | } 26 | }, []); 27 | 28 | return [containerRef, endRef]; 29 | } 30 | -------------------------------------------------------------------------------- /next.config.mjs: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = {}; 3 | 4 | export default nextConfig; 5 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ai-sdk-preview-rsc-genui", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "next dev", 7 | "build": "next build", 8 | "start": "next start", 9 | "lint": "next lint" 10 | }, 11 | "dependencies": { 12 | "@ai-sdk/openai": "^0.0.40", 13 | "@vercel/analytics": "^1.3.1", 14 | "@vercel/kv": "^2.0.0", 15 | "ai": "^3.3.20", 16 | "d3-scale": "^4.0.2", 17 | "framer-motion": "^11.3.19", 18 | "next": "14.2.5", 19 | "react": "^18", 20 | "react-dom": "^18", 21 | "react-markdown": "^9.0.1", 22 | "react-use": "^17.5.1", 23 | "remark-gfm": "^4.0.0", 24 | "sonner": "^1.5.0", 25 | "zod": "^3.23.8" 26 | }, 27 | "devDependencies": { 28 | "@types/d3-scale": "^4.0.8", 29 | "@types/node": "^20", 30 | "@types/react": "^18", 31 | "@types/react-dom": "^18", 32 | "eslint": "^8", 33 | "eslint-config-next": "14.2.5", 34 | "postcss": "^8", 35 | "tailwindcss": "^3.4.1", 36 | "typescript": "^5" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | '@ai-sdk/openai': 9 | specifier: ^0.0.40 10 | version: 0.0.40(zod@3.23.8) 11 | '@vercel/analytics': 12 | specifier: ^1.3.1 13 | version: 1.3.1(next@14.2.5)(react@18.3.1) 14 | '@vercel/kv': 15 | specifier: ^2.0.0 16 | version: 2.0.0 17 | ai: 18 | specifier: ^3.3.20 19 | version: 3.3.20(react@18.3.1)(svelte@4.2.18)(vue@3.4.35)(zod@3.23.8) 20 | d3-scale: 21 | specifier: ^4.0.2 22 | version: 4.0.2 23 | framer-motion: 24 | specifier: ^11.3.19 25 | version: 11.3.19(react-dom@18.3.1)(react@18.3.1) 26 | next: 27 | specifier: 14.2.5 28 | version: 14.2.5(react-dom@18.3.1)(react@18.3.1) 29 | react: 30 | specifier: ^18 31 | version: 18.3.1 32 | react-dom: 33 | specifier: ^18 34 | version: 18.3.1(react@18.3.1) 35 | react-markdown: 36 | specifier: ^9.0.1 37 | version: 9.0.1(@types/react@18.3.3)(react@18.3.1) 38 | react-use: 39 | specifier: ^17.5.1 40 | version: 17.5.1(react-dom@18.3.1)(react@18.3.1) 41 | remark-gfm: 42 | specifier: ^4.0.0 43 | version: 4.0.0 44 | sonner: 45 | specifier: ^1.5.0 46 | version: 1.5.0(react-dom@18.3.1)(react@18.3.1) 47 | zod: 48 | specifier: ^3.23.8 49 | version: 3.23.8 50 | 51 | devDependencies: 52 | '@types/d3-scale': 53 | specifier: ^4.0.8 54 | version: 4.0.8 55 | '@types/node': 56 | specifier: ^20 57 | version: 20.14.13 58 | '@types/react': 59 | specifier: ^18 60 | version: 18.3.3 61 | '@types/react-dom': 62 | specifier: ^18 63 | version: 18.3.0 64 | eslint: 65 | specifier: ^8 66 | version: 8.57.0 67 | eslint-config-next: 68 | specifier: 14.2.5 69 | version: 14.2.5(eslint@8.57.0)(typescript@5.5.4) 70 | postcss: 71 | specifier: ^8 72 | version: 8.4.40 73 | tailwindcss: 74 | specifier: ^3.4.1 75 | version: 3.4.7 76 | typescript: 77 | specifier: ^5 78 | version: 5.5.4 79 | 80 | packages: 81 | 82 | /@ai-sdk/openai@0.0.40(zod@3.23.8): 83 | resolution: {integrity: sha512-9Iq1UaBHA5ZzNv6j3govuKGXrbrjuWvZIgWNJv4xzXlDMHu9P9hnqlBr/Aiay54WwCuTVNhTzAUTfFgnTs2kbQ==} 84 | engines: {node: '>=18'} 85 | peerDependencies: 86 | zod: ^3.0.0 87 | dependencies: 88 | '@ai-sdk/provider': 0.0.14 89 | '@ai-sdk/provider-utils': 1.0.5(zod@3.23.8) 90 | zod: 3.23.8 91 | dev: false 92 | 93 | /@ai-sdk/provider-utils@1.0.17(zod@3.23.8): 94 | resolution: {integrity: sha512-2VyeTH5DQ6AxqvwdyytKIeiZyYTyJffpufWjE67zM2sXMIHgYl7fivo8m5wVl6Cbf1dFPSGKq//C9s+lz+NHrQ==} 95 | engines: {node: '>=18'} 96 | peerDependencies: 97 | zod: ^3.0.0 98 | peerDependenciesMeta: 99 | zod: 100 | optional: true 101 | dependencies: 102 | '@ai-sdk/provider': 0.0.22 103 | eventsource-parser: 1.1.2 104 | nanoid: 3.3.6 105 | secure-json-parse: 2.7.0 106 | zod: 3.23.8 107 | dev: false 108 | 109 | /@ai-sdk/provider-utils@1.0.5(zod@3.23.8): 110 | resolution: {integrity: sha512-XfOawxk95X3S43arn2iQIFyWGMi0DTxsf9ETc6t7bh91RPWOOPYN1tsmS5MTKD33OGJeaDQ/gnVRzXUCRBrckQ==} 111 | engines: {node: '>=18'} 112 | peerDependencies: 113 | zod: ^3.0.0 114 | peerDependenciesMeta: 115 | zod: 116 | optional: true 117 | dependencies: 118 | '@ai-sdk/provider': 0.0.14 119 | eventsource-parser: 1.1.2 120 | nanoid: 3.3.6 121 | secure-json-parse: 2.7.0 122 | zod: 3.23.8 123 | dev: false 124 | 125 | /@ai-sdk/provider@0.0.14: 126 | resolution: {integrity: sha512-gaQ5Y033nro9iX1YUjEDFDRhmMcEiCk56LJdIUbX5ozEiCNCfpiBpEqrjSp/Gp5RzBS2W0BVxfG7UGW6Ezcrzg==} 127 | engines: {node: '>=18'} 128 | dependencies: 129 | json-schema: 0.4.0 130 | dev: false 131 | 132 | /@ai-sdk/provider@0.0.22: 133 | resolution: {integrity: sha512-smZ1/2jL/JSKnbhC6ama/PxI2D/psj+YAe0c0qpd5ComQCNFltg72VFf0rpUSFMmFuj1pCCNoBOCrvyl8HTZHQ==} 134 | engines: {node: '>=18'} 135 | dependencies: 136 | json-schema: 0.4.0 137 | dev: false 138 | 139 | /@ai-sdk/react@0.0.52(react@18.3.1)(zod@3.23.8): 140 | resolution: {integrity: sha512-4Gm+AoINDXQ4lzIZFKOWOcKgjgiAFdyhmBxnyuaqzTJCoRWNUSea62xhjqRE0u8wagfPgxWUAyS8BAsY0EqOyg==} 141 | engines: {node: '>=18'} 142 | peerDependencies: 143 | react: ^18 || ^19 144 | zod: ^3.0.0 145 | peerDependenciesMeta: 146 | react: 147 | optional: true 148 | zod: 149 | optional: true 150 | dependencies: 151 | '@ai-sdk/provider-utils': 1.0.17(zod@3.23.8) 152 | '@ai-sdk/ui-utils': 0.0.39(zod@3.23.8) 153 | react: 18.3.1 154 | swr: 2.2.5(react@18.3.1) 155 | zod: 3.23.8 156 | dev: false 157 | 158 | /@ai-sdk/solid@0.0.42(zod@3.23.8): 159 | resolution: {integrity: sha512-tr1rXRg0bLls7ZEQCWfd0Tv7irFlKQRjBSKSCstwrGtTeDA7zwUP4tIiUaCyzM3lwyE6Qgl17SrAoxSD+xP+zQ==} 160 | engines: {node: '>=18'} 161 | peerDependencies: 162 | solid-js: ^1.7.7 163 | peerDependenciesMeta: 164 | solid-js: 165 | optional: true 166 | dependencies: 167 | '@ai-sdk/provider-utils': 1.0.17(zod@3.23.8) 168 | '@ai-sdk/ui-utils': 0.0.39(zod@3.23.8) 169 | transitivePeerDependencies: 170 | - zod 171 | dev: false 172 | 173 | /@ai-sdk/svelte@0.0.44(svelte@4.2.18)(zod@3.23.8): 174 | resolution: {integrity: sha512-soSiEX1BUiwRSdoc+7mAoCeuM3Vs/ebdb1gNL7ta9Zma7GTHq802Wi7KfWfypoAqpgi0QUapzCRMvgrl4oW4AQ==} 175 | engines: {node: '>=18'} 176 | peerDependencies: 177 | svelte: ^3.0.0 || ^4.0.0 178 | peerDependenciesMeta: 179 | svelte: 180 | optional: true 181 | dependencies: 182 | '@ai-sdk/provider-utils': 1.0.17(zod@3.23.8) 183 | '@ai-sdk/ui-utils': 0.0.39(zod@3.23.8) 184 | sswr: 2.1.0(svelte@4.2.18) 185 | svelte: 4.2.18 186 | transitivePeerDependencies: 187 | - zod 188 | dev: false 189 | 190 | /@ai-sdk/ui-utils@0.0.39(zod@3.23.8): 191 | resolution: {integrity: sha512-yxlJBFEiWR7rf/oS7MFX9O5Hr7VYV0ipMBrvds66N3+m52/nCbBB5C/eBefzeR+hoGc/r5xGo7Yd1cncGYHHTw==} 192 | engines: {node: '>=18'} 193 | peerDependencies: 194 | zod: ^3.0.0 195 | peerDependenciesMeta: 196 | zod: 197 | optional: true 198 | dependencies: 199 | '@ai-sdk/provider': 0.0.22 200 | '@ai-sdk/provider-utils': 1.0.17(zod@3.23.8) 201 | json-schema: 0.4.0 202 | secure-json-parse: 2.7.0 203 | zod: 3.23.8 204 | zod-to-json-schema: 3.23.2(zod@3.23.8) 205 | dev: false 206 | 207 | /@ai-sdk/vue@0.0.44(vue@3.4.35)(zod@3.23.8): 208 | resolution: {integrity: sha512-IsDCoy7u4V081dKT1i6b/Cxh2G0aftetbif+qNQGh5QeU9TtGs9KDW+onPkXeqlDQcpMN0Q5zaNGaZ7YBK50Gw==} 209 | engines: {node: '>=18'} 210 | peerDependencies: 211 | vue: ^3.3.4 212 | peerDependenciesMeta: 213 | vue: 214 | optional: true 215 | dependencies: 216 | '@ai-sdk/provider-utils': 1.0.17(zod@3.23.8) 217 | '@ai-sdk/ui-utils': 0.0.39(zod@3.23.8) 218 | swrv: 1.0.4(vue@3.4.35) 219 | vue: 3.4.35(typescript@5.5.4) 220 | transitivePeerDependencies: 221 | - zod 222 | dev: false 223 | 224 | /@alloc/quick-lru@5.2.0: 225 | resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 226 | engines: {node: '>=10'} 227 | dev: true 228 | 229 | /@ampproject/remapping@2.3.0: 230 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 231 | engines: {node: '>=6.0.0'} 232 | dependencies: 233 | '@jridgewell/gen-mapping': 0.3.5 234 | '@jridgewell/trace-mapping': 0.3.25 235 | dev: false 236 | 237 | /@babel/helper-string-parser@7.24.8: 238 | resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} 239 | engines: {node: '>=6.9.0'} 240 | dev: false 241 | 242 | /@babel/helper-validator-identifier@7.24.7: 243 | resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} 244 | engines: {node: '>=6.9.0'} 245 | dev: false 246 | 247 | /@babel/parser@7.25.3: 248 | resolution: {integrity: sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==} 249 | engines: {node: '>=6.0.0'} 250 | hasBin: true 251 | dependencies: 252 | '@babel/types': 7.25.2 253 | dev: false 254 | 255 | /@babel/runtime@7.25.4: 256 | resolution: {integrity: sha512-DSgLeL/FNcpXuzav5wfYvHCGvynXkJbn3Zvc3823AEe9nPwW9IK4UoCSS5yGymmQzN0pCPvivtgS6/8U2kkm1w==} 257 | engines: {node: '>=6.9.0'} 258 | dependencies: 259 | regenerator-runtime: 0.14.1 260 | dev: false 261 | 262 | /@babel/types@7.25.2: 263 | resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==} 264 | engines: {node: '>=6.9.0'} 265 | dependencies: 266 | '@babel/helper-string-parser': 7.24.8 267 | '@babel/helper-validator-identifier': 7.24.7 268 | to-fast-properties: 2.0.0 269 | dev: false 270 | 271 | /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): 272 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 273 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 274 | peerDependencies: 275 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 276 | dependencies: 277 | eslint: 8.57.0 278 | eslint-visitor-keys: 3.4.3 279 | dev: true 280 | 281 | /@eslint-community/regexpp@4.11.0: 282 | resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} 283 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 284 | dev: true 285 | 286 | /@eslint/eslintrc@2.1.4: 287 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 288 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 289 | dependencies: 290 | ajv: 6.12.6 291 | debug: 4.3.6 292 | espree: 9.6.1 293 | globals: 13.24.0 294 | ignore: 5.3.1 295 | import-fresh: 3.3.0 296 | js-yaml: 4.1.0 297 | minimatch: 3.1.2 298 | strip-json-comments: 3.1.1 299 | transitivePeerDependencies: 300 | - supports-color 301 | dev: true 302 | 303 | /@eslint/js@8.57.0: 304 | resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} 305 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 306 | dev: true 307 | 308 | /@humanwhocodes/config-array@0.11.14: 309 | resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} 310 | engines: {node: '>=10.10.0'} 311 | deprecated: Use @eslint/config-array instead 312 | dependencies: 313 | '@humanwhocodes/object-schema': 2.0.3 314 | debug: 4.3.6 315 | minimatch: 3.1.2 316 | transitivePeerDependencies: 317 | - supports-color 318 | dev: true 319 | 320 | /@humanwhocodes/module-importer@1.0.1: 321 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 322 | engines: {node: '>=12.22'} 323 | dev: true 324 | 325 | /@humanwhocodes/object-schema@2.0.3: 326 | resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} 327 | deprecated: Use @eslint/object-schema instead 328 | dev: true 329 | 330 | /@isaacs/cliui@8.0.2: 331 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 332 | engines: {node: '>=12'} 333 | dependencies: 334 | string-width: 5.1.2 335 | string-width-cjs: /string-width@4.2.3 336 | strip-ansi: 7.1.0 337 | strip-ansi-cjs: /strip-ansi@6.0.1 338 | wrap-ansi: 8.1.0 339 | wrap-ansi-cjs: /wrap-ansi@7.0.0 340 | dev: true 341 | 342 | /@jridgewell/gen-mapping@0.3.5: 343 | resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} 344 | engines: {node: '>=6.0.0'} 345 | dependencies: 346 | '@jridgewell/set-array': 1.2.1 347 | '@jridgewell/sourcemap-codec': 1.5.0 348 | '@jridgewell/trace-mapping': 0.3.25 349 | 350 | /@jridgewell/resolve-uri@3.1.2: 351 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 352 | engines: {node: '>=6.0.0'} 353 | 354 | /@jridgewell/set-array@1.2.1: 355 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 356 | engines: {node: '>=6.0.0'} 357 | 358 | /@jridgewell/sourcemap-codec@1.5.0: 359 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 360 | 361 | /@jridgewell/trace-mapping@0.3.25: 362 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 363 | dependencies: 364 | '@jridgewell/resolve-uri': 3.1.2 365 | '@jridgewell/sourcemap-codec': 1.5.0 366 | 367 | /@next/env@14.2.5: 368 | resolution: {integrity: sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==} 369 | dev: false 370 | 371 | /@next/eslint-plugin-next@14.2.5: 372 | resolution: {integrity: sha512-LY3btOpPh+OTIpviNojDpUdIbHW9j0JBYBjsIp8IxtDFfYFyORvw3yNq6N231FVqQA7n7lwaf7xHbVJlA1ED7g==} 373 | dependencies: 374 | glob: 10.3.10 375 | dev: true 376 | 377 | /@next/swc-darwin-arm64@14.2.5: 378 | resolution: {integrity: sha512-/9zVxJ+K9lrzSGli1///ujyRfon/ZneeZ+v4ptpiPoOU+GKZnm8Wj8ELWU1Pm7GHltYRBklmXMTUqM/DqQ99FQ==} 379 | engines: {node: '>= 10'} 380 | cpu: [arm64] 381 | os: [darwin] 382 | requiresBuild: true 383 | dev: false 384 | optional: true 385 | 386 | /@next/swc-darwin-x64@14.2.5: 387 | resolution: {integrity: sha512-vXHOPCwfDe9qLDuq7U1OYM2wUY+KQ4Ex6ozwsKxp26BlJ6XXbHleOUldenM67JRyBfVjv371oneEvYd3H2gNSA==} 388 | engines: {node: '>= 10'} 389 | cpu: [x64] 390 | os: [darwin] 391 | requiresBuild: true 392 | dev: false 393 | optional: true 394 | 395 | /@next/swc-linux-arm64-gnu@14.2.5: 396 | resolution: {integrity: sha512-vlhB8wI+lj8q1ExFW8lbWutA4M2ZazQNvMWuEDqZcuJJc78iUnLdPPunBPX8rC4IgT6lIx/adB+Cwrl99MzNaA==} 397 | engines: {node: '>= 10'} 398 | cpu: [arm64] 399 | os: [linux] 400 | requiresBuild: true 401 | dev: false 402 | optional: true 403 | 404 | /@next/swc-linux-arm64-musl@14.2.5: 405 | resolution: {integrity: sha512-NpDB9NUR2t0hXzJJwQSGu1IAOYybsfeB+LxpGsXrRIb7QOrYmidJz3shzY8cM6+rO4Aojuef0N/PEaX18pi9OA==} 406 | engines: {node: '>= 10'} 407 | cpu: [arm64] 408 | os: [linux] 409 | requiresBuild: true 410 | dev: false 411 | optional: true 412 | 413 | /@next/swc-linux-x64-gnu@14.2.5: 414 | resolution: {integrity: sha512-8XFikMSxWleYNryWIjiCX+gU201YS+erTUidKdyOVYi5qUQo/gRxv/3N1oZFCgqpesN6FPeqGM72Zve+nReVXQ==} 415 | engines: {node: '>= 10'} 416 | cpu: [x64] 417 | os: [linux] 418 | requiresBuild: true 419 | dev: false 420 | optional: true 421 | 422 | /@next/swc-linux-x64-musl@14.2.5: 423 | resolution: {integrity: sha512-6QLwi7RaYiQDcRDSU/os40r5o06b5ue7Jsk5JgdRBGGp8l37RZEh9JsLSM8QF0YDsgcosSeHjglgqi25+m04IQ==} 424 | engines: {node: '>= 10'} 425 | cpu: [x64] 426 | os: [linux] 427 | requiresBuild: true 428 | dev: false 429 | optional: true 430 | 431 | /@next/swc-win32-arm64-msvc@14.2.5: 432 | resolution: {integrity: sha512-1GpG2VhbspO+aYoMOQPQiqc/tG3LzmsdBH0LhnDS3JrtDx2QmzXe0B6mSZZiN3Bq7IOMXxv1nlsjzoS1+9mzZw==} 433 | engines: {node: '>= 10'} 434 | cpu: [arm64] 435 | os: [win32] 436 | requiresBuild: true 437 | dev: false 438 | optional: true 439 | 440 | /@next/swc-win32-ia32-msvc@14.2.5: 441 | resolution: {integrity: sha512-Igh9ZlxwvCDsu6438FXlQTHlRno4gFpJzqPjSIBZooD22tKeI4fE/YMRoHVJHmrQ2P5YL1DoZ0qaOKkbeFWeMg==} 442 | engines: {node: '>= 10'} 443 | cpu: [ia32] 444 | os: [win32] 445 | requiresBuild: true 446 | dev: false 447 | optional: true 448 | 449 | /@next/swc-win32-x64-msvc@14.2.5: 450 | resolution: {integrity: sha512-tEQ7oinq1/CjSG9uSTerca3v4AZ+dFa+4Yu6ihaG8Ud8ddqLQgFGcnwYls13H5X5CPDPZJdYxyeMui6muOLd4g==} 451 | engines: {node: '>= 10'} 452 | cpu: [x64] 453 | os: [win32] 454 | requiresBuild: true 455 | dev: false 456 | optional: true 457 | 458 | /@nodelib/fs.scandir@2.1.5: 459 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 460 | engines: {node: '>= 8'} 461 | dependencies: 462 | '@nodelib/fs.stat': 2.0.5 463 | run-parallel: 1.2.0 464 | dev: true 465 | 466 | /@nodelib/fs.stat@2.0.5: 467 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 468 | engines: {node: '>= 8'} 469 | dev: true 470 | 471 | /@nodelib/fs.walk@1.2.8: 472 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 473 | engines: {node: '>= 8'} 474 | dependencies: 475 | '@nodelib/fs.scandir': 2.1.5 476 | fastq: 1.17.1 477 | dev: true 478 | 479 | /@opentelemetry/api@1.9.0: 480 | resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} 481 | engines: {node: '>=8.0.0'} 482 | dev: false 483 | 484 | /@pkgjs/parseargs@0.11.0: 485 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 486 | engines: {node: '>=14'} 487 | requiresBuild: true 488 | dev: true 489 | optional: true 490 | 491 | /@rushstack/eslint-patch@1.10.4: 492 | resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==} 493 | dev: true 494 | 495 | /@swc/counter@0.1.3: 496 | resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} 497 | dev: false 498 | 499 | /@swc/helpers@0.5.5: 500 | resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} 501 | dependencies: 502 | '@swc/counter': 0.1.3 503 | tslib: 2.6.3 504 | dev: false 505 | 506 | /@types/d3-scale@4.0.8: 507 | resolution: {integrity: sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==} 508 | dependencies: 509 | '@types/d3-time': 3.0.3 510 | dev: true 511 | 512 | /@types/d3-time@3.0.3: 513 | resolution: {integrity: sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==} 514 | dev: true 515 | 516 | /@types/debug@4.1.12: 517 | resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} 518 | dependencies: 519 | '@types/ms': 0.7.34 520 | dev: false 521 | 522 | /@types/diff-match-patch@1.0.36: 523 | resolution: {integrity: sha512-xFdR6tkm0MWvBfO8xXCSsinYxHcqkQUlcHeSpMC2ukzOb6lwQAfDmW+Qt0AvlGd8HpsS28qKsB+oPeJn9I39jg==} 524 | dev: false 525 | 526 | /@types/estree-jsx@1.0.5: 527 | resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} 528 | dependencies: 529 | '@types/estree': 1.0.5 530 | dev: false 531 | 532 | /@types/estree@1.0.5: 533 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} 534 | dev: false 535 | 536 | /@types/hast@3.0.4: 537 | resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} 538 | dependencies: 539 | '@types/unist': 3.0.2 540 | dev: false 541 | 542 | /@types/js-cookie@2.2.7: 543 | resolution: {integrity: sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==} 544 | dev: false 545 | 546 | /@types/json5@0.0.29: 547 | resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} 548 | dev: true 549 | 550 | /@types/mdast@4.0.4: 551 | resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} 552 | dependencies: 553 | '@types/unist': 3.0.2 554 | dev: false 555 | 556 | /@types/ms@0.7.34: 557 | resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} 558 | dev: false 559 | 560 | /@types/node@20.14.13: 561 | resolution: {integrity: sha512-+bHoGiZb8UiQ0+WEtmph2IWQCjIqg8MDZMAV+ppRRhUZnquF5mQkP/9vpSwJClEiSM/C7fZZExPzfU0vJTyp8w==} 562 | dependencies: 563 | undici-types: 5.26.5 564 | dev: true 565 | 566 | /@types/prop-types@15.7.12: 567 | resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} 568 | 569 | /@types/react-dom@18.3.0: 570 | resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} 571 | dependencies: 572 | '@types/react': 18.3.3 573 | dev: true 574 | 575 | /@types/react@18.3.3: 576 | resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} 577 | dependencies: 578 | '@types/prop-types': 15.7.12 579 | csstype: 3.1.3 580 | 581 | /@types/unist@2.0.10: 582 | resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} 583 | dev: false 584 | 585 | /@types/unist@3.0.2: 586 | resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} 587 | dev: false 588 | 589 | /@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4): 590 | resolution: {integrity: sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==} 591 | engines: {node: ^16.0.0 || >=18.0.0} 592 | peerDependencies: 593 | eslint: ^8.56.0 594 | typescript: '*' 595 | peerDependenciesMeta: 596 | typescript: 597 | optional: true 598 | dependencies: 599 | '@typescript-eslint/scope-manager': 7.2.0 600 | '@typescript-eslint/types': 7.2.0 601 | '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.5.4) 602 | '@typescript-eslint/visitor-keys': 7.2.0 603 | debug: 4.3.6 604 | eslint: 8.57.0 605 | typescript: 5.5.4 606 | transitivePeerDependencies: 607 | - supports-color 608 | dev: true 609 | 610 | /@typescript-eslint/scope-manager@7.2.0: 611 | resolution: {integrity: sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==} 612 | engines: {node: ^16.0.0 || >=18.0.0} 613 | dependencies: 614 | '@typescript-eslint/types': 7.2.0 615 | '@typescript-eslint/visitor-keys': 7.2.0 616 | dev: true 617 | 618 | /@typescript-eslint/types@7.2.0: 619 | resolution: {integrity: sha512-XFtUHPI/abFhm4cbCDc5Ykc8npOKBSJePY3a3s+lwumt7XWJuzP5cZcfZ610MIPHjQjNsOLlYK8ASPaNG8UiyA==} 620 | engines: {node: ^16.0.0 || >=18.0.0} 621 | dev: true 622 | 623 | /@typescript-eslint/typescript-estree@7.2.0(typescript@5.5.4): 624 | resolution: {integrity: sha512-cyxS5WQQCoBwSakpMrvMXuMDEbhOo9bNHHrNcEWis6XHx6KF518tkF1wBvKIn/tpq5ZpUYK7Bdklu8qY0MsFIA==} 625 | engines: {node: ^16.0.0 || >=18.0.0} 626 | peerDependencies: 627 | typescript: '*' 628 | peerDependenciesMeta: 629 | typescript: 630 | optional: true 631 | dependencies: 632 | '@typescript-eslint/types': 7.2.0 633 | '@typescript-eslint/visitor-keys': 7.2.0 634 | debug: 4.3.6 635 | globby: 11.1.0 636 | is-glob: 4.0.3 637 | minimatch: 9.0.3 638 | semver: 7.6.3 639 | ts-api-utils: 1.3.0(typescript@5.5.4) 640 | typescript: 5.5.4 641 | transitivePeerDependencies: 642 | - supports-color 643 | dev: true 644 | 645 | /@typescript-eslint/visitor-keys@7.2.0: 646 | resolution: {integrity: sha512-c6EIQRHhcpl6+tO8EMR+kjkkV+ugUNXOmeASA1rlzkd8EPIriavpWoiEz1HR/VLhbVIdhqnV6E7JZm00cBDx2A==} 647 | engines: {node: ^16.0.0 || >=18.0.0} 648 | dependencies: 649 | '@typescript-eslint/types': 7.2.0 650 | eslint-visitor-keys: 3.4.3 651 | dev: true 652 | 653 | /@ungap/structured-clone@1.2.0: 654 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 655 | 656 | /@upstash/redis@1.34.0: 657 | resolution: {integrity: sha512-TrXNoJLkysIl8SBc4u9bNnyoFYoILpCcFJcLyWCccb/QSUmaVKdvY0m5diZqc3btExsapcMbaw/s/wh9Sf1pJw==} 658 | dependencies: 659 | crypto-js: 4.2.0 660 | dev: false 661 | 662 | /@vercel/analytics@1.3.1(next@14.2.5)(react@18.3.1): 663 | resolution: {integrity: sha512-xhSlYgAuJ6Q4WQGkzYTLmXwhYl39sWjoMA3nHxfkvG+WdBT25c563a7QhwwKivEOZtPJXifYHR1m2ihoisbWyA==} 664 | peerDependencies: 665 | next: '>= 13' 666 | react: ^18 || ^19 667 | peerDependenciesMeta: 668 | next: 669 | optional: true 670 | react: 671 | optional: true 672 | dependencies: 673 | next: 14.2.5(react-dom@18.3.1)(react@18.3.1) 674 | react: 18.3.1 675 | server-only: 0.0.1 676 | dev: false 677 | 678 | /@vercel/kv@2.0.0: 679 | resolution: {integrity: sha512-zdVrhbzZBYo5d1Hfn4bKtqCeKf0FuzW8rSHauzQVMUgv1+1JOwof2mWcBuI+YMJy8s0G0oqAUfQ7HgUDzb8EbA==} 680 | engines: {node: '>=14.6'} 681 | dependencies: 682 | '@upstash/redis': 1.34.0 683 | dev: false 684 | 685 | /@vue/compiler-core@3.4.35: 686 | resolution: {integrity: sha512-gKp0zGoLnMYtw4uS/SJRRO7rsVggLjvot3mcctlMXunYNsX+aRJDqqw/lV5/gHK91nvaAAlWFgdVl020AW1Prg==} 687 | dependencies: 688 | '@babel/parser': 7.25.3 689 | '@vue/shared': 3.4.35 690 | entities: 4.5.0 691 | estree-walker: 2.0.2 692 | source-map-js: 1.2.0 693 | dev: false 694 | 695 | /@vue/compiler-dom@3.4.35: 696 | resolution: {integrity: sha512-pWIZRL76/oE/VMhdv/ovZfmuooEni6JPG1BFe7oLk5DZRo/ImydXijoZl/4kh2406boRQ7lxTYzbZEEXEhj9NQ==} 697 | dependencies: 698 | '@vue/compiler-core': 3.4.35 699 | '@vue/shared': 3.4.35 700 | dev: false 701 | 702 | /@vue/compiler-sfc@3.4.35: 703 | resolution: {integrity: sha512-xacnRS/h/FCsjsMfxBkzjoNxyxEyKyZfBch/P4vkLRvYJwe5ChXmZZrj8Dsed/752H2Q3JE8kYu9Uyha9J6PgA==} 704 | dependencies: 705 | '@babel/parser': 7.25.3 706 | '@vue/compiler-core': 3.4.35 707 | '@vue/compiler-dom': 3.4.35 708 | '@vue/compiler-ssr': 3.4.35 709 | '@vue/shared': 3.4.35 710 | estree-walker: 2.0.2 711 | magic-string: 0.30.11 712 | postcss: 8.4.40 713 | source-map-js: 1.2.0 714 | dev: false 715 | 716 | /@vue/compiler-ssr@3.4.35: 717 | resolution: {integrity: sha512-7iynB+0KB1AAJKk/biENTV5cRGHRdbdaD7Mx3nWcm1W8bVD6QmnH3B4AHhQQ1qZHhqFwzEzMwiytXm3PX1e60A==} 718 | dependencies: 719 | '@vue/compiler-dom': 3.4.35 720 | '@vue/shared': 3.4.35 721 | dev: false 722 | 723 | /@vue/reactivity@3.4.35: 724 | resolution: {integrity: sha512-Ggtz7ZZHakriKioveJtPlStYardwQH6VCs9V13/4qjHSQb/teE30LVJNrbBVs4+aoYGtTQKJbTe4CWGxVZrvEw==} 725 | dependencies: 726 | '@vue/shared': 3.4.35 727 | dev: false 728 | 729 | /@vue/runtime-core@3.4.35: 730 | resolution: {integrity: sha512-D+BAjFoWwT5wtITpSxwqfWZiBClhBbR+bm0VQlWYFOadUUXFo+5wbe9ErXhLvwguPiLZdEF13QAWi2vP3ZD5tA==} 731 | dependencies: 732 | '@vue/reactivity': 3.4.35 733 | '@vue/shared': 3.4.35 734 | dev: false 735 | 736 | /@vue/runtime-dom@3.4.35: 737 | resolution: {integrity: sha512-yGOlbos+MVhlS5NWBF2HDNgblG8e2MY3+GigHEyR/dREAluvI5tuUUgie3/9XeqhPE4LF0i2wjlduh5thnfOqw==} 738 | dependencies: 739 | '@vue/reactivity': 3.4.35 740 | '@vue/runtime-core': 3.4.35 741 | '@vue/shared': 3.4.35 742 | csstype: 3.1.3 743 | dev: false 744 | 745 | /@vue/server-renderer@3.4.35(vue@3.4.35): 746 | resolution: {integrity: sha512-iZ0e/u9mRE4T8tNhlo0tbA+gzVkgv8r5BX6s1kRbOZqfpq14qoIvCZ5gIgraOmYkMYrSEZgkkojFPr+Nyq/Mnw==} 747 | peerDependencies: 748 | vue: 3.4.35 749 | dependencies: 750 | '@vue/compiler-ssr': 3.4.35 751 | '@vue/shared': 3.4.35 752 | vue: 3.4.35(typescript@5.5.4) 753 | dev: false 754 | 755 | /@vue/shared@3.4.35: 756 | resolution: {integrity: sha512-hvuhBYYDe+b1G8KHxsQ0diDqDMA8D9laxWZhNAjE83VZb5UDaXl9Xnz7cGdDSyiHM90qqI/CyGMcpBpiDy6VVQ==} 757 | dev: false 758 | 759 | /@xobotyi/scrollbar-width@1.9.5: 760 | resolution: {integrity: sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==} 761 | dev: false 762 | 763 | /acorn-jsx@5.3.2(acorn@8.12.1): 764 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 765 | peerDependencies: 766 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 767 | dependencies: 768 | acorn: 8.12.1 769 | dev: true 770 | 771 | /acorn@8.12.1: 772 | resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} 773 | engines: {node: '>=0.4.0'} 774 | hasBin: true 775 | 776 | /ai@3.3.20(react@18.3.1)(svelte@4.2.18)(vue@3.4.35)(zod@3.23.8): 777 | resolution: {integrity: sha512-GKiL34BPVGgSEDkUlt8nyVRZkx1btnbXyw/bZKj1Jx5sCn/OY/qgiACzakhRzC/90UlxmrMsU1rZGW+Xr8+kFA==} 778 | engines: {node: '>=18'} 779 | peerDependencies: 780 | openai: ^4.42.0 781 | react: ^18 || ^19 782 | sswr: ^2.1.0 783 | svelte: ^3.0.0 || ^4.0.0 784 | zod: ^3.0.0 785 | peerDependenciesMeta: 786 | openai: 787 | optional: true 788 | react: 789 | optional: true 790 | sswr: 791 | optional: true 792 | svelte: 793 | optional: true 794 | zod: 795 | optional: true 796 | dependencies: 797 | '@ai-sdk/provider': 0.0.22 798 | '@ai-sdk/provider-utils': 1.0.17(zod@3.23.8) 799 | '@ai-sdk/react': 0.0.52(react@18.3.1)(zod@3.23.8) 800 | '@ai-sdk/solid': 0.0.42(zod@3.23.8) 801 | '@ai-sdk/svelte': 0.0.44(svelte@4.2.18)(zod@3.23.8) 802 | '@ai-sdk/ui-utils': 0.0.39(zod@3.23.8) 803 | '@ai-sdk/vue': 0.0.44(vue@3.4.35)(zod@3.23.8) 804 | '@opentelemetry/api': 1.9.0 805 | eventsource-parser: 1.1.2 806 | json-schema: 0.4.0 807 | jsondiffpatch: 0.6.0 808 | nanoid: 3.3.6 809 | react: 18.3.1 810 | secure-json-parse: 2.7.0 811 | svelte: 4.2.18 812 | zod: 3.23.8 813 | zod-to-json-schema: 3.23.2(zod@3.23.8) 814 | transitivePeerDependencies: 815 | - solid-js 816 | - vue 817 | dev: false 818 | 819 | /ajv@6.12.6: 820 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 821 | dependencies: 822 | fast-deep-equal: 3.1.3 823 | fast-json-stable-stringify: 2.1.0 824 | json-schema-traverse: 0.4.1 825 | uri-js: 4.4.1 826 | dev: true 827 | 828 | /ansi-regex@5.0.1: 829 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 830 | engines: {node: '>=8'} 831 | dev: true 832 | 833 | /ansi-regex@6.0.1: 834 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 835 | engines: {node: '>=12'} 836 | dev: true 837 | 838 | /ansi-styles@4.3.0: 839 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 840 | engines: {node: '>=8'} 841 | dependencies: 842 | color-convert: 2.0.1 843 | dev: true 844 | 845 | /ansi-styles@6.2.1: 846 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 847 | engines: {node: '>=12'} 848 | dev: true 849 | 850 | /any-promise@1.3.0: 851 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 852 | dev: true 853 | 854 | /anymatch@3.1.3: 855 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 856 | engines: {node: '>= 8'} 857 | dependencies: 858 | normalize-path: 3.0.0 859 | picomatch: 2.3.1 860 | dev: true 861 | 862 | /arg@5.0.2: 863 | resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} 864 | dev: true 865 | 866 | /argparse@2.0.1: 867 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 868 | dev: true 869 | 870 | /aria-query@5.1.3: 871 | resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} 872 | dependencies: 873 | deep-equal: 2.2.3 874 | dev: true 875 | 876 | /aria-query@5.3.0: 877 | resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} 878 | dependencies: 879 | dequal: 2.0.3 880 | dev: false 881 | 882 | /array-buffer-byte-length@1.0.1: 883 | resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} 884 | engines: {node: '>= 0.4'} 885 | dependencies: 886 | call-bind: 1.0.7 887 | is-array-buffer: 3.0.4 888 | dev: true 889 | 890 | /array-includes@3.1.8: 891 | resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} 892 | engines: {node: '>= 0.4'} 893 | dependencies: 894 | call-bind: 1.0.7 895 | define-properties: 1.2.1 896 | es-abstract: 1.23.3 897 | es-object-atoms: 1.0.0 898 | get-intrinsic: 1.2.4 899 | is-string: 1.0.7 900 | dev: true 901 | 902 | /array-union@2.1.0: 903 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 904 | engines: {node: '>=8'} 905 | dev: true 906 | 907 | /array.prototype.findlast@1.2.5: 908 | resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} 909 | engines: {node: '>= 0.4'} 910 | dependencies: 911 | call-bind: 1.0.7 912 | define-properties: 1.2.1 913 | es-abstract: 1.23.3 914 | es-errors: 1.3.0 915 | es-object-atoms: 1.0.0 916 | es-shim-unscopables: 1.0.2 917 | dev: true 918 | 919 | /array.prototype.findlastindex@1.2.5: 920 | resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} 921 | engines: {node: '>= 0.4'} 922 | dependencies: 923 | call-bind: 1.0.7 924 | define-properties: 1.2.1 925 | es-abstract: 1.23.3 926 | es-errors: 1.3.0 927 | es-object-atoms: 1.0.0 928 | es-shim-unscopables: 1.0.2 929 | dev: true 930 | 931 | /array.prototype.flat@1.3.2: 932 | resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} 933 | engines: {node: '>= 0.4'} 934 | dependencies: 935 | call-bind: 1.0.7 936 | define-properties: 1.2.1 937 | es-abstract: 1.23.3 938 | es-shim-unscopables: 1.0.2 939 | dev: true 940 | 941 | /array.prototype.flatmap@1.3.2: 942 | resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} 943 | engines: {node: '>= 0.4'} 944 | dependencies: 945 | call-bind: 1.0.7 946 | define-properties: 1.2.1 947 | es-abstract: 1.23.3 948 | es-shim-unscopables: 1.0.2 949 | dev: true 950 | 951 | /array.prototype.tosorted@1.1.4: 952 | resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} 953 | engines: {node: '>= 0.4'} 954 | dependencies: 955 | call-bind: 1.0.7 956 | define-properties: 1.2.1 957 | es-abstract: 1.23.3 958 | es-errors: 1.3.0 959 | es-shim-unscopables: 1.0.2 960 | dev: true 961 | 962 | /arraybuffer.prototype.slice@1.0.3: 963 | resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} 964 | engines: {node: '>= 0.4'} 965 | dependencies: 966 | array-buffer-byte-length: 1.0.1 967 | call-bind: 1.0.7 968 | define-properties: 1.2.1 969 | es-abstract: 1.23.3 970 | es-errors: 1.3.0 971 | get-intrinsic: 1.2.4 972 | is-array-buffer: 3.0.4 973 | is-shared-array-buffer: 1.0.3 974 | dev: true 975 | 976 | /ast-types-flow@0.0.8: 977 | resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} 978 | dev: true 979 | 980 | /available-typed-arrays@1.0.7: 981 | resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} 982 | engines: {node: '>= 0.4'} 983 | dependencies: 984 | possible-typed-array-names: 1.0.0 985 | dev: true 986 | 987 | /axe-core@4.10.0: 988 | resolution: {integrity: sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==} 989 | engines: {node: '>=4'} 990 | dev: true 991 | 992 | /axobject-query@3.1.1: 993 | resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==} 994 | dependencies: 995 | deep-equal: 2.2.3 996 | dev: true 997 | 998 | /axobject-query@4.1.0: 999 | resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 1000 | engines: {node: '>= 0.4'} 1001 | dev: false 1002 | 1003 | /bail@2.0.2: 1004 | resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} 1005 | dev: false 1006 | 1007 | /balanced-match@1.0.2: 1008 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1009 | dev: true 1010 | 1011 | /binary-extensions@2.3.0: 1012 | resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} 1013 | engines: {node: '>=8'} 1014 | dev: true 1015 | 1016 | /brace-expansion@1.1.11: 1017 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1018 | dependencies: 1019 | balanced-match: 1.0.2 1020 | concat-map: 0.0.1 1021 | dev: true 1022 | 1023 | /brace-expansion@2.0.1: 1024 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 1025 | dependencies: 1026 | balanced-match: 1.0.2 1027 | dev: true 1028 | 1029 | /braces@3.0.3: 1030 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 1031 | engines: {node: '>=8'} 1032 | dependencies: 1033 | fill-range: 7.1.1 1034 | dev: true 1035 | 1036 | /busboy@1.6.0: 1037 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} 1038 | engines: {node: '>=10.16.0'} 1039 | dependencies: 1040 | streamsearch: 1.1.0 1041 | dev: false 1042 | 1043 | /call-bind@1.0.7: 1044 | resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} 1045 | engines: {node: '>= 0.4'} 1046 | dependencies: 1047 | es-define-property: 1.0.0 1048 | es-errors: 1.3.0 1049 | function-bind: 1.1.2 1050 | get-intrinsic: 1.2.4 1051 | set-function-length: 1.2.2 1052 | dev: true 1053 | 1054 | /callsites@3.1.0: 1055 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 1056 | engines: {node: '>=6'} 1057 | dev: true 1058 | 1059 | /camelcase-css@2.0.1: 1060 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 1061 | engines: {node: '>= 6'} 1062 | dev: true 1063 | 1064 | /caniuse-lite@1.0.30001645: 1065 | resolution: {integrity: sha512-GFtY2+qt91kzyMk6j48dJcwJVq5uTkk71XxE3RtScx7XWRLsO7bU44LOFkOZYR8w9YMS0UhPSYpN/6rAMImmLw==} 1066 | dev: false 1067 | 1068 | /ccount@2.0.1: 1069 | resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} 1070 | dev: false 1071 | 1072 | /chalk@4.1.2: 1073 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1074 | engines: {node: '>=10'} 1075 | dependencies: 1076 | ansi-styles: 4.3.0 1077 | supports-color: 7.2.0 1078 | dev: true 1079 | 1080 | /chalk@5.3.0: 1081 | resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} 1082 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} 1083 | dev: false 1084 | 1085 | /character-entities-html4@2.1.0: 1086 | resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} 1087 | dev: false 1088 | 1089 | /character-entities-legacy@3.0.0: 1090 | resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} 1091 | dev: false 1092 | 1093 | /character-entities@2.0.2: 1094 | resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} 1095 | dev: false 1096 | 1097 | /character-reference-invalid@2.0.1: 1098 | resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} 1099 | dev: false 1100 | 1101 | /chokidar@3.6.0: 1102 | resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} 1103 | engines: {node: '>= 8.10.0'} 1104 | dependencies: 1105 | anymatch: 3.1.3 1106 | braces: 3.0.3 1107 | glob-parent: 5.1.2 1108 | is-binary-path: 2.1.0 1109 | is-glob: 4.0.3 1110 | normalize-path: 3.0.0 1111 | readdirp: 3.6.0 1112 | optionalDependencies: 1113 | fsevents: 2.3.3 1114 | dev: true 1115 | 1116 | /client-only@0.0.1: 1117 | resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} 1118 | dev: false 1119 | 1120 | /code-red@1.0.4: 1121 | resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} 1122 | dependencies: 1123 | '@jridgewell/sourcemap-codec': 1.5.0 1124 | '@types/estree': 1.0.5 1125 | acorn: 8.12.1 1126 | estree-walker: 3.0.3 1127 | periscopic: 3.1.0 1128 | dev: false 1129 | 1130 | /color-convert@2.0.1: 1131 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1132 | engines: {node: '>=7.0.0'} 1133 | dependencies: 1134 | color-name: 1.1.4 1135 | dev: true 1136 | 1137 | /color-name@1.1.4: 1138 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1139 | dev: true 1140 | 1141 | /comma-separated-tokens@2.0.3: 1142 | resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} 1143 | dev: false 1144 | 1145 | /commander@4.1.1: 1146 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 1147 | engines: {node: '>= 6'} 1148 | dev: true 1149 | 1150 | /concat-map@0.0.1: 1151 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1152 | dev: true 1153 | 1154 | /copy-to-clipboard@3.3.3: 1155 | resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} 1156 | dependencies: 1157 | toggle-selection: 1.0.6 1158 | dev: false 1159 | 1160 | /cross-spawn@7.0.3: 1161 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1162 | engines: {node: '>= 8'} 1163 | dependencies: 1164 | path-key: 3.1.1 1165 | shebang-command: 2.0.0 1166 | which: 2.0.2 1167 | dev: true 1168 | 1169 | /crypto-js@4.2.0: 1170 | resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} 1171 | dev: false 1172 | 1173 | /css-in-js-utils@3.1.0: 1174 | resolution: {integrity: sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==} 1175 | dependencies: 1176 | hyphenate-style-name: 1.1.0 1177 | dev: false 1178 | 1179 | /css-tree@1.1.3: 1180 | resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} 1181 | engines: {node: '>=8.0.0'} 1182 | dependencies: 1183 | mdn-data: 2.0.14 1184 | source-map: 0.6.1 1185 | dev: false 1186 | 1187 | /css-tree@2.3.1: 1188 | resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} 1189 | engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} 1190 | dependencies: 1191 | mdn-data: 2.0.30 1192 | source-map-js: 1.2.0 1193 | dev: false 1194 | 1195 | /cssesc@3.0.0: 1196 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 1197 | engines: {node: '>=4'} 1198 | hasBin: true 1199 | dev: true 1200 | 1201 | /csstype@3.1.3: 1202 | resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} 1203 | 1204 | /d3-array@3.2.4: 1205 | resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==} 1206 | engines: {node: '>=12'} 1207 | dependencies: 1208 | internmap: 2.0.3 1209 | dev: false 1210 | 1211 | /d3-color@3.1.0: 1212 | resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==} 1213 | engines: {node: '>=12'} 1214 | dev: false 1215 | 1216 | /d3-format@3.1.0: 1217 | resolution: {integrity: sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==} 1218 | engines: {node: '>=12'} 1219 | dev: false 1220 | 1221 | /d3-interpolate@3.0.1: 1222 | resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==} 1223 | engines: {node: '>=12'} 1224 | dependencies: 1225 | d3-color: 3.1.0 1226 | dev: false 1227 | 1228 | /d3-scale@4.0.2: 1229 | resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==} 1230 | engines: {node: '>=12'} 1231 | dependencies: 1232 | d3-array: 3.2.4 1233 | d3-format: 3.1.0 1234 | d3-interpolate: 3.0.1 1235 | d3-time: 3.1.0 1236 | d3-time-format: 4.1.0 1237 | dev: false 1238 | 1239 | /d3-time-format@4.1.0: 1240 | resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==} 1241 | engines: {node: '>=12'} 1242 | dependencies: 1243 | d3-time: 3.1.0 1244 | dev: false 1245 | 1246 | /d3-time@3.1.0: 1247 | resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==} 1248 | engines: {node: '>=12'} 1249 | dependencies: 1250 | d3-array: 3.2.4 1251 | dev: false 1252 | 1253 | /damerau-levenshtein@1.0.8: 1254 | resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} 1255 | dev: true 1256 | 1257 | /data-view-buffer@1.0.1: 1258 | resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} 1259 | engines: {node: '>= 0.4'} 1260 | dependencies: 1261 | call-bind: 1.0.7 1262 | es-errors: 1.3.0 1263 | is-data-view: 1.0.1 1264 | dev: true 1265 | 1266 | /data-view-byte-length@1.0.1: 1267 | resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==} 1268 | engines: {node: '>= 0.4'} 1269 | dependencies: 1270 | call-bind: 1.0.7 1271 | es-errors: 1.3.0 1272 | is-data-view: 1.0.1 1273 | dev: true 1274 | 1275 | /data-view-byte-offset@1.0.0: 1276 | resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} 1277 | engines: {node: '>= 0.4'} 1278 | dependencies: 1279 | call-bind: 1.0.7 1280 | es-errors: 1.3.0 1281 | is-data-view: 1.0.1 1282 | dev: true 1283 | 1284 | /debug@3.2.7: 1285 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} 1286 | peerDependencies: 1287 | supports-color: '*' 1288 | peerDependenciesMeta: 1289 | supports-color: 1290 | optional: true 1291 | dependencies: 1292 | ms: 2.1.3 1293 | dev: true 1294 | 1295 | /debug@4.3.6: 1296 | resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} 1297 | engines: {node: '>=6.0'} 1298 | peerDependencies: 1299 | supports-color: '*' 1300 | peerDependenciesMeta: 1301 | supports-color: 1302 | optional: true 1303 | dependencies: 1304 | ms: 2.1.2 1305 | 1306 | /decode-named-character-reference@1.0.2: 1307 | resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} 1308 | dependencies: 1309 | character-entities: 2.0.2 1310 | dev: false 1311 | 1312 | /deep-equal@2.2.3: 1313 | resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} 1314 | engines: {node: '>= 0.4'} 1315 | dependencies: 1316 | array-buffer-byte-length: 1.0.1 1317 | call-bind: 1.0.7 1318 | es-get-iterator: 1.1.3 1319 | get-intrinsic: 1.2.4 1320 | is-arguments: 1.1.1 1321 | is-array-buffer: 3.0.4 1322 | is-date-object: 1.0.5 1323 | is-regex: 1.1.4 1324 | is-shared-array-buffer: 1.0.3 1325 | isarray: 2.0.5 1326 | object-is: 1.1.6 1327 | object-keys: 1.1.1 1328 | object.assign: 4.1.5 1329 | regexp.prototype.flags: 1.5.2 1330 | side-channel: 1.0.6 1331 | which-boxed-primitive: 1.0.2 1332 | which-collection: 1.0.2 1333 | which-typed-array: 1.1.15 1334 | dev: true 1335 | 1336 | /deep-is@0.1.4: 1337 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 1338 | dev: true 1339 | 1340 | /define-data-property@1.1.4: 1341 | resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} 1342 | engines: {node: '>= 0.4'} 1343 | dependencies: 1344 | es-define-property: 1.0.0 1345 | es-errors: 1.3.0 1346 | gopd: 1.0.1 1347 | dev: true 1348 | 1349 | /define-properties@1.2.1: 1350 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 1351 | engines: {node: '>= 0.4'} 1352 | dependencies: 1353 | define-data-property: 1.1.4 1354 | has-property-descriptors: 1.0.2 1355 | object-keys: 1.1.1 1356 | dev: true 1357 | 1358 | /dequal@2.0.3: 1359 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 1360 | engines: {node: '>=6'} 1361 | dev: false 1362 | 1363 | /devlop@1.1.0: 1364 | resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} 1365 | dependencies: 1366 | dequal: 2.0.3 1367 | dev: false 1368 | 1369 | /didyoumean@1.2.2: 1370 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 1371 | dev: true 1372 | 1373 | /diff-match-patch@1.0.5: 1374 | resolution: {integrity: sha512-IayShXAgj/QMXgB0IWmKx+rOPuGMhqm5w6jvFxmVenXKIzRqTAAsbBPT3kWQeGANj3jGgvcvv4yK6SxqYmikgw==} 1375 | dev: false 1376 | 1377 | /dir-glob@3.0.1: 1378 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 1379 | engines: {node: '>=8'} 1380 | dependencies: 1381 | path-type: 4.0.0 1382 | dev: true 1383 | 1384 | /dlv@1.1.3: 1385 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 1386 | dev: true 1387 | 1388 | /doctrine@2.1.0: 1389 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} 1390 | engines: {node: '>=0.10.0'} 1391 | dependencies: 1392 | esutils: 2.0.3 1393 | dev: true 1394 | 1395 | /doctrine@3.0.0: 1396 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 1397 | engines: {node: '>=6.0.0'} 1398 | dependencies: 1399 | esutils: 2.0.3 1400 | dev: true 1401 | 1402 | /eastasianwidth@0.2.0: 1403 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 1404 | dev: true 1405 | 1406 | /emoji-regex@8.0.0: 1407 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1408 | dev: true 1409 | 1410 | /emoji-regex@9.2.2: 1411 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 1412 | dev: true 1413 | 1414 | /enhanced-resolve@5.17.1: 1415 | resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} 1416 | engines: {node: '>=10.13.0'} 1417 | dependencies: 1418 | graceful-fs: 4.2.11 1419 | tapable: 2.2.1 1420 | dev: true 1421 | 1422 | /entities@4.5.0: 1423 | resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} 1424 | engines: {node: '>=0.12'} 1425 | dev: false 1426 | 1427 | /error-stack-parser@2.1.4: 1428 | resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} 1429 | dependencies: 1430 | stackframe: 1.3.4 1431 | dev: false 1432 | 1433 | /es-abstract@1.23.3: 1434 | resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} 1435 | engines: {node: '>= 0.4'} 1436 | dependencies: 1437 | array-buffer-byte-length: 1.0.1 1438 | arraybuffer.prototype.slice: 1.0.3 1439 | available-typed-arrays: 1.0.7 1440 | call-bind: 1.0.7 1441 | data-view-buffer: 1.0.1 1442 | data-view-byte-length: 1.0.1 1443 | data-view-byte-offset: 1.0.0 1444 | es-define-property: 1.0.0 1445 | es-errors: 1.3.0 1446 | es-object-atoms: 1.0.0 1447 | es-set-tostringtag: 2.0.3 1448 | es-to-primitive: 1.2.1 1449 | function.prototype.name: 1.1.6 1450 | get-intrinsic: 1.2.4 1451 | get-symbol-description: 1.0.2 1452 | globalthis: 1.0.4 1453 | gopd: 1.0.1 1454 | has-property-descriptors: 1.0.2 1455 | has-proto: 1.0.3 1456 | has-symbols: 1.0.3 1457 | hasown: 2.0.2 1458 | internal-slot: 1.0.7 1459 | is-array-buffer: 3.0.4 1460 | is-callable: 1.2.7 1461 | is-data-view: 1.0.1 1462 | is-negative-zero: 2.0.3 1463 | is-regex: 1.1.4 1464 | is-shared-array-buffer: 1.0.3 1465 | is-string: 1.0.7 1466 | is-typed-array: 1.1.13 1467 | is-weakref: 1.0.2 1468 | object-inspect: 1.13.2 1469 | object-keys: 1.1.1 1470 | object.assign: 4.1.5 1471 | regexp.prototype.flags: 1.5.2 1472 | safe-array-concat: 1.1.2 1473 | safe-regex-test: 1.0.3 1474 | string.prototype.trim: 1.2.9 1475 | string.prototype.trimend: 1.0.8 1476 | string.prototype.trimstart: 1.0.8 1477 | typed-array-buffer: 1.0.2 1478 | typed-array-byte-length: 1.0.1 1479 | typed-array-byte-offset: 1.0.2 1480 | typed-array-length: 1.0.6 1481 | unbox-primitive: 1.0.2 1482 | which-typed-array: 1.1.15 1483 | dev: true 1484 | 1485 | /es-define-property@1.0.0: 1486 | resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} 1487 | engines: {node: '>= 0.4'} 1488 | dependencies: 1489 | get-intrinsic: 1.2.4 1490 | dev: true 1491 | 1492 | /es-errors@1.3.0: 1493 | resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} 1494 | engines: {node: '>= 0.4'} 1495 | dev: true 1496 | 1497 | /es-get-iterator@1.1.3: 1498 | resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} 1499 | dependencies: 1500 | call-bind: 1.0.7 1501 | get-intrinsic: 1.2.4 1502 | has-symbols: 1.0.3 1503 | is-arguments: 1.1.1 1504 | is-map: 2.0.3 1505 | is-set: 2.0.3 1506 | is-string: 1.0.7 1507 | isarray: 2.0.5 1508 | stop-iteration-iterator: 1.0.0 1509 | dev: true 1510 | 1511 | /es-iterator-helpers@1.0.19: 1512 | resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==} 1513 | engines: {node: '>= 0.4'} 1514 | dependencies: 1515 | call-bind: 1.0.7 1516 | define-properties: 1.2.1 1517 | es-abstract: 1.23.3 1518 | es-errors: 1.3.0 1519 | es-set-tostringtag: 2.0.3 1520 | function-bind: 1.1.2 1521 | get-intrinsic: 1.2.4 1522 | globalthis: 1.0.4 1523 | has-property-descriptors: 1.0.2 1524 | has-proto: 1.0.3 1525 | has-symbols: 1.0.3 1526 | internal-slot: 1.0.7 1527 | iterator.prototype: 1.1.2 1528 | safe-array-concat: 1.1.2 1529 | dev: true 1530 | 1531 | /es-object-atoms@1.0.0: 1532 | resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} 1533 | engines: {node: '>= 0.4'} 1534 | dependencies: 1535 | es-errors: 1.3.0 1536 | dev: true 1537 | 1538 | /es-set-tostringtag@2.0.3: 1539 | resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} 1540 | engines: {node: '>= 0.4'} 1541 | dependencies: 1542 | get-intrinsic: 1.2.4 1543 | has-tostringtag: 1.0.2 1544 | hasown: 2.0.2 1545 | dev: true 1546 | 1547 | /es-shim-unscopables@1.0.2: 1548 | resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} 1549 | dependencies: 1550 | hasown: 2.0.2 1551 | dev: true 1552 | 1553 | /es-to-primitive@1.2.1: 1554 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 1555 | engines: {node: '>= 0.4'} 1556 | dependencies: 1557 | is-callable: 1.2.7 1558 | is-date-object: 1.0.5 1559 | is-symbol: 1.0.4 1560 | dev: true 1561 | 1562 | /escape-string-regexp@4.0.0: 1563 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 1564 | engines: {node: '>=10'} 1565 | dev: true 1566 | 1567 | /escape-string-regexp@5.0.0: 1568 | resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} 1569 | engines: {node: '>=12'} 1570 | dev: false 1571 | 1572 | /eslint-config-next@14.2.5(eslint@8.57.0)(typescript@5.5.4): 1573 | resolution: {integrity: sha512-zogs9zlOiZ7ka+wgUnmcM0KBEDjo4Jis7kxN1jvC0N4wynQ2MIx/KBkg4mVF63J5EK4W0QMCn7xO3vNisjaAoA==} 1574 | peerDependencies: 1575 | eslint: ^7.23.0 || ^8.0.0 1576 | typescript: '>=3.3.1' 1577 | peerDependenciesMeta: 1578 | typescript: 1579 | optional: true 1580 | dependencies: 1581 | '@next/eslint-plugin-next': 14.2.5 1582 | '@rushstack/eslint-patch': 1.10.4 1583 | '@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.5.4) 1584 | eslint: 8.57.0 1585 | eslint-import-resolver-node: 0.3.9 1586 | eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) 1587 | eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1588 | eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0) 1589 | eslint-plugin-react: 7.35.0(eslint@8.57.0) 1590 | eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) 1591 | typescript: 5.5.4 1592 | transitivePeerDependencies: 1593 | - eslint-import-resolver-webpack 1594 | - supports-color 1595 | dev: true 1596 | 1597 | /eslint-import-resolver-node@0.3.9: 1598 | resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} 1599 | dependencies: 1600 | debug: 3.2.7 1601 | is-core-module: 2.15.0 1602 | resolve: 1.22.8 1603 | transitivePeerDependencies: 1604 | - supports-color 1605 | dev: true 1606 | 1607 | /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0): 1608 | resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} 1609 | engines: {node: ^14.18.0 || >=16.0.0} 1610 | peerDependencies: 1611 | eslint: '*' 1612 | eslint-plugin-import: '*' 1613 | dependencies: 1614 | debug: 4.3.6 1615 | enhanced-resolve: 5.17.1 1616 | eslint: 8.57.0 1617 | eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1618 | eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1619 | fast-glob: 3.3.2 1620 | get-tsconfig: 4.7.6 1621 | is-core-module: 2.15.0 1622 | is-glob: 4.0.3 1623 | transitivePeerDependencies: 1624 | - '@typescript-eslint/parser' 1625 | - eslint-import-resolver-node 1626 | - eslint-import-resolver-webpack 1627 | - supports-color 1628 | dev: true 1629 | 1630 | /eslint-module-utils@2.8.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): 1631 | resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} 1632 | engines: {node: '>=4'} 1633 | peerDependencies: 1634 | '@typescript-eslint/parser': '*' 1635 | eslint: '*' 1636 | eslint-import-resolver-node: '*' 1637 | eslint-import-resolver-typescript: '*' 1638 | eslint-import-resolver-webpack: '*' 1639 | peerDependenciesMeta: 1640 | '@typescript-eslint/parser': 1641 | optional: true 1642 | eslint: 1643 | optional: true 1644 | eslint-import-resolver-node: 1645 | optional: true 1646 | eslint-import-resolver-typescript: 1647 | optional: true 1648 | eslint-import-resolver-webpack: 1649 | optional: true 1650 | dependencies: 1651 | '@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.5.4) 1652 | debug: 3.2.7 1653 | eslint: 8.57.0 1654 | eslint-import-resolver-node: 0.3.9 1655 | eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) 1656 | transitivePeerDependencies: 1657 | - supports-color 1658 | dev: true 1659 | 1660 | /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): 1661 | resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} 1662 | engines: {node: '>=4'} 1663 | peerDependencies: 1664 | '@typescript-eslint/parser': '*' 1665 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 1666 | peerDependenciesMeta: 1667 | '@typescript-eslint/parser': 1668 | optional: true 1669 | dependencies: 1670 | '@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.5.4) 1671 | array-includes: 3.1.8 1672 | array.prototype.findlastindex: 1.2.5 1673 | array.prototype.flat: 1.3.2 1674 | array.prototype.flatmap: 1.3.2 1675 | debug: 3.2.7 1676 | doctrine: 2.1.0 1677 | eslint: 8.57.0 1678 | eslint-import-resolver-node: 0.3.9 1679 | eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1680 | hasown: 2.0.2 1681 | is-core-module: 2.15.0 1682 | is-glob: 4.0.3 1683 | minimatch: 3.1.2 1684 | object.fromentries: 2.0.8 1685 | object.groupby: 1.0.3 1686 | object.values: 1.2.0 1687 | semver: 6.3.1 1688 | tsconfig-paths: 3.15.0 1689 | transitivePeerDependencies: 1690 | - eslint-import-resolver-typescript 1691 | - eslint-import-resolver-webpack 1692 | - supports-color 1693 | dev: true 1694 | 1695 | /eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0): 1696 | resolution: {integrity: sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==} 1697 | engines: {node: '>=4.0'} 1698 | peerDependencies: 1699 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 1700 | dependencies: 1701 | aria-query: 5.1.3 1702 | array-includes: 3.1.8 1703 | array.prototype.flatmap: 1.3.2 1704 | ast-types-flow: 0.0.8 1705 | axe-core: 4.10.0 1706 | axobject-query: 3.1.1 1707 | damerau-levenshtein: 1.0.8 1708 | emoji-regex: 9.2.2 1709 | es-iterator-helpers: 1.0.19 1710 | eslint: 8.57.0 1711 | hasown: 2.0.2 1712 | jsx-ast-utils: 3.3.5 1713 | language-tags: 1.0.9 1714 | minimatch: 3.1.2 1715 | object.fromentries: 2.0.8 1716 | safe-regex-test: 1.0.3 1717 | string.prototype.includes: 2.0.0 1718 | dev: true 1719 | 1720 | /eslint-plugin-react-hooks@4.6.2(eslint@8.57.0): 1721 | resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} 1722 | engines: {node: '>=10'} 1723 | peerDependencies: 1724 | eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 1725 | dependencies: 1726 | eslint: 8.57.0 1727 | dev: true 1728 | 1729 | /eslint-plugin-react@7.35.0(eslint@8.57.0): 1730 | resolution: {integrity: sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==} 1731 | engines: {node: '>=4'} 1732 | peerDependencies: 1733 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 1734 | dependencies: 1735 | array-includes: 3.1.8 1736 | array.prototype.findlast: 1.2.5 1737 | array.prototype.flatmap: 1.3.2 1738 | array.prototype.tosorted: 1.1.4 1739 | doctrine: 2.1.0 1740 | es-iterator-helpers: 1.0.19 1741 | eslint: 8.57.0 1742 | estraverse: 5.3.0 1743 | hasown: 2.0.2 1744 | jsx-ast-utils: 3.3.5 1745 | minimatch: 3.1.2 1746 | object.entries: 1.1.8 1747 | object.fromentries: 2.0.8 1748 | object.values: 1.2.0 1749 | prop-types: 15.8.1 1750 | resolve: 2.0.0-next.5 1751 | semver: 6.3.1 1752 | string.prototype.matchall: 4.0.11 1753 | string.prototype.repeat: 1.0.0 1754 | dev: true 1755 | 1756 | /eslint-scope@7.2.2: 1757 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 1758 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1759 | dependencies: 1760 | esrecurse: 4.3.0 1761 | estraverse: 5.3.0 1762 | dev: true 1763 | 1764 | /eslint-visitor-keys@3.4.3: 1765 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 1766 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1767 | dev: true 1768 | 1769 | /eslint@8.57.0: 1770 | resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} 1771 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1772 | hasBin: true 1773 | dependencies: 1774 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 1775 | '@eslint-community/regexpp': 4.11.0 1776 | '@eslint/eslintrc': 2.1.4 1777 | '@eslint/js': 8.57.0 1778 | '@humanwhocodes/config-array': 0.11.14 1779 | '@humanwhocodes/module-importer': 1.0.1 1780 | '@nodelib/fs.walk': 1.2.8 1781 | '@ungap/structured-clone': 1.2.0 1782 | ajv: 6.12.6 1783 | chalk: 4.1.2 1784 | cross-spawn: 7.0.3 1785 | debug: 4.3.6 1786 | doctrine: 3.0.0 1787 | escape-string-regexp: 4.0.0 1788 | eslint-scope: 7.2.2 1789 | eslint-visitor-keys: 3.4.3 1790 | espree: 9.6.1 1791 | esquery: 1.6.0 1792 | esutils: 2.0.3 1793 | fast-deep-equal: 3.1.3 1794 | file-entry-cache: 6.0.1 1795 | find-up: 5.0.0 1796 | glob-parent: 6.0.2 1797 | globals: 13.24.0 1798 | graphemer: 1.4.0 1799 | ignore: 5.3.1 1800 | imurmurhash: 0.1.4 1801 | is-glob: 4.0.3 1802 | is-path-inside: 3.0.3 1803 | js-yaml: 4.1.0 1804 | json-stable-stringify-without-jsonify: 1.0.1 1805 | levn: 0.4.1 1806 | lodash.merge: 4.6.2 1807 | minimatch: 3.1.2 1808 | natural-compare: 1.4.0 1809 | optionator: 0.9.4 1810 | strip-ansi: 6.0.1 1811 | text-table: 0.2.0 1812 | transitivePeerDependencies: 1813 | - supports-color 1814 | dev: true 1815 | 1816 | /espree@9.6.1: 1817 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 1818 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1819 | dependencies: 1820 | acorn: 8.12.1 1821 | acorn-jsx: 5.3.2(acorn@8.12.1) 1822 | eslint-visitor-keys: 3.4.3 1823 | dev: true 1824 | 1825 | /esquery@1.6.0: 1826 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 1827 | engines: {node: '>=0.10'} 1828 | dependencies: 1829 | estraverse: 5.3.0 1830 | dev: true 1831 | 1832 | /esrecurse@4.3.0: 1833 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1834 | engines: {node: '>=4.0'} 1835 | dependencies: 1836 | estraverse: 5.3.0 1837 | dev: true 1838 | 1839 | /estraverse@5.3.0: 1840 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1841 | engines: {node: '>=4.0'} 1842 | dev: true 1843 | 1844 | /estree-util-is-identifier-name@3.0.0: 1845 | resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} 1846 | dev: false 1847 | 1848 | /estree-walker@2.0.2: 1849 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 1850 | dev: false 1851 | 1852 | /estree-walker@3.0.3: 1853 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 1854 | dependencies: 1855 | '@types/estree': 1.0.5 1856 | dev: false 1857 | 1858 | /esutils@2.0.3: 1859 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1860 | engines: {node: '>=0.10.0'} 1861 | dev: true 1862 | 1863 | /eventsource-parser@1.1.2: 1864 | resolution: {integrity: sha512-v0eOBUbiaFojBu2s2NPBfYUoRR9GjcDNvCXVaqEf5vVfpIAh9f8RCo4vXTP8c63QRKCFwoLpMpTdPwwhEKVgzA==} 1865 | engines: {node: '>=14.18'} 1866 | dev: false 1867 | 1868 | /extend@3.0.2: 1869 | resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} 1870 | dev: false 1871 | 1872 | /fast-deep-equal@3.1.3: 1873 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1874 | 1875 | /fast-glob@3.3.2: 1876 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 1877 | engines: {node: '>=8.6.0'} 1878 | dependencies: 1879 | '@nodelib/fs.stat': 2.0.5 1880 | '@nodelib/fs.walk': 1.2.8 1881 | glob-parent: 5.1.2 1882 | merge2: 1.4.1 1883 | micromatch: 4.0.7 1884 | dev: true 1885 | 1886 | /fast-json-stable-stringify@2.1.0: 1887 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1888 | dev: true 1889 | 1890 | /fast-levenshtein@2.0.6: 1891 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 1892 | dev: true 1893 | 1894 | /fast-shallow-equal@1.0.0: 1895 | resolution: {integrity: sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==} 1896 | dev: false 1897 | 1898 | /fastest-stable-stringify@2.0.2: 1899 | resolution: {integrity: sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==} 1900 | dev: false 1901 | 1902 | /fastq@1.17.1: 1903 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} 1904 | dependencies: 1905 | reusify: 1.0.4 1906 | dev: true 1907 | 1908 | /file-entry-cache@6.0.1: 1909 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1910 | engines: {node: ^10.12.0 || >=12.0.0} 1911 | dependencies: 1912 | flat-cache: 3.2.0 1913 | dev: true 1914 | 1915 | /fill-range@7.1.1: 1916 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 1917 | engines: {node: '>=8'} 1918 | dependencies: 1919 | to-regex-range: 5.0.1 1920 | dev: true 1921 | 1922 | /find-up@5.0.0: 1923 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1924 | engines: {node: '>=10'} 1925 | dependencies: 1926 | locate-path: 6.0.0 1927 | path-exists: 4.0.0 1928 | dev: true 1929 | 1930 | /flat-cache@3.2.0: 1931 | resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} 1932 | engines: {node: ^10.12.0 || >=12.0.0} 1933 | dependencies: 1934 | flatted: 3.3.1 1935 | keyv: 4.5.4 1936 | rimraf: 3.0.2 1937 | dev: true 1938 | 1939 | /flatted@3.3.1: 1940 | resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} 1941 | dev: true 1942 | 1943 | /for-each@0.3.3: 1944 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 1945 | dependencies: 1946 | is-callable: 1.2.7 1947 | dev: true 1948 | 1949 | /foreground-child@3.2.1: 1950 | resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} 1951 | engines: {node: '>=14'} 1952 | dependencies: 1953 | cross-spawn: 7.0.3 1954 | signal-exit: 4.1.0 1955 | dev: true 1956 | 1957 | /framer-motion@11.3.19(react-dom@18.3.1)(react@18.3.1): 1958 | resolution: {integrity: sha512-+luuQdx4AsamyMcvzW7jUAJYIKvQs1KE7oHvKkW3eNzmo0S+3PSDWjBuQkuIP9WyneGnKGMLUSuHs8OP7jKpQg==} 1959 | peerDependencies: 1960 | '@emotion/is-prop-valid': '*' 1961 | react: ^18.0.0 1962 | react-dom: ^18.0.0 1963 | peerDependenciesMeta: 1964 | '@emotion/is-prop-valid': 1965 | optional: true 1966 | react: 1967 | optional: true 1968 | react-dom: 1969 | optional: true 1970 | dependencies: 1971 | react: 18.3.1 1972 | react-dom: 18.3.1(react@18.3.1) 1973 | tslib: 2.6.3 1974 | dev: false 1975 | 1976 | /fs.realpath@1.0.0: 1977 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1978 | dev: true 1979 | 1980 | /fsevents@2.3.3: 1981 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 1982 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1983 | os: [darwin] 1984 | requiresBuild: true 1985 | dev: true 1986 | optional: true 1987 | 1988 | /function-bind@1.1.2: 1989 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 1990 | dev: true 1991 | 1992 | /function.prototype.name@1.1.6: 1993 | resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} 1994 | engines: {node: '>= 0.4'} 1995 | dependencies: 1996 | call-bind: 1.0.7 1997 | define-properties: 1.2.1 1998 | es-abstract: 1.23.3 1999 | functions-have-names: 1.2.3 2000 | dev: true 2001 | 2002 | /functions-have-names@1.2.3: 2003 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 2004 | dev: true 2005 | 2006 | /get-intrinsic@1.2.4: 2007 | resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} 2008 | engines: {node: '>= 0.4'} 2009 | dependencies: 2010 | es-errors: 1.3.0 2011 | function-bind: 1.1.2 2012 | has-proto: 1.0.3 2013 | has-symbols: 1.0.3 2014 | hasown: 2.0.2 2015 | dev: true 2016 | 2017 | /get-symbol-description@1.0.2: 2018 | resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} 2019 | engines: {node: '>= 0.4'} 2020 | dependencies: 2021 | call-bind: 1.0.7 2022 | es-errors: 1.3.0 2023 | get-intrinsic: 1.2.4 2024 | dev: true 2025 | 2026 | /get-tsconfig@4.7.6: 2027 | resolution: {integrity: sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==} 2028 | dependencies: 2029 | resolve-pkg-maps: 1.0.0 2030 | dev: true 2031 | 2032 | /glob-parent@5.1.2: 2033 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 2034 | engines: {node: '>= 6'} 2035 | dependencies: 2036 | is-glob: 4.0.3 2037 | dev: true 2038 | 2039 | /glob-parent@6.0.2: 2040 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 2041 | engines: {node: '>=10.13.0'} 2042 | dependencies: 2043 | is-glob: 4.0.3 2044 | dev: true 2045 | 2046 | /glob@10.3.10: 2047 | resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} 2048 | engines: {node: '>=16 || 14 >=14.17'} 2049 | hasBin: true 2050 | dependencies: 2051 | foreground-child: 3.2.1 2052 | jackspeak: 2.3.6 2053 | minimatch: 9.0.5 2054 | minipass: 7.1.2 2055 | path-scurry: 1.11.1 2056 | dev: true 2057 | 2058 | /glob@10.4.5: 2059 | resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} 2060 | hasBin: true 2061 | dependencies: 2062 | foreground-child: 3.2.1 2063 | jackspeak: 3.4.3 2064 | minimatch: 9.0.5 2065 | minipass: 7.1.2 2066 | package-json-from-dist: 1.0.0 2067 | path-scurry: 1.11.1 2068 | dev: true 2069 | 2070 | /glob@7.2.3: 2071 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 2072 | deprecated: Glob versions prior to v9 are no longer supported 2073 | dependencies: 2074 | fs.realpath: 1.0.0 2075 | inflight: 1.0.6 2076 | inherits: 2.0.4 2077 | minimatch: 3.1.2 2078 | once: 1.4.0 2079 | path-is-absolute: 1.0.1 2080 | dev: true 2081 | 2082 | /globals@13.24.0: 2083 | resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} 2084 | engines: {node: '>=8'} 2085 | dependencies: 2086 | type-fest: 0.20.2 2087 | dev: true 2088 | 2089 | /globalthis@1.0.4: 2090 | resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} 2091 | engines: {node: '>= 0.4'} 2092 | dependencies: 2093 | define-properties: 1.2.1 2094 | gopd: 1.0.1 2095 | dev: true 2096 | 2097 | /globby@11.1.0: 2098 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 2099 | engines: {node: '>=10'} 2100 | dependencies: 2101 | array-union: 2.1.0 2102 | dir-glob: 3.0.1 2103 | fast-glob: 3.3.2 2104 | ignore: 5.3.1 2105 | merge2: 1.4.1 2106 | slash: 3.0.0 2107 | dev: true 2108 | 2109 | /gopd@1.0.1: 2110 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 2111 | dependencies: 2112 | get-intrinsic: 1.2.4 2113 | dev: true 2114 | 2115 | /graceful-fs@4.2.11: 2116 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 2117 | 2118 | /graphemer@1.4.0: 2119 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 2120 | dev: true 2121 | 2122 | /has-bigints@1.0.2: 2123 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 2124 | dev: true 2125 | 2126 | /has-flag@4.0.0: 2127 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 2128 | engines: {node: '>=8'} 2129 | dev: true 2130 | 2131 | /has-property-descriptors@1.0.2: 2132 | resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} 2133 | dependencies: 2134 | es-define-property: 1.0.0 2135 | dev: true 2136 | 2137 | /has-proto@1.0.3: 2138 | resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} 2139 | engines: {node: '>= 0.4'} 2140 | dev: true 2141 | 2142 | /has-symbols@1.0.3: 2143 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 2144 | engines: {node: '>= 0.4'} 2145 | dev: true 2146 | 2147 | /has-tostringtag@1.0.2: 2148 | resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} 2149 | engines: {node: '>= 0.4'} 2150 | dependencies: 2151 | has-symbols: 1.0.3 2152 | dev: true 2153 | 2154 | /hasown@2.0.2: 2155 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 2156 | engines: {node: '>= 0.4'} 2157 | dependencies: 2158 | function-bind: 1.1.2 2159 | dev: true 2160 | 2161 | /hast-util-to-jsx-runtime@2.3.0: 2162 | resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} 2163 | dependencies: 2164 | '@types/estree': 1.0.5 2165 | '@types/hast': 3.0.4 2166 | '@types/unist': 3.0.2 2167 | comma-separated-tokens: 2.0.3 2168 | devlop: 1.1.0 2169 | estree-util-is-identifier-name: 3.0.0 2170 | hast-util-whitespace: 3.0.0 2171 | mdast-util-mdx-expression: 2.0.0 2172 | mdast-util-mdx-jsx: 3.1.2 2173 | mdast-util-mdxjs-esm: 2.0.1 2174 | property-information: 6.5.0 2175 | space-separated-tokens: 2.0.2 2176 | style-to-object: 1.0.6 2177 | unist-util-position: 5.0.0 2178 | vfile-message: 4.0.2 2179 | transitivePeerDependencies: 2180 | - supports-color 2181 | dev: false 2182 | 2183 | /hast-util-whitespace@3.0.0: 2184 | resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} 2185 | dependencies: 2186 | '@types/hast': 3.0.4 2187 | dev: false 2188 | 2189 | /html-url-attributes@3.0.0: 2190 | resolution: {integrity: sha512-/sXbVCWayk6GDVg3ctOX6nxaVj7So40FcFAnWlWGNAB1LpYKcV5Cd10APjPjW80O7zYW2MsjBV4zZ7IZO5fVow==} 2191 | dev: false 2192 | 2193 | /hyphenate-style-name@1.1.0: 2194 | resolution: {integrity: sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw==} 2195 | dev: false 2196 | 2197 | /ignore@5.3.1: 2198 | resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} 2199 | engines: {node: '>= 4'} 2200 | dev: true 2201 | 2202 | /import-fresh@3.3.0: 2203 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 2204 | engines: {node: '>=6'} 2205 | dependencies: 2206 | parent-module: 1.0.1 2207 | resolve-from: 4.0.0 2208 | dev: true 2209 | 2210 | /imurmurhash@0.1.4: 2211 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 2212 | engines: {node: '>=0.8.19'} 2213 | dev: true 2214 | 2215 | /inflight@1.0.6: 2216 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 2217 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. 2218 | dependencies: 2219 | once: 1.4.0 2220 | wrappy: 1.0.2 2221 | dev: true 2222 | 2223 | /inherits@2.0.4: 2224 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 2225 | dev: true 2226 | 2227 | /inline-style-parser@0.2.3: 2228 | resolution: {integrity: sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==} 2229 | dev: false 2230 | 2231 | /inline-style-prefixer@7.0.1: 2232 | resolution: {integrity: sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw==} 2233 | dependencies: 2234 | css-in-js-utils: 3.1.0 2235 | dev: false 2236 | 2237 | /internal-slot@1.0.7: 2238 | resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} 2239 | engines: {node: '>= 0.4'} 2240 | dependencies: 2241 | es-errors: 1.3.0 2242 | hasown: 2.0.2 2243 | side-channel: 1.0.6 2244 | dev: true 2245 | 2246 | /internmap@2.0.3: 2247 | resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} 2248 | engines: {node: '>=12'} 2249 | dev: false 2250 | 2251 | /is-alphabetical@2.0.1: 2252 | resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} 2253 | dev: false 2254 | 2255 | /is-alphanumerical@2.0.1: 2256 | resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} 2257 | dependencies: 2258 | is-alphabetical: 2.0.1 2259 | is-decimal: 2.0.1 2260 | dev: false 2261 | 2262 | /is-arguments@1.1.1: 2263 | resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} 2264 | engines: {node: '>= 0.4'} 2265 | dependencies: 2266 | call-bind: 1.0.7 2267 | has-tostringtag: 1.0.2 2268 | dev: true 2269 | 2270 | /is-array-buffer@3.0.4: 2271 | resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} 2272 | engines: {node: '>= 0.4'} 2273 | dependencies: 2274 | call-bind: 1.0.7 2275 | get-intrinsic: 1.2.4 2276 | dev: true 2277 | 2278 | /is-async-function@2.0.0: 2279 | resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} 2280 | engines: {node: '>= 0.4'} 2281 | dependencies: 2282 | has-tostringtag: 1.0.2 2283 | dev: true 2284 | 2285 | /is-bigint@1.0.4: 2286 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 2287 | dependencies: 2288 | has-bigints: 1.0.2 2289 | dev: true 2290 | 2291 | /is-binary-path@2.1.0: 2292 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 2293 | engines: {node: '>=8'} 2294 | dependencies: 2295 | binary-extensions: 2.3.0 2296 | dev: true 2297 | 2298 | /is-boolean-object@1.1.2: 2299 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 2300 | engines: {node: '>= 0.4'} 2301 | dependencies: 2302 | call-bind: 1.0.7 2303 | has-tostringtag: 1.0.2 2304 | dev: true 2305 | 2306 | /is-callable@1.2.7: 2307 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 2308 | engines: {node: '>= 0.4'} 2309 | dev: true 2310 | 2311 | /is-core-module@2.15.0: 2312 | resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==} 2313 | engines: {node: '>= 0.4'} 2314 | dependencies: 2315 | hasown: 2.0.2 2316 | dev: true 2317 | 2318 | /is-data-view@1.0.1: 2319 | resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} 2320 | engines: {node: '>= 0.4'} 2321 | dependencies: 2322 | is-typed-array: 1.1.13 2323 | dev: true 2324 | 2325 | /is-date-object@1.0.5: 2326 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 2327 | engines: {node: '>= 0.4'} 2328 | dependencies: 2329 | has-tostringtag: 1.0.2 2330 | dev: true 2331 | 2332 | /is-decimal@2.0.1: 2333 | resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} 2334 | dev: false 2335 | 2336 | /is-extglob@2.1.1: 2337 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 2338 | engines: {node: '>=0.10.0'} 2339 | dev: true 2340 | 2341 | /is-finalizationregistry@1.0.2: 2342 | resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} 2343 | dependencies: 2344 | call-bind: 1.0.7 2345 | dev: true 2346 | 2347 | /is-fullwidth-code-point@3.0.0: 2348 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 2349 | engines: {node: '>=8'} 2350 | dev: true 2351 | 2352 | /is-generator-function@1.0.10: 2353 | resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} 2354 | engines: {node: '>= 0.4'} 2355 | dependencies: 2356 | has-tostringtag: 1.0.2 2357 | dev: true 2358 | 2359 | /is-glob@4.0.3: 2360 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 2361 | engines: {node: '>=0.10.0'} 2362 | dependencies: 2363 | is-extglob: 2.1.1 2364 | dev: true 2365 | 2366 | /is-hexadecimal@2.0.1: 2367 | resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} 2368 | dev: false 2369 | 2370 | /is-map@2.0.3: 2371 | resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} 2372 | engines: {node: '>= 0.4'} 2373 | dev: true 2374 | 2375 | /is-negative-zero@2.0.3: 2376 | resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} 2377 | engines: {node: '>= 0.4'} 2378 | dev: true 2379 | 2380 | /is-number-object@1.0.7: 2381 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 2382 | engines: {node: '>= 0.4'} 2383 | dependencies: 2384 | has-tostringtag: 1.0.2 2385 | dev: true 2386 | 2387 | /is-number@7.0.0: 2388 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 2389 | engines: {node: '>=0.12.0'} 2390 | dev: true 2391 | 2392 | /is-path-inside@3.0.3: 2393 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 2394 | engines: {node: '>=8'} 2395 | dev: true 2396 | 2397 | /is-plain-obj@4.1.0: 2398 | resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} 2399 | engines: {node: '>=12'} 2400 | dev: false 2401 | 2402 | /is-reference@3.0.2: 2403 | resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} 2404 | dependencies: 2405 | '@types/estree': 1.0.5 2406 | dev: false 2407 | 2408 | /is-regex@1.1.4: 2409 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 2410 | engines: {node: '>= 0.4'} 2411 | dependencies: 2412 | call-bind: 1.0.7 2413 | has-tostringtag: 1.0.2 2414 | dev: true 2415 | 2416 | /is-set@2.0.3: 2417 | resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} 2418 | engines: {node: '>= 0.4'} 2419 | dev: true 2420 | 2421 | /is-shared-array-buffer@1.0.3: 2422 | resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} 2423 | engines: {node: '>= 0.4'} 2424 | dependencies: 2425 | call-bind: 1.0.7 2426 | dev: true 2427 | 2428 | /is-string@1.0.7: 2429 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 2430 | engines: {node: '>= 0.4'} 2431 | dependencies: 2432 | has-tostringtag: 1.0.2 2433 | dev: true 2434 | 2435 | /is-symbol@1.0.4: 2436 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 2437 | engines: {node: '>= 0.4'} 2438 | dependencies: 2439 | has-symbols: 1.0.3 2440 | dev: true 2441 | 2442 | /is-typed-array@1.1.13: 2443 | resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} 2444 | engines: {node: '>= 0.4'} 2445 | dependencies: 2446 | which-typed-array: 1.1.15 2447 | dev: true 2448 | 2449 | /is-weakmap@2.0.2: 2450 | resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} 2451 | engines: {node: '>= 0.4'} 2452 | dev: true 2453 | 2454 | /is-weakref@1.0.2: 2455 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} 2456 | dependencies: 2457 | call-bind: 1.0.7 2458 | dev: true 2459 | 2460 | /is-weakset@2.0.3: 2461 | resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} 2462 | engines: {node: '>= 0.4'} 2463 | dependencies: 2464 | call-bind: 1.0.7 2465 | get-intrinsic: 1.2.4 2466 | dev: true 2467 | 2468 | /isarray@2.0.5: 2469 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 2470 | dev: true 2471 | 2472 | /isexe@2.0.0: 2473 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 2474 | dev: true 2475 | 2476 | /iterator.prototype@1.1.2: 2477 | resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} 2478 | dependencies: 2479 | define-properties: 1.2.1 2480 | get-intrinsic: 1.2.4 2481 | has-symbols: 1.0.3 2482 | reflect.getprototypeof: 1.0.6 2483 | set-function-name: 2.0.2 2484 | dev: true 2485 | 2486 | /jackspeak@2.3.6: 2487 | resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} 2488 | engines: {node: '>=14'} 2489 | dependencies: 2490 | '@isaacs/cliui': 8.0.2 2491 | optionalDependencies: 2492 | '@pkgjs/parseargs': 0.11.0 2493 | dev: true 2494 | 2495 | /jackspeak@3.4.3: 2496 | resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} 2497 | dependencies: 2498 | '@isaacs/cliui': 8.0.2 2499 | optionalDependencies: 2500 | '@pkgjs/parseargs': 0.11.0 2501 | dev: true 2502 | 2503 | /jiti@1.21.6: 2504 | resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} 2505 | hasBin: true 2506 | dev: true 2507 | 2508 | /js-cookie@2.2.1: 2509 | resolution: {integrity: sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==} 2510 | dev: false 2511 | 2512 | /js-tokens@4.0.0: 2513 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2514 | 2515 | /js-yaml@4.1.0: 2516 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 2517 | hasBin: true 2518 | dependencies: 2519 | argparse: 2.0.1 2520 | dev: true 2521 | 2522 | /json-buffer@3.0.1: 2523 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 2524 | dev: true 2525 | 2526 | /json-schema-traverse@0.4.1: 2527 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 2528 | dev: true 2529 | 2530 | /json-schema@0.4.0: 2531 | resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} 2532 | dev: false 2533 | 2534 | /json-stable-stringify-without-jsonify@1.0.1: 2535 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 2536 | dev: true 2537 | 2538 | /json5@1.0.2: 2539 | resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} 2540 | hasBin: true 2541 | dependencies: 2542 | minimist: 1.2.8 2543 | dev: true 2544 | 2545 | /jsondiffpatch@0.6.0: 2546 | resolution: {integrity: sha512-3QItJOXp2AP1uv7waBkao5nCvhEv+QmJAd38Ybq7wNI74Q+BBmnLn4EDKz6yI9xGAIQoUF87qHt+kc1IVxB4zQ==} 2547 | engines: {node: ^18.0.0 || >=20.0.0} 2548 | hasBin: true 2549 | dependencies: 2550 | '@types/diff-match-patch': 1.0.36 2551 | chalk: 5.3.0 2552 | diff-match-patch: 1.0.5 2553 | dev: false 2554 | 2555 | /jsx-ast-utils@3.3.5: 2556 | resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} 2557 | engines: {node: '>=4.0'} 2558 | dependencies: 2559 | array-includes: 3.1.8 2560 | array.prototype.flat: 1.3.2 2561 | object.assign: 4.1.5 2562 | object.values: 1.2.0 2563 | dev: true 2564 | 2565 | /keyv@4.5.4: 2566 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 2567 | dependencies: 2568 | json-buffer: 3.0.1 2569 | dev: true 2570 | 2571 | /language-subtag-registry@0.3.23: 2572 | resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} 2573 | dev: true 2574 | 2575 | /language-tags@1.0.9: 2576 | resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} 2577 | engines: {node: '>=0.10'} 2578 | dependencies: 2579 | language-subtag-registry: 0.3.23 2580 | dev: true 2581 | 2582 | /levn@0.4.1: 2583 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 2584 | engines: {node: '>= 0.8.0'} 2585 | dependencies: 2586 | prelude-ls: 1.2.1 2587 | type-check: 0.4.0 2588 | dev: true 2589 | 2590 | /lilconfig@2.1.0: 2591 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 2592 | engines: {node: '>=10'} 2593 | dev: true 2594 | 2595 | /lilconfig@3.1.2: 2596 | resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} 2597 | engines: {node: '>=14'} 2598 | dev: true 2599 | 2600 | /lines-and-columns@1.2.4: 2601 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 2602 | dev: true 2603 | 2604 | /locate-character@3.0.0: 2605 | resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 2606 | dev: false 2607 | 2608 | /locate-path@6.0.0: 2609 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 2610 | engines: {node: '>=10'} 2611 | dependencies: 2612 | p-locate: 5.0.0 2613 | dev: true 2614 | 2615 | /lodash.merge@4.6.2: 2616 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 2617 | dev: true 2618 | 2619 | /longest-streak@3.1.0: 2620 | resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} 2621 | dev: false 2622 | 2623 | /loose-envify@1.4.0: 2624 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 2625 | hasBin: true 2626 | dependencies: 2627 | js-tokens: 4.0.0 2628 | 2629 | /lru-cache@10.4.3: 2630 | resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} 2631 | dev: true 2632 | 2633 | /magic-string@0.30.11: 2634 | resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} 2635 | dependencies: 2636 | '@jridgewell/sourcemap-codec': 1.5.0 2637 | dev: false 2638 | 2639 | /markdown-table@3.0.3: 2640 | resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} 2641 | dev: false 2642 | 2643 | /mdast-util-find-and-replace@3.0.1: 2644 | resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} 2645 | dependencies: 2646 | '@types/mdast': 4.0.4 2647 | escape-string-regexp: 5.0.0 2648 | unist-util-is: 6.0.0 2649 | unist-util-visit-parents: 6.0.1 2650 | dev: false 2651 | 2652 | /mdast-util-from-markdown@2.0.1: 2653 | resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} 2654 | dependencies: 2655 | '@types/mdast': 4.0.4 2656 | '@types/unist': 3.0.2 2657 | decode-named-character-reference: 1.0.2 2658 | devlop: 1.1.0 2659 | mdast-util-to-string: 4.0.0 2660 | micromark: 4.0.0 2661 | micromark-util-decode-numeric-character-reference: 2.0.1 2662 | micromark-util-decode-string: 2.0.0 2663 | micromark-util-normalize-identifier: 2.0.0 2664 | micromark-util-symbol: 2.0.0 2665 | micromark-util-types: 2.0.0 2666 | unist-util-stringify-position: 4.0.0 2667 | transitivePeerDependencies: 2668 | - supports-color 2669 | dev: false 2670 | 2671 | /mdast-util-gfm-autolink-literal@2.0.0: 2672 | resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==} 2673 | dependencies: 2674 | '@types/mdast': 4.0.4 2675 | ccount: 2.0.1 2676 | devlop: 1.1.0 2677 | mdast-util-find-and-replace: 3.0.1 2678 | micromark-util-character: 2.1.0 2679 | dev: false 2680 | 2681 | /mdast-util-gfm-footnote@2.0.0: 2682 | resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} 2683 | dependencies: 2684 | '@types/mdast': 4.0.4 2685 | devlop: 1.1.0 2686 | mdast-util-from-markdown: 2.0.1 2687 | mdast-util-to-markdown: 2.1.0 2688 | micromark-util-normalize-identifier: 2.0.0 2689 | transitivePeerDependencies: 2690 | - supports-color 2691 | dev: false 2692 | 2693 | /mdast-util-gfm-strikethrough@2.0.0: 2694 | resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} 2695 | dependencies: 2696 | '@types/mdast': 4.0.4 2697 | mdast-util-from-markdown: 2.0.1 2698 | mdast-util-to-markdown: 2.1.0 2699 | transitivePeerDependencies: 2700 | - supports-color 2701 | dev: false 2702 | 2703 | /mdast-util-gfm-table@2.0.0: 2704 | resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} 2705 | dependencies: 2706 | '@types/mdast': 4.0.4 2707 | devlop: 1.1.0 2708 | markdown-table: 3.0.3 2709 | mdast-util-from-markdown: 2.0.1 2710 | mdast-util-to-markdown: 2.1.0 2711 | transitivePeerDependencies: 2712 | - supports-color 2713 | dev: false 2714 | 2715 | /mdast-util-gfm-task-list-item@2.0.0: 2716 | resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} 2717 | dependencies: 2718 | '@types/mdast': 4.0.4 2719 | devlop: 1.1.0 2720 | mdast-util-from-markdown: 2.0.1 2721 | mdast-util-to-markdown: 2.1.0 2722 | transitivePeerDependencies: 2723 | - supports-color 2724 | dev: false 2725 | 2726 | /mdast-util-gfm@3.0.0: 2727 | resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} 2728 | dependencies: 2729 | mdast-util-from-markdown: 2.0.1 2730 | mdast-util-gfm-autolink-literal: 2.0.0 2731 | mdast-util-gfm-footnote: 2.0.0 2732 | mdast-util-gfm-strikethrough: 2.0.0 2733 | mdast-util-gfm-table: 2.0.0 2734 | mdast-util-gfm-task-list-item: 2.0.0 2735 | mdast-util-to-markdown: 2.1.0 2736 | transitivePeerDependencies: 2737 | - supports-color 2738 | dev: false 2739 | 2740 | /mdast-util-mdx-expression@2.0.0: 2741 | resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==} 2742 | dependencies: 2743 | '@types/estree-jsx': 1.0.5 2744 | '@types/hast': 3.0.4 2745 | '@types/mdast': 4.0.4 2746 | devlop: 1.1.0 2747 | mdast-util-from-markdown: 2.0.1 2748 | mdast-util-to-markdown: 2.1.0 2749 | transitivePeerDependencies: 2750 | - supports-color 2751 | dev: false 2752 | 2753 | /mdast-util-mdx-jsx@3.1.2: 2754 | resolution: {integrity: sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==} 2755 | dependencies: 2756 | '@types/estree-jsx': 1.0.5 2757 | '@types/hast': 3.0.4 2758 | '@types/mdast': 4.0.4 2759 | '@types/unist': 3.0.2 2760 | ccount: 2.0.1 2761 | devlop: 1.1.0 2762 | mdast-util-from-markdown: 2.0.1 2763 | mdast-util-to-markdown: 2.1.0 2764 | parse-entities: 4.0.1 2765 | stringify-entities: 4.0.4 2766 | unist-util-remove-position: 5.0.0 2767 | unist-util-stringify-position: 4.0.0 2768 | vfile-message: 4.0.2 2769 | transitivePeerDependencies: 2770 | - supports-color 2771 | dev: false 2772 | 2773 | /mdast-util-mdxjs-esm@2.0.1: 2774 | resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} 2775 | dependencies: 2776 | '@types/estree-jsx': 1.0.5 2777 | '@types/hast': 3.0.4 2778 | '@types/mdast': 4.0.4 2779 | devlop: 1.1.0 2780 | mdast-util-from-markdown: 2.0.1 2781 | mdast-util-to-markdown: 2.1.0 2782 | transitivePeerDependencies: 2783 | - supports-color 2784 | dev: false 2785 | 2786 | /mdast-util-phrasing@4.1.0: 2787 | resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} 2788 | dependencies: 2789 | '@types/mdast': 4.0.4 2790 | unist-util-is: 6.0.0 2791 | dev: false 2792 | 2793 | /mdast-util-to-hast@13.2.0: 2794 | resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} 2795 | dependencies: 2796 | '@types/hast': 3.0.4 2797 | '@types/mdast': 4.0.4 2798 | '@ungap/structured-clone': 1.2.0 2799 | devlop: 1.1.0 2800 | micromark-util-sanitize-uri: 2.0.0 2801 | trim-lines: 3.0.1 2802 | unist-util-position: 5.0.0 2803 | unist-util-visit: 5.0.0 2804 | vfile: 6.0.2 2805 | dev: false 2806 | 2807 | /mdast-util-to-markdown@2.1.0: 2808 | resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} 2809 | dependencies: 2810 | '@types/mdast': 4.0.4 2811 | '@types/unist': 3.0.2 2812 | longest-streak: 3.1.0 2813 | mdast-util-phrasing: 4.1.0 2814 | mdast-util-to-string: 4.0.0 2815 | micromark-util-decode-string: 2.0.0 2816 | unist-util-visit: 5.0.0 2817 | zwitch: 2.0.4 2818 | dev: false 2819 | 2820 | /mdast-util-to-string@4.0.0: 2821 | resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} 2822 | dependencies: 2823 | '@types/mdast': 4.0.4 2824 | dev: false 2825 | 2826 | /mdn-data@2.0.14: 2827 | resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} 2828 | dev: false 2829 | 2830 | /mdn-data@2.0.30: 2831 | resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} 2832 | dev: false 2833 | 2834 | /merge2@1.4.1: 2835 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 2836 | engines: {node: '>= 8'} 2837 | dev: true 2838 | 2839 | /micromark-core-commonmark@2.0.1: 2840 | resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==} 2841 | dependencies: 2842 | decode-named-character-reference: 1.0.2 2843 | devlop: 1.1.0 2844 | micromark-factory-destination: 2.0.0 2845 | micromark-factory-label: 2.0.0 2846 | micromark-factory-space: 2.0.0 2847 | micromark-factory-title: 2.0.0 2848 | micromark-factory-whitespace: 2.0.0 2849 | micromark-util-character: 2.1.0 2850 | micromark-util-chunked: 2.0.0 2851 | micromark-util-classify-character: 2.0.0 2852 | micromark-util-html-tag-name: 2.0.0 2853 | micromark-util-normalize-identifier: 2.0.0 2854 | micromark-util-resolve-all: 2.0.0 2855 | micromark-util-subtokenize: 2.0.1 2856 | micromark-util-symbol: 2.0.0 2857 | micromark-util-types: 2.0.0 2858 | dev: false 2859 | 2860 | /micromark-extension-gfm-autolink-literal@2.1.0: 2861 | resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} 2862 | dependencies: 2863 | micromark-util-character: 2.1.0 2864 | micromark-util-sanitize-uri: 2.0.0 2865 | micromark-util-symbol: 2.0.0 2866 | micromark-util-types: 2.0.0 2867 | dev: false 2868 | 2869 | /micromark-extension-gfm-footnote@2.1.0: 2870 | resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} 2871 | dependencies: 2872 | devlop: 1.1.0 2873 | micromark-core-commonmark: 2.0.1 2874 | micromark-factory-space: 2.0.0 2875 | micromark-util-character: 2.1.0 2876 | micromark-util-normalize-identifier: 2.0.0 2877 | micromark-util-sanitize-uri: 2.0.0 2878 | micromark-util-symbol: 2.0.0 2879 | micromark-util-types: 2.0.0 2880 | dev: false 2881 | 2882 | /micromark-extension-gfm-strikethrough@2.1.0: 2883 | resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} 2884 | dependencies: 2885 | devlop: 1.1.0 2886 | micromark-util-chunked: 2.0.0 2887 | micromark-util-classify-character: 2.0.0 2888 | micromark-util-resolve-all: 2.0.0 2889 | micromark-util-symbol: 2.0.0 2890 | micromark-util-types: 2.0.0 2891 | dev: false 2892 | 2893 | /micromark-extension-gfm-table@2.1.0: 2894 | resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==} 2895 | dependencies: 2896 | devlop: 1.1.0 2897 | micromark-factory-space: 2.0.0 2898 | micromark-util-character: 2.1.0 2899 | micromark-util-symbol: 2.0.0 2900 | micromark-util-types: 2.0.0 2901 | dev: false 2902 | 2903 | /micromark-extension-gfm-tagfilter@2.0.0: 2904 | resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} 2905 | dependencies: 2906 | micromark-util-types: 2.0.0 2907 | dev: false 2908 | 2909 | /micromark-extension-gfm-task-list-item@2.1.0: 2910 | resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} 2911 | dependencies: 2912 | devlop: 1.1.0 2913 | micromark-factory-space: 2.0.0 2914 | micromark-util-character: 2.1.0 2915 | micromark-util-symbol: 2.0.0 2916 | micromark-util-types: 2.0.0 2917 | dev: false 2918 | 2919 | /micromark-extension-gfm@3.0.0: 2920 | resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} 2921 | dependencies: 2922 | micromark-extension-gfm-autolink-literal: 2.1.0 2923 | micromark-extension-gfm-footnote: 2.1.0 2924 | micromark-extension-gfm-strikethrough: 2.1.0 2925 | micromark-extension-gfm-table: 2.1.0 2926 | micromark-extension-gfm-tagfilter: 2.0.0 2927 | micromark-extension-gfm-task-list-item: 2.1.0 2928 | micromark-util-combine-extensions: 2.0.0 2929 | micromark-util-types: 2.0.0 2930 | dev: false 2931 | 2932 | /micromark-factory-destination@2.0.0: 2933 | resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} 2934 | dependencies: 2935 | micromark-util-character: 2.1.0 2936 | micromark-util-symbol: 2.0.0 2937 | micromark-util-types: 2.0.0 2938 | dev: false 2939 | 2940 | /micromark-factory-label@2.0.0: 2941 | resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} 2942 | dependencies: 2943 | devlop: 1.1.0 2944 | micromark-util-character: 2.1.0 2945 | micromark-util-symbol: 2.0.0 2946 | micromark-util-types: 2.0.0 2947 | dev: false 2948 | 2949 | /micromark-factory-space@2.0.0: 2950 | resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} 2951 | dependencies: 2952 | micromark-util-character: 2.1.0 2953 | micromark-util-types: 2.0.0 2954 | dev: false 2955 | 2956 | /micromark-factory-title@2.0.0: 2957 | resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} 2958 | dependencies: 2959 | micromark-factory-space: 2.0.0 2960 | micromark-util-character: 2.1.0 2961 | micromark-util-symbol: 2.0.0 2962 | micromark-util-types: 2.0.0 2963 | dev: false 2964 | 2965 | /micromark-factory-whitespace@2.0.0: 2966 | resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} 2967 | dependencies: 2968 | micromark-factory-space: 2.0.0 2969 | micromark-util-character: 2.1.0 2970 | micromark-util-symbol: 2.0.0 2971 | micromark-util-types: 2.0.0 2972 | dev: false 2973 | 2974 | /micromark-util-character@2.1.0: 2975 | resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} 2976 | dependencies: 2977 | micromark-util-symbol: 2.0.0 2978 | micromark-util-types: 2.0.0 2979 | dev: false 2980 | 2981 | /micromark-util-chunked@2.0.0: 2982 | resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} 2983 | dependencies: 2984 | micromark-util-symbol: 2.0.0 2985 | dev: false 2986 | 2987 | /micromark-util-classify-character@2.0.0: 2988 | resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} 2989 | dependencies: 2990 | micromark-util-character: 2.1.0 2991 | micromark-util-symbol: 2.0.0 2992 | micromark-util-types: 2.0.0 2993 | dev: false 2994 | 2995 | /micromark-util-combine-extensions@2.0.0: 2996 | resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} 2997 | dependencies: 2998 | micromark-util-chunked: 2.0.0 2999 | micromark-util-types: 2.0.0 3000 | dev: false 3001 | 3002 | /micromark-util-decode-numeric-character-reference@2.0.1: 3003 | resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} 3004 | dependencies: 3005 | micromark-util-symbol: 2.0.0 3006 | dev: false 3007 | 3008 | /micromark-util-decode-string@2.0.0: 3009 | resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} 3010 | dependencies: 3011 | decode-named-character-reference: 1.0.2 3012 | micromark-util-character: 2.1.0 3013 | micromark-util-decode-numeric-character-reference: 2.0.1 3014 | micromark-util-symbol: 2.0.0 3015 | dev: false 3016 | 3017 | /micromark-util-encode@2.0.0: 3018 | resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} 3019 | dev: false 3020 | 3021 | /micromark-util-html-tag-name@2.0.0: 3022 | resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} 3023 | dev: false 3024 | 3025 | /micromark-util-normalize-identifier@2.0.0: 3026 | resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} 3027 | dependencies: 3028 | micromark-util-symbol: 2.0.0 3029 | dev: false 3030 | 3031 | /micromark-util-resolve-all@2.0.0: 3032 | resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} 3033 | dependencies: 3034 | micromark-util-types: 2.0.0 3035 | dev: false 3036 | 3037 | /micromark-util-sanitize-uri@2.0.0: 3038 | resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} 3039 | dependencies: 3040 | micromark-util-character: 2.1.0 3041 | micromark-util-encode: 2.0.0 3042 | micromark-util-symbol: 2.0.0 3043 | dev: false 3044 | 3045 | /micromark-util-subtokenize@2.0.1: 3046 | resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==} 3047 | dependencies: 3048 | devlop: 1.1.0 3049 | micromark-util-chunked: 2.0.0 3050 | micromark-util-symbol: 2.0.0 3051 | micromark-util-types: 2.0.0 3052 | dev: false 3053 | 3054 | /micromark-util-symbol@2.0.0: 3055 | resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} 3056 | dev: false 3057 | 3058 | /micromark-util-types@2.0.0: 3059 | resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} 3060 | dev: false 3061 | 3062 | /micromark@4.0.0: 3063 | resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} 3064 | dependencies: 3065 | '@types/debug': 4.1.12 3066 | debug: 4.3.6 3067 | decode-named-character-reference: 1.0.2 3068 | devlop: 1.1.0 3069 | micromark-core-commonmark: 2.0.1 3070 | micromark-factory-space: 2.0.0 3071 | micromark-util-character: 2.1.0 3072 | micromark-util-chunked: 2.0.0 3073 | micromark-util-combine-extensions: 2.0.0 3074 | micromark-util-decode-numeric-character-reference: 2.0.1 3075 | micromark-util-encode: 2.0.0 3076 | micromark-util-normalize-identifier: 2.0.0 3077 | micromark-util-resolve-all: 2.0.0 3078 | micromark-util-sanitize-uri: 2.0.0 3079 | micromark-util-subtokenize: 2.0.1 3080 | micromark-util-symbol: 2.0.0 3081 | micromark-util-types: 2.0.0 3082 | transitivePeerDependencies: 3083 | - supports-color 3084 | dev: false 3085 | 3086 | /micromatch@4.0.7: 3087 | resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} 3088 | engines: {node: '>=8.6'} 3089 | dependencies: 3090 | braces: 3.0.3 3091 | picomatch: 2.3.1 3092 | dev: true 3093 | 3094 | /minimatch@3.1.2: 3095 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 3096 | dependencies: 3097 | brace-expansion: 1.1.11 3098 | dev: true 3099 | 3100 | /minimatch@9.0.3: 3101 | resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} 3102 | engines: {node: '>=16 || 14 >=14.17'} 3103 | dependencies: 3104 | brace-expansion: 2.0.1 3105 | dev: true 3106 | 3107 | /minimatch@9.0.5: 3108 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 3109 | engines: {node: '>=16 || 14 >=14.17'} 3110 | dependencies: 3111 | brace-expansion: 2.0.1 3112 | dev: true 3113 | 3114 | /minimist@1.2.8: 3115 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 3116 | dev: true 3117 | 3118 | /minipass@7.1.2: 3119 | resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} 3120 | engines: {node: '>=16 || 14 >=14.17'} 3121 | dev: true 3122 | 3123 | /ms@2.1.2: 3124 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 3125 | 3126 | /ms@2.1.3: 3127 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 3128 | dev: true 3129 | 3130 | /mz@2.7.0: 3131 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 3132 | dependencies: 3133 | any-promise: 1.3.0 3134 | object-assign: 4.1.1 3135 | thenify-all: 1.6.0 3136 | dev: true 3137 | 3138 | /nano-css@5.6.2(react-dom@18.3.1)(react@18.3.1): 3139 | resolution: {integrity: sha512-+6bHaC8dSDGALM1HJjOHVXpuastdu2xFoZlC77Jh4cg+33Zcgm+Gxd+1xsnpZK14eyHObSp82+ll5y3SX75liw==} 3140 | peerDependencies: 3141 | react: '*' 3142 | react-dom: '*' 3143 | dependencies: 3144 | '@jridgewell/sourcemap-codec': 1.5.0 3145 | css-tree: 1.1.3 3146 | csstype: 3.1.3 3147 | fastest-stable-stringify: 2.0.2 3148 | inline-style-prefixer: 7.0.1 3149 | react: 18.3.1 3150 | react-dom: 18.3.1(react@18.3.1) 3151 | rtl-css-js: 1.16.1 3152 | stacktrace-js: 2.0.2 3153 | stylis: 4.3.4 3154 | dev: false 3155 | 3156 | /nanoid@3.3.6: 3157 | resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} 3158 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 3159 | hasBin: true 3160 | dev: false 3161 | 3162 | /nanoid@3.3.7: 3163 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 3164 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 3165 | hasBin: true 3166 | 3167 | /natural-compare@1.4.0: 3168 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 3169 | dev: true 3170 | 3171 | /next@14.2.5(react-dom@18.3.1)(react@18.3.1): 3172 | resolution: {integrity: sha512-0f8aRfBVL+mpzfBjYfQuLWh2WyAwtJXCRfkPF4UJ5qd2YwrHczsrSzXU4tRMV0OAxR8ZJZWPFn6uhSC56UTsLA==} 3173 | engines: {node: '>=18.17.0'} 3174 | hasBin: true 3175 | peerDependencies: 3176 | '@opentelemetry/api': ^1.1.0 3177 | '@playwright/test': ^1.41.2 3178 | react: ^18.2.0 3179 | react-dom: ^18.2.0 3180 | sass: ^1.3.0 3181 | peerDependenciesMeta: 3182 | '@opentelemetry/api': 3183 | optional: true 3184 | '@playwright/test': 3185 | optional: true 3186 | sass: 3187 | optional: true 3188 | dependencies: 3189 | '@next/env': 14.2.5 3190 | '@swc/helpers': 0.5.5 3191 | busboy: 1.6.0 3192 | caniuse-lite: 1.0.30001645 3193 | graceful-fs: 4.2.11 3194 | postcss: 8.4.31 3195 | react: 18.3.1 3196 | react-dom: 18.3.1(react@18.3.1) 3197 | styled-jsx: 5.1.1(react@18.3.1) 3198 | optionalDependencies: 3199 | '@next/swc-darwin-arm64': 14.2.5 3200 | '@next/swc-darwin-x64': 14.2.5 3201 | '@next/swc-linux-arm64-gnu': 14.2.5 3202 | '@next/swc-linux-arm64-musl': 14.2.5 3203 | '@next/swc-linux-x64-gnu': 14.2.5 3204 | '@next/swc-linux-x64-musl': 14.2.5 3205 | '@next/swc-win32-arm64-msvc': 14.2.5 3206 | '@next/swc-win32-ia32-msvc': 14.2.5 3207 | '@next/swc-win32-x64-msvc': 14.2.5 3208 | transitivePeerDependencies: 3209 | - '@babel/core' 3210 | - babel-plugin-macros 3211 | dev: false 3212 | 3213 | /normalize-path@3.0.0: 3214 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 3215 | engines: {node: '>=0.10.0'} 3216 | dev: true 3217 | 3218 | /object-assign@4.1.1: 3219 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 3220 | engines: {node: '>=0.10.0'} 3221 | dev: true 3222 | 3223 | /object-hash@3.0.0: 3224 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 3225 | engines: {node: '>= 6'} 3226 | dev: true 3227 | 3228 | /object-inspect@1.13.2: 3229 | resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} 3230 | engines: {node: '>= 0.4'} 3231 | dev: true 3232 | 3233 | /object-is@1.1.6: 3234 | resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==} 3235 | engines: {node: '>= 0.4'} 3236 | dependencies: 3237 | call-bind: 1.0.7 3238 | define-properties: 1.2.1 3239 | dev: true 3240 | 3241 | /object-keys@1.1.1: 3242 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 3243 | engines: {node: '>= 0.4'} 3244 | dev: true 3245 | 3246 | /object.assign@4.1.5: 3247 | resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} 3248 | engines: {node: '>= 0.4'} 3249 | dependencies: 3250 | call-bind: 1.0.7 3251 | define-properties: 1.2.1 3252 | has-symbols: 1.0.3 3253 | object-keys: 1.1.1 3254 | dev: true 3255 | 3256 | /object.entries@1.1.8: 3257 | resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} 3258 | engines: {node: '>= 0.4'} 3259 | dependencies: 3260 | call-bind: 1.0.7 3261 | define-properties: 1.2.1 3262 | es-object-atoms: 1.0.0 3263 | dev: true 3264 | 3265 | /object.fromentries@2.0.8: 3266 | resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} 3267 | engines: {node: '>= 0.4'} 3268 | dependencies: 3269 | call-bind: 1.0.7 3270 | define-properties: 1.2.1 3271 | es-abstract: 1.23.3 3272 | es-object-atoms: 1.0.0 3273 | dev: true 3274 | 3275 | /object.groupby@1.0.3: 3276 | resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} 3277 | engines: {node: '>= 0.4'} 3278 | dependencies: 3279 | call-bind: 1.0.7 3280 | define-properties: 1.2.1 3281 | es-abstract: 1.23.3 3282 | dev: true 3283 | 3284 | /object.values@1.2.0: 3285 | resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} 3286 | engines: {node: '>= 0.4'} 3287 | dependencies: 3288 | call-bind: 1.0.7 3289 | define-properties: 1.2.1 3290 | es-object-atoms: 1.0.0 3291 | dev: true 3292 | 3293 | /once@1.4.0: 3294 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 3295 | dependencies: 3296 | wrappy: 1.0.2 3297 | dev: true 3298 | 3299 | /optionator@0.9.4: 3300 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 3301 | engines: {node: '>= 0.8.0'} 3302 | dependencies: 3303 | deep-is: 0.1.4 3304 | fast-levenshtein: 2.0.6 3305 | levn: 0.4.1 3306 | prelude-ls: 1.2.1 3307 | type-check: 0.4.0 3308 | word-wrap: 1.2.5 3309 | dev: true 3310 | 3311 | /p-limit@3.1.0: 3312 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 3313 | engines: {node: '>=10'} 3314 | dependencies: 3315 | yocto-queue: 0.1.0 3316 | dev: true 3317 | 3318 | /p-locate@5.0.0: 3319 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 3320 | engines: {node: '>=10'} 3321 | dependencies: 3322 | p-limit: 3.1.0 3323 | dev: true 3324 | 3325 | /package-json-from-dist@1.0.0: 3326 | resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} 3327 | dev: true 3328 | 3329 | /parent-module@1.0.1: 3330 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 3331 | engines: {node: '>=6'} 3332 | dependencies: 3333 | callsites: 3.1.0 3334 | dev: true 3335 | 3336 | /parse-entities@4.0.1: 3337 | resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} 3338 | dependencies: 3339 | '@types/unist': 2.0.10 3340 | character-entities: 2.0.2 3341 | character-entities-legacy: 3.0.0 3342 | character-reference-invalid: 2.0.1 3343 | decode-named-character-reference: 1.0.2 3344 | is-alphanumerical: 2.0.1 3345 | is-decimal: 2.0.1 3346 | is-hexadecimal: 2.0.1 3347 | dev: false 3348 | 3349 | /path-exists@4.0.0: 3350 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 3351 | engines: {node: '>=8'} 3352 | dev: true 3353 | 3354 | /path-is-absolute@1.0.1: 3355 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 3356 | engines: {node: '>=0.10.0'} 3357 | dev: true 3358 | 3359 | /path-key@3.1.1: 3360 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 3361 | engines: {node: '>=8'} 3362 | dev: true 3363 | 3364 | /path-parse@1.0.7: 3365 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 3366 | dev: true 3367 | 3368 | /path-scurry@1.11.1: 3369 | resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} 3370 | engines: {node: '>=16 || 14 >=14.18'} 3371 | dependencies: 3372 | lru-cache: 10.4.3 3373 | minipass: 7.1.2 3374 | dev: true 3375 | 3376 | /path-type@4.0.0: 3377 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 3378 | engines: {node: '>=8'} 3379 | dev: true 3380 | 3381 | /periscopic@3.1.0: 3382 | resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} 3383 | dependencies: 3384 | '@types/estree': 1.0.5 3385 | estree-walker: 3.0.3 3386 | is-reference: 3.0.2 3387 | dev: false 3388 | 3389 | /picocolors@1.0.1: 3390 | resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} 3391 | 3392 | /picomatch@2.3.1: 3393 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 3394 | engines: {node: '>=8.6'} 3395 | dev: true 3396 | 3397 | /pify@2.3.0: 3398 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 3399 | engines: {node: '>=0.10.0'} 3400 | dev: true 3401 | 3402 | /pirates@4.0.6: 3403 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 3404 | engines: {node: '>= 6'} 3405 | dev: true 3406 | 3407 | /possible-typed-array-names@1.0.0: 3408 | resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} 3409 | engines: {node: '>= 0.4'} 3410 | dev: true 3411 | 3412 | /postcss-import@15.1.0(postcss@8.4.40): 3413 | resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} 3414 | engines: {node: '>=14.0.0'} 3415 | peerDependencies: 3416 | postcss: ^8.0.0 3417 | dependencies: 3418 | postcss: 8.4.40 3419 | postcss-value-parser: 4.2.0 3420 | read-cache: 1.0.0 3421 | resolve: 1.22.8 3422 | dev: true 3423 | 3424 | /postcss-js@4.0.1(postcss@8.4.40): 3425 | resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 3426 | engines: {node: ^12 || ^14 || >= 16} 3427 | peerDependencies: 3428 | postcss: ^8.4.21 3429 | dependencies: 3430 | camelcase-css: 2.0.1 3431 | postcss: 8.4.40 3432 | dev: true 3433 | 3434 | /postcss-load-config@4.0.2(postcss@8.4.40): 3435 | resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} 3436 | engines: {node: '>= 14'} 3437 | peerDependencies: 3438 | postcss: '>=8.0.9' 3439 | ts-node: '>=9.0.0' 3440 | peerDependenciesMeta: 3441 | postcss: 3442 | optional: true 3443 | ts-node: 3444 | optional: true 3445 | dependencies: 3446 | lilconfig: 3.1.2 3447 | postcss: 8.4.40 3448 | yaml: 2.5.0 3449 | dev: true 3450 | 3451 | /postcss-nested@6.2.0(postcss@8.4.40): 3452 | resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} 3453 | engines: {node: '>=12.0'} 3454 | peerDependencies: 3455 | postcss: ^8.2.14 3456 | dependencies: 3457 | postcss: 8.4.40 3458 | postcss-selector-parser: 6.1.1 3459 | dev: true 3460 | 3461 | /postcss-selector-parser@6.1.1: 3462 | resolution: {integrity: sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==} 3463 | engines: {node: '>=4'} 3464 | dependencies: 3465 | cssesc: 3.0.0 3466 | util-deprecate: 1.0.2 3467 | dev: true 3468 | 3469 | /postcss-value-parser@4.2.0: 3470 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 3471 | dev: true 3472 | 3473 | /postcss@8.4.31: 3474 | resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} 3475 | engines: {node: ^10 || ^12 || >=14} 3476 | dependencies: 3477 | nanoid: 3.3.7 3478 | picocolors: 1.0.1 3479 | source-map-js: 1.2.0 3480 | dev: false 3481 | 3482 | /postcss@8.4.40: 3483 | resolution: {integrity: sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==} 3484 | engines: {node: ^10 || ^12 || >=14} 3485 | dependencies: 3486 | nanoid: 3.3.7 3487 | picocolors: 1.0.1 3488 | source-map-js: 1.2.0 3489 | 3490 | /prelude-ls@1.2.1: 3491 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 3492 | engines: {node: '>= 0.8.0'} 3493 | dev: true 3494 | 3495 | /prop-types@15.8.1: 3496 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} 3497 | dependencies: 3498 | loose-envify: 1.4.0 3499 | object-assign: 4.1.1 3500 | react-is: 16.13.1 3501 | dev: true 3502 | 3503 | /property-information@6.5.0: 3504 | resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} 3505 | dev: false 3506 | 3507 | /punycode@2.3.1: 3508 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 3509 | engines: {node: '>=6'} 3510 | dev: true 3511 | 3512 | /queue-microtask@1.2.3: 3513 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 3514 | dev: true 3515 | 3516 | /react-dom@18.3.1(react@18.3.1): 3517 | resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} 3518 | peerDependencies: 3519 | react: ^18.3.1 3520 | dependencies: 3521 | loose-envify: 1.4.0 3522 | react: 18.3.1 3523 | scheduler: 0.23.2 3524 | dev: false 3525 | 3526 | /react-is@16.13.1: 3527 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} 3528 | dev: true 3529 | 3530 | /react-markdown@9.0.1(@types/react@18.3.3)(react@18.3.1): 3531 | resolution: {integrity: sha512-186Gw/vF1uRkydbsOIkcGXw7aHq0sZOCRFFjGrr7b9+nVZg4UfA4enXCaxm4fUzecU38sWfrNDitGhshuU7rdg==} 3532 | peerDependencies: 3533 | '@types/react': '>=18' 3534 | react: '>=18' 3535 | dependencies: 3536 | '@types/hast': 3.0.4 3537 | '@types/react': 18.3.3 3538 | devlop: 1.1.0 3539 | hast-util-to-jsx-runtime: 2.3.0 3540 | html-url-attributes: 3.0.0 3541 | mdast-util-to-hast: 13.2.0 3542 | react: 18.3.1 3543 | remark-parse: 11.0.0 3544 | remark-rehype: 11.1.0 3545 | unified: 11.0.5 3546 | unist-util-visit: 5.0.0 3547 | vfile: 6.0.2 3548 | transitivePeerDependencies: 3549 | - supports-color 3550 | dev: false 3551 | 3552 | /react-universal-interface@0.6.2(react@18.3.1)(tslib@2.6.3): 3553 | resolution: {integrity: sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==} 3554 | peerDependencies: 3555 | react: '*' 3556 | tslib: '*' 3557 | dependencies: 3558 | react: 18.3.1 3559 | tslib: 2.6.3 3560 | dev: false 3561 | 3562 | /react-use@17.5.1(react-dom@18.3.1)(react@18.3.1): 3563 | resolution: {integrity: sha512-LG/uPEVRflLWMwi3j/sZqR00nF6JGqTTDblkXK2nzXsIvij06hXl1V/MZIlwj1OKIQUtlh1l9jK8gLsRyCQxMg==} 3564 | peerDependencies: 3565 | react: '*' 3566 | react-dom: '*' 3567 | dependencies: 3568 | '@types/js-cookie': 2.2.7 3569 | '@xobotyi/scrollbar-width': 1.9.5 3570 | copy-to-clipboard: 3.3.3 3571 | fast-deep-equal: 3.1.3 3572 | fast-shallow-equal: 1.0.0 3573 | js-cookie: 2.2.1 3574 | nano-css: 5.6.2(react-dom@18.3.1)(react@18.3.1) 3575 | react: 18.3.1 3576 | react-dom: 18.3.1(react@18.3.1) 3577 | react-universal-interface: 0.6.2(react@18.3.1)(tslib@2.6.3) 3578 | resize-observer-polyfill: 1.5.1 3579 | screenfull: 5.2.0 3580 | set-harmonic-interval: 1.0.1 3581 | throttle-debounce: 3.0.1 3582 | ts-easing: 0.2.0 3583 | tslib: 2.6.3 3584 | dev: false 3585 | 3586 | /react@18.3.1: 3587 | resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} 3588 | engines: {node: '>=0.10.0'} 3589 | dependencies: 3590 | loose-envify: 1.4.0 3591 | dev: false 3592 | 3593 | /read-cache@1.0.0: 3594 | resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} 3595 | dependencies: 3596 | pify: 2.3.0 3597 | dev: true 3598 | 3599 | /readdirp@3.6.0: 3600 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 3601 | engines: {node: '>=8.10.0'} 3602 | dependencies: 3603 | picomatch: 2.3.1 3604 | dev: true 3605 | 3606 | /reflect.getprototypeof@1.0.6: 3607 | resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} 3608 | engines: {node: '>= 0.4'} 3609 | dependencies: 3610 | call-bind: 1.0.7 3611 | define-properties: 1.2.1 3612 | es-abstract: 1.23.3 3613 | es-errors: 1.3.0 3614 | get-intrinsic: 1.2.4 3615 | globalthis: 1.0.4 3616 | which-builtin-type: 1.1.4 3617 | dev: true 3618 | 3619 | /regenerator-runtime@0.14.1: 3620 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} 3621 | dev: false 3622 | 3623 | /regexp.prototype.flags@1.5.2: 3624 | resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} 3625 | engines: {node: '>= 0.4'} 3626 | dependencies: 3627 | call-bind: 1.0.7 3628 | define-properties: 1.2.1 3629 | es-errors: 1.3.0 3630 | set-function-name: 2.0.2 3631 | dev: true 3632 | 3633 | /remark-gfm@4.0.0: 3634 | resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} 3635 | dependencies: 3636 | '@types/mdast': 4.0.4 3637 | mdast-util-gfm: 3.0.0 3638 | micromark-extension-gfm: 3.0.0 3639 | remark-parse: 11.0.0 3640 | remark-stringify: 11.0.0 3641 | unified: 11.0.5 3642 | transitivePeerDependencies: 3643 | - supports-color 3644 | dev: false 3645 | 3646 | /remark-parse@11.0.0: 3647 | resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} 3648 | dependencies: 3649 | '@types/mdast': 4.0.4 3650 | mdast-util-from-markdown: 2.0.1 3651 | micromark-util-types: 2.0.0 3652 | unified: 11.0.5 3653 | transitivePeerDependencies: 3654 | - supports-color 3655 | dev: false 3656 | 3657 | /remark-rehype@11.1.0: 3658 | resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==} 3659 | dependencies: 3660 | '@types/hast': 3.0.4 3661 | '@types/mdast': 4.0.4 3662 | mdast-util-to-hast: 13.2.0 3663 | unified: 11.0.5 3664 | vfile: 6.0.2 3665 | dev: false 3666 | 3667 | /remark-stringify@11.0.0: 3668 | resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} 3669 | dependencies: 3670 | '@types/mdast': 4.0.4 3671 | mdast-util-to-markdown: 2.1.0 3672 | unified: 11.0.5 3673 | dev: false 3674 | 3675 | /resize-observer-polyfill@1.5.1: 3676 | resolution: {integrity: sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==} 3677 | dev: false 3678 | 3679 | /resolve-from@4.0.0: 3680 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 3681 | engines: {node: '>=4'} 3682 | dev: true 3683 | 3684 | /resolve-pkg-maps@1.0.0: 3685 | resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} 3686 | dev: true 3687 | 3688 | /resolve@1.22.8: 3689 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 3690 | hasBin: true 3691 | dependencies: 3692 | is-core-module: 2.15.0 3693 | path-parse: 1.0.7 3694 | supports-preserve-symlinks-flag: 1.0.0 3695 | dev: true 3696 | 3697 | /resolve@2.0.0-next.5: 3698 | resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} 3699 | hasBin: true 3700 | dependencies: 3701 | is-core-module: 2.15.0 3702 | path-parse: 1.0.7 3703 | supports-preserve-symlinks-flag: 1.0.0 3704 | dev: true 3705 | 3706 | /reusify@1.0.4: 3707 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 3708 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 3709 | dev: true 3710 | 3711 | /rimraf@3.0.2: 3712 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 3713 | deprecated: Rimraf versions prior to v4 are no longer supported 3714 | hasBin: true 3715 | dependencies: 3716 | glob: 7.2.3 3717 | dev: true 3718 | 3719 | /rtl-css-js@1.16.1: 3720 | resolution: {integrity: sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==} 3721 | dependencies: 3722 | '@babel/runtime': 7.25.4 3723 | dev: false 3724 | 3725 | /run-parallel@1.2.0: 3726 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 3727 | dependencies: 3728 | queue-microtask: 1.2.3 3729 | dev: true 3730 | 3731 | /safe-array-concat@1.1.2: 3732 | resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} 3733 | engines: {node: '>=0.4'} 3734 | dependencies: 3735 | call-bind: 1.0.7 3736 | get-intrinsic: 1.2.4 3737 | has-symbols: 1.0.3 3738 | isarray: 2.0.5 3739 | dev: true 3740 | 3741 | /safe-regex-test@1.0.3: 3742 | resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} 3743 | engines: {node: '>= 0.4'} 3744 | dependencies: 3745 | call-bind: 1.0.7 3746 | es-errors: 1.3.0 3747 | is-regex: 1.1.4 3748 | dev: true 3749 | 3750 | /scheduler@0.23.2: 3751 | resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} 3752 | dependencies: 3753 | loose-envify: 1.4.0 3754 | dev: false 3755 | 3756 | /screenfull@5.2.0: 3757 | resolution: {integrity: sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==} 3758 | engines: {node: '>=0.10.0'} 3759 | dev: false 3760 | 3761 | /secure-json-parse@2.7.0: 3762 | resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} 3763 | dev: false 3764 | 3765 | /semver@6.3.1: 3766 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 3767 | hasBin: true 3768 | dev: true 3769 | 3770 | /semver@7.6.3: 3771 | resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} 3772 | engines: {node: '>=10'} 3773 | hasBin: true 3774 | dev: true 3775 | 3776 | /server-only@0.0.1: 3777 | resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} 3778 | dev: false 3779 | 3780 | /set-function-length@1.2.2: 3781 | resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} 3782 | engines: {node: '>= 0.4'} 3783 | dependencies: 3784 | define-data-property: 1.1.4 3785 | es-errors: 1.3.0 3786 | function-bind: 1.1.2 3787 | get-intrinsic: 1.2.4 3788 | gopd: 1.0.1 3789 | has-property-descriptors: 1.0.2 3790 | dev: true 3791 | 3792 | /set-function-name@2.0.2: 3793 | resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} 3794 | engines: {node: '>= 0.4'} 3795 | dependencies: 3796 | define-data-property: 1.1.4 3797 | es-errors: 1.3.0 3798 | functions-have-names: 1.2.3 3799 | has-property-descriptors: 1.0.2 3800 | dev: true 3801 | 3802 | /set-harmonic-interval@1.0.1: 3803 | resolution: {integrity: sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==} 3804 | engines: {node: '>=6.9'} 3805 | dev: false 3806 | 3807 | /shebang-command@2.0.0: 3808 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 3809 | engines: {node: '>=8'} 3810 | dependencies: 3811 | shebang-regex: 3.0.0 3812 | dev: true 3813 | 3814 | /shebang-regex@3.0.0: 3815 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 3816 | engines: {node: '>=8'} 3817 | dev: true 3818 | 3819 | /side-channel@1.0.6: 3820 | resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} 3821 | engines: {node: '>= 0.4'} 3822 | dependencies: 3823 | call-bind: 1.0.7 3824 | es-errors: 1.3.0 3825 | get-intrinsic: 1.2.4 3826 | object-inspect: 1.13.2 3827 | dev: true 3828 | 3829 | /signal-exit@4.1.0: 3830 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 3831 | engines: {node: '>=14'} 3832 | dev: true 3833 | 3834 | /slash@3.0.0: 3835 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 3836 | engines: {node: '>=8'} 3837 | dev: true 3838 | 3839 | /sonner@1.5.0(react-dom@18.3.1)(react@18.3.1): 3840 | resolution: {integrity: sha512-FBjhG/gnnbN6FY0jaNnqZOMmB73R+5IiyYAw8yBj7L54ER7HB3fOSE5OFiQiE2iXWxeXKvg6fIP4LtVppHEdJA==} 3841 | peerDependencies: 3842 | react: ^18.0.0 3843 | react-dom: ^18.0.0 3844 | dependencies: 3845 | react: 18.3.1 3846 | react-dom: 18.3.1(react@18.3.1) 3847 | dev: false 3848 | 3849 | /source-map-js@1.2.0: 3850 | resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} 3851 | engines: {node: '>=0.10.0'} 3852 | 3853 | /source-map@0.5.6: 3854 | resolution: {integrity: sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==} 3855 | engines: {node: '>=0.10.0'} 3856 | dev: false 3857 | 3858 | /source-map@0.6.1: 3859 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 3860 | engines: {node: '>=0.10.0'} 3861 | dev: false 3862 | 3863 | /space-separated-tokens@2.0.2: 3864 | resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} 3865 | dev: false 3866 | 3867 | /sswr@2.1.0(svelte@4.2.18): 3868 | resolution: {integrity: sha512-Cqc355SYlTAaUt8iDPaC/4DPPXK925PePLMxyBKuWd5kKc5mwsG3nT9+Mq2tyguL5s7b4Jg+IRMpTRsNTAfpSQ==} 3869 | peerDependencies: 3870 | svelte: ^4.0.0 || ^5.0.0-next.0 3871 | dependencies: 3872 | svelte: 4.2.18 3873 | swrev: 4.0.0 3874 | dev: false 3875 | 3876 | /stack-generator@2.0.10: 3877 | resolution: {integrity: sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==} 3878 | dependencies: 3879 | stackframe: 1.3.4 3880 | dev: false 3881 | 3882 | /stackframe@1.3.4: 3883 | resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} 3884 | dev: false 3885 | 3886 | /stacktrace-gps@3.1.2: 3887 | resolution: {integrity: sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==} 3888 | dependencies: 3889 | source-map: 0.5.6 3890 | stackframe: 1.3.4 3891 | dev: false 3892 | 3893 | /stacktrace-js@2.0.2: 3894 | resolution: {integrity: sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==} 3895 | dependencies: 3896 | error-stack-parser: 2.1.4 3897 | stack-generator: 2.0.10 3898 | stacktrace-gps: 3.1.2 3899 | dev: false 3900 | 3901 | /stop-iteration-iterator@1.0.0: 3902 | resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} 3903 | engines: {node: '>= 0.4'} 3904 | dependencies: 3905 | internal-slot: 1.0.7 3906 | dev: true 3907 | 3908 | /streamsearch@1.1.0: 3909 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} 3910 | engines: {node: '>=10.0.0'} 3911 | dev: false 3912 | 3913 | /string-width@4.2.3: 3914 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 3915 | engines: {node: '>=8'} 3916 | dependencies: 3917 | emoji-regex: 8.0.0 3918 | is-fullwidth-code-point: 3.0.0 3919 | strip-ansi: 6.0.1 3920 | dev: true 3921 | 3922 | /string-width@5.1.2: 3923 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 3924 | engines: {node: '>=12'} 3925 | dependencies: 3926 | eastasianwidth: 0.2.0 3927 | emoji-regex: 9.2.2 3928 | strip-ansi: 7.1.0 3929 | dev: true 3930 | 3931 | /string.prototype.includes@2.0.0: 3932 | resolution: {integrity: sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==} 3933 | dependencies: 3934 | define-properties: 1.2.1 3935 | es-abstract: 1.23.3 3936 | dev: true 3937 | 3938 | /string.prototype.matchall@4.0.11: 3939 | resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} 3940 | engines: {node: '>= 0.4'} 3941 | dependencies: 3942 | call-bind: 1.0.7 3943 | define-properties: 1.2.1 3944 | es-abstract: 1.23.3 3945 | es-errors: 1.3.0 3946 | es-object-atoms: 1.0.0 3947 | get-intrinsic: 1.2.4 3948 | gopd: 1.0.1 3949 | has-symbols: 1.0.3 3950 | internal-slot: 1.0.7 3951 | regexp.prototype.flags: 1.5.2 3952 | set-function-name: 2.0.2 3953 | side-channel: 1.0.6 3954 | dev: true 3955 | 3956 | /string.prototype.repeat@1.0.0: 3957 | resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} 3958 | dependencies: 3959 | define-properties: 1.2.1 3960 | es-abstract: 1.23.3 3961 | dev: true 3962 | 3963 | /string.prototype.trim@1.2.9: 3964 | resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} 3965 | engines: {node: '>= 0.4'} 3966 | dependencies: 3967 | call-bind: 1.0.7 3968 | define-properties: 1.2.1 3969 | es-abstract: 1.23.3 3970 | es-object-atoms: 1.0.0 3971 | dev: true 3972 | 3973 | /string.prototype.trimend@1.0.8: 3974 | resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} 3975 | dependencies: 3976 | call-bind: 1.0.7 3977 | define-properties: 1.2.1 3978 | es-object-atoms: 1.0.0 3979 | dev: true 3980 | 3981 | /string.prototype.trimstart@1.0.8: 3982 | resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} 3983 | engines: {node: '>= 0.4'} 3984 | dependencies: 3985 | call-bind: 1.0.7 3986 | define-properties: 1.2.1 3987 | es-object-atoms: 1.0.0 3988 | dev: true 3989 | 3990 | /stringify-entities@4.0.4: 3991 | resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} 3992 | dependencies: 3993 | character-entities-html4: 2.1.0 3994 | character-entities-legacy: 3.0.0 3995 | dev: false 3996 | 3997 | /strip-ansi@6.0.1: 3998 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 3999 | engines: {node: '>=8'} 4000 | dependencies: 4001 | ansi-regex: 5.0.1 4002 | dev: true 4003 | 4004 | /strip-ansi@7.1.0: 4005 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 4006 | engines: {node: '>=12'} 4007 | dependencies: 4008 | ansi-regex: 6.0.1 4009 | dev: true 4010 | 4011 | /strip-bom@3.0.0: 4012 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 4013 | engines: {node: '>=4'} 4014 | dev: true 4015 | 4016 | /strip-json-comments@3.1.1: 4017 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 4018 | engines: {node: '>=8'} 4019 | dev: true 4020 | 4021 | /style-to-object@1.0.6: 4022 | resolution: {integrity: sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==} 4023 | dependencies: 4024 | inline-style-parser: 0.2.3 4025 | dev: false 4026 | 4027 | /styled-jsx@5.1.1(react@18.3.1): 4028 | resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} 4029 | engines: {node: '>= 12.0.0'} 4030 | peerDependencies: 4031 | '@babel/core': '*' 4032 | babel-plugin-macros: '*' 4033 | react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' 4034 | peerDependenciesMeta: 4035 | '@babel/core': 4036 | optional: true 4037 | babel-plugin-macros: 4038 | optional: true 4039 | dependencies: 4040 | client-only: 0.0.1 4041 | react: 18.3.1 4042 | dev: false 4043 | 4044 | /stylis@4.3.4: 4045 | resolution: {integrity: sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==} 4046 | dev: false 4047 | 4048 | /sucrase@3.35.0: 4049 | resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 4050 | engines: {node: '>=16 || 14 >=14.17'} 4051 | hasBin: true 4052 | dependencies: 4053 | '@jridgewell/gen-mapping': 0.3.5 4054 | commander: 4.1.1 4055 | glob: 10.4.5 4056 | lines-and-columns: 1.2.4 4057 | mz: 2.7.0 4058 | pirates: 4.0.6 4059 | ts-interface-checker: 0.1.13 4060 | dev: true 4061 | 4062 | /supports-color@7.2.0: 4063 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 4064 | engines: {node: '>=8'} 4065 | dependencies: 4066 | has-flag: 4.0.0 4067 | dev: true 4068 | 4069 | /supports-preserve-symlinks-flag@1.0.0: 4070 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 4071 | engines: {node: '>= 0.4'} 4072 | dev: true 4073 | 4074 | /svelte@4.2.18: 4075 | resolution: {integrity: sha512-d0FdzYIiAePqRJEb90WlJDkjUEx42xhivxN8muUBmfZnP+tzUgz12DJ2hRJi8sIHCME7jeK1PTMgKPSfTd8JrA==} 4076 | engines: {node: '>=16'} 4077 | dependencies: 4078 | '@ampproject/remapping': 2.3.0 4079 | '@jridgewell/sourcemap-codec': 1.5.0 4080 | '@jridgewell/trace-mapping': 0.3.25 4081 | '@types/estree': 1.0.5 4082 | acorn: 8.12.1 4083 | aria-query: 5.3.0 4084 | axobject-query: 4.1.0 4085 | code-red: 1.0.4 4086 | css-tree: 2.3.1 4087 | estree-walker: 3.0.3 4088 | is-reference: 3.0.2 4089 | locate-character: 3.0.0 4090 | magic-string: 0.30.11 4091 | periscopic: 3.1.0 4092 | dev: false 4093 | 4094 | /swr@2.2.5(react@18.3.1): 4095 | resolution: {integrity: sha512-QtxqyclFeAsxEUeZIYmsaQ0UjimSq1RZ9Un7I68/0ClKK/U3LoyQunwkQfJZr2fc22DfIXLNDc2wFyTEikCUpg==} 4096 | peerDependencies: 4097 | react: ^16.11.0 || ^17.0.0 || ^18.0.0 4098 | dependencies: 4099 | client-only: 0.0.1 4100 | react: 18.3.1 4101 | use-sync-external-store: 1.2.2(react@18.3.1) 4102 | dev: false 4103 | 4104 | /swrev@4.0.0: 4105 | resolution: {integrity: sha512-LqVcOHSB4cPGgitD1riJ1Hh4vdmITOp+BkmfmXRh4hSF/t7EnS4iD+SOTmq7w5pPm/SiPeto4ADbKS6dHUDWFA==} 4106 | dev: false 4107 | 4108 | /swrv@1.0.4(vue@3.4.35): 4109 | resolution: {integrity: sha512-zjEkcP8Ywmj+xOJW3lIT65ciY/4AL4e/Or7Gj0MzU3zBJNMdJiT8geVZhINavnlHRMMCcJLHhraLTAiDOTmQ9g==} 4110 | peerDependencies: 4111 | vue: '>=3.2.26 < 4' 4112 | dependencies: 4113 | vue: 3.4.35(typescript@5.5.4) 4114 | dev: false 4115 | 4116 | /tailwindcss@3.4.7: 4117 | resolution: {integrity: sha512-rxWZbe87YJb4OcSopb7up2Ba4U82BoiSGUdoDr3Ydrg9ckxFS/YWsvhN323GMcddgU65QRy7JndC7ahhInhvlQ==} 4118 | engines: {node: '>=14.0.0'} 4119 | hasBin: true 4120 | dependencies: 4121 | '@alloc/quick-lru': 5.2.0 4122 | arg: 5.0.2 4123 | chokidar: 3.6.0 4124 | didyoumean: 1.2.2 4125 | dlv: 1.1.3 4126 | fast-glob: 3.3.2 4127 | glob-parent: 6.0.2 4128 | is-glob: 4.0.3 4129 | jiti: 1.21.6 4130 | lilconfig: 2.1.0 4131 | micromatch: 4.0.7 4132 | normalize-path: 3.0.0 4133 | object-hash: 3.0.0 4134 | picocolors: 1.0.1 4135 | postcss: 8.4.40 4136 | postcss-import: 15.1.0(postcss@8.4.40) 4137 | postcss-js: 4.0.1(postcss@8.4.40) 4138 | postcss-load-config: 4.0.2(postcss@8.4.40) 4139 | postcss-nested: 6.2.0(postcss@8.4.40) 4140 | postcss-selector-parser: 6.1.1 4141 | resolve: 1.22.8 4142 | sucrase: 3.35.0 4143 | transitivePeerDependencies: 4144 | - ts-node 4145 | dev: true 4146 | 4147 | /tapable@2.2.1: 4148 | resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} 4149 | engines: {node: '>=6'} 4150 | dev: true 4151 | 4152 | /text-table@0.2.0: 4153 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 4154 | dev: true 4155 | 4156 | /thenify-all@1.6.0: 4157 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 4158 | engines: {node: '>=0.8'} 4159 | dependencies: 4160 | thenify: 3.3.1 4161 | dev: true 4162 | 4163 | /thenify@3.3.1: 4164 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 4165 | dependencies: 4166 | any-promise: 1.3.0 4167 | dev: true 4168 | 4169 | /throttle-debounce@3.0.1: 4170 | resolution: {integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==} 4171 | engines: {node: '>=10'} 4172 | dev: false 4173 | 4174 | /to-fast-properties@2.0.0: 4175 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} 4176 | engines: {node: '>=4'} 4177 | dev: false 4178 | 4179 | /to-regex-range@5.0.1: 4180 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 4181 | engines: {node: '>=8.0'} 4182 | dependencies: 4183 | is-number: 7.0.0 4184 | dev: true 4185 | 4186 | /toggle-selection@1.0.6: 4187 | resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} 4188 | dev: false 4189 | 4190 | /trim-lines@3.0.1: 4191 | resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} 4192 | dev: false 4193 | 4194 | /trough@2.2.0: 4195 | resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} 4196 | dev: false 4197 | 4198 | /ts-api-utils@1.3.0(typescript@5.5.4): 4199 | resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} 4200 | engines: {node: '>=16'} 4201 | peerDependencies: 4202 | typescript: '>=4.2.0' 4203 | dependencies: 4204 | typescript: 5.5.4 4205 | dev: true 4206 | 4207 | /ts-easing@0.2.0: 4208 | resolution: {integrity: sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==} 4209 | dev: false 4210 | 4211 | /ts-interface-checker@0.1.13: 4212 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 4213 | dev: true 4214 | 4215 | /tsconfig-paths@3.15.0: 4216 | resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} 4217 | dependencies: 4218 | '@types/json5': 0.0.29 4219 | json5: 1.0.2 4220 | minimist: 1.2.8 4221 | strip-bom: 3.0.0 4222 | dev: true 4223 | 4224 | /tslib@2.6.3: 4225 | resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} 4226 | dev: false 4227 | 4228 | /type-check@0.4.0: 4229 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 4230 | engines: {node: '>= 0.8.0'} 4231 | dependencies: 4232 | prelude-ls: 1.2.1 4233 | dev: true 4234 | 4235 | /type-fest@0.20.2: 4236 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 4237 | engines: {node: '>=10'} 4238 | dev: true 4239 | 4240 | /typed-array-buffer@1.0.2: 4241 | resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} 4242 | engines: {node: '>= 0.4'} 4243 | dependencies: 4244 | call-bind: 1.0.7 4245 | es-errors: 1.3.0 4246 | is-typed-array: 1.1.13 4247 | dev: true 4248 | 4249 | /typed-array-byte-length@1.0.1: 4250 | resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} 4251 | engines: {node: '>= 0.4'} 4252 | dependencies: 4253 | call-bind: 1.0.7 4254 | for-each: 0.3.3 4255 | gopd: 1.0.1 4256 | has-proto: 1.0.3 4257 | is-typed-array: 1.1.13 4258 | dev: true 4259 | 4260 | /typed-array-byte-offset@1.0.2: 4261 | resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} 4262 | engines: {node: '>= 0.4'} 4263 | dependencies: 4264 | available-typed-arrays: 1.0.7 4265 | call-bind: 1.0.7 4266 | for-each: 0.3.3 4267 | gopd: 1.0.1 4268 | has-proto: 1.0.3 4269 | is-typed-array: 1.1.13 4270 | dev: true 4271 | 4272 | /typed-array-length@1.0.6: 4273 | resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} 4274 | engines: {node: '>= 0.4'} 4275 | dependencies: 4276 | call-bind: 1.0.7 4277 | for-each: 0.3.3 4278 | gopd: 1.0.1 4279 | has-proto: 1.0.3 4280 | is-typed-array: 1.1.13 4281 | possible-typed-array-names: 1.0.0 4282 | dev: true 4283 | 4284 | /typescript@5.5.4: 4285 | resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} 4286 | engines: {node: '>=14.17'} 4287 | hasBin: true 4288 | 4289 | /unbox-primitive@1.0.2: 4290 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} 4291 | dependencies: 4292 | call-bind: 1.0.7 4293 | has-bigints: 1.0.2 4294 | has-symbols: 1.0.3 4295 | which-boxed-primitive: 1.0.2 4296 | dev: true 4297 | 4298 | /undici-types@5.26.5: 4299 | resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} 4300 | dev: true 4301 | 4302 | /unified@11.0.5: 4303 | resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} 4304 | dependencies: 4305 | '@types/unist': 3.0.2 4306 | bail: 2.0.2 4307 | devlop: 1.1.0 4308 | extend: 3.0.2 4309 | is-plain-obj: 4.1.0 4310 | trough: 2.2.0 4311 | vfile: 6.0.2 4312 | dev: false 4313 | 4314 | /unist-util-is@6.0.0: 4315 | resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} 4316 | dependencies: 4317 | '@types/unist': 3.0.2 4318 | dev: false 4319 | 4320 | /unist-util-position@5.0.0: 4321 | resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} 4322 | dependencies: 4323 | '@types/unist': 3.0.2 4324 | dev: false 4325 | 4326 | /unist-util-remove-position@5.0.0: 4327 | resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} 4328 | dependencies: 4329 | '@types/unist': 3.0.2 4330 | unist-util-visit: 5.0.0 4331 | dev: false 4332 | 4333 | /unist-util-stringify-position@4.0.0: 4334 | resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} 4335 | dependencies: 4336 | '@types/unist': 3.0.2 4337 | dev: false 4338 | 4339 | /unist-util-visit-parents@6.0.1: 4340 | resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} 4341 | dependencies: 4342 | '@types/unist': 3.0.2 4343 | unist-util-is: 6.0.0 4344 | dev: false 4345 | 4346 | /unist-util-visit@5.0.0: 4347 | resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} 4348 | dependencies: 4349 | '@types/unist': 3.0.2 4350 | unist-util-is: 6.0.0 4351 | unist-util-visit-parents: 6.0.1 4352 | dev: false 4353 | 4354 | /uri-js@4.4.1: 4355 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 4356 | dependencies: 4357 | punycode: 2.3.1 4358 | dev: true 4359 | 4360 | /use-sync-external-store@1.2.2(react@18.3.1): 4361 | resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==} 4362 | peerDependencies: 4363 | react: ^16.8.0 || ^17.0.0 || ^18.0.0 4364 | dependencies: 4365 | react: 18.3.1 4366 | dev: false 4367 | 4368 | /util-deprecate@1.0.2: 4369 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 4370 | dev: true 4371 | 4372 | /vfile-message@4.0.2: 4373 | resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} 4374 | dependencies: 4375 | '@types/unist': 3.0.2 4376 | unist-util-stringify-position: 4.0.0 4377 | dev: false 4378 | 4379 | /vfile@6.0.2: 4380 | resolution: {integrity: sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==} 4381 | dependencies: 4382 | '@types/unist': 3.0.2 4383 | unist-util-stringify-position: 4.0.0 4384 | vfile-message: 4.0.2 4385 | dev: false 4386 | 4387 | /vue@3.4.35(typescript@5.5.4): 4388 | resolution: {integrity: sha512-+fl/GLmI4GPileHftVlCdB7fUL4aziPcqTudpTGXCT8s+iZWuOCeNEB5haX6Uz2IpRrbEXOgIFbe+XciCuGbNQ==} 4389 | peerDependencies: 4390 | typescript: '*' 4391 | peerDependenciesMeta: 4392 | typescript: 4393 | optional: true 4394 | dependencies: 4395 | '@vue/compiler-dom': 3.4.35 4396 | '@vue/compiler-sfc': 3.4.35 4397 | '@vue/runtime-dom': 3.4.35 4398 | '@vue/server-renderer': 3.4.35(vue@3.4.35) 4399 | '@vue/shared': 3.4.35 4400 | typescript: 5.5.4 4401 | dev: false 4402 | 4403 | /which-boxed-primitive@1.0.2: 4404 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 4405 | dependencies: 4406 | is-bigint: 1.0.4 4407 | is-boolean-object: 1.1.2 4408 | is-number-object: 1.0.7 4409 | is-string: 1.0.7 4410 | is-symbol: 1.0.4 4411 | dev: true 4412 | 4413 | /which-builtin-type@1.1.4: 4414 | resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==} 4415 | engines: {node: '>= 0.4'} 4416 | dependencies: 4417 | function.prototype.name: 1.1.6 4418 | has-tostringtag: 1.0.2 4419 | is-async-function: 2.0.0 4420 | is-date-object: 1.0.5 4421 | is-finalizationregistry: 1.0.2 4422 | is-generator-function: 1.0.10 4423 | is-regex: 1.1.4 4424 | is-weakref: 1.0.2 4425 | isarray: 2.0.5 4426 | which-boxed-primitive: 1.0.2 4427 | which-collection: 1.0.2 4428 | which-typed-array: 1.1.15 4429 | dev: true 4430 | 4431 | /which-collection@1.0.2: 4432 | resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} 4433 | engines: {node: '>= 0.4'} 4434 | dependencies: 4435 | is-map: 2.0.3 4436 | is-set: 2.0.3 4437 | is-weakmap: 2.0.2 4438 | is-weakset: 2.0.3 4439 | dev: true 4440 | 4441 | /which-typed-array@1.1.15: 4442 | resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} 4443 | engines: {node: '>= 0.4'} 4444 | dependencies: 4445 | available-typed-arrays: 1.0.7 4446 | call-bind: 1.0.7 4447 | for-each: 0.3.3 4448 | gopd: 1.0.1 4449 | has-tostringtag: 1.0.2 4450 | dev: true 4451 | 4452 | /which@2.0.2: 4453 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 4454 | engines: {node: '>= 8'} 4455 | hasBin: true 4456 | dependencies: 4457 | isexe: 2.0.0 4458 | dev: true 4459 | 4460 | /word-wrap@1.2.5: 4461 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 4462 | engines: {node: '>=0.10.0'} 4463 | dev: true 4464 | 4465 | /wrap-ansi@7.0.0: 4466 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 4467 | engines: {node: '>=10'} 4468 | dependencies: 4469 | ansi-styles: 4.3.0 4470 | string-width: 4.2.3 4471 | strip-ansi: 6.0.1 4472 | dev: true 4473 | 4474 | /wrap-ansi@8.1.0: 4475 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 4476 | engines: {node: '>=12'} 4477 | dependencies: 4478 | ansi-styles: 6.2.1 4479 | string-width: 5.1.2 4480 | strip-ansi: 7.1.0 4481 | dev: true 4482 | 4483 | /wrappy@1.0.2: 4484 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 4485 | dev: true 4486 | 4487 | /yaml@2.5.0: 4488 | resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==} 4489 | engines: {node: '>= 14'} 4490 | hasBin: true 4491 | dev: true 4492 | 4493 | /yocto-queue@0.1.0: 4494 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 4495 | engines: {node: '>=10'} 4496 | dev: true 4497 | 4498 | /zod-to-json-schema@3.23.2(zod@3.23.8): 4499 | resolution: {integrity: sha512-uSt90Gzc/tUfyNqxnjlfBs8W6WSGpNBv0rVsNxP/BVSMHMKGdthPYff4xtCHYloJGM0CFxFsb3NbC0eqPhfImw==} 4500 | peerDependencies: 4501 | zod: ^3.23.3 4502 | dependencies: 4503 | zod: 3.23.8 4504 | dev: false 4505 | 4506 | /zod@3.23.8: 4507 | resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} 4508 | dev: false 4509 | 4510 | /zwitch@2.0.4: 4511 | resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} 4512 | dev: false 4513 | -------------------------------------------------------------------------------- /postcss.config.mjs: -------------------------------------------------------------------------------- 1 | /** @type {import('postcss-load-config').Config} */ 2 | const config = { 3 | plugins: { 4 | tailwindcss: {}, 5 | }, 6 | }; 7 | 8 | export default config; 9 | -------------------------------------------------------------------------------- /public/patio.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/ai-sdk-preview-rsc-genui/c28974022b240b38e2f634e73bb5dcb4c920470b/public/patio.jpg -------------------------------------------------------------------------------- /public/side.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/ai-sdk-preview-rsc-genui/c28974022b240b38e2f634e73bb5dcb4c920470b/public/side.jpg -------------------------------------------------------------------------------- /public/yard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/ai-sdk-preview-rsc-genui/c28974022b240b38e2f634e73bb5dcb4c920470b/public/yard.jpg -------------------------------------------------------------------------------- /tailwind.config.ts: -------------------------------------------------------------------------------- 1 | import type { Config } from "tailwindcss"; 2 | 3 | const config: Config = { 4 | content: [ 5 | "./pages/**/*.{js,ts,jsx,tsx,mdx}", 6 | "./components/**/*.{js,ts,jsx,tsx,mdx}", 7 | "./app/**/*.{js,ts,jsx,tsx,mdx}", 8 | ], 9 | theme: { 10 | extend: { 11 | backgroundImage: { 12 | "gradient-radial": "radial-gradient(var(--tw-gradient-stops))", 13 | "gradient-conic": 14 | "conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))", 15 | }, 16 | }, 17 | }, 18 | plugins: [], 19 | }; 20 | export default config; 21 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "lib": ["dom", "dom.iterable", "esnext"], 5 | "allowJs": true, 6 | "skipLibCheck": true, 7 | "strict": true, 8 | "noEmit": true, 9 | "esModuleInterop": true, 10 | "module": "esnext", 11 | "moduleResolution": "bundler", 12 | "resolveJsonModule": true, 13 | "isolatedModules": true, 14 | "jsx": "preserve", 15 | "incremental": true, 16 | "plugins": [ 17 | { 18 | "name": "next" 19 | } 20 | ], 21 | "paths": { 22 | "@/*": ["./*"] 23 | } 24 | }, 25 | "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], 26 | "exclude": ["node_modules"] 27 | } 28 | --------------------------------------------------------------------------------