AT-based link agregator. Mirror of https://github.com/likeandscribe/frontpage

Implement preview oauth client (doesn't use it yet) (#246)

* Implement preview oauth client

* Fix type error

* Fix type error

authored by tom.sherman.is and committed by

GitHub dc731fd2 56ce30bf

+683 -348
+1 -1
packages/atproto-browser/app/at/_lib/video-embed-client.tsx
··· 53 export function VideoEmbedWrapper({ 54 videoRef, 55 }: { 56 - videoRef?: RefObject<HTMLVideoElement>; 57 }) { 58 return ( 59 <div
··· 53 export function VideoEmbedWrapper({ 54 videoRef, 55 }: { 56 + videoRef?: RefObject<HTMLVideoElement | null>; 57 }) { 58 return ( 59 <div
+2 -2
packages/atproto-browser/package.json
··· 36 "@repo/typescript-config": "workspace:*", 37 "@types/http-link-header": "^1.0.7", 38 "@types/node": "^20", 39 - "@types/react": "^18.3.10", 40 - "@types/react-dom": "^18.3.0", 41 "eslint": "catalog:", 42 "tsx": "^4.16.5", 43 "typescript": "catalog:",
··· 36 "@repo/typescript-config": "workspace:*", 37 "@types/http-link-header": "^1.0.7", 38 "@types/node": "^20", 39 + "@types/react": "catalog:", 40 + "@types/react-dom": "catalog:", 41 "eslint": "catalog:", 42 "tsx": "^4.16.5", 43 "typescript": "catalog:",
+1 -1
packages/eslint-config/package.json
··· 13 "@repo/typescript-config": "workspace:*", 14 "@types/eslint-plugin-jsx-a11y": "^6.10.0", 15 "@types/node": "catalog:", 16 - "@types/react": "^18.3.10", 17 "@typescript-eslint/utils": "^8.30.1", 18 "eslint": "catalog:", 19 "eslint-config-next": "catalog:",
··· 13 "@repo/typescript-config": "workspace:*", 14 "@types/eslint-plugin-jsx-a11y": "^6.10.0", 15 "@types/node": "catalog:", 16 + "@types/react": "catalog:", 17 "@typescript-eslint/utils": "^8.30.1", 18 "eslint": "catalog:", 19 "eslint-config-next": "catalog:",
+1
packages/eslint-config/typescript.js
··· 13 projectService: true, 14 }, 15 }, 16 rules: { 17 "@typescript-eslint/no-unsafe-assignment": "off", 18 "@typescript-eslint/no-floating-promises": "error",
··· 13 projectService: true, 14 }, 15 }, 16 + 17 rules: { 18 "@typescript-eslint/no-unsafe-assignment": "off", 19 "@typescript-eslint/no-floating-promises": "error",
+41
packages/frontpage-oauth-preview-client/.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.* 7 + .yarn/* 8 + !.yarn/patches 9 + !.yarn/plugins 10 + !.yarn/releases 11 + !.yarn/versions 12 + 13 + # testing 14 + /coverage 15 + 16 + # next.js 17 + /.next/ 18 + /out/ 19 + 20 + # production 21 + /build 22 + 23 + # misc 24 + .DS_Store 25 + *.pem 26 + 27 + # debug 28 + npm-debug.log* 29 + yarn-debug.log* 30 + yarn-error.log* 31 + .pnpm-debug.log* 32 + 33 + # env files (can opt-in for committing if needed) 34 + .env* 35 + 36 + # vercel 37 + .vercel 38 + 39 + # typescript 40 + *.tsbuildinfo 41 + next-env.d.ts
+36
packages/frontpage-oauth-preview-client/README.md
···
··· 1 + This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app). 2 + 3 + ## Getting Started 4 + 5 + First, run the development server: 6 + 7 + ```bash 8 + npm run dev 9 + # or 10 + yarn dev 11 + # or 12 + pnpm dev 13 + # or 14 + bun dev 15 + ``` 16 + 17 + Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. 18 + 19 + You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. 20 + 21 + This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. 22 + 23 + ## Learn More 24 + 25 + To learn more about Next.js, take a look at the following resources: 26 + 27 + - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. 28 + - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. 29 + 30 + You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! 31 + 32 + ## Deploy on Vercel 33 + 34 + The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. 35 + 36 + Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
+45
packages/frontpage-oauth-preview-client/app/[host]/client-metadata.json/route.ts
···
··· 1 + import { Vercel } from "@vercel/sdk"; 2 + import { getClientMetadata } from "@repo/frontpage-oauth"; 3 + 4 + export async function GET( 5 + _request: Request, 6 + { params }: { params: Promise<{ host: string[] }> }, 7 + ) { 8 + console.log(await params); 9 + const host = (await params).host[0]; 10 + if (!host) { 11 + return new Response("Not found", { status: 404 }); 12 + } 13 + 14 + const vercel = new Vercel(); 15 + const currentDeployment = await vercel.deployments.getDeployment({ 16 + idOrUrl: process.env.VERCEL_DEPLOYMENT_ID!, 17 + }); 18 + 19 + const team = currentDeployment.team; // Get likeandscribe team data from current deployment. Avoids having to hardcode team ID. 20 + 21 + if (!team) { 22 + return new Response("Not found", { status: 404 }); 23 + } 24 + 25 + const deployment = await vercel.deployments.getDeployment({ 26 + teamId: team.id, 27 + idOrUrl: host, 28 + }); 29 + 30 + if (!deployment) { 31 + return new Response("Not found", { status: 404 }); 32 + } 33 + 34 + const VERCEL_URL = process.env.VERCEL_URL; 35 + if (!VERCEL_URL) { 36 + throw new Error("VERCEL_URL is not set"); 37 + } 38 + 39 + return Response.json( 40 + getClientMetadata({ 41 + redirectUris: [`https://${host}/oauth/callback`], 42 + baseUrl: `https://${VERCEL_URL}/${host}`, 43 + }), 44 + ); 45 + }
+9
packages/frontpage-oauth-preview-client/app/layout.tsx
···
··· 1 + import type { ReactNode } from "react"; 2 + 3 + export default function Layout({ children }: { children: ReactNode }) { 4 + return ( 5 + <html lang="en"> 6 + <body>{children}</body> 7 + </html> 8 + ); 9 + }
+5
packages/frontpage-oauth-preview-client/app/page.tsx
···
··· 1 + import {} from "@repo/frontpage-oauth"; 2 + 3 + export default function Home() { 4 + return null; 5 + }
+2
packages/frontpage-oauth-preview-client/eslint.config.mjs
···
··· 1 + import base from "@repo/eslint-config/next.js"; 2 + export default base;
+12
packages/frontpage-oauth-preview-client/next.config.ts
···
··· 1 + import type { NextConfig } from "next"; 2 + 3 + const nextConfig: NextConfig = { 4 + typescript: { 5 + ignoreBuildErrors: true, 6 + }, 7 + eslint: { 8 + ignoreDuringBuilds: true, 9 + }, 10 + }; 11 + 12 + export default nextConfig;
+27
packages/frontpage-oauth-preview-client/package.json
···
··· 1 + { 2 + "name": "frontpage-oauth-preview-client", 3 + "version": "0.1.0", 4 + "private": true, 5 + "scripts": { 6 + "dev": "next dev --turbopack", 7 + "build": "next build", 8 + "start": "next start", 9 + "lint": "next lint" 10 + }, 11 + "dependencies": { 12 + "@repo/frontpage-oauth": "workspace:*", 13 + "@vercel/sdk": "^1.6.2", 14 + "next": "catalog:", 15 + "react": "catalog:", 16 + "react-dom": "catalog:" 17 + }, 18 + "devDependencies": { 19 + "@repo/eslint-config": "workspace:*", 20 + "@repo/typescript-config": "workspace:*", 21 + "@types/node": "catalog:", 22 + "@types/react": "catalog:", 23 + "@types/react-dom": "catalog:", 24 + "eslint": "catalog:", 25 + "typescript": "catalog:" 26 + } 27 + }
+19
packages/frontpage-oauth-preview-client/tsconfig.json
···
··· 1 + { 2 + "extends": "@repo/typescript-config/nextjs.json", 3 + "compilerOptions": { 4 + "paths": { 5 + // TODO: Move this to subpath imports once https://github.com/microsoft/TypeScript/issues/52460 is resolved 6 + "@/*": ["./*"] 7 + } 8 + }, 9 + "include": [ 10 + "**/*.ts", 11 + "**/*.js", 12 + "**/*.tsx", 13 + "**/*.mjs", 14 + "**/*.mts", 15 + "next-env.d.ts", 16 + ".next/types/**/*.ts" 17 + ], 18 + "exclude": ["node_modules"] 19 + }
+9
packages/frontpage-oauth-preview-client/turbo.json
···
··· 1 + { 2 + "$schema": "https://turbo.build/schema.json", 3 + "extends": ["//"], 4 + "tasks": { 5 + "build": { 6 + "env": ["VERCEL_DEPLOYMENT_ID", "VERCEL_URL"] 7 + } 8 + } 9 + }
+3
packages/frontpage-oauth/README.md
···
··· 1 + # frontpage-oauth 2 + 3 + Package to share around common code for frontpage oauth client in the monorepo.
+7
packages/frontpage-oauth/eslint.config.mjs
···
··· 1 + import base from "@repo/eslint-config/typescript.js"; 2 + export default [ 3 + ...base, 4 + { 5 + ignores: ["eslint.config.mjs"], 6 + }, 7 + ];
+13
packages/frontpage-oauth/package.json
···
··· 1 + { 2 + "name": "@repo/frontpage-oauth", 3 + "main": "./src/index.ts", 4 + "dependencies": { 5 + "@atproto/oauth-types": "^0.1.2" 6 + }, 7 + "devDependencies": { 8 + "@repo/eslint-config": "workspace:*", 9 + "@repo/typescript-config": "workspace:*", 10 + "eslint": "catalog:", 11 + "typescript": "catalog:" 12 + } 13 + }
+30
packages/frontpage-oauth/src/index.ts
···
··· 1 + import { type OAuthClientMetadata } from "@atproto/oauth-types"; 2 + 3 + type GetClientMetadataOptions = { 4 + redirectUris: [string, ...string[]]; 5 + baseUrl: string; 6 + }; 7 + 8 + export function getClientMetadata({ 9 + redirectUris, 10 + baseUrl, 11 + }: GetClientMetadataOptions) { 12 + return { 13 + // Client ID is the URL of the client metadata 14 + // This isn't immediately obvious and if you supply something else the PAR request will fail with a 400 "Invalid url" error. I had to traverse the atproto implementation to find out why! 15 + client_id: `${baseUrl}/oauth/client-metadata.json`, 16 + dpop_bound_access_tokens: true, 17 + application_type: "web", 18 + subject_type: "public", 19 + grant_types: ["authorization_code", "refresh_token"], 20 + response_types: ["code"], // TODO: "code id_token"? 21 + // TODO: Tweak these? 22 + scope: "atproto transition:generic", 23 + client_name: "Frontpage", 24 + token_endpoint_auth_method: "private_key_jwt", 25 + token_endpoint_auth_signing_alg: "ES256", 26 + redirect_uris: redirectUris, 27 + client_uri: baseUrl, 28 + jwks_uri: `${baseUrl}/oauth/jwks.json`, 29 + } satisfies OAuthClientMetadata; 30 + }
+9
packages/frontpage-oauth/tsconfig.json
···
··· 1 + { 2 + "extends": "@repo/typescript-config/base.json", 3 + "include": ["src/**/*.ts"], 4 + "compilerOptions": { 5 + "module": "Preserve", 6 + "moduleResolution": "Bundler", 7 + "outDir": "dist" 8 + } 9 + }
+1 -1
packages/frontpage/app/(app)/post/[postAuthor]/[postRkey]/_lib/comment-client.tsx
··· 238 autoFocus?: boolean; 239 onActionDone?: () => void; 240 extraButton?: React.ReactNode; 241 - textAreaRef?: React.RefObject<HTMLTextAreaElement>; 242 }) { 243 const [input, setInput] = useState(""); 244 const [_, action, isPending] = useActionState(
··· 238 autoFocus?: boolean; 239 onActionDone?: () => void; 240 extraButton?: React.ReactNode; 241 + textAreaRef?: React.RefObject<HTMLTextAreaElement | null>; 242 }) { 243 const [input, setInput] = useState(""); 244 const [_, action, isPending] = useActionState(
+5 -19
packages/frontpage/lib/auth.ts
··· 22 } from "oauth4webapi"; 23 import { cookies, headers } from "next/headers"; 24 import { 25 - type OAuthClientMetadata, 26 oauthProtectedResourceMetadataSchema, 27 oauthTokenResponseSchema, 28 } from "@atproto/oauth-types"; ··· 31 import * as schema from "./schema"; 32 import { eq } from "drizzle-orm"; 33 import { getDidFromHandleOrDid } from "./data/atproto/identity"; 34 35 const USER_AGENT = "appview/@frontpage.fyi (@tom-sherman.com)"; 36 ··· 65 66 const appUrl = `https://${host}`; 67 68 - return { 69 - // Client ID is the URL of the client metadata 70 - // This isn't immediately obvious and if you supply something else the PAR request will fail with a 400 "Invalid url" error. I had to traverse the atproto implementation to find out why! 71 - client_id: `${appUrl}/oauth/client-metadata.json`, 72 - dpop_bound_access_tokens: true, 73 - application_type: "web", 74 - subject_type: "public", 75 - grant_types: ["authorization_code", "refresh_token"], 76 - response_types: ["code"], // TODO: "code id_token"? 77 - // TODO: Tweak these? 78 - scope: "atproto transition:generic", 79 - client_name: "Frontpage", 80 - token_endpoint_auth_method: "private_key_jwt", 81 - token_endpoint_auth_signing_alg: "ES256", 82 - redirect_uris: [`${appUrl}/oauth/callback`] as const, 83 - client_uri: appUrl, 84 - jwks_uri: `${appUrl}/oauth/jwks.json`, 85 - } satisfies OAuthClientMetadata; 86 }); 87 88 export const getOauthClientOptions = async () =>
··· 22 } from "oauth4webapi"; 23 import { cookies, headers } from "next/headers"; 24 import { 25 oauthProtectedResourceMetadataSchema, 26 oauthTokenResponseSchema, 27 } from "@atproto/oauth-types"; ··· 30 import * as schema from "./schema"; 31 import { eq } from "drizzle-orm"; 32 import { getDidFromHandleOrDid } from "./data/atproto/identity"; 33 + import { getClientMetadata as createClientMetadata } from "@repo/frontpage-oauth"; 34 35 const USER_AGENT = "appview/@frontpage.fyi (@tom-sherman.com)"; 36 ··· 65 66 const appUrl = `https://${host}`; 67 68 + return createClientMetadata({ 69 + redirectUris: [`${appUrl}/oauth/callback`], 70 + baseUrl: appUrl, 71 + }); 72 }); 73 74 export const getOauthClientOptions = async () =>
+2 -1
packages/frontpage/lib/components/ui/tooltip.tsx
··· 3 import * as TooltipPrimitive from "@radix-ui/react-tooltip"; 4 5 import { cn } from "@/lib/utils"; 6 7 const TooltipProvider: (props: { 8 children: React.ReactNode; 9 - }) => React.ReactNode = TooltipPrimitive.Provider; 10 11 const Tooltip = TooltipPrimitive.Root; 12
··· 3 import * as TooltipPrimitive from "@radix-ui/react-tooltip"; 4 5 import { cn } from "@/lib/utils"; 6 + import React from "react"; 7 8 const TooltipProvider: (props: { 9 children: React.ReactNode; 10 + }) => React.ReactNode | Promise<React.ReactNode> = TooltipPrimitive.Provider; 11 12 const Tooltip = TooltipPrimitive.Root; 13
+3 -2
packages/frontpage/package.json
··· 24 "@markdoc/markdoc": "^0.4.0", 25 "@next/env": "^14.2.4", 26 "@repo/frontpage-atproto-client": "workspace:*", 27 "@radix-ui/react-alert-dialog": "^1.1.7", 28 "@radix-ui/react-avatar": "^1.1.4", 29 "@radix-ui/react-dialog": "^1.1.7", ··· 64 "@repo/typescript-config": "workspace:*", 65 "@testing-library/react": "^16.3.0", 66 "@types/node": "^20", 67 - "@types/react": "^18.3.10", 68 - "@types/react-dom": "^18.3.0", 69 "@vitejs/plugin-react": "^4.3.1", 70 "babel-plugin-react-compiler": "19.0.0-beta-ebf51a3-20250411", 71 "drizzle-kit": "^0.31.0",
··· 24 "@markdoc/markdoc": "^0.4.0", 25 "@next/env": "^14.2.4", 26 "@repo/frontpage-atproto-client": "workspace:*", 27 + "@repo/frontpage-oauth": "workspace:*", 28 "@radix-ui/react-alert-dialog": "^1.1.7", 29 "@radix-ui/react-avatar": "^1.1.4", 30 "@radix-ui/react-dialog": "^1.1.7", ··· 65 "@repo/typescript-config": "workspace:*", 66 "@testing-library/react": "^16.3.0", 67 "@types/node": "^20", 68 + "@types/react": "catalog:", 69 + "@types/react-dom": "catalog:", 70 "@vitejs/plugin-react": "^4.3.1", 71 "babel-plugin-react-compiler": "19.0.0-beta-ebf51a3-20250411", 72 "drizzle-kit": "^0.31.0",
+2 -2
packages/unravel/package.json
··· 23 "@repo/eslint-config": "workspace:*", 24 "@repo/typescript-config": "workspace:*", 25 "@types/node": "^20", 26 - "@types/react": "^18.3.10", 27 - "@types/react-dom": "^18.3.0", 28 "eslint": "catalog:", 29 "postcss": "^8", 30 "tailwindcss": "^3.4.1",
··· 23 "@repo/eslint-config": "workspace:*", 24 "@repo/typescript-config": "workspace:*", 25 "@types/node": "^20", 26 + "@types/react": "catalog:", 27 + "@types/react-dom": "catalog:", 28 "eslint": "catalog:", 29 "postcss": "^8", 30 "tailwindcss": "^3.4.1",
+396 -319
pnpm-lock.yaml
··· 12 '@types/node': 13 specifier: ^22 14 version: 22.14.1 15 eslint: 16 specifier: ^9 17 version: 9.24.0 ··· 118 specifier: ^20 119 version: 20.17.23 120 '@types/react': 121 - specifier: ^18.3.10 122 - version: 18.3.10 123 '@types/react-dom': 124 - specifier: ^18.3.0 125 - version: 18.3.0 126 eslint: 127 specifier: 'catalog:' 128 version: 9.24.0(jiti@1.21.0) ··· 160 specifier: 'catalog:' 161 version: 22.14.1 162 '@types/react': 163 - specifier: ^18.3.10 164 - version: 18.3.10 165 '@typescript-eslint/utils': 166 specifier: ^8.30.1 167 version: 8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3) ··· 212 version: 0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3) 213 '@markdoc/markdoc': 214 specifier: ^0.4.0 215 - version: 0.4.0(@types/react@18.3.10)(react@19.0.0) 216 '@next/env': 217 specifier: ^14.2.4 218 version: 14.2.4 219 '@radix-ui/react-alert-dialog': 220 specifier: ^1.1.7 221 - version: 1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 222 '@radix-ui/react-avatar': 223 specifier: ^1.1.4 224 - version: 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 225 '@radix-ui/react-dialog': 226 specifier: ^1.1.7 227 - version: 1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 228 '@radix-ui/react-dropdown-menu': 229 specifier: ^2.1.7 230 - version: 2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 231 '@radix-ui/react-hover-card': 232 specifier: ^1.1.7 233 - version: 1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 234 '@radix-ui/react-icons': 235 specifier: ^1.3.2 236 version: 1.3.2(react@19.0.0) 237 '@radix-ui/react-label': 238 specifier: ^2.1.3 239 - version: 2.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 240 '@radix-ui/react-popover': 241 specifier: ^1.1.7 242 - version: 1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 243 '@radix-ui/react-select': 244 specifier: ^2.1.7 245 - version: 2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 246 '@radix-ui/react-separator': 247 specifier: ^1.1.3 248 - version: 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 249 '@radix-ui/react-slot': 250 specifier: ^1.2.0 251 - version: 1.2.0(@types/react@18.3.10)(react@19.0.0) 252 '@radix-ui/react-tabs': 253 specifier: ^1.1.4 254 - version: 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 255 '@radix-ui/react-toast': 256 specifier: ^1.2.7 257 - version: 1.2.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 258 '@radix-ui/react-tooltip': 259 specifier: ^1.2.0 260 - version: 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 261 '@repo/frontpage-atproto-client': 262 specifier: workspace:* 263 version: link:../frontpage-atproto-client 264 '@vercel/analytics': 265 specifier: ^1.3.1 266 version: 1.3.1(next@15.3.1(@babel/core@7.24.7)(@opentelemetry/api@1.9.0)(babel-plugin-react-compiler@19.0.0-beta-ebf51a3-20250411)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) ··· 330 version: link:../typescript-config 331 '@testing-library/react': 332 specifier: ^16.3.0 333 - version: 16.3.0(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 334 '@types/node': 335 specifier: ^20 336 version: 20.17.23 337 '@types/react': 338 - specifier: ^18.3.10 339 - version: 18.3.10 340 '@types/react-dom': 341 - specifier: ^18.3.0 342 - version: 18.3.0 343 '@vitejs/plugin-react': 344 specifier: ^4.3.1 345 version: 4.3.1(vite@5.4.14(@types/node@20.17.23)(terser@5.34.1)) ··· 411 specifier: 'catalog:' 412 version: 5.8.3 413 414 packages/typescript-config: {} 415 416 packages/unravel: ··· 450 specifier: ^20 451 version: 20.17.23 452 '@types/react': 453 - specifier: ^18.3.10 454 - version: 18.3.10 455 '@types/react-dom': 456 - specifier: ^18.3.0 457 - version: 18.3.0 458 eslint: 459 specifier: 'catalog:' 460 version: 9.24.0(jiti@1.21.0) ··· 2116 '@types/node@22.14.1': 2117 resolution: {integrity: sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==} 2118 2119 - '@types/prop-types@15.7.12': 2120 - resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} 2121 2122 - '@types/react-dom@18.3.0': 2123 - resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} 2124 - 2125 - '@types/react@18.3.10': 2126 - resolution: {integrity: sha512-02sAAlBnP39JgXwkAq3PeU9DVaaGpZyF3MGcC0MKgQVkZor5IiiDAipVaxQHtDJAmO4GIy/rVBy/LzVj76Cyqg==} 2127 2128 '@types/ws@8.5.12': 2129 resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==} ··· 2184 next: 2185 optional: true 2186 react: 2187 optional: true 2188 2189 '@vercel/speed-insights@1.0.12': ··· 3401 3402 libsql@0.4.6: 3403 resolution: {integrity: sha512-F5M+ltteK6dCcpjMahrkgT96uFJvVI8aQ4r9f2AzHQjC7BkAYtvfMSTWGvRBezRgMUIU2h1Sy0pF9nOGOD5iyA==} 3404 - cpu: [x64, arm64, wasm32] 3405 os: [darwin, linux, win32] 3406 3407 lilconfig@2.1.0: ··· 5329 '@libsql/win32-x64-msvc@0.4.6': 5330 optional: true 5331 5332 - '@markdoc/markdoc@0.4.0(@types/react@18.3.10)(react@19.0.0)': 5333 optionalDependencies: 5334 '@types/markdown-it': 12.2.3 5335 - '@types/react': 18.3.10 5336 react: 19.0.0 5337 5338 '@needle-di/core@0.11.2': {} ··· 5399 5400 '@radix-ui/primitive@1.1.2': {} 5401 5402 - '@radix-ui/react-alert-dialog@1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5403 dependencies: 5404 '@radix-ui/primitive': 1.1.2 5405 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5406 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5407 - '@radix-ui/react-dialog': 1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5408 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5409 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5410 react: 19.0.0 5411 react-dom: 19.0.0(react@19.0.0) 5412 optionalDependencies: 5413 - '@types/react': 18.3.10 5414 - '@types/react-dom': 18.3.0 5415 5416 - '@radix-ui/react-arrow@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5417 dependencies: 5418 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5419 react: 19.0.0 5420 react-dom: 19.0.0(react@19.0.0) 5421 optionalDependencies: 5422 - '@types/react': 18.3.10 5423 - '@types/react-dom': 18.3.0 5424 5425 - '@radix-ui/react-avatar@1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5426 dependencies: 5427 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5428 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5429 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5430 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5431 react: 19.0.0 5432 react-dom: 19.0.0(react@19.0.0) 5433 optionalDependencies: 5434 - '@types/react': 18.3.10 5435 - '@types/react-dom': 18.3.0 5436 5437 - '@radix-ui/react-collection@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5438 dependencies: 5439 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5440 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5441 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5442 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5443 react: 19.0.0 5444 react-dom: 19.0.0(react@19.0.0) 5445 optionalDependencies: 5446 - '@types/react': 18.3.10 5447 - '@types/react-dom': 18.3.0 5448 5449 - '@radix-ui/react-compose-refs@1.1.2(@types/react@18.3.10)(react@19.0.0)': 5450 dependencies: 5451 react: 19.0.0 5452 optionalDependencies: 5453 - '@types/react': 18.3.10 5454 5455 - '@radix-ui/react-context@1.1.2(@types/react@18.3.10)(react@19.0.0)': 5456 dependencies: 5457 react: 19.0.0 5458 optionalDependencies: 5459 - '@types/react': 18.3.10 5460 5461 - '@radix-ui/react-dialog@1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5462 dependencies: 5463 '@radix-ui/primitive': 1.1.2 5464 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5465 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5466 - '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5467 - '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5468 - '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5469 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5470 - '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5471 - '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5472 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5473 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5474 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5475 aria-hidden: 1.2.4 5476 react: 19.0.0 5477 react-dom: 19.0.0(react@19.0.0) 5478 - react-remove-scroll: 2.6.3(@types/react@18.3.10)(react@19.0.0) 5479 optionalDependencies: 5480 - '@types/react': 18.3.10 5481 - '@types/react-dom': 18.3.0 5482 5483 - '@radix-ui/react-direction@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5484 dependencies: 5485 react: 19.0.0 5486 optionalDependencies: 5487 - '@types/react': 18.3.10 5488 5489 - '@radix-ui/react-dismissable-layer@1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5490 dependencies: 5491 '@radix-ui/primitive': 1.1.2 5492 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5493 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5494 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5495 - '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5496 react: 19.0.0 5497 react-dom: 19.0.0(react@19.0.0) 5498 optionalDependencies: 5499 - '@types/react': 18.3.10 5500 - '@types/react-dom': 18.3.0 5501 5502 - '@radix-ui/react-dropdown-menu@2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5503 dependencies: 5504 '@radix-ui/primitive': 1.1.2 5505 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5506 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5507 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5508 - '@radix-ui/react-menu': 2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5509 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5510 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5511 react: 19.0.0 5512 react-dom: 19.0.0(react@19.0.0) 5513 optionalDependencies: 5514 - '@types/react': 18.3.10 5515 - '@types/react-dom': 18.3.0 5516 5517 - '@radix-ui/react-focus-guards@1.1.2(@types/react@18.3.10)(react@19.0.0)': 5518 dependencies: 5519 react: 19.0.0 5520 optionalDependencies: 5521 - '@types/react': 18.3.10 5522 5523 - '@radix-ui/react-focus-scope@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5524 dependencies: 5525 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5526 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5527 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5528 react: 19.0.0 5529 react-dom: 19.0.0(react@19.0.0) 5530 optionalDependencies: 5531 - '@types/react': 18.3.10 5532 - '@types/react-dom': 18.3.0 5533 5534 - '@radix-ui/react-hover-card@1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5535 dependencies: 5536 '@radix-ui/primitive': 1.1.2 5537 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5538 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5539 - '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5540 - '@radix-ui/react-popper': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5541 - '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5542 - '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5543 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5544 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5545 react: 19.0.0 5546 react-dom: 19.0.0(react@19.0.0) 5547 optionalDependencies: 5548 - '@types/react': 18.3.10 5549 - '@types/react-dom': 18.3.0 5550 5551 '@radix-ui/react-icons@1.3.2(react@19.0.0)': 5552 dependencies: 5553 react: 19.0.0 5554 5555 - '@radix-ui/react-id@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5556 dependencies: 5557 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5558 react: 19.0.0 5559 optionalDependencies: 5560 - '@types/react': 18.3.10 5561 5562 - '@radix-ui/react-label@2.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5563 dependencies: 5564 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5565 react: 19.0.0 5566 react-dom: 19.0.0(react@19.0.0) 5567 optionalDependencies: 5568 - '@types/react': 18.3.10 5569 - '@types/react-dom': 18.3.0 5570 5571 - '@radix-ui/react-menu@2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5572 dependencies: 5573 '@radix-ui/primitive': 1.1.2 5574 - '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5575 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5576 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5577 - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5578 - '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5579 - '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5580 - '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5581 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5582 - '@radix-ui/react-popper': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5583 - '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5584 - '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5585 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5586 - '@radix-ui/react-roving-focus': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5587 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5588 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5589 aria-hidden: 1.2.4 5590 react: 19.0.0 5591 react-dom: 19.0.0(react@19.0.0) 5592 - react-remove-scroll: 2.6.3(@types/react@18.3.10)(react@19.0.0) 5593 optionalDependencies: 5594 - '@types/react': 18.3.10 5595 - '@types/react-dom': 18.3.0 5596 5597 - '@radix-ui/react-popover@1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5598 dependencies: 5599 '@radix-ui/primitive': 1.1.2 5600 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5601 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5602 - '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5603 - '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5604 - '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5605 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5606 - '@radix-ui/react-popper': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5607 - '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5608 - '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5609 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5610 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5611 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5612 aria-hidden: 1.2.4 5613 react: 19.0.0 5614 react-dom: 19.0.0(react@19.0.0) 5615 - react-remove-scroll: 2.6.3(@types/react@18.3.10)(react@19.0.0) 5616 optionalDependencies: 5617 - '@types/react': 18.3.10 5618 - '@types/react-dom': 18.3.0 5619 5620 - '@radix-ui/react-popper@1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5621 dependencies: 5622 '@floating-ui/react-dom': 2.1.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5623 - '@radix-ui/react-arrow': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5624 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5625 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5626 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5627 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5628 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5629 - '@radix-ui/react-use-rect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5630 - '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5631 '@radix-ui/rect': 1.1.1 5632 react: 19.0.0 5633 react-dom: 19.0.0(react@19.0.0) 5634 optionalDependencies: 5635 - '@types/react': 18.3.10 5636 - '@types/react-dom': 18.3.0 5637 5638 - '@radix-ui/react-portal@1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5639 dependencies: 5640 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5641 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5642 react: 19.0.0 5643 react-dom: 19.0.0(react@19.0.0) 5644 optionalDependencies: 5645 - '@types/react': 18.3.10 5646 - '@types/react-dom': 18.3.0 5647 5648 - '@radix-ui/react-presence@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5649 dependencies: 5650 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5651 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5652 react: 19.0.0 5653 react-dom: 19.0.0(react@19.0.0) 5654 optionalDependencies: 5655 - '@types/react': 18.3.10 5656 - '@types/react-dom': 18.3.0 5657 5658 - '@radix-ui/react-primitive@2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5659 dependencies: 5660 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5661 react: 19.0.0 5662 react-dom: 19.0.0(react@19.0.0) 5663 optionalDependencies: 5664 - '@types/react': 18.3.10 5665 - '@types/react-dom': 18.3.0 5666 5667 - '@radix-ui/react-roving-focus@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5668 dependencies: 5669 '@radix-ui/primitive': 1.1.2 5670 - '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5671 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5672 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5673 - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5674 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5675 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5676 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5677 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5678 react: 19.0.0 5679 react-dom: 19.0.0(react@19.0.0) 5680 optionalDependencies: 5681 - '@types/react': 18.3.10 5682 - '@types/react-dom': 18.3.0 5683 5684 - '@radix-ui/react-select@2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5685 dependencies: 5686 '@radix-ui/number': 1.1.1 5687 '@radix-ui/primitive': 1.1.2 5688 - '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5689 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5690 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5691 - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5692 - '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5693 - '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5694 - '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5695 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5696 - '@radix-ui/react-popper': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5697 - '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5698 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5699 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5700 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5701 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5702 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5703 - '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5704 - '@radix-ui/react-visually-hidden': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5705 aria-hidden: 1.2.4 5706 react: 19.0.0 5707 react-dom: 19.0.0(react@19.0.0) 5708 - react-remove-scroll: 2.6.3(@types/react@18.3.10)(react@19.0.0) 5709 optionalDependencies: 5710 - '@types/react': 18.3.10 5711 - '@types/react-dom': 18.3.0 5712 5713 - '@radix-ui/react-separator@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5714 dependencies: 5715 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5716 react: 19.0.0 5717 react-dom: 19.0.0(react@19.0.0) 5718 optionalDependencies: 5719 - '@types/react': 18.3.10 5720 - '@types/react-dom': 18.3.0 5721 5722 - '@radix-ui/react-slot@1.2.0(@types/react@18.3.10)(react@19.0.0)': 5723 dependencies: 5724 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5725 react: 19.0.0 5726 optionalDependencies: 5727 - '@types/react': 18.3.10 5728 5729 - '@radix-ui/react-tabs@1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5730 dependencies: 5731 '@radix-ui/primitive': 1.1.2 5732 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5733 - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5734 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5735 - '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5736 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5737 - '@radix-ui/react-roving-focus': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5738 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5739 react: 19.0.0 5740 react-dom: 19.0.0(react@19.0.0) 5741 optionalDependencies: 5742 - '@types/react': 18.3.10 5743 - '@types/react-dom': 18.3.0 5744 5745 - '@radix-ui/react-toast@1.2.7(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5746 dependencies: 5747 '@radix-ui/primitive': 1.1.2 5748 - '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5749 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5750 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5751 - '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5752 - '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5753 - '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5754 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5755 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5756 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5757 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5758 - '@radix-ui/react-visually-hidden': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5759 react: 19.0.0 5760 react-dom: 19.0.0(react@19.0.0) 5761 optionalDependencies: 5762 - '@types/react': 18.3.10 5763 - '@types/react-dom': 18.3.0 5764 5765 - '@radix-ui/react-tooltip@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5766 dependencies: 5767 '@radix-ui/primitive': 1.1.2 5768 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5769 - '@radix-ui/react-context': 1.1.2(@types/react@18.3.10)(react@19.0.0) 5770 - '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5771 - '@radix-ui/react-id': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5772 - '@radix-ui/react-popper': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5773 - '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5774 - '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5775 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5776 - '@radix-ui/react-slot': 1.2.0(@types/react@18.3.10)(react@19.0.0) 5777 - '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5778 - '@radix-ui/react-visually-hidden': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5779 react: 19.0.0 5780 react-dom: 19.0.0(react@19.0.0) 5781 optionalDependencies: 5782 - '@types/react': 18.3.10 5783 - '@types/react-dom': 18.3.0 5784 5785 - '@radix-ui/react-use-callback-ref@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5786 dependencies: 5787 react: 19.0.0 5788 optionalDependencies: 5789 - '@types/react': 18.3.10 5790 5791 - '@radix-ui/react-use-controllable-state@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5792 dependencies: 5793 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5794 react: 19.0.0 5795 optionalDependencies: 5796 - '@types/react': 18.3.10 5797 5798 - '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5799 dependencies: 5800 - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5801 react: 19.0.0 5802 optionalDependencies: 5803 - '@types/react': 18.3.10 5804 5805 - '@radix-ui/react-use-layout-effect@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5806 dependencies: 5807 react: 19.0.0 5808 optionalDependencies: 5809 - '@types/react': 18.3.10 5810 5811 - '@radix-ui/react-use-previous@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5812 dependencies: 5813 react: 19.0.0 5814 optionalDependencies: 5815 - '@types/react': 18.3.10 5816 5817 - '@radix-ui/react-use-rect@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5818 dependencies: 5819 '@radix-ui/rect': 1.1.1 5820 react: 19.0.0 5821 optionalDependencies: 5822 - '@types/react': 18.3.10 5823 5824 - '@radix-ui/react-use-size@1.1.1(@types/react@18.3.10)(react@19.0.0)': 5825 dependencies: 5826 - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.10)(react@19.0.0) 5827 react: 19.0.0 5828 optionalDependencies: 5829 - '@types/react': 18.3.10 5830 5831 - '@radix-ui/react-visually-hidden@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5832 dependencies: 5833 - '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5834 react: 19.0.0 5835 react-dom: 19.0.0(react@19.0.0) 5836 optionalDependencies: 5837 - '@types/react': 18.3.10 5838 - '@types/react-dom': 18.3.0 5839 5840 '@radix-ui/rect@1.1.1': {} 5841 ··· 5917 lz-string: 1.5.0 5918 pretty-format: 27.5.1 5919 5920 - '@testing-library/react@16.3.0(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.10)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5921 dependencies: 5922 '@babel/runtime': 7.26.9 5923 '@testing-library/dom': 10.4.0 5924 react: 19.0.0 5925 react-dom: 19.0.0(react@19.0.0) 5926 optionalDependencies: 5927 - '@types/react': 18.3.10 5928 - '@types/react-dom': 18.3.0 5929 5930 '@ts-morph/common@0.25.0': 5931 dependencies: ··· 5999 dependencies: 6000 undici-types: 6.21.0 6001 6002 - '@types/prop-types@15.7.12': {} 6003 - 6004 - '@types/react-dom@18.3.0': 6005 dependencies: 6006 - '@types/react': 18.3.10 6007 6008 - '@types/react@18.3.10': 6009 dependencies: 6010 - '@types/prop-types': 15.7.12 6011 csstype: 3.1.3 6012 6013 '@types/ws@8.5.12': ··· 6097 optionalDependencies: 6098 next: 15.3.1(@babel/core@7.24.7)(@opentelemetry/api@1.9.0)(babel-plugin-react-compiler@19.0.0-beta-ebf51a3-20250411)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 6099 react: 19.0.0 6100 6101 '@vercel/speed-insights@1.0.12(next@15.3.1(@babel/core@7.24.7)(@opentelemetry/api@1.9.0)(babel-plugin-react-compiler@19.0.0-beta-ebf51a3-20250411)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)': 6102 optionalDependencies: ··· 6810 '@typescript-eslint/parser': 8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3) 6811 eslint: 9.24.0(jiti@1.21.0) 6812 eslint-import-resolver-node: 0.3.9 6813 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.24.0(jiti@1.21.0)) 6814 - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-typescript@3.6.1)(eslint@9.24.0(jiti@1.21.0)) 6815 eslint-plugin-jsx-a11y: 6.10.2(eslint@9.24.0(jiti@1.21.0)) 6816 eslint-plugin-react: 7.37.5(eslint@9.24.0(jiti@1.21.0)) 6817 eslint-plugin-react-hooks: 5.2.0(eslint@9.24.0(jiti@1.21.0)) ··· 6835 transitivePeerDependencies: 6836 - supports-color 6837 6838 - eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.24.0(jiti@1.21.0)): 6839 dependencies: 6840 debug: 4.4.0 6841 enhanced-resolve: 5.17.1 6842 eslint: 9.24.0(jiti@1.21.0) 6843 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.24.0(jiti@1.21.0)) 6844 - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-typescript@3.6.1)(eslint@9.24.0(jiti@1.21.0)) 6845 fast-glob: 3.3.2 6846 get-tsconfig: 4.7.5 6847 is-core-module: 2.15.1 ··· 6852 - eslint-import-resolver-webpack 6853 - supports-color 6854 6855 - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.24.0(jiti@1.21.0)): 6856 dependencies: 6857 debug: 3.2.7 6858 optionalDependencies: 6859 '@typescript-eslint/parser': 8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3) 6860 eslint: 9.24.0(jiti@1.21.0) 6861 eslint-import-resolver-node: 0.3.9 6862 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@9.24.0(jiti@1.21.0)) 6863 transitivePeerDependencies: 6864 - supports-color 6865 6866 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-typescript@3.6.1)(eslint@9.24.0(jiti@1.21.0)): 6867 dependencies: 6868 '@rtsao/scc': 1.1.0 6869 array-includes: 3.1.8 ··· 6874 doctrine: 2.1.0 6875 eslint: 9.24.0(jiti@1.21.0) 6876 eslint-import-resolver-node: 0.3.9 6877 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.24.0(jiti@1.21.0)) 6878 hasown: 2.0.2 6879 is-core-module: 2.15.1 6880 is-glob: 4.0.3 ··· 7849 7850 react-refresh@0.14.2: {} 7851 7852 - react-remove-scroll-bar@2.3.8(@types/react@18.3.10)(react@19.0.0): 7853 dependencies: 7854 react: 19.0.0 7855 - react-style-singleton: 2.2.3(@types/react@18.3.10)(react@19.0.0) 7856 tslib: 2.8.1 7857 optionalDependencies: 7858 - '@types/react': 18.3.10 7859 7860 - react-remove-scroll@2.6.3(@types/react@18.3.10)(react@19.0.0): 7861 dependencies: 7862 react: 19.0.0 7863 - react-remove-scroll-bar: 2.3.8(@types/react@18.3.10)(react@19.0.0) 7864 - react-style-singleton: 2.2.3(@types/react@18.3.10)(react@19.0.0) 7865 tslib: 2.8.1 7866 - use-callback-ref: 1.3.3(@types/react@18.3.10)(react@19.0.0) 7867 - use-sidecar: 1.1.3(@types/react@18.3.10)(react@19.0.0) 7868 optionalDependencies: 7869 - '@types/react': 18.3.10 7870 7871 - react-style-singleton@2.2.3(@types/react@18.3.10)(react@19.0.0): 7872 dependencies: 7873 get-nonce: 1.0.1 7874 react: 19.0.0 7875 tslib: 2.8.1 7876 optionalDependencies: 7877 - '@types/react': 18.3.10 7878 7879 react@19.0.0: {} 7880 ··· 8469 querystringify: 2.2.0 8470 requires-port: 1.0.0 8471 8472 - use-callback-ref@1.3.3(@types/react@18.3.10)(react@19.0.0): 8473 dependencies: 8474 react: 19.0.0 8475 tslib: 2.8.1 8476 optionalDependencies: 8477 - '@types/react': 18.3.10 8478 8479 - use-sidecar@1.1.3(@types/react@18.3.10)(react@19.0.0): 8480 dependencies: 8481 detect-node-es: 1.1.0 8482 react: 19.0.0 8483 tslib: 2.8.1 8484 optionalDependencies: 8485 - '@types/react': 18.3.10 8486 8487 use-sync-external-store@1.5.0(react@19.0.0): 8488 dependencies:
··· 12 '@types/node': 13 specifier: ^22 14 version: 22.14.1 15 + '@types/react': 16 + specifier: ^19 17 + version: 19.1.2 18 + '@types/react-dom': 19 + specifier: ^19 20 + version: 19.1.2 21 eslint: 22 specifier: ^9 23 version: 9.24.0 ··· 124 specifier: ^20 125 version: 20.17.23 126 '@types/react': 127 + specifier: 'catalog:' 128 + version: 19.1.2 129 '@types/react-dom': 130 + specifier: 'catalog:' 131 + version: 19.1.2(@types/react@19.1.2) 132 eslint: 133 specifier: 'catalog:' 134 version: 9.24.0(jiti@1.21.0) ··· 166 specifier: 'catalog:' 167 version: 22.14.1 168 '@types/react': 169 + specifier: 'catalog:' 170 + version: 19.1.2 171 '@typescript-eslint/utils': 172 specifier: ^8.30.1 173 version: 8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3) ··· 218 version: 0.14.0(bufferutil@4.0.8)(utf-8-validate@6.0.3) 219 '@markdoc/markdoc': 220 specifier: ^0.4.0 221 + version: 0.4.0(@types/react@19.1.2)(react@19.0.0) 222 '@next/env': 223 specifier: ^14.2.4 224 version: 14.2.4 225 '@radix-ui/react-alert-dialog': 226 specifier: ^1.1.7 227 + version: 1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 228 '@radix-ui/react-avatar': 229 specifier: ^1.1.4 230 + version: 1.1.4(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 231 '@radix-ui/react-dialog': 232 specifier: ^1.1.7 233 + version: 1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 234 '@radix-ui/react-dropdown-menu': 235 specifier: ^2.1.7 236 + version: 2.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 237 '@radix-ui/react-hover-card': 238 specifier: ^1.1.7 239 + version: 1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 240 '@radix-ui/react-icons': 241 specifier: ^1.3.2 242 version: 1.3.2(react@19.0.0) 243 '@radix-ui/react-label': 244 specifier: ^2.1.3 245 + version: 2.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 246 '@radix-ui/react-popover': 247 specifier: ^1.1.7 248 + version: 1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 249 '@radix-ui/react-select': 250 specifier: ^2.1.7 251 + version: 2.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 252 '@radix-ui/react-separator': 253 specifier: ^1.1.3 254 + version: 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 255 '@radix-ui/react-slot': 256 specifier: ^1.2.0 257 + version: 1.2.0(@types/react@19.1.2)(react@19.0.0) 258 '@radix-ui/react-tabs': 259 specifier: ^1.1.4 260 + version: 1.1.4(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 261 '@radix-ui/react-toast': 262 specifier: ^1.2.7 263 + version: 1.2.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 264 '@radix-ui/react-tooltip': 265 specifier: ^1.2.0 266 + version: 1.2.0(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 267 '@repo/frontpage-atproto-client': 268 specifier: workspace:* 269 version: link:../frontpage-atproto-client 270 + '@repo/frontpage-oauth': 271 + specifier: workspace:* 272 + version: link:../frontpage-oauth 273 '@vercel/analytics': 274 specifier: ^1.3.1 275 version: 1.3.1(next@15.3.1(@babel/core@7.24.7)(@opentelemetry/api@1.9.0)(babel-plugin-react-compiler@19.0.0-beta-ebf51a3-20250411)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) ··· 339 version: link:../typescript-config 340 '@testing-library/react': 341 specifier: ^16.3.0 342 + version: 16.3.0(@testing-library/dom@10.4.0)(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 343 '@types/node': 344 specifier: ^20 345 version: 20.17.23 346 '@types/react': 347 + specifier: 'catalog:' 348 + version: 19.1.2 349 '@types/react-dom': 350 + specifier: 'catalog:' 351 + version: 19.1.2(@types/react@19.1.2) 352 '@vitejs/plugin-react': 353 specifier: ^4.3.1 354 version: 4.3.1(vite@5.4.14(@types/node@20.17.23)(terser@5.34.1)) ··· 420 specifier: 'catalog:' 421 version: 5.8.3 422 423 + packages/frontpage-oauth: 424 + dependencies: 425 + '@atproto/oauth-types': 426 + specifier: ^0.1.2 427 + version: 0.1.2 428 + devDependencies: 429 + '@repo/eslint-config': 430 + specifier: workspace:* 431 + version: link:../eslint-config 432 + '@repo/typescript-config': 433 + specifier: workspace:* 434 + version: link:../typescript-config 435 + eslint: 436 + specifier: 'catalog:' 437 + version: 9.24.0(jiti@1.21.0) 438 + typescript: 439 + specifier: 'catalog:' 440 + version: 5.8.3 441 + 442 + packages/frontpage-oauth-preview-client: 443 + dependencies: 444 + '@repo/frontpage-oauth': 445 + specifier: workspace:* 446 + version: link:../frontpage-oauth 447 + '@vercel/sdk': 448 + specifier: ^1.6.2 449 + version: 1.6.2(zod@3.23.8) 450 + next: 451 + specifier: 'catalog:' 452 + version: 15.3.1(@babel/core@7.24.7)(@opentelemetry/api@1.9.0)(babel-plugin-react-compiler@19.0.0-beta-ebf51a3-20250411)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 453 + react: 454 + specifier: 'catalog:' 455 + version: 19.0.0 456 + react-dom: 457 + specifier: 'catalog:' 458 + version: 19.0.0(react@19.0.0) 459 + devDependencies: 460 + '@repo/eslint-config': 461 + specifier: workspace:* 462 + version: link:../eslint-config 463 + '@repo/typescript-config': 464 + specifier: workspace:* 465 + version: link:../typescript-config 466 + '@types/node': 467 + specifier: 'catalog:' 468 + version: 22.14.1 469 + '@types/react': 470 + specifier: 'catalog:' 471 + version: 19.1.2 472 + '@types/react-dom': 473 + specifier: 'catalog:' 474 + version: 19.1.2(@types/react@19.1.2) 475 + eslint: 476 + specifier: 'catalog:' 477 + version: 9.24.0(jiti@1.21.0) 478 + typescript: 479 + specifier: 'catalog:' 480 + version: 5.8.3 481 + 482 packages/typescript-config: {} 483 484 packages/unravel: ··· 518 specifier: ^20 519 version: 20.17.23 520 '@types/react': 521 + specifier: 'catalog:' 522 + version: 19.1.2 523 '@types/react-dom': 524 + specifier: 'catalog:' 525 + version: 19.1.2(@types/react@19.1.2) 526 eslint: 527 specifier: 'catalog:' 528 version: 9.24.0(jiti@1.21.0) ··· 2184 '@types/node@22.14.1': 2185 resolution: {integrity: sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==} 2186 2187 + '@types/react-dom@19.1.2': 2188 + resolution: {integrity: sha512-XGJkWF41Qq305SKWEILa1O8vzhb3aOo3ogBlSmiqNko/WmRb6QIaweuZCXjKygVDXpzXb5wyxKTSOsmkuqj+Qw==} 2189 + peerDependencies: 2190 + '@types/react': ^19.0.0 2191 2192 + '@types/react@19.1.2': 2193 + resolution: {integrity: sha512-oxLPMytKchWGbnQM9O7D67uPa9paTNxO7jVoNMXgkkErULBPhPARCfkKL9ytcIJJRGjbsVwW4ugJzyFFvm/Tiw==} 2194 2195 '@types/ws@8.5.12': 2196 resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==} ··· 2251 next: 2252 optional: true 2253 react: 2254 + optional: true 2255 + 2256 + '@vercel/sdk@1.6.2': 2257 + resolution: {integrity: sha512-FEqOzEkTL6F1Zgr0g9muJW/WNnnlwQserNVNPAhyp7CJbzMurTMwJi/e1rEFkyQst5WZYwOMYiKbTENmxRvP5Q==} 2258 + hasBin: true 2259 + peerDependencies: 2260 + '@modelcontextprotocol/sdk': ^1.5.0 2261 + zod: '>= 3' 2262 + peerDependenciesMeta: 2263 + '@modelcontextprotocol/sdk': 2264 optional: true 2265 2266 '@vercel/speed-insights@1.0.12': ··· 3478 3479 libsql@0.4.6: 3480 resolution: {integrity: sha512-F5M+ltteK6dCcpjMahrkgT96uFJvVI8aQ4r9f2AzHQjC7BkAYtvfMSTWGvRBezRgMUIU2h1Sy0pF9nOGOD5iyA==} 3481 os: [darwin, linux, win32] 3482 3483 lilconfig@2.1.0: ··· 5405 '@libsql/win32-x64-msvc@0.4.6': 5406 optional: true 5407 5408 + '@markdoc/markdoc@0.4.0(@types/react@19.1.2)(react@19.0.0)': 5409 optionalDependencies: 5410 '@types/markdown-it': 12.2.3 5411 + '@types/react': 19.1.2 5412 react: 19.0.0 5413 5414 '@needle-di/core@0.11.2': {} ··· 5475 5476 '@radix-ui/primitive@1.1.2': {} 5477 5478 + '@radix-ui/react-alert-dialog@1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5479 dependencies: 5480 '@radix-ui/primitive': 1.1.2 5481 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5482 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5483 + '@radix-ui/react-dialog': 1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5484 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5485 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5486 react: 19.0.0 5487 react-dom: 19.0.0(react@19.0.0) 5488 optionalDependencies: 5489 + '@types/react': 19.1.2 5490 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5491 5492 + '@radix-ui/react-arrow@1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5493 dependencies: 5494 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5495 react: 19.0.0 5496 react-dom: 19.0.0(react@19.0.0) 5497 optionalDependencies: 5498 + '@types/react': 19.1.2 5499 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5500 5501 + '@radix-ui/react-avatar@1.1.4(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5502 dependencies: 5503 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5504 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5505 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5506 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5507 react: 19.0.0 5508 react-dom: 19.0.0(react@19.0.0) 5509 optionalDependencies: 5510 + '@types/react': 19.1.2 5511 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5512 5513 + '@radix-ui/react-collection@1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5514 dependencies: 5515 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5516 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5517 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5518 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5519 react: 19.0.0 5520 react-dom: 19.0.0(react@19.0.0) 5521 optionalDependencies: 5522 + '@types/react': 19.1.2 5523 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5524 5525 + '@radix-ui/react-compose-refs@1.1.2(@types/react@19.1.2)(react@19.0.0)': 5526 dependencies: 5527 react: 19.0.0 5528 optionalDependencies: 5529 + '@types/react': 19.1.2 5530 5531 + '@radix-ui/react-context@1.1.2(@types/react@19.1.2)(react@19.0.0)': 5532 dependencies: 5533 react: 19.0.0 5534 optionalDependencies: 5535 + '@types/react': 19.1.2 5536 5537 + '@radix-ui/react-dialog@1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5538 dependencies: 5539 '@radix-ui/primitive': 1.1.2 5540 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5541 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5542 + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5543 + '@radix-ui/react-focus-guards': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5544 + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5545 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5546 + '@radix-ui/react-portal': 1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5547 + '@radix-ui/react-presence': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5548 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5549 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5550 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5551 aria-hidden: 1.2.4 5552 react: 19.0.0 5553 react-dom: 19.0.0(react@19.0.0) 5554 + react-remove-scroll: 2.6.3(@types/react@19.1.2)(react@19.0.0) 5555 optionalDependencies: 5556 + '@types/react': 19.1.2 5557 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5558 5559 + '@radix-ui/react-direction@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5560 dependencies: 5561 react: 19.0.0 5562 optionalDependencies: 5563 + '@types/react': 19.1.2 5564 5565 + '@radix-ui/react-dismissable-layer@1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5566 dependencies: 5567 '@radix-ui/primitive': 1.1.2 5568 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5569 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5570 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5571 + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5572 react: 19.0.0 5573 react-dom: 19.0.0(react@19.0.0) 5574 optionalDependencies: 5575 + '@types/react': 19.1.2 5576 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5577 5578 + '@radix-ui/react-dropdown-menu@2.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5579 dependencies: 5580 '@radix-ui/primitive': 1.1.2 5581 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5582 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5583 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5584 + '@radix-ui/react-menu': 2.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5585 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5586 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5587 react: 19.0.0 5588 react-dom: 19.0.0(react@19.0.0) 5589 optionalDependencies: 5590 + '@types/react': 19.1.2 5591 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5592 5593 + '@radix-ui/react-focus-guards@1.1.2(@types/react@19.1.2)(react@19.0.0)': 5594 dependencies: 5595 react: 19.0.0 5596 optionalDependencies: 5597 + '@types/react': 19.1.2 5598 5599 + '@radix-ui/react-focus-scope@1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5600 dependencies: 5601 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5602 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5603 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5604 react: 19.0.0 5605 react-dom: 19.0.0(react@19.0.0) 5606 optionalDependencies: 5607 + '@types/react': 19.1.2 5608 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5609 5610 + '@radix-ui/react-hover-card@1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5611 dependencies: 5612 '@radix-ui/primitive': 1.1.2 5613 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5614 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5615 + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5616 + '@radix-ui/react-popper': 1.2.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5617 + '@radix-ui/react-portal': 1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5618 + '@radix-ui/react-presence': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5619 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5620 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5621 react: 19.0.0 5622 react-dom: 19.0.0(react@19.0.0) 5623 optionalDependencies: 5624 + '@types/react': 19.1.2 5625 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5626 5627 '@radix-ui/react-icons@1.3.2(react@19.0.0)': 5628 dependencies: 5629 react: 19.0.0 5630 5631 + '@radix-ui/react-id@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5632 dependencies: 5633 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5634 react: 19.0.0 5635 optionalDependencies: 5636 + '@types/react': 19.1.2 5637 5638 + '@radix-ui/react-label@2.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5639 dependencies: 5640 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5641 react: 19.0.0 5642 react-dom: 19.0.0(react@19.0.0) 5643 optionalDependencies: 5644 + '@types/react': 19.1.2 5645 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5646 5647 + '@radix-ui/react-menu@2.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5648 dependencies: 5649 '@radix-ui/primitive': 1.1.2 5650 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5651 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5652 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5653 + '@radix-ui/react-direction': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5654 + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5655 + '@radix-ui/react-focus-guards': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5656 + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5657 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5658 + '@radix-ui/react-popper': 1.2.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5659 + '@radix-ui/react-portal': 1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5660 + '@radix-ui/react-presence': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5661 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5662 + '@radix-ui/react-roving-focus': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5663 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5664 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5665 aria-hidden: 1.2.4 5666 react: 19.0.0 5667 react-dom: 19.0.0(react@19.0.0) 5668 + react-remove-scroll: 2.6.3(@types/react@19.1.2)(react@19.0.0) 5669 optionalDependencies: 5670 + '@types/react': 19.1.2 5671 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5672 5673 + '@radix-ui/react-popover@1.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5674 dependencies: 5675 '@radix-ui/primitive': 1.1.2 5676 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5677 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5678 + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5679 + '@radix-ui/react-focus-guards': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5680 + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5681 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5682 + '@radix-ui/react-popper': 1.2.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5683 + '@radix-ui/react-portal': 1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5684 + '@radix-ui/react-presence': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5685 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5686 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5687 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5688 aria-hidden: 1.2.4 5689 react: 19.0.0 5690 react-dom: 19.0.0(react@19.0.0) 5691 + react-remove-scroll: 2.6.3(@types/react@19.1.2)(react@19.0.0) 5692 optionalDependencies: 5693 + '@types/react': 19.1.2 5694 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5695 5696 + '@radix-ui/react-popper@1.2.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5697 dependencies: 5698 '@floating-ui/react-dom': 2.1.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5699 + '@radix-ui/react-arrow': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5700 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5701 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5702 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5703 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5704 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5705 + '@radix-ui/react-use-rect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5706 + '@radix-ui/react-use-size': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5707 '@radix-ui/rect': 1.1.1 5708 react: 19.0.0 5709 react-dom: 19.0.0(react@19.0.0) 5710 optionalDependencies: 5711 + '@types/react': 19.1.2 5712 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5713 5714 + '@radix-ui/react-portal@1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5715 dependencies: 5716 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5717 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5718 react: 19.0.0 5719 react-dom: 19.0.0(react@19.0.0) 5720 optionalDependencies: 5721 + '@types/react': 19.1.2 5722 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5723 5724 + '@radix-ui/react-presence@1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5725 dependencies: 5726 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5727 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5728 react: 19.0.0 5729 react-dom: 19.0.0(react@19.0.0) 5730 optionalDependencies: 5731 + '@types/react': 19.1.2 5732 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5733 5734 + '@radix-ui/react-primitive@2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5735 dependencies: 5736 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5737 react: 19.0.0 5738 react-dom: 19.0.0(react@19.0.0) 5739 optionalDependencies: 5740 + '@types/react': 19.1.2 5741 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5742 5743 + '@radix-ui/react-roving-focus@1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5744 dependencies: 5745 '@radix-ui/primitive': 1.1.2 5746 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5747 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5748 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5749 + '@radix-ui/react-direction': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5750 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5751 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5752 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5753 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5754 react: 19.0.0 5755 react-dom: 19.0.0(react@19.0.0) 5756 optionalDependencies: 5757 + '@types/react': 19.1.2 5758 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5759 5760 + '@radix-ui/react-select@2.1.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5761 dependencies: 5762 '@radix-ui/number': 1.1.1 5763 '@radix-ui/primitive': 1.1.2 5764 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5765 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5766 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5767 + '@radix-ui/react-direction': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5768 + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5769 + '@radix-ui/react-focus-guards': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5770 + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5771 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5772 + '@radix-ui/react-popper': 1.2.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5773 + '@radix-ui/react-portal': 1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5774 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5775 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5776 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5777 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5778 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5779 + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5780 + '@radix-ui/react-visually-hidden': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5781 aria-hidden: 1.2.4 5782 react: 19.0.0 5783 react-dom: 19.0.0(react@19.0.0) 5784 + react-remove-scroll: 2.6.3(@types/react@19.1.2)(react@19.0.0) 5785 optionalDependencies: 5786 + '@types/react': 19.1.2 5787 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5788 5789 + '@radix-ui/react-separator@1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5790 dependencies: 5791 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5792 react: 19.0.0 5793 react-dom: 19.0.0(react@19.0.0) 5794 optionalDependencies: 5795 + '@types/react': 19.1.2 5796 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5797 5798 + '@radix-ui/react-slot@1.2.0(@types/react@19.1.2)(react@19.0.0)': 5799 dependencies: 5800 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5801 react: 19.0.0 5802 optionalDependencies: 5803 + '@types/react': 19.1.2 5804 5805 + '@radix-ui/react-tabs@1.1.4(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5806 dependencies: 5807 '@radix-ui/primitive': 1.1.2 5808 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5809 + '@radix-ui/react-direction': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5810 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5811 + '@radix-ui/react-presence': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5812 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5813 + '@radix-ui/react-roving-focus': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5814 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5815 react: 19.0.0 5816 react-dom: 19.0.0(react@19.0.0) 5817 optionalDependencies: 5818 + '@types/react': 19.1.2 5819 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5820 5821 + '@radix-ui/react-toast@1.2.7(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5822 dependencies: 5823 '@radix-ui/primitive': 1.1.2 5824 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5825 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5826 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5827 + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5828 + '@radix-ui/react-portal': 1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5829 + '@radix-ui/react-presence': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5830 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5831 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5832 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5833 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5834 + '@radix-ui/react-visually-hidden': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5835 react: 19.0.0 5836 react-dom: 19.0.0(react@19.0.0) 5837 optionalDependencies: 5838 + '@types/react': 19.1.2 5839 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5840 5841 + '@radix-ui/react-tooltip@1.2.0(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5842 dependencies: 5843 '@radix-ui/primitive': 1.1.2 5844 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5845 + '@radix-ui/react-context': 1.1.2(@types/react@19.1.2)(react@19.0.0) 5846 + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5847 + '@radix-ui/react-id': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5848 + '@radix-ui/react-popper': 1.2.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5849 + '@radix-ui/react-portal': 1.1.5(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5850 + '@radix-ui/react-presence': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5851 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5852 + '@radix-ui/react-slot': 1.2.0(@types/react@19.1.2)(react@19.0.0) 5853 + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5854 + '@radix-ui/react-visually-hidden': 1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5855 react: 19.0.0 5856 react-dom: 19.0.0(react@19.0.0) 5857 optionalDependencies: 5858 + '@types/react': 19.1.2 5859 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5860 5861 + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5862 dependencies: 5863 react: 19.0.0 5864 optionalDependencies: 5865 + '@types/react': 19.1.2 5866 5867 + '@radix-ui/react-use-controllable-state@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5868 dependencies: 5869 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5870 react: 19.0.0 5871 optionalDependencies: 5872 + '@types/react': 19.1.2 5873 5874 + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5875 dependencies: 5876 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5877 react: 19.0.0 5878 optionalDependencies: 5879 + '@types/react': 19.1.2 5880 5881 + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5882 dependencies: 5883 react: 19.0.0 5884 optionalDependencies: 5885 + '@types/react': 19.1.2 5886 5887 + '@radix-ui/react-use-previous@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5888 dependencies: 5889 react: 19.0.0 5890 optionalDependencies: 5891 + '@types/react': 19.1.2 5892 5893 + '@radix-ui/react-use-rect@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5894 dependencies: 5895 '@radix-ui/rect': 1.1.1 5896 react: 19.0.0 5897 optionalDependencies: 5898 + '@types/react': 19.1.2 5899 5900 + '@radix-ui/react-use-size@1.1.1(@types/react@19.1.2)(react@19.0.0)': 5901 dependencies: 5902 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.2)(react@19.0.0) 5903 react: 19.0.0 5904 optionalDependencies: 5905 + '@types/react': 19.1.2 5906 5907 + '@radix-ui/react-visually-hidden@1.1.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5908 dependencies: 5909 + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 5910 react: 19.0.0 5911 react-dom: 19.0.0(react@19.0.0) 5912 optionalDependencies: 5913 + '@types/react': 19.1.2 5914 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 5915 5916 '@radix-ui/rect@1.1.1': {} 5917 ··· 5993 lz-string: 1.5.0 5994 pretty-format: 27.5.1 5995 5996 + '@testing-library/react@16.3.0(@testing-library/dom@10.4.0)(@types/react-dom@19.1.2(@types/react@19.1.2))(@types/react@19.1.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': 5997 dependencies: 5998 '@babel/runtime': 7.26.9 5999 '@testing-library/dom': 10.4.0 6000 react: 19.0.0 6001 react-dom: 19.0.0(react@19.0.0) 6002 optionalDependencies: 6003 + '@types/react': 19.1.2 6004 + '@types/react-dom': 19.1.2(@types/react@19.1.2) 6005 6006 '@ts-morph/common@0.25.0': 6007 dependencies: ··· 6075 dependencies: 6076 undici-types: 6.21.0 6077 6078 + '@types/react-dom@19.1.2(@types/react@19.1.2)': 6079 dependencies: 6080 + '@types/react': 19.1.2 6081 6082 + '@types/react@19.1.2': 6083 dependencies: 6084 csstype: 3.1.3 6085 6086 '@types/ws@8.5.12': ··· 6170 optionalDependencies: 6171 next: 15.3.1(@babel/core@7.24.7)(@opentelemetry/api@1.9.0)(babel-plugin-react-compiler@19.0.0-beta-ebf51a3-20250411)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 6172 react: 19.0.0 6173 + 6174 + '@vercel/sdk@1.6.2(zod@3.23.8)': 6175 + dependencies: 6176 + zod: 3.23.8 6177 6178 '@vercel/speed-insights@1.0.12(next@15.3.1(@babel/core@7.24.7)(@opentelemetry/api@1.9.0)(babel-plugin-react-compiler@19.0.0-beta-ebf51a3-20250411)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)': 6179 optionalDependencies: ··· 6887 '@typescript-eslint/parser': 8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3) 6888 eslint: 9.24.0(jiti@1.21.0) 6889 eslint-import-resolver-node: 0.3.9 6890 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)) 6891 + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)) 6892 eslint-plugin-jsx-a11y: 6.10.2(eslint@9.24.0(jiti@1.21.0)) 6893 eslint-plugin-react: 7.37.5(eslint@9.24.0(jiti@1.21.0)) 6894 eslint-plugin-react-hooks: 5.2.0(eslint@9.24.0(jiti@1.21.0)) ··· 6912 transitivePeerDependencies: 6913 - supports-color 6914 6915 + eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)): 6916 dependencies: 6917 debug: 4.4.0 6918 enhanced-resolve: 5.17.1 6919 eslint: 9.24.0(jiti@1.21.0) 6920 + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)) 6921 + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)) 6922 fast-glob: 3.3.2 6923 get-tsconfig: 4.7.5 6924 is-core-module: 2.15.1 ··· 6929 - eslint-import-resolver-webpack 6930 - supports-color 6931 6932 + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)): 6933 dependencies: 6934 debug: 3.2.7 6935 optionalDependencies: 6936 '@typescript-eslint/parser': 8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3) 6937 eslint: 9.24.0(jiti@1.21.0) 6938 eslint-import-resolver-node: 0.3.9 6939 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)) 6940 transitivePeerDependencies: 6941 - supports-color 6942 6943 + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)): 6944 dependencies: 6945 '@rtsao/scc': 1.1.0 6946 array-includes: 3.1.8 ··· 6951 doctrine: 2.1.0 6952 eslint: 9.24.0(jiti@1.21.0) 6953 eslint-import-resolver-node: 0.3.9 6954 + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.30.1(eslint@9.24.0(jiti@1.21.0))(typescript@5.8.3))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)))(eslint@9.24.0(jiti@1.21.0)) 6955 hasown: 2.0.2 6956 is-core-module: 2.15.1 6957 is-glob: 4.0.3 ··· 7926 7927 react-refresh@0.14.2: {} 7928 7929 + react-remove-scroll-bar@2.3.8(@types/react@19.1.2)(react@19.0.0): 7930 dependencies: 7931 react: 19.0.0 7932 + react-style-singleton: 2.2.3(@types/react@19.1.2)(react@19.0.0) 7933 tslib: 2.8.1 7934 optionalDependencies: 7935 + '@types/react': 19.1.2 7936 7937 + react-remove-scroll@2.6.3(@types/react@19.1.2)(react@19.0.0): 7938 dependencies: 7939 react: 19.0.0 7940 + react-remove-scroll-bar: 2.3.8(@types/react@19.1.2)(react@19.0.0) 7941 + react-style-singleton: 2.2.3(@types/react@19.1.2)(react@19.0.0) 7942 tslib: 2.8.1 7943 + use-callback-ref: 1.3.3(@types/react@19.1.2)(react@19.0.0) 7944 + use-sidecar: 1.1.3(@types/react@19.1.2)(react@19.0.0) 7945 optionalDependencies: 7946 + '@types/react': 19.1.2 7947 7948 + react-style-singleton@2.2.3(@types/react@19.1.2)(react@19.0.0): 7949 dependencies: 7950 get-nonce: 1.0.1 7951 react: 19.0.0 7952 tslib: 2.8.1 7953 optionalDependencies: 7954 + '@types/react': 19.1.2 7955 7956 react@19.0.0: {} 7957 ··· 8546 querystringify: 2.2.0 8547 requires-port: 1.0.0 8548 8549 + use-callback-ref@1.3.3(@types/react@19.1.2)(react@19.0.0): 8550 dependencies: 8551 react: 19.0.0 8552 tslib: 2.8.1 8553 optionalDependencies: 8554 + '@types/react': 19.1.2 8555 8556 + use-sidecar@1.1.3(@types/react@19.1.2)(react@19.0.0): 8557 dependencies: 8558 detect-node-es: 1.1.0 8559 react: 19.0.0 8560 tslib: 2.8.1 8561 optionalDependencies: 8562 + '@types/react': 19.1.2 8563 8564 use-sync-external-store@1.5.0(react@19.0.0): 8565 dependencies:
+2
pnpm-workspace.yaml
··· 7 '@next/eslint-plugin-next': ^15.3.1 8 react: ^19.0.0 9 react-dom: ^19.0.0 10 typescript: ^5.8.3 11 eslint: ^9 12 '@types/node': ^22
··· 7 '@next/eslint-plugin-next': ^15.3.1 8 react: ^19.0.0 9 react-dom: ^19.0.0 10 + '@types/react': ^19 11 + '@types/react-dom': ^19 12 typescript: ^5.8.3 13 eslint: ^9 14 '@types/node': ^22