From 5dbb30b32cfc08cfc22238ff2707e371ae700026 Mon Sep 17 00:00:00 2001 From: RUI <298977887@qq.com> Date: Thu, 27 Nov 2025 17:50:44 +0800 Subject: [PATCH] 2025.11.27.17.50 --- .gitignore | 41 + README.md | 91 + eslint.config.mjs | 18 + next.config.ts | 20 + package.json | 70 + pnpm-lock.yaml | 7620 ++++++++++++++++++ postcss.config.mjs | 7 + public/Gemini.svg | 1 + public/Google.svg | 1 + public/LOGO.png | Bin 0 -> 137721 bytes public/favicon.ico | Bin 0 -> 4286 bytes public/file.svg | 1 + public/globe.svg | 1 + public/next.svg | 1 + public/vercel.svg | 1 + public/window.svg | 1 + scripts/seed.ts | 482 ++ src/components/admin/AdminLayout.tsx | 160 + src/components/admin/ArticleEditor.tsx | 377 + src/components/admin/TiptapEditor.tsx | 539 ++ src/components/aitools/AIToolsLayout.tsx | 40 + src/components/aitools/ToolsSidebar.tsx | 86 + src/components/article/CommentSection.tsx | 161 + src/components/home/ArticleCard.tsx | 77 + src/components/home/HeroBanner.tsx | 152 + src/components/home/Sidebar.tsx | 57 + src/components/layouts/MainLayout.tsx | 314 + src/components/ui/avatar.tsx | 48 + src/components/ui/badge.tsx | 36 + src/components/ui/button.tsx | 57 + src/components/ui/card.tsx | 76 + src/components/ui/carousel.tsx | 263 + src/components/ui/dialog.tsx | 120 + src/components/ui/dropdown-menu.tsx | 198 + src/components/ui/form.tsx | 176 + src/components/ui/input.tsx | 22 + src/components/ui/label.tsx | 24 + src/components/ui/popover.tsx | 29 + src/components/ui/select.tsx | 157 + src/components/ui/skeleton.tsx | 15 + src/components/ui/sonner.tsx | 31 + src/components/ui/switch.tsx | 29 + src/components/ui/table.tsx | 117 + src/components/ui/tabs.tsx | 53 + src/components/ui/textarea.tsx | 24 + src/contexts/ConfigContext.tsx | 58 + src/hooks/useAuth.tsx | 80 + src/lib/alipay.ts | 138 + src/lib/api-handler.ts | 43 + src/lib/auth.ts | 53 + src/lib/dbConnect.ts | 130 + src/lib/utils.ts | 6 + src/lib/withDatabase.ts | 30 + src/models/index.ts | 276 + src/pages/404.tsx | 34 + src/pages/_app.tsx | 14 + src/pages/_document.tsx | 13 + src/pages/admin/ai/index.tsx | 315 + src/pages/admin/articles/create.tsx | 5 + src/pages/admin/articles/edit/[id].tsx | 17 + src/pages/admin/articles/index.tsx | 238 + src/pages/admin/banners/index.tsx | 230 + src/pages/admin/index.tsx | 191 + src/pages/admin/orders/index.tsx | 232 + src/pages/admin/plans/edit/[id].tsx | 167 + src/pages/admin/plans/index.tsx | 125 + src/pages/admin/settings/index.tsx | 377 + src/pages/admin/users/index.tsx | 316 + src/pages/aitools/index.tsx | 20 + src/pages/aitools/prompt-optimizer/index.tsx | 164 + src/pages/aitools/translator/index.tsx | 196 + src/pages/api/admin/ai/models.ts | 71 + src/pages/api/admin/articles/[id].ts | 49 + src/pages/api/admin/articles/index.ts | 61 + src/pages/api/admin/categories/index.ts | 20 + src/pages/api/admin/orders/index.ts | 65 + src/pages/api/admin/plans/[id].ts | 37 + src/pages/api/admin/plans/index.ts | 25 + src/pages/api/admin/settings.ts | 72 + src/pages/api/admin/tags/index.ts | 20 + src/pages/api/admin/users/[id].ts | 56 + src/pages/api/admin/users/index.ts | 46 + src/pages/api/ai/generate.ts | 135 + src/pages/api/articles/[id].ts | 122 + src/pages/api/articles/index.ts | 65 + src/pages/api/auth/login.ts | 64 + src/pages/api/auth/logout.ts | 12 + src/pages/api/auth/me.ts | 36 + src/pages/api/auth/register.ts | 49 + src/pages/api/categories/index.ts | 19 + src/pages/api/comments/index.ts | 59 + src/pages/api/hello.ts | 13 + src/pages/api/orders/create.ts | 121 + src/pages/api/payment/notify.ts | 101 + src/pages/api/payment/return.ts | 94 + src/pages/api/plans/index.ts | 18 + src/pages/api/public/config.ts | 32 + src/pages/api/tags/index.ts | 20 + src/pages/api/user/orders.ts | 33 + src/pages/api/user/orders/index.ts | 33 + src/pages/api/user/profile.ts | 52 + src/pages/article/[id].tsx | 282 + src/pages/auth/login.tsx | 132 + src/pages/auth/register.tsx | 165 + src/pages/dashboard/index.tsx | 344 + src/pages/index.tsx | 133 + src/pages/membership.tsx | 130 + src/pages/payment/failure.tsx | 61 + src/pages/payment/success.tsx | 63 + src/styles/globals.css | 119 + tsconfig.json | 29 + 111 files changed, 18320 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 eslint.config.mjs create mode 100644 next.config.ts create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 postcss.config.mjs create mode 100644 public/Gemini.svg create mode 100644 public/Google.svg create mode 100644 public/LOGO.png create mode 100644 public/favicon.ico create mode 100644 public/file.svg create mode 100644 public/globe.svg create mode 100644 public/next.svg create mode 100644 public/vercel.svg create mode 100644 public/window.svg create mode 100644 scripts/seed.ts create mode 100644 src/components/admin/AdminLayout.tsx create mode 100644 src/components/admin/ArticleEditor.tsx create mode 100644 src/components/admin/TiptapEditor.tsx create mode 100644 src/components/aitools/AIToolsLayout.tsx create mode 100644 src/components/aitools/ToolsSidebar.tsx create mode 100644 src/components/article/CommentSection.tsx create mode 100644 src/components/home/ArticleCard.tsx create mode 100644 src/components/home/HeroBanner.tsx create mode 100644 src/components/home/Sidebar.tsx create mode 100644 src/components/layouts/MainLayout.tsx create mode 100644 src/components/ui/avatar.tsx create mode 100644 src/components/ui/badge.tsx create mode 100644 src/components/ui/button.tsx create mode 100644 src/components/ui/card.tsx create mode 100644 src/components/ui/carousel.tsx create mode 100644 src/components/ui/dialog.tsx create mode 100644 src/components/ui/dropdown-menu.tsx create mode 100644 src/components/ui/form.tsx create mode 100644 src/components/ui/input.tsx create mode 100644 src/components/ui/label.tsx create mode 100644 src/components/ui/popover.tsx create mode 100644 src/components/ui/select.tsx create mode 100644 src/components/ui/skeleton.tsx create mode 100644 src/components/ui/sonner.tsx create mode 100644 src/components/ui/switch.tsx create mode 100644 src/components/ui/table.tsx create mode 100644 src/components/ui/tabs.tsx create mode 100644 src/components/ui/textarea.tsx create mode 100644 src/contexts/ConfigContext.tsx create mode 100644 src/hooks/useAuth.tsx create mode 100644 src/lib/alipay.ts create mode 100644 src/lib/api-handler.ts create mode 100644 src/lib/auth.ts create mode 100644 src/lib/dbConnect.ts create mode 100644 src/lib/utils.ts create mode 100644 src/lib/withDatabase.ts create mode 100644 src/models/index.ts create mode 100644 src/pages/404.tsx create mode 100644 src/pages/_app.tsx create mode 100644 src/pages/_document.tsx create mode 100644 src/pages/admin/ai/index.tsx create mode 100644 src/pages/admin/articles/create.tsx create mode 100644 src/pages/admin/articles/edit/[id].tsx create mode 100644 src/pages/admin/articles/index.tsx create mode 100644 src/pages/admin/banners/index.tsx create mode 100644 src/pages/admin/index.tsx create mode 100644 src/pages/admin/orders/index.tsx create mode 100644 src/pages/admin/plans/edit/[id].tsx create mode 100644 src/pages/admin/plans/index.tsx create mode 100644 src/pages/admin/settings/index.tsx create mode 100644 src/pages/admin/users/index.tsx create mode 100644 src/pages/aitools/index.tsx create mode 100644 src/pages/aitools/prompt-optimizer/index.tsx create mode 100644 src/pages/aitools/translator/index.tsx create mode 100644 src/pages/api/admin/ai/models.ts create mode 100644 src/pages/api/admin/articles/[id].ts create mode 100644 src/pages/api/admin/articles/index.ts create mode 100644 src/pages/api/admin/categories/index.ts create mode 100644 src/pages/api/admin/orders/index.ts create mode 100644 src/pages/api/admin/plans/[id].ts create mode 100644 src/pages/api/admin/plans/index.ts create mode 100644 src/pages/api/admin/settings.ts create mode 100644 src/pages/api/admin/tags/index.ts create mode 100644 src/pages/api/admin/users/[id].ts create mode 100644 src/pages/api/admin/users/index.ts create mode 100644 src/pages/api/ai/generate.ts create mode 100644 src/pages/api/articles/[id].ts create mode 100644 src/pages/api/articles/index.ts create mode 100644 src/pages/api/auth/login.ts create mode 100644 src/pages/api/auth/logout.ts create mode 100644 src/pages/api/auth/me.ts create mode 100644 src/pages/api/auth/register.ts create mode 100644 src/pages/api/categories/index.ts create mode 100644 src/pages/api/comments/index.ts create mode 100644 src/pages/api/hello.ts create mode 100644 src/pages/api/orders/create.ts create mode 100644 src/pages/api/payment/notify.ts create mode 100644 src/pages/api/payment/return.ts create mode 100644 src/pages/api/plans/index.ts create mode 100644 src/pages/api/public/config.ts create mode 100644 src/pages/api/tags/index.ts create mode 100644 src/pages/api/user/orders.ts create mode 100644 src/pages/api/user/orders/index.ts create mode 100644 src/pages/api/user/profile.ts create mode 100644 src/pages/article/[id].tsx create mode 100644 src/pages/auth/login.tsx create mode 100644 src/pages/auth/register.tsx create mode 100644 src/pages/dashboard/index.tsx create mode 100644 src/pages/index.tsx create mode 100644 src/pages/membership.tsx create mode 100644 src/pages/payment/failure.tsx create mode 100644 src/pages/payment/success.tsx create mode 100644 src/styles/globals.css create mode 100644 tsconfig.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5ef6a52 --- /dev/null +++ b/.gitignore @@ -0,0 +1,41 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.* +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/versions + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# env files (can opt-in for committing if needed) +.env* + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/README.md b/README.md new file mode 100644 index 0000000..7bfe951 --- /dev/null +++ b/README.md @@ -0,0 +1,91 @@ +# AounApp - 个人资源付费系统 + +这是一个基于 Next.js 全栈开发的个人资源付费与会员系统。支持文章/资源发布、会员订阅、积分充值、以及支付宝/微信支付集成。 + +## 🛠 技术栈 (Tech Stack) + +### 核心框架 +- **Framework**: [Next.js 16](https://nextjs.org/) (Pages Router) +- **Language**: [TypeScript](https://www.typescriptlang.org/) +- **Database**: [MongoDB](https://www.mongodb.com/) (via [Mongoose](https://mongoosejs.com/)) + +### 前端 UI & 交互 +- **UI Library**: [Shadcn UI](https://ui.shadcn.com/) (基于 Radix UI) +- **Styling**: [Tailwind CSS v4](https://tailwindcss.com/) +- **Icons**: [Lucide React](https://lucide.dev/) +- **Forms**: [React Hook Form](https://react-hook-form.com/) + [Zod](https://zod.dev/) (验证) +- **Notifications**: [Sonner](https://sonner.emilkowal.ski/) +- **Editor**: [Tiptap](https://tiptap.dev/) (Headless 富文本编辑器) + +### 后端 & 工具 +- **Authentication**: JWT (JSON Web Tokens) - 自定义实现,存储于 HttpOnly Cookie +- **Payment**: Native Alipay Integration (Node.js `crypto` 实现,无第三方 SDK 依赖) +- **Markdown Processing**: + - `unified`, `remark`, `rehype` (服务端处理) + - `shiki` (代码高亮) +- **Date Handling**: `date-fns` + +## ✨ 核心功能 (Key Features) + +1. **用户系统** + - 注册/登录 (JWT) + - 个人中心 (Dashboard):查看订单、会员状态、积分 + - 钱包系统:积分充值与消费 + +2. **内容管理 (CMS)** + - **文章/资源发布**:支持 Markdown 编辑 (Tiptap),支持设置价格(积分/现金)、隐藏内容(下载链接/提取码)。 + - **分类与标签**:灵活的内容组织。 + - **评论系统**:支持多级评论。 + +3. **会员与支付** + - **会员订阅**:不同等级会员享受不同折扣和每日下载限制。 + - **支付集成**: + - **支付宝**:原生集成,支持当面付/电脑网站支付(根据配置)。 + - **积分支付**:站内虚拟货币支付。 + - **订单系统**:完整的订单创建、支付回调、状态流转。 + +4. **管理后台 (Admin)** + - 仪表盘:数据概览。 + - 用户管理、文章管理、订单管理、会员套餐管理。 + - 系统设置:全局 SEO、支付参数配置。 + +## ⚠️ 关键架构与注意事项 (Architecture & Notes) + +### 1. Markdown 渲染架构 +* **服务端渲染 (SSR)**:为了解决 `rehype-pretty-code` 在客户端运行时的兼容性问题,并将繁重的 Markdown 解析逻辑移出前端 bundle,我们采用了**服务端预处理**方案。 +* **流程**: + 1. API (`/api/articles/[id]`) 接收请求。 + 2. 后端读取 Markdown 内容,使用 `unified` + `remark` + `rehype` + `shiki` 转换为 HTML。 + 3. API 返回预渲染好的 HTML 字符串。 + 4. 前端 (`pages/article/[id].tsx`) 使用 `dangerouslySetInnerHTML` 直接渲染。 + +### 2. 编辑器 (Tiptap) +* **SSR 兼容性**:Tiptap 在 Next.js 中使用时,必须在 `useEditor` 中设置 `immediatelyRender: false`,以避免服务端渲染与客户端水合不匹配 (Hydration Mismatch) 导致的运行时错误。 +* **Markdown 支持**:集成了 `tiptap-markdown` 扩展,确保编辑器内容可以作为 Markdown 格式保存到数据库,保持数据格式的通用性。 + +### 3. 支付系统 +* **去 SDK 化**:为了避免 `alipay-sdk` 等库的潜在依赖问题和体积,我们使用 Node.js 原生 `crypto` 模块实现了支付宝的签名和验签逻辑 (`src/lib/alipay.ts`)。 +* **安全性**:支付回调 (`notify`) 必须严格验证签名,防止伪造请求。 + +### 4. 样式系统 +* **Tailwind v4**:项目配置了 Tailwind CSS v4。 +* **Typography**:使用了 `@tailwindcss/typography` 插件来美化文章详情页的 HTML 内容渲染 (`prose` 类)。 + +## 🚀 快速开始 (Getting Started) + +1. **安装依赖** + ```bash + pnpm install + ``` + +2. **配置环境变量** + 复制 `.env.example` 到 `.env.local` 并填入 MongoDB URI 和 JWT Secret 等信息。 + +3. **运行开发服务器** + ```bash + pnpm run dev + ``` + +4. **访问** + - 前台: `http://localhost:3000` + - 后台: `http://localhost:3000/admin` diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..05e726d --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,18 @@ +import { defineConfig, globalIgnores } from "eslint/config"; +import nextVitals from "eslint-config-next/core-web-vitals"; +import nextTs from "eslint-config-next/typescript"; + +const eslintConfig = defineConfig([ + ...nextVitals, + ...nextTs, + // Override default ignores of eslint-config-next. + globalIgnores([ + // Default ignores of eslint-config-next: + ".next/**", + "out/**", + "build/**", + "next-env.d.ts", + ]), +]); + +export default eslintConfig; diff --git a/next.config.ts b/next.config.ts new file mode 100644 index 0000000..dedb5d5 --- /dev/null +++ b/next.config.ts @@ -0,0 +1,20 @@ +import type { NextConfig } from "next"; + +const nextConfig: NextConfig = { + /* config options here */ + reactStrictMode: true, + images: { + remotePatterns: [ + { + protocol: 'https', + hostname: 'picsum.photos', + }, + { + protocol: 'https', + hostname: 'api.dicebear.com', + }, + ], + }, +}; + +export default nextConfig; diff --git a/package.json b/package.json new file mode 100644 index 0000000..c3d6542 --- /dev/null +++ b/package.json @@ -0,0 +1,70 @@ +{ + "name": "aounapp", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "eslint" + }, + "dependencies": { + "@hookform/resolvers": "^5.2.2", + "@radix-ui/react-avatar": "^1.1.11", + "@radix-ui/react-dialog": "^1.1.15", + "@radix-ui/react-dropdown-menu": "^2.1.16", + "@radix-ui/react-label": "^2.1.8", + "@radix-ui/react-popover": "^1.1.15", + "@radix-ui/react-select": "^2.2.6", + "@radix-ui/react-slot": "^1.2.4", + "@radix-ui/react-switch": "^1.2.6", + "@radix-ui/react-tabs": "^1.1.13", + "@tailwindcss/typography": "^0.5.19", + "@tiptap/extension-bubble-menu": "^3.11.0", + "@tiptap/extension-floating-menu": "^3.11.0", + "@tiptap/extension-image": "^3.11.0", + "@tiptap/extension-link": "^3.11.0", + "@tiptap/extension-placeholder": "^3.11.0", + "@tiptap/react": "^3.11.0", + "@tiptap/starter-kit": "^3.11.0", + "@uiw/react-md-editor": "^4.0.8", + "bcryptjs": "^3.0.3", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "date-fns": "^4.1.0", + "embla-carousel-react": "^8.6.0", + "eventsource-parser": "^3.0.6", + "jsonwebtoken": "^9.0.2", + "lucide-react": "^0.554.0", + "mongoose": "^9.0.0", + "next": "16.0.3", + "next-themes": "^0.4.6", + "react": "19.2.0", + "react-dom": "19.2.0", + "react-hook-form": "^7.66.1", + "react-markdown": "^10.1.0", + "rehype-pretty-code": "^0.14.1", + "rehype-raw": "^7.0.0", + "rehype-sanitize": "^6.0.0", + "rehype-stringify": "^10.0.1", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.1.2", + "shiki": "^3.15.0", + "sonner": "^2.0.7", + "tailwind-merge": "^3.4.0", + "tiptap-markdown": "^0.9.0", + "unified": "^11.0.5", + "zod": "^4.1.12" + }, + "devDependencies": { + "@tailwindcss/postcss": "^4", + "@types/jsonwebtoken": "^9.0.10", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "eslint": "^9", + "eslint-config-next": "16.0.3", + "tailwindcss": "^4", + "typescript": "^5" + } +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..e5cd994 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,7620 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@hookform/resolvers': + specifier: ^5.2.2 + version: 5.2.2(react-hook-form@7.66.1(react@19.2.0)) + '@radix-ui/react-avatar': + specifier: ^1.1.11 + version: 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-dialog': + specifier: ^1.1.15 + version: 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-dropdown-menu': + specifier: ^2.1.16 + version: 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-label': + specifier: ^2.1.8 + version: 2.1.8(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-popover': + specifier: ^1.1.15 + version: 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-select': + specifier: ^2.2.6 + version: 2.2.6(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': + specifier: ^1.2.4 + version: 1.2.4(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-switch': + specifier: ^1.2.6 + version: 1.2.6(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-tabs': + specifier: ^1.1.13 + version: 1.1.13(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@tailwindcss/typography': + specifier: ^0.5.19 + version: 0.5.19(tailwindcss@4.1.17) + '@tiptap/extension-bubble-menu': + specifier: ^3.11.0 + version: 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-floating-menu': + specifier: ^3.11.0 + version: 3.11.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-image': + specifier: ^3.11.0 + version: 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-link': + specifier: ^3.11.0 + version: 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-placeholder': + specifier: ^3.11.0 + version: 3.11.0(@tiptap/extensions@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)) + '@tiptap/react': + specifier: ^3.11.0 + version: 3.11.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@tiptap/starter-kit': + specifier: ^3.11.0 + version: 3.11.0 + '@uiw/react-md-editor': + specifier: ^4.0.8 + version: 4.0.8(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + bcryptjs: + specifier: ^3.0.3 + version: 3.0.3 + class-variance-authority: + specifier: ^0.7.1 + version: 0.7.1 + clsx: + specifier: ^2.1.1 + version: 2.1.1 + date-fns: + specifier: ^4.1.0 + version: 4.1.0 + embla-carousel-react: + specifier: ^8.6.0 + version: 8.6.0(react@19.2.0) + eventsource-parser: + specifier: ^3.0.6 + version: 3.0.6 + jsonwebtoken: + specifier: ^9.0.2 + version: 9.0.2 + lucide-react: + specifier: ^0.554.0 + version: 0.554.0(react@19.2.0) + mongoose: + specifier: ^9.0.0 + version: 9.0.0 + next: + specifier: 16.0.3 + version: 16.0.3(@babel/core@7.28.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + next-themes: + specifier: ^0.4.6 + version: 0.4.6(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + react: + specifier: 19.2.0 + version: 19.2.0 + react-dom: + specifier: 19.2.0 + version: 19.2.0(react@19.2.0) + react-hook-form: + specifier: ^7.66.1 + version: 7.66.1(react@19.2.0) + react-markdown: + specifier: ^10.1.0 + version: 10.1.0(@types/react@19.2.7)(react@19.2.0) + rehype-pretty-code: + specifier: ^0.14.1 + version: 0.14.1(shiki@3.15.0) + rehype-raw: + specifier: ^7.0.0 + version: 7.0.0 + rehype-sanitize: + specifier: ^6.0.0 + version: 6.0.0 + rehype-stringify: + specifier: ^10.0.1 + version: 10.0.1 + remark-parse: + specifier: ^11.0.0 + version: 11.0.0 + remark-rehype: + specifier: ^11.1.2 + version: 11.1.2 + shiki: + specifier: ^3.15.0 + version: 3.15.0 + sonner: + specifier: ^2.0.7 + version: 2.0.7(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + tailwind-merge: + specifier: ^3.4.0 + version: 3.4.0 + tiptap-markdown: + specifier: ^0.9.0 + version: 0.9.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + unified: + specifier: ^11.0.5 + version: 11.0.5 + zod: + specifier: ^4.1.12 + version: 4.1.13 + devDependencies: + '@tailwindcss/postcss': + specifier: ^4 + version: 4.1.17 + '@types/jsonwebtoken': + specifier: ^9.0.10 + version: 9.0.10 + '@types/node': + specifier: ^20 + version: 20.19.25 + '@types/react': + specifier: ^19 + version: 19.2.7 + '@types/react-dom': + specifier: ^19 + version: 19.2.3(@types/react@19.2.7) + eslint: + specifier: ^9 + version: 9.39.1(jiti@2.6.1) + eslint-config-next: + specifier: 16.0.3 + version: 16.0.3(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + tailwindcss: + specifier: ^4 + version: 4.1.17 + typescript: + specifier: ^5 + version: 5.9.3 + +packages: + + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.28.5': + resolution: {integrity: sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.28.5': + resolution: {integrity: sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.28.5': + resolution: {integrity: sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.27.2': + resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-globals@7.28.0': + resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.27.1': + resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.28.3': + resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.27.1': + resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.28.4': + resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.28.5': + resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/runtime@7.28.4': + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.27.2': + resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.28.5': + resolution: {integrity: sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.28.5': + resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} + engines: {node: '>=6.9.0'} + + '@emnapi/core@1.7.1': + resolution: {integrity: sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==} + + '@emnapi/runtime@1.7.1': + resolution: {integrity: sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==} + + '@emnapi/wasi-threads@1.1.0': + resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + + '@eslint-community/eslint-utils@4.9.0': + resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.2': + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.21.1': + resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/config-helpers@0.4.2': + resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.17.0': + resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.3.1': + resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.39.1': + resolution: {integrity: sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.7': + resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.4.1': + resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@floating-ui/core@1.7.3': + resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==} + + '@floating-ui/dom@1.7.4': + resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==} + + '@floating-ui/react-dom@2.1.6': + resolution: {integrity: sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@floating-ui/utils@0.2.10': + resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} + + '@hookform/resolvers@5.2.2': + resolution: {integrity: sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA==} + peerDependencies: + react-hook-form: ^7.55.0 + + '@humanfs/core@0.19.1': + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.7': + resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==} + engines: {node: '>=18.18.0'} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.4.3': + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} + engines: {node: '>=18.18'} + + '@img/colour@1.0.0': + resolution: {integrity: sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==} + engines: {node: '>=18'} + + '@img/sharp-darwin-arm64@0.34.5': + resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + + '@img/sharp-darwin-x64@0.34.5': + resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-darwin-arm64@1.2.4': + resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==} + cpu: [arm64] + os: [darwin] + + '@img/sharp-libvips-darwin-x64@1.2.4': + resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-linux-arm64@1.2.4': + resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linux-arm@1.2.4': + resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} + cpu: [arm] + os: [linux] + + '@img/sharp-libvips-linux-ppc64@1.2.4': + resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} + cpu: [ppc64] + os: [linux] + + '@img/sharp-libvips-linux-riscv64@1.2.4': + resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} + cpu: [riscv64] + os: [linux] + + '@img/sharp-libvips-linux-s390x@1.2.4': + resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} + cpu: [s390x] + os: [linux] + + '@img/sharp-libvips-linux-x64@1.2.4': + resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} + cpu: [x64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} + cpu: [x64] + os: [linux] + + '@img/sharp-linux-arm64@0.34.5': + resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linux-arm@0.34.5': + resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + + '@img/sharp-linux-ppc64@0.34.5': + resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ppc64] + os: [linux] + + '@img/sharp-linux-riscv64@0.34.5': + resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [riscv64] + os: [linux] + + '@img/sharp-linux-s390x@0.34.5': + resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + + '@img/sharp-linux-x64@0.34.5': + resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-linuxmusl-arm64@0.34.5': + resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linuxmusl-x64@0.34.5': + resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-wasm32@0.34.5': + resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + + '@img/sharp-win32-arm64@0.34.5': + resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [win32] + + '@img/sharp-win32-ia32@0.34.5': + resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + + '@img/sharp-win32-x64@0.34.5': + resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/remapping@2.3.5': + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@mongodb-js/saslprep@1.3.2': + resolution: {integrity: sha512-QgA5AySqB27cGTXBFmnpifAi7HxoGUeezwo6p9dI03MuDB6Pp33zgclqVb6oVK3j6I9Vesg0+oojW2XxB59SGg==} + + '@napi-rs/wasm-runtime@0.2.12': + resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} + + '@next/env@16.0.3': + resolution: {integrity: sha512-IqgtY5Vwsm14mm/nmQaRMmywCU+yyMIYfk3/MHZ2ZTJvwVbBn3usZnjMi1GacrMVzVcAxJShTCpZlPs26EdEjQ==} + + '@next/eslint-plugin-next@16.0.3': + resolution: {integrity: sha512-6sPWmZetzFWMsz7Dhuxsdmbu3fK+/AxKRtj7OB0/3OZAI2MHB/v2FeYh271LZ9abvnM1WIwWc/5umYjx0jo5sQ==} + + '@next/swc-darwin-arm64@16.0.3': + resolution: {integrity: sha512-MOnbd92+OByu0p6QBAzq1ahVWzF6nyfiH07dQDez4/Nku7G249NjxDVyEfVhz8WkLiOEU+KFVnqtgcsfP2nLXg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@next/swc-darwin-x64@16.0.3': + resolution: {integrity: sha512-i70C4O1VmbTivYdRlk+5lj9xRc2BlK3oUikt3yJeHT1unL4LsNtN7UiOhVanFdc7vDAgZn1tV/9mQwMkWOJvHg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@next/swc-linux-arm64-gnu@16.0.3': + resolution: {integrity: sha512-O88gCZ95sScwD00mn/AtalyCoykhhlokxH/wi1huFK+rmiP5LAYVs/i2ruk7xST6SuXN4NI5y4Xf5vepb2jf6A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-arm64-musl@16.0.3': + resolution: {integrity: sha512-CEErFt78S/zYXzFIiv18iQCbRbLgBluS8z1TNDQoyPi8/Jr5qhR3e8XHAIxVxPBjDbEMITprqELVc5KTfFj0gg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-x64-gnu@16.0.3': + resolution: {integrity: sha512-Tc3i+nwt6mQ+Dwzcri/WNDj56iWdycGVh5YwwklleClzPzz7UpfaMw1ci7bLl6GRYMXhWDBfe707EXNjKtiswQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-linux-x64-musl@16.0.3': + resolution: {integrity: sha512-zTh03Z/5PBBPdTurgEtr6nY0vI9KR9Ifp/jZCcHlODzwVOEKcKRBtQIGrkc7izFgOMuXDEJBmirwpGqdM/ZixA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-win32-arm64-msvc@16.0.3': + resolution: {integrity: sha512-Jc1EHxtZovcJcg5zU43X3tuqzl/sS+CmLgjRP28ZT4vk869Ncm2NoF8qSTaL99gh6uOzgM99Shct06pSO6kA6g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@next/swc-win32-x64-msvc@16.0.3': + resolution: {integrity: sha512-N7EJ6zbxgIYpI/sWNzpVKRMbfEGgsWuOIvzkML7wxAAZhPk1Msxuo/JDu1PKjWGrAoOLaZcIX5s+/pF5LIbBBg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@nolyfill/is-core-module@1.0.39': + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} + engines: {node: '>=12.4.0'} + + '@radix-ui/number@1.1.1': + resolution: {integrity: sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==} + + '@radix-ui/primitive@1.1.3': + resolution: {integrity: sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==} + + '@radix-ui/react-arrow@1.1.7': + resolution: {integrity: sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-avatar@1.1.11': + resolution: {integrity: sha512-0Qk603AHGV28BOBO34p7IgD5m+V5Sg/YovfayABkoDDBM5d3NCx0Mp4gGrjzLGes1jV5eNOE1r3itqOR33VC6Q==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-collection@1.1.7': + resolution: {integrity: sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-compose-refs@1.1.2': + resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-context@1.1.2': + resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-context@1.1.3': + resolution: {integrity: sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-dialog@1.1.15': + resolution: {integrity: sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-direction@1.1.1': + resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-dismissable-layer@1.1.11': + resolution: {integrity: sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-dropdown-menu@2.1.16': + resolution: {integrity: sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-focus-guards@1.1.3': + resolution: {integrity: sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-focus-scope@1.1.7': + resolution: {integrity: sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-id@1.1.1': + resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-label@2.1.8': + resolution: {integrity: sha512-FmXs37I6hSBVDlO4y764TNz1rLgKwjJMQ0EGte6F3Cb3f4bIuHB/iLa/8I9VKkmOy+gNHq8rql3j686ACVV21A==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-menu@2.1.16': + resolution: {integrity: sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-popover@1.1.15': + resolution: {integrity: sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-popper@1.2.8': + resolution: {integrity: sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-portal@1.1.9': + resolution: {integrity: sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-presence@1.1.5': + resolution: {integrity: sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-primitive@2.1.3': + resolution: {integrity: sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-primitive@2.1.4': + resolution: {integrity: sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-roving-focus@1.1.11': + resolution: {integrity: sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-select@2.2.6': + resolution: {integrity: sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-slot@1.2.3': + resolution: {integrity: sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-slot@1.2.4': + resolution: {integrity: sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-switch@1.2.6': + resolution: {integrity: sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-tabs@1.1.13': + resolution: {integrity: sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-use-callback-ref@1.1.1': + resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-controllable-state@1.2.2': + resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-effect-event@0.0.2': + resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-escape-keydown@1.1.1': + resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-is-hydrated@0.1.0': + resolution: {integrity: sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-layout-effect@1.1.1': + resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-previous@1.1.1': + resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-rect@1.1.1': + resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-size@1.1.1': + resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-visually-hidden@1.2.3': + resolution: {integrity: sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/rect@1.1.1': + resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==} + + '@remirror/core-constants@3.0.0': + resolution: {integrity: sha512-42aWfPrimMfDKDi4YegyS7x+/0tlzaqwPQCULLanv3DMIlu96KTJR0fM5isWX2UViOqlGnX6YFgqWepcX+XMNg==} + + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + + '@shikijs/core@3.15.0': + resolution: {integrity: sha512-8TOG6yG557q+fMsSVa8nkEDOZNTSxjbbR8l6lF2gyr6Np+jrPlslqDxQkN6rMXCECQ3isNPZAGszAfYoJOPGlg==} + + '@shikijs/engine-javascript@3.15.0': + resolution: {integrity: sha512-ZedbOFpopibdLmvTz2sJPJgns8Xvyabe2QbmqMTz07kt1pTzfEvKZc5IqPVO/XFiEbbNyaOpjPBkkr1vlwS+qg==} + + '@shikijs/engine-oniguruma@3.15.0': + resolution: {integrity: sha512-HnqFsV11skAHvOArMZdLBZZApRSYS4LSztk2K3016Y9VCyZISnlYUYsL2hzlS7tPqKHvNqmI5JSUJZprXloMvA==} + + '@shikijs/langs@3.15.0': + resolution: {integrity: sha512-WpRvEFvkVvO65uKYW4Rzxs+IG0gToyM8SARQMtGGsH4GDMNZrr60qdggXrFOsdfOVssG/QQGEl3FnJ3EZ+8w8A==} + + '@shikijs/themes@3.15.0': + resolution: {integrity: sha512-8ow2zWb1IDvCKjYb0KiLNrK4offFdkfNVPXb1OZykpLCzRU6j+efkY+Y7VQjNlNFXonSw+4AOdGYtmqykDbRiQ==} + + '@shikijs/types@3.15.0': + resolution: {integrity: sha512-BnP+y/EQnhihgHy4oIAN+6FFtmfTekwOLsQbRw9hOKwqgNy8Bdsjq8B05oAt/ZgvIWWFrshV71ytOrlPfYjIJw==} + + '@shikijs/vscode-textmate@10.0.2': + resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} + + '@standard-schema/utils@0.3.0': + resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==} + + '@swc/helpers@0.5.15': + resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} + + '@tailwindcss/node@4.1.17': + resolution: {integrity: sha512-csIkHIgLb3JisEFQ0vxr2Y57GUNYh447C8xzwj89U/8fdW8LhProdxvnVH6U8M2Y73QKiTIH+LWbK3V2BBZsAg==} + + '@tailwindcss/oxide-android-arm64@4.1.17': + resolution: {integrity: sha512-BMqpkJHgOZ5z78qqiGE6ZIRExyaHyuxjgrJ6eBO5+hfrfGkuya0lYfw8fRHG77gdTjWkNWEEm+qeG2cDMxArLQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@tailwindcss/oxide-darwin-arm64@4.1.17': + resolution: {integrity: sha512-EquyumkQweUBNk1zGEU/wfZo2qkp/nQKRZM8bUYO0J+Lums5+wl2CcG1f9BgAjn/u9pJzdYddHWBiFXJTcxmOg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@tailwindcss/oxide-darwin-x64@4.1.17': + resolution: {integrity: sha512-gdhEPLzke2Pog8s12oADwYu0IAw04Y2tlmgVzIN0+046ytcgx8uZmCzEg4VcQh+AHKiS7xaL8kGo/QTiNEGRog==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@tailwindcss/oxide-freebsd-x64@4.1.17': + resolution: {integrity: sha512-hxGS81KskMxML9DXsaXT1H0DyA+ZBIbyG/sSAjWNe2EDl7TkPOBI42GBV3u38itzGUOmFfCzk1iAjDXds8Oh0g==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.17': + resolution: {integrity: sha512-k7jWk5E3ldAdw0cNglhjSgv501u7yrMf8oeZ0cElhxU6Y2o7f8yqelOp3fhf7evjIS6ujTI3U8pKUXV2I4iXHQ==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-gnu@4.1.17': + resolution: {integrity: sha512-HVDOm/mxK6+TbARwdW17WrgDYEGzmoYayrCgmLEw7FxTPLcp/glBisuyWkFz/jb7ZfiAXAXUACfyItn+nTgsdQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-musl@4.1.17': + resolution: {integrity: sha512-HvZLfGr42i5anKtIeQzxdkw/wPqIbpeZqe7vd3V9vI3RQxe3xU1fLjss0TjyhxWcBaipk7NYwSrwTwK1hJARMg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-gnu@4.1.17': + resolution: {integrity: sha512-M3XZuORCGB7VPOEDH+nzpJ21XPvK5PyjlkSFkFziNHGLc5d6g3di2McAAblmaSUNl8IOmzYwLx9NsE7bplNkwQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-musl@4.1.17': + resolution: {integrity: sha512-k7f+pf9eXLEey4pBlw+8dgfJHY4PZ5qOUFDyNf7SI6lHjQ9Zt7+NcscjpwdCEbYi6FI5c2KDTDWyf2iHcCSyyQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-wasm32-wasi@4.1.17': + resolution: {integrity: sha512-cEytGqSSoy7zK4JRWiTCx43FsKP/zGr0CsuMawhH67ONlH+T79VteQeJQRO/X7L0juEUA8ZyuYikcRBf0vsxhg==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + bundledDependencies: + - '@napi-rs/wasm-runtime' + - '@emnapi/core' + - '@emnapi/runtime' + - '@tybys/wasm-util' + - '@emnapi/wasi-threads' + - tslib + + '@tailwindcss/oxide-win32-arm64-msvc@4.1.17': + resolution: {integrity: sha512-JU5AHr7gKbZlOGvMdb4722/0aYbU+tN6lv1kONx0JK2cGsh7g148zVWLM0IKR3NeKLv+L90chBVYcJ8uJWbC9A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@tailwindcss/oxide-win32-x64-msvc@4.1.17': + resolution: {integrity: sha512-SKWM4waLuqx0IH+FMDUw6R66Hu4OuTALFgnleKbqhgGU30DY20NORZMZUKgLRjQXNN2TLzKvh48QXTig4h4bGw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@tailwindcss/oxide@4.1.17': + resolution: {integrity: sha512-F0F7d01fmkQhsTjXezGBLdrl1KresJTcI3DB8EkScCldyKp3Msz4hub4uyYaVnk88BAS1g5DQjjF6F5qczheLA==} + engines: {node: '>= 10'} + + '@tailwindcss/postcss@4.1.17': + resolution: {integrity: sha512-+nKl9N9mN5uJ+M7dBOOCzINw94MPstNR/GtIhz1fpZysxL/4a+No64jCBD6CPN+bIHWFx3KWuu8XJRrj/572Dw==} + + '@tailwindcss/typography@0.5.19': + resolution: {integrity: sha512-w31dd8HOx3k9vPtcQh5QHP9GwKcgbMp87j58qi6xgiBnFFtKEAgCWnDw4qUT8aHwkCp8bKvb/KGKWWHedP0AAg==} + peerDependencies: + tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1' + + '@tiptap/core@3.11.0': + resolution: {integrity: sha512-kmS7ZVpHm1EMnW1Wmft9H5ZLM7E0G0NGBx+aGEHGDcNxZBXD2ZUa76CuWjIhOGpwsPbELp684ZdpF2JWoNi4Dg==} + peerDependencies: + '@tiptap/pm': ^3.11.0 + + '@tiptap/extension-blockquote@3.11.0': + resolution: {integrity: sha512-0H8WVW6Vn4GJ7sQ6wfyDgUU+DqM8fp62g8N0fFPiEhoYtpIYUmCqGhpKnqYR0tet6ofFa648XmA6n2VX7sugzw==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-bold@3.11.0': + resolution: {integrity: sha512-V/c3XYO09Le9GlBGq1MK4c97Fffi0GADQTbZ+LFoi65nUrAwutn5wYnXBcEyWQI6RmFWVDJTieamqtc4j9teyw==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-bubble-menu@3.11.0': + resolution: {integrity: sha512-P3j9lQ+EZ5Zg/isJzLpCPX7bp7WUBmz8GPs/HPlyMyN2su8LqXntITBZr8IP1JNBlB/wR83k/W0XqdC57mG7cA==} + peerDependencies: + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + + '@tiptap/extension-bullet-list@3.11.0': + resolution: {integrity: sha512-IKdb1C3bHA1sGPiUcntkL+wHebRg71K5+tgaaRnMw0qmtcpcOQb5zhQOSm5bXUsgCk/WgT04dkZPnpn6Gg1PvQ==} + peerDependencies: + '@tiptap/extension-list': ^3.11.0 + + '@tiptap/extension-code-block@3.11.0': + resolution: {integrity: sha512-y01RJVbygDJWYXxZ0SiCYwvUF2X91RANCLSdb8X0qiwVPgNOzsDrrzS/iqoXkiYmM93pJw+ZWelEZxRvxEwsrg==} + peerDependencies: + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + + '@tiptap/extension-code@3.11.0': + resolution: {integrity: sha512-5OpR5O4bveHe1KG9CJsto86NgkuerYq3OLY78vzh9uFCLdv7xgXA2aZYJfRMhbZ7hKsR7hHg1etBJUCk+TKsMg==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-document@3.11.0': + resolution: {integrity: sha512-N2G3cwL2Dtur/CgD/byJmFx9T5no6fTO/U462VP3rthQYrRA1AB3TCYqtlwJkmyoxRTNd4qIg4imaPl8ej6Heg==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-dropcursor@3.11.0': + resolution: {integrity: sha512-gW/QMGAyiXGSpO+X/lTeiBQn1Or8T8UVB3y9Cv2Lh6zx0SWU+FA28EH+y6s3fm872reN4dH/9rEvMuJjhU/BEw==} + peerDependencies: + '@tiptap/extensions': ^3.11.0 + + '@tiptap/extension-floating-menu@3.11.0': + resolution: {integrity: sha512-nEHdWZHEJYX1II1oJQ4aeZ8O/Kss4BRbYFXQFGIvPelCfCYEATpUJh3aq3767ARSq40bOWyu+Dcd4SCW0We6Sw==} + peerDependencies: + '@floating-ui/dom': ^1.0.0 + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + + '@tiptap/extension-gapcursor@3.11.0': + resolution: {integrity: sha512-lXGEZiYX7k/pEFr8BgDE91vqjLTwuf+qhHLTgIpfhbt562nShLPIDj9Vzu3xrR4fwUAMiUNiLyaeInb8j3I4kg==} + peerDependencies: + '@tiptap/extensions': ^3.11.0 + + '@tiptap/extension-hard-break@3.11.0': + resolution: {integrity: sha512-NJEHTj++kFOayQXKSQSi9j9eAG33eSiJqai2pf4U+snW94fmb8cYLUurDmfYRe20O6EzBSX0X3GjVlkOz+5b7A==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-heading@3.11.0': + resolution: {integrity: sha512-4Eo67Yo7vsYLkizcMoGdZAR9aHbC7FFTrqfNEd4Em3ajRi0iNqyWMaI90UCYlitDdRdqFlq/njWrMqBOLUgaWQ==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-horizontal-rule@3.11.0': + resolution: {integrity: sha512-FugFHZG+oiMBV6k42hn9NOA4wRNc2b9UeEIMR+XwEMpWJInV4VwSwDvu8JClgkDo8z7FEnker9e51DZ00CLWqg==} + peerDependencies: + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + + '@tiptap/extension-image@3.11.0': + resolution: {integrity: sha512-AFH1kn5Cpe5D89fP4MKN98N8pwmB3s4Rn8jq6rk3QVaAwdrxwxbAqUI1sX7UPFzaq9eNcHgmGLaDL+UTspSW8g==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-italic@3.11.0': + resolution: {integrity: sha512-WP6wL2b//8bLVdeUCWOpYA7nUStvrAMMD0nRn0F9CEW+l7vH6El2PZFhHmJ9uqXo5MnyugBpARiwgxfoAlef5w==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-link@3.11.0': + resolution: {integrity: sha512-RoUkGqowVMKLE76KktNOGhzNMyKtwrSDRqeYCe1ODPuOMZvDGexOE8cIuA4A1ODkgN6ji9qE/9Sf8uhpZdH39Q==} + peerDependencies: + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + + '@tiptap/extension-list-item@3.11.0': + resolution: {integrity: sha512-KXTTSBH/T/WW8O1YhK/lVmwlSGh2w2VVucUkMLhgk1VPchahAkn2LfgbgKrCRG/F8M8Jlfvz67iJDo6+bbNqew==} + peerDependencies: + '@tiptap/extension-list': ^3.11.0 + + '@tiptap/extension-list-keymap@3.11.0': + resolution: {integrity: sha512-vm1zGdEqcbQnrGlVXchk1ibmTsyxyfGcGPVWsc4MG+UAFcNfcpAnvCar71BF4RGGPtpzOWdqGkvJENyh0L5/Hw==} + peerDependencies: + '@tiptap/extension-list': ^3.11.0 + + '@tiptap/extension-list@3.11.0': + resolution: {integrity: sha512-4Ane7VCVZ+GFOQNuy2nMP+SoWH7EemC3geTTqvgHm1H0tbSosxLJAVaZ9dF06F35RJmYCm+jLJUhRVd156eCRQ==} + peerDependencies: + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + + '@tiptap/extension-ordered-list@3.11.0': + resolution: {integrity: sha512-kO8GH4w4Xil+qPiHJLAyILdGHF9hCjkhoVtPD8YEfqK6Qx3bZql5FPySCQNs+MU6rLSCCdam8SUPGY/+SCufqA==} + peerDependencies: + '@tiptap/extension-list': ^3.11.0 + + '@tiptap/extension-paragraph@3.11.0': + resolution: {integrity: sha512-hxgjZOXOqstRTWv+QjWJjK23rD5qzIV9ePlhX3imLeq/MgX0aU9VBDaG5SGKbSjaBNQnpLw6+sABJi3CDP6Z5A==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-placeholder@3.11.0': + resolution: {integrity: sha512-wK67ZFBJ2CTV++MupftT3eKBy+CRuY7Z2AiO8uK4dyVt3ry5v/1G3QqARJrOsEKomdpONkd2cXaJGdEWZvh8EA==} + peerDependencies: + '@tiptap/extensions': ^3.11.0 + + '@tiptap/extension-strike@3.11.0': + resolution: {integrity: sha512-XVP/WMYLrqLBfUsGPu2H9MrOUZLhGUaxtZ3hSRffDi/lsw53x/coZ9eO0FxOB9R7z2ksHWmticIs+0YnKt9LNQ==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-text@3.11.0': + resolution: {integrity: sha512-ELAYm2BuChzZOqDG9B0k3W6zqM4pwNvXkam28KgHGiT2y7Ni68Rb+NXp16uVR+5zR6hkqnQ/BmJSKzAW59MXpA==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extension-underline@3.11.0': + resolution: {integrity: sha512-D3PsS/84RlQKFjd5eerMIUioC0mNh4yy1RRV/WbXx6ugu+6T+0hT42gNk9Ap8pDsVQZCk0SHfDyBEUFC2KOwKw==} + peerDependencies: + '@tiptap/core': ^3.11.0 + + '@tiptap/extensions@3.11.0': + resolution: {integrity: sha512-g43beA73ZMLezez1st9LEwYrRHZ0FLzlsSlOZKk7sdmtHLmuqWHf4oyb0XAHol1HZIdGv104rYaGNgmQXr1ecQ==} + peerDependencies: + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + + '@tiptap/pm@3.11.0': + resolution: {integrity: sha512-plCQDLCZIOc92cizB8NNhBRN0szvYR3cx9i5IXo6v9Xsgcun8KHNcJkesc2AyeqdIs0BtOJZaqQ9adHThz8UDw==} + + '@tiptap/react@3.11.0': + resolution: {integrity: sha512-SDGei/2DjwmhzsxIQNr6dkB6NxLgXZjQ6hF36NfDm4937r5NLrWrNk5tCsoDQiKZ0DHEzuJ6yZM5C7I7LZLB6w==} + peerDependencies: + '@tiptap/core': ^3.11.0 + '@tiptap/pm': ^3.11.0 + '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 + '@types/react-dom': ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 + + '@tiptap/starter-kit@3.11.0': + resolution: {integrity: sha512-8kMMYqVSZ2Oqji+mY1o9meTjCRWp4DplFegu7APqDEQRhlb6mBI0wNuazYb7FKJIHJTtf0F6cYglJrxpu9c/fA==} + + '@tybys/wasm-util@0.10.1': + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + + '@types/estree-jsx@1.0.5': + resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} + + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + + '@types/hast@2.3.10': + resolution: {integrity: sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==} + + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/json5@0.0.29': + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + + '@types/jsonwebtoken@9.0.10': + resolution: {integrity: sha512-asx5hIG9Qmf/1oStypjanR7iKTv0gXQ1Ov/jfrX6kS/EO0OFni8orbmGCn0672NHR3kXHwpAwR+B368ZGN/2rA==} + + '@types/linkify-it@3.0.5': + resolution: {integrity: sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw==} + + '@types/linkify-it@5.0.0': + resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} + + '@types/markdown-it@13.0.9': + resolution: {integrity: sha512-1XPwR0+MgXLWfTn9gCsZ55AHOKW1WN+P9vr0PaQh5aerR9LLQXUbjfEAFhjmEmyoYFWAyuN2Mqkn40MZ4ukjBw==} + + '@types/markdown-it@14.1.2': + resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} + + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/mdurl@1.0.5': + resolution: {integrity: sha512-6L6VymKTzYSrEf4Nev4Xa1LCHKrlTlYCBMTlQKFuddo1CvQcE52I0mwfOJayueUC7MJuXOeHTcIU683lzd0cUA==} + + '@types/mdurl@2.0.0': + resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} + + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} + + '@types/node@20.19.25': + resolution: {integrity: sha512-ZsJzA5thDQMSQO788d7IocwwQbI8B5OPzmqNvpf3NY/+MHDAS759Wo0gd2WQeXYt5AAAQjzcrTVC6SKCuYgoCQ==} + + '@types/prismjs@1.26.5': + resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==} + + '@types/react-dom@19.2.3': + resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==} + peerDependencies: + '@types/react': ^19.2.0 + + '@types/react@19.2.7': + resolution: {integrity: sha512-MWtvHrGZLFttgeEj28VXHxpmwYbor/ATPYbBfSFZEIRK0ecCFLl2Qo55z52Hss+UV9CRN7trSeq1zbgx7YDWWg==} + + '@types/unist@2.0.11': + resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@types/use-sync-external-store@0.0.6': + resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==} + + '@types/webidl-conversions@7.0.3': + resolution: {integrity: sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==} + + '@types/whatwg-url@13.0.0': + resolution: {integrity: sha512-N8WXpbE6Wgri7KUSvrmQcqrMllKZ9uxkYWMt+mCSGwNc0Hsw9VQTW7ApqI4XNrx6/SaM2QQJCzMPDEXE058s+Q==} + + '@typescript-eslint/eslint-plugin@8.48.0': + resolution: {integrity: sha512-XxXP5tL1txl13YFtrECECQYeZjBZad4fyd3cFV4a19LkAY/bIp9fev3US4S5fDVV2JaYFiKAZ/GRTOLer+mbyQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.48.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/parser@8.48.0': + resolution: {integrity: sha512-jCzKdm/QK0Kg4V4IK/oMlRZlY+QOcdjv89U2NgKHZk1CYTj82/RVSx1mV/0gqCVMJ/DA+Zf/S4NBWNF8GQ+eqQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/project-service@8.48.0': + resolution: {integrity: sha512-Ne4CTZyRh1BecBf84siv42wv5vQvVmgtk8AuiEffKTUo3DrBaGYZueJSxxBZ8fjk/N3DrgChH4TOdIOwOwiqqw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/scope-manager@8.48.0': + resolution: {integrity: sha512-uGSSsbrtJrLduti0Q1Q9+BF1/iFKaxGoQwjWOIVNJv0o6omrdyR8ct37m4xIl5Zzpkp69Kkmvom7QFTtue89YQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/tsconfig-utils@8.48.0': + resolution: {integrity: sha512-WNebjBdFdyu10sR1M4OXTt2OkMd5KWIL+LLfeH9KhgP+jzfDV/LI3eXzwJ1s9+Yc0Kzo2fQCdY/OpdusCMmh6w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/type-utils@8.48.0': + resolution: {integrity: sha512-zbeVaVqeXhhab6QNEKfK96Xyc7UQuoFWERhEnj3mLVnUWrQnv15cJNseUni7f3g557gm0e46LZ6IJ4NJVOgOpw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/types@8.48.0': + resolution: {integrity: sha512-cQMcGQQH7kwKoVswD1xdOytxQR60MWKM1di26xSUtxehaDs/32Zpqsu5WJlXTtTTqyAVK8R7hvsUnIXRS+bjvA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.48.0': + resolution: {integrity: sha512-ljHab1CSO4rGrQIAyizUS6UGHHCiAYhbfcIZ1zVJr5nMryxlXMVWS3duFPSKvSUbFPwkXMFk1k0EMIjub4sRRQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/utils@8.48.0': + resolution: {integrity: sha512-yTJO1XuGxCsSfIVt1+1UrLHtue8xz16V8apzPYI06W0HbEbEWHxHXgZaAgavIkoh+GeV6hKKd5jm0sS6OYxWXQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/visitor-keys@8.48.0': + resolution: {integrity: sha512-T0XJMaRPOH3+LBbAfzR2jalckP1MSG/L9eUtY0DEzUyVaXJ/t6zN0nR7co5kz0Jko/nkSYCBRkz1djvjajVTTg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@uiw/copy-to-clipboard@1.0.17': + resolution: {integrity: sha512-O2GUHV90Iw2VrSLVLK0OmNIMdZ5fgEg4NhvtwINsX+eZ/Wf6DWD0TdsK9xwV7dNRnK/UI2mQtl0a2/kRgm1m1A==} + + '@uiw/react-markdown-preview@5.1.5': + resolution: {integrity: sha512-DNOqx1a6gJR7Btt57zpGEKTfHRlb7rWbtctMRO2f82wWcuoJsxPBrM+JWebDdOD0LfD8oe2CQvW2ICQJKHQhZg==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@uiw/react-md-editor@4.0.8': + resolution: {integrity: sha512-S3mOzZeGmJNhzdXJxRTCwsFMDp8nBWeQUf59cK3L6QHzDUHnRoHpcmWpfVRyKGKSg8zaI2+meU5cYWf8kYn3mQ==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + + '@unrs/resolver-binding-android-arm-eabi@1.11.1': + resolution: {integrity: sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==} + cpu: [arm] + os: [android] + + '@unrs/resolver-binding-android-arm64@1.11.1': + resolution: {integrity: sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==} + cpu: [arm64] + os: [android] + + '@unrs/resolver-binding-darwin-arm64@1.11.1': + resolution: {integrity: sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==} + cpu: [arm64] + os: [darwin] + + '@unrs/resolver-binding-darwin-x64@1.11.1': + resolution: {integrity: sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==} + cpu: [x64] + os: [darwin] + + '@unrs/resolver-binding-freebsd-x64@1.11.1': + resolution: {integrity: sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==} + cpu: [x64] + os: [freebsd] + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1': + resolution: {integrity: sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1': + resolution: {integrity: sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-gnu@1.11.1': + resolution: {integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-musl@1.11.1': + resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': + resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==} + cpu: [ppc64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': + resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': + resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': + resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==} + cpu: [s390x] + os: [linux] + + '@unrs/resolver-binding-linux-x64-gnu@1.11.1': + resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-linux-x64-musl@1.11.1': + resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-wasm32-wasi@1.11.1': + resolution: {integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@unrs/resolver-binding-win32-arm64-msvc@1.11.1': + resolution: {integrity: sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==} + cpu: [arm64] + os: [win32] + + '@unrs/resolver-binding-win32-ia32-msvc@1.11.1': + resolution: {integrity: sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==} + cpu: [ia32] + os: [win32] + + '@unrs/resolver-binding-win32-x64-msvc@1.11.1': + resolution: {integrity: sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==} + cpu: [x64] + os: [win32] + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + aria-hidden@1.2.6: + resolution: {integrity: sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==} + engines: {node: '>=10'} + + aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} + engines: {node: '>= 0.4'} + + array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + + array.prototype.findlastindex@1.2.6: + resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==} + engines: {node: '>= 0.4'} + + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} + + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} + + array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + + ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + axe-core@4.11.0: + resolution: {integrity: sha512-ilYanEU8vxxBexpJd8cWM4ElSQq4QctCLKih0TSfjIfCQTeyH/6zVrmIJfLPrKTKJRbiG+cfnZbQIjAlJmF1jQ==} + engines: {node: '>=4'} + + axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + baseline-browser-mapping@2.8.31: + resolution: {integrity: sha512-a28v2eWrrRWPpJSzxc+mKwm0ZtVx/G8SepdQZDArnXYU/XS+IF6mp8aB/4E+hH1tyGCoDo3KlUCdlSxGDsRkAw==} + hasBin: true + + bcp-47-match@2.0.3: + resolution: {integrity: sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==} + + bcryptjs@3.0.3: + resolution: {integrity: sha512-GlF5wPWnSa/X5LKM1o0wz0suXIINz1iHRLvTS+sLyi7XPbe5ycmYI3DlZqVGZZtDgl4DmasFg7gOB3JYbphV5g==} + hasBin: true + + boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.28.0: + resolution: {integrity: sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + bson@7.0.0: + resolution: {integrity: sha512-Kwc6Wh4lQ5OmkqqKhYGKIuELXl+EPYSCObVE6bWsp1T/cGkOCBN0I8wF/T44BiuhHyNi1mmKVPXk60d41xZ7kw==} + engines: {node: '>=20.19.0'} + + buffer-equal-constant-time@1.0.1: + resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + caniuse-lite@1.0.30001757: + resolution: {integrity: sha512-r0nnL/I28Zi/yjk1el6ilj27tKcdjLsNqAOZr0yVjWPrSQyHgKI2INaEWw21bAQSv2LXRt1XuCS/GomNpWOxsQ==} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} + + character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + + character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + + class-variance-authority@0.7.1: + resolution: {integrity: sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==} + + client-only@0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + crelt@1.0.6: + resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + css-selector-parser@3.2.0: + resolution: {integrity: sha512-L1bdkNKUP5WYxiW5dW6vA2hd3sL8BdRNLy2FCX0rLVise4eNw9nBdeBuJHxlELieSE2H1f6bYQFfwVUwWCV9rQ==} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + csstype@3.2.3: + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} + + damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + + date-fns@4.1.0: + resolution: {integrity: sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==} + + debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decode-named-character-reference@1.2.0: + resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + + detect-node-es@1.1.0: + resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} + + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + + direction@2.0.1: + resolution: {integrity: sha512-9S6m9Sukh1cZNknO1CWAr2QAWsbKLafQiyM5gZ7VgXHeuaoUwffKN4q6NC4A/Mf9iiPlOXQEKW/Mv/mh9/3YFA==} + hasBin: true + + doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + ecdsa-sig-formatter@1.0.11: + resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} + + electron-to-chromium@1.5.260: + resolution: {integrity: sha512-ov8rBoOBhVawpzdre+Cmz4FB+y66Eqrk6Gwqd8NGxuhv99GQ8XqMAr351KEkOt7gukXWDg6gJWEMKgL2RLMPtA==} + + embla-carousel-react@8.6.0: + resolution: {integrity: sha512-0/PjqU7geVmo6F734pmPqpyHqiM99olvyecY7zdweCw+6tKEXnrE90pBiBbMMU8s5tICemzpQ3hi5EpxzGW+JA==} + peerDependencies: + react: ^16.8.0 || ^17.0.1 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + + embla-carousel-reactive-utils@8.6.0: + resolution: {integrity: sha512-fMVUDUEx0/uIEDM0Mz3dHznDhfX+znCCDCeIophYb1QGVM7YThSWX+wz11zlYwWFOr74b4QLGg0hrGPJeG2s4A==} + peerDependencies: + embla-carousel: 8.6.0 + + embla-carousel@8.6.0: + resolution: {integrity: sha512-SjWyZBHJPbqxHOzckOfo8lHisEaJWmwd23XppYFYVh10bU66/Pn5tkVkbkCMZVdbUE5eTCI2nD8OyIP4Z+uwkA==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + enhanced-resolve@5.18.3: + resolution: {integrity: sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==} + engines: {node: '>=10.13.0'} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + entities@6.0.1: + resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} + engines: {node: '>=0.12'} + + es-abstract@1.24.0: + resolution: {integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==} + engines: {node: '>= 0.4'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-iterator-helpers@1.2.1: + resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} + + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + eslint-config-next@16.0.3: + resolution: {integrity: sha512-5F6qDjcZldf0Y0ZbqvWvap9xzYUxyDf7/of37aeyhvkrQokj/4bT1JYWZdlWUr283aeVa+s52mPq9ogmGg+5dw==} + peerDependencies: + eslint: '>=9.0.0' + typescript: '>=3.3.1' + peerDependenciesMeta: + typescript: + optional: true + + eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + + eslint-import-resolver-typescript@3.10.1: + resolution: {integrity: sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + eslint-plugin-import-x: '*' + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + + eslint-module-utils@2.12.1: + resolution: {integrity: sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + + eslint-plugin-import@2.32.0: + resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + + eslint-plugin-jsx-a11y@6.10.2: + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 + + eslint-plugin-react-hooks@7.0.1: + resolution: {integrity: sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==} + engines: {node: '>=18'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 + + eslint-plugin-react@7.37.5: + resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + + eslint-scope@8.4.0: + resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.2.1: + resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.39.1: + resolution: {integrity: sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + + espree@10.4.0: + resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + estree-util-is-identifier-name@3.0.0: + resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + eventsource-parser@3.0.6: + resolution: {integrity: sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==} + engines: {node: '>=18.0.0'} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fastq@1.19.1: + resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-nonce@1.0.1: + resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} + engines: {node: '>=6'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + + get-tsconfig@4.13.0: + resolution: {integrity: sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==} + + github-slugger@2.0.0: + resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@16.4.0: + resolution: {integrity: sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==} + engines: {node: '>=18'} + + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hast-util-from-html@2.0.3: + resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} + + hast-util-from-parse5@8.0.3: + resolution: {integrity: sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==} + + hast-util-has-property@3.0.0: + resolution: {integrity: sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==} + + hast-util-heading-rank@3.0.0: + resolution: {integrity: sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==} + + hast-util-is-element@3.0.0: + resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} + + hast-util-parse-selector@3.1.1: + resolution: {integrity: sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==} + + hast-util-parse-selector@4.0.0: + resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} + + hast-util-raw@9.1.0: + resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==} + + hast-util-sanitize@5.0.2: + resolution: {integrity: sha512-3yTWghByc50aGS7JlGhk61SPenfE/p1oaFeNwkOOyrscaOkMGrcW9+Cy/QAIOBpZxP1yqDIzFMR0+Np0i0+usg==} + + hast-util-select@6.0.4: + resolution: {integrity: sha512-RqGS1ZgI0MwxLaKLDxjprynNzINEkRHY2i8ln4DDjgv9ZhcYVIHN9rlpiYsqtFwrgpYU361SyWDQcGNIBVu3lw==} + + hast-util-to-html@9.0.5: + resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==} + + hast-util-to-jsx-runtime@2.3.6: + resolution: {integrity: sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==} + + hast-util-to-parse5@8.0.0: + resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} + + hast-util-to-string@3.0.1: + resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} + + hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + + hastscript@7.2.0: + resolution: {integrity: sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==} + + hastscript@9.0.1: + resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==} + + hermes-estree@0.25.1: + resolution: {integrity: sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==} + + hermes-parser@0.25.1: + resolution: {integrity: sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==} + + html-url-attributes@3.0.1: + resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} + + html-void-elements@3.0.0: + resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + ignore@7.0.5: + resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} + engines: {node: '>= 4'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + inline-style-parser@0.2.7: + resolution: {integrity: sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==} + + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + + is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} + + is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-bun-module@2.0.0: + resolution: {integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} + engines: {node: '>= 0.4'} + + jiti@2.6.1: + resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + json5@1.0.2: + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsonwebtoken@9.0.2: + resolution: {integrity: sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==} + engines: {node: '>=12', npm: '>=6'} + + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + + jwa@1.4.2: + resolution: {integrity: sha512-eeH5JO+21J78qMvTIDdBXidBd6nG2kZjg5Ohz/1fpa28Z4CcsWUzJ1ZZyFq/3z3N17aZy+ZuBoHljASbL1WfOw==} + + jws@3.2.2: + resolution: {integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==} + + kareem@3.0.0: + resolution: {integrity: sha512-RKhaOBSPN8L7y4yAgNhDT2602G5FD6QbOIISbjN9D6mjHPeqeg7K+EB5IGSU5o81/X2Gzm3ICnAvQW3x3OP8HA==} + engines: {node: '>=18.0.0'} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + + language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lightningcss-android-arm64@1.30.2: + resolution: {integrity: sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + + lightningcss-darwin-arm64@1.30.2: + resolution: {integrity: sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.30.2: + resolution: {integrity: sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.30.2: + resolution: {integrity: sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.30.2: + resolution: {integrity: sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.30.2: + resolution: {integrity: sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-arm64-musl@1.30.2: + resolution: {integrity: sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-x64-gnu@1.30.2: + resolution: {integrity: sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-linux-x64-musl@1.30.2: + resolution: {integrity: sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-win32-arm64-msvc@1.30.2: + resolution: {integrity: sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + + lightningcss-win32-x64-msvc@1.30.2: + resolution: {integrity: sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.30.2: + resolution: {integrity: sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==} + engines: {node: '>= 12.0.0'} + + linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + + linkifyjs@4.3.2: + resolution: {integrity: sha512-NT1CJtq3hHIreOianA8aSXn6Cw0JzYOuDQbOrSPe7gqFnCpKP++MQe3ODgO3oh2GJFORkAAdqredOa60z63GbA==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.includes@4.3.0: + resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==} + + lodash.isboolean@3.0.3: + resolution: {integrity: sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==} + + lodash.isinteger@4.0.4: + resolution: {integrity: sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==} + + lodash.isnumber@3.0.3: + resolution: {integrity: sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==} + + lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + + lodash.isstring@4.0.1: + resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash.once@4.1.1: + resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} + + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + lucide-react@0.554.0: + resolution: {integrity: sha512-St+z29uthEJVx0Is7ellNkgTEhaeSoA42I7JjOCBCrc5X6LYMGSv0P/2uS5HDLTExP5tpiqRD2PyUEOS6s9UXA==} + peerDependencies: + react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + + markdown-it-task-lists@2.1.1: + resolution: {integrity: sha512-TxFAc76Jnhb2OUu+n3yz9RMu4CwGfaT788br6HhEDlvWfdeJcLUsxk1Hgw2yJio0OXsxv7pyIPmvECY7bMbluA==} + + markdown-it@14.1.0: + resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} + hasBin: true + + markdown-table@3.0.4: + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + mdast-util-find-and-replace@3.0.2: + resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} + + mdast-util-from-markdown@2.0.2: + resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} + + mdast-util-gfm-autolink-literal@2.0.1: + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} + + mdast-util-gfm-footnote@2.1.0: + resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==} + + mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + + mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + + mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + + mdast-util-gfm@3.1.0: + resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} + + mdast-util-mdx-expression@2.0.1: + resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==} + + mdast-util-mdx-jsx@3.2.0: + resolution: {integrity: sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==} + + mdast-util-mdxjs-esm@2.0.1: + resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-hast@13.2.1: + resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==} + + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + + memory-pager@1.5.0: + resolution: {integrity: sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromark-core-commonmark@2.0.3: + resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} + + micromark-extension-gfm-footnote@2.1.0: + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} + + micromark-extension-gfm-table@2.1.1: + resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==} + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} + + micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} + + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} + + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + + micromark-util-subtokenize@2.1.0: + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} + + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + + micromark-util-types@2.0.2: + resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} + + micromark@4.0.2: + resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + mongodb-connection-string-url@7.0.0: + resolution: {integrity: sha512-irhhjRVLE20hbkRl4zpAYLnDMM+zIZnp0IDB9akAFFUZp/3XdOfwwddc7y6cNvF2WCEtfTYRwYbIfYa2kVY0og==} + engines: {node: '>=20.19.0'} + + mongodb@7.0.0: + resolution: {integrity: sha512-vG/A5cQrvGGvZm2mTnCSz1LUcbOPl83hfB6bxULKQ8oFZauyox/2xbZOoGNl+64m8VBrETkdGCDBdOsCr3F3jg==} + engines: {node: '>=20.19.0'} + peerDependencies: + '@aws-sdk/credential-providers': ^3.806.0 + '@mongodb-js/zstd': ^7.0.0 + gcp-metadata: ^7.0.1 + kerberos: ^7.0.0 + mongodb-client-encryption: '>=7.0.0 <7.1.0' + snappy: ^7.3.2 + socks: ^2.8.6 + peerDependenciesMeta: + '@aws-sdk/credential-providers': + optional: true + '@mongodb-js/zstd': + optional: true + gcp-metadata: + optional: true + kerberos: + optional: true + mongodb-client-encryption: + optional: true + snappy: + optional: true + socks: + optional: true + + mongoose@9.0.0: + resolution: {integrity: sha512-J6wTGC8/hSFpy9K6kPbKDnBNoUcX4iOGCasUrRzlSKdwdVNxdscLA4oHKOQwJlHqh/TxDNg+Uzg6koCyCKP0wA==} + engines: {node: '>=20.19.0'} + + mpath@0.9.0: + resolution: {integrity: sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==} + engines: {node: '>=4.0.0'} + + mquery@6.0.0: + resolution: {integrity: sha512-b2KQNsmgtkscfeDgkYMcWGn9vZI9YoXh802VDEwE6qc50zxBFQ0Oo8ROkawbPAsXCY1/Z1yp0MagqsZStPWJjw==} + engines: {node: '>=20.19.0'} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + napi-postinstall@0.3.4: + resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + next-themes@0.4.6: + resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} + peerDependencies: + react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc + + next@16.0.3: + resolution: {integrity: sha512-Ka0/iNBblPFcIubTA1Jjh6gvwqfjrGq1Y2MTI5lbjeLIAfmC+p5bQmojpRZqgHHVu5cG4+qdIiwXiBSm/8lZ3w==} + engines: {node: '>=20.9.0'} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.51.1 + babel-plugin-react-compiler: '*' + react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + + node-releases@2.0.27: + resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} + + nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + + object.entries@1.1.9: + resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==} + engines: {node: '>= 0.4'} + + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.groupby@1.0.3: + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} + + oniguruma-parser@0.12.1: + resolution: {integrity: sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==} + + oniguruma-to-es@4.3.4: + resolution: {integrity: sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + orderedmap@2.1.1: + resolution: {integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==} + + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-entities@4.0.2: + resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} + + parse-numeric-range@1.3.0: + resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==} + + parse5@7.3.0: + resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + postcss-selector-parser@6.0.10: + resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} + engines: {node: '>=4'} + + postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + engines: {node: ^10 || ^12 || >=14} + + postcss@8.5.6: + resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + + property-information@6.5.0: + resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + + property-information@7.1.0: + resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==} + + prosemirror-changeset@2.3.1: + resolution: {integrity: sha512-j0kORIBm8ayJNl3zQvD1TTPHJX3g042et6y/KQhZhnPrruO8exkTgG8X+NRpj7kIyMMEx74Xb3DyMIBtO0IKkQ==} + + prosemirror-collab@1.3.1: + resolution: {integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==} + + prosemirror-commands@1.7.1: + resolution: {integrity: sha512-rT7qZnQtx5c0/y/KlYaGvtG411S97UaL6gdp6RIZ23DLHanMYLyfGBV5DtSnZdthQql7W+lEVbpSfwtO8T+L2w==} + + prosemirror-dropcursor@1.8.2: + resolution: {integrity: sha512-CCk6Gyx9+Tt2sbYk5NK0nB1ukHi2ryaRgadV/LvyNuO3ena1payM2z6Cg0vO1ebK8cxbzo41ku2DE5Axj1Zuiw==} + + prosemirror-gapcursor@1.4.0: + resolution: {integrity: sha512-z00qvurSdCEWUIulij/isHaqu4uLS8r/Fi61IbjdIPJEonQgggbJsLnstW7Lgdk4zQ68/yr6B6bf7sJXowIgdQ==} + + prosemirror-history@1.5.0: + resolution: {integrity: sha512-zlzTiH01eKA55UAf1MEjtssJeHnGxO0j4K4Dpx+gnmX9n+SHNlDqI2oO1Kv1iPN5B1dm5fsljCfqKF9nFL6HRg==} + + prosemirror-inputrules@1.5.1: + resolution: {integrity: sha512-7wj4uMjKaXWAQ1CDgxNzNtR9AlsuwzHfdFH1ygEHA2KHF2DOEaXl1CJfNPAKCg9qNEh4rum975QLaCiQPyY6Fw==} + + prosemirror-keymap@1.2.3: + resolution: {integrity: sha512-4HucRlpiLd1IPQQXNqeo81BGtkY8Ai5smHhKW9jjPKRc2wQIxksg7Hl1tTI2IfT2B/LgX6bfYvXxEpJl7aKYKw==} + + prosemirror-markdown@1.13.2: + resolution: {integrity: sha512-FPD9rHPdA9fqzNmIIDhhnYQ6WgNoSWX9StUZ8LEKapaXU9i6XgykaHKhp6XMyXlOWetmaFgGDS/nu/w9/vUc5g==} + + prosemirror-menu@1.2.5: + resolution: {integrity: sha512-qwXzynnpBIeg1D7BAtjOusR+81xCp53j7iWu/IargiRZqRjGIlQuu1f3jFi+ehrHhWMLoyOQTSRx/IWZJqOYtQ==} + + prosemirror-model@1.25.4: + resolution: {integrity: sha512-PIM7E43PBxKce8OQeezAs9j4TP+5yDpZVbuurd1h5phUxEKIu+G2a+EUZzIC5nS1mJktDJWzbqS23n1tsAf5QA==} + + prosemirror-schema-basic@1.2.4: + resolution: {integrity: sha512-ELxP4TlX3yr2v5rM7Sb70SqStq5NvI15c0j9j/gjsrO5vaw+fnnpovCLEGIcpeGfifkuqJwl4fon6b+KdrODYQ==} + + prosemirror-schema-list@1.5.1: + resolution: {integrity: sha512-927lFx/uwyQaGwJxLWCZRkjXG0p48KpMj6ueoYiu4JX05GGuGcgzAy62dfiV8eFZftgyBUvLx76RsMe20fJl+Q==} + + prosemirror-state@1.4.4: + resolution: {integrity: sha512-6jiYHH2CIGbCfnxdHbXZ12gySFY/fz/ulZE333G6bPqIZ4F+TXo9ifiR86nAHpWnfoNjOb3o5ESi7J8Uz1jXHw==} + + prosemirror-tables@1.8.1: + resolution: {integrity: sha512-DAgDoUYHCcc6tOGpLVPSU1k84kCUWTWnfWX3UDy2Delv4ryH0KqTD6RBI6k4yi9j9I8gl3j8MkPpRD/vWPZbug==} + + prosemirror-trailing-node@3.0.0: + resolution: {integrity: sha512-xiun5/3q0w5eRnGYfNlW1uU9W6x5MoFKWwq/0TIRgt09lv7Hcser2QYV8t4muXbEr+Fwo0geYn79Xs4GKywrRQ==} + peerDependencies: + prosemirror-model: ^1.22.1 + prosemirror-state: ^1.4.2 + prosemirror-view: ^1.33.8 + + prosemirror-transform@1.10.5: + resolution: {integrity: sha512-RPDQCxIDhIBb1o36xxwsaeAvivO8VLJcgBtzmOwQ64bMtsVFh5SSuJ6dWSxO1UsHTiTXPCgQm3PDJt7p6IOLbw==} + + prosemirror-view@1.41.3: + resolution: {integrity: sha512-SqMiYMUQNNBP9kfPhLO8WXEk/fon47vc52FQsUiJzTBuyjKgEcoAwMyF04eQ4WZ2ArMn7+ReypYL60aKngbACQ==} + + punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + react-dom@19.2.0: + resolution: {integrity: sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==} + peerDependencies: + react: ^19.2.0 + + react-hook-form@7.66.1: + resolution: {integrity: sha512-2KnjpgG2Rhbi+CIiIBQQ9Df6sMGH5ExNyFl4Hw9qO7pIqMBR8Bvu9RQyjl3JM4vehzCh9soiNUM/xYMswb2EiA==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^16.8.0 || ^17 || ^18 || ^19 + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + react-markdown@10.1.0: + resolution: {integrity: sha512-qKxVopLT/TyA6BX3Ue5NwabOsAzm0Q7kAPwq6L+wWDwisYs7R8vZ0nRXqq6rkueboxpkjvLGU9fWifiX/ZZFxQ==} + peerDependencies: + '@types/react': '>=18' + react: '>=18' + + react-markdown@9.0.3: + resolution: {integrity: sha512-Yk7Z94dbgYTOrdk41Z74GoKA7rThnsbbqBTRYuxoe08qvfQ9tJVhmAKw6BJS/ZORG7kTy/s1QvYzSuaoBA1qfw==} + peerDependencies: + '@types/react': '>=18' + react: '>=18' + + react-remove-scroll-bar@2.3.8: + resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + + react-remove-scroll@2.7.1: + resolution: {integrity: sha512-HpMh8+oahmIdOuS5aFKKY6Pyog+FNaZV/XyJOq7b4YFwsFHe5yYfdbIalI4k3vU2nSDql7YskmUseHsRrJqIPA==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + react-style-singleton@2.2.3: + resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + react@19.2.0: + resolution: {integrity: sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==} + engines: {node: '>=0.10.0'} + + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + refractor@4.9.0: + resolution: {integrity: sha512-nEG1SPXFoGGx+dcjftjv8cAjEusIh6ED1xhf5DG3C0x/k+rmZ2duKnc3QLpt6qeHv5fPb8uwN3VWN2BT7fr3Og==} + + regex-recursion@6.0.2: + resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==} + + regex-utilities@2.3.0: + resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} + + regex@6.0.1: + resolution: {integrity: sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + rehype-attr@3.0.3: + resolution: {integrity: sha512-Up50Xfra8tyxnkJdCzLBIBtxOcB2M1xdeKe1324U06RAvSjYm7ULSeoM+b/nYPQPVd7jsXJ9+39IG1WAJPXONw==} + engines: {node: '>=16'} + + rehype-autolink-headings@7.1.0: + resolution: {integrity: sha512-rItO/pSdvnvsP4QRB1pmPiNHUskikqtPojZKJPPPAVx9Hj8i8TwMBhofrrAYRhYOOBZH9tgmG5lPqDLuIWPWmw==} + + rehype-ignore@2.0.2: + resolution: {integrity: sha512-BpAT/3lU9DMJ2siYVD/dSR0A/zQgD6Fb+fxkJd4j+wDVy6TYbYpK+FZqu8eM9EuNKGvi4BJR7XTZ/+zF02Dq8w==} + engines: {node: '>=16'} + + rehype-parse@9.0.1: + resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} + + rehype-pretty-code@0.14.1: + resolution: {integrity: sha512-IpG4OL0iYlbx78muVldsK86hdfNoht0z63AP7sekQNW2QOTmjxB7RbTO+rhIYNGRljgHxgVZoPwUl6bIC9SbjA==} + engines: {node: '>=18'} + peerDependencies: + shiki: ^1.0.0 || ^2.0.0 || ^3.0.0 + + rehype-prism-plus@2.0.0: + resolution: {integrity: sha512-FeM/9V2N7EvDZVdR2dqhAzlw5YI49m9Tgn7ZrYJeYHIahM6gcXpH0K1y2gNnKanZCydOMluJvX2cB9z3lhY8XQ==} + + rehype-prism-plus@2.0.1: + resolution: {integrity: sha512-Wglct0OW12tksTUseAPyWPo3srjBOY7xKlql/DPKi7HbsdZTyaLCAoO58QBKSczFQxElTsQlOY3JDOFzB/K++Q==} + + rehype-raw@7.0.0: + resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} + + rehype-rewrite@4.0.3: + resolution: {integrity: sha512-y6zPHL2tBqm1TF+lFV8SKH65+DYqkm1CUXipNebTo4l4R/rL4bOLOS+klp9VlcKhytiyYVZB72AA/1F4+lOk9g==} + engines: {node: '>=16.0.0'} + + rehype-sanitize@6.0.0: + resolution: {integrity: sha512-CsnhKNsyI8Tub6L4sm5ZFsme4puGfc6pYylvXo1AeqaGbjOYyzNv3qZPwvs0oMJ39eryyeOdmxwUIo94IpEhqg==} + + rehype-slug@6.0.0: + resolution: {integrity: sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==} + + rehype-stringify@10.0.1: + resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} + + rehype@13.0.2: + resolution: {integrity: sha512-j31mdaRFrwFRUIlxGeuPXXKWQxet52RBQRvCmzl5eCefn/KGbomK5GMHNMsOJf55fgo3qw5tST5neDuarDYR2A==} + + remark-gfm@4.0.1: + resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} + + remark-github-blockquote-alert@1.3.1: + resolution: {integrity: sha512-OPNnimcKeozWN1w8KVQEuHOxgN3L4rah8geMOLhA5vN9wITqU4FWD+G26tkEsCGHiOVDbISx+Se5rGZ+D1p0Jg==} + engines: {node: '>=16'} + + remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + + remark-rehype@11.1.2: + resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==} + + remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + + resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} + engines: {node: '>= 0.4'} + hasBin: true + + resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rope-sequence@1.3.4: + resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + scheduler@0.27.0: + resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.3: + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} + engines: {node: '>=10'} + hasBin: true + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + + sharp@0.34.5: + resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + shiki@3.15.0: + resolution: {integrity: sha512-kLdkY6iV3dYbtPwS9KXU7mjfmDm25f5m0IPNFnaXO7TBPcvbUOY72PYXSuSqDzwp+vlH/d7MXpHlKO/x+QoLXw==} + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + sift@17.1.3: + resolution: {integrity: sha512-Rtlj66/b0ICeFzYTuNvX/EF1igRbbnGSvEyT79McoZa/DeGhMyC5pWKOEsZKnpkqtSeovd5FL/bjHWC3CIIvCQ==} + + sonner@2.0.7: + resolution: {integrity: sha512-W6ZN4p58k8aDKA4XPcx2hpIQXBRAgyiWVkYhT7CvK6D3iAu7xjvVyhQHg2/iaKJZ1XVJ4r7XuwGL+WGEK37i9w==} + peerDependencies: + react: ^18.0.0 || ^19.0.0 || ^19.0.0-rc + react-dom: ^18.0.0 || ^19.0.0 || ^19.0.0-rc + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} + + sparse-bitfield@3.0.3: + resolution: {integrity: sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==} + + stable-hash@0.0.5: + resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} + + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + + string.prototype.includes@2.0.1: + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} + engines: {node: '>= 0.4'} + + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} + + string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + + stringify-entities@4.0.4: + resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} + + strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + style-to-js@1.1.21: + resolution: {integrity: sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==} + + style-to-object@1.0.14: + resolution: {integrity: sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==} + + styled-jsx@5.1.6: + resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + tailwind-merge@3.4.0: + resolution: {integrity: sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==} + + tailwindcss@4.1.17: + resolution: {integrity: sha512-j9Ee2YjuQqYT9bbRTfTZht9W/ytp5H+jJpZKiYdP/bpnXARAuELt9ofP0lPnmHjbga7SNQIxdTAXCmtKVYjN+Q==} + + tapable@2.3.0: + resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} + engines: {node: '>=6'} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + tiptap-markdown@0.9.0: + resolution: {integrity: sha512-dKLQ9iiuGNgrlGVjrNauF/UBzWu4LYOx5pkD0jNkmQt/GOwfCJsBuzZTsf1jZ204ANHOm572mZ9PYvGh1S7tpQ==} + peerDependencies: + '@tiptap/core': ^3.0.1 + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + tr46@5.1.1: + resolution: {integrity: sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==} + engines: {node: '>=18'} + + trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + + ts-api-utils@2.1.0: + resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + + tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + + typescript-eslint@8.48.0: + resolution: {integrity: sha512-fcKOvQD9GUn3Xw63EgiDqhvWJ5jsyZUaekl3KVpGsDJnN46WJTe3jWxtQP9lMZm1LJNkFLlTaWAxK2vUQR+cqw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + uc.micro@2.1.0: + resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} + + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + + unist-util-filter@5.0.1: + resolution: {integrity: sha512-pHx7D4Zt6+TsfwylH9+lYhBhzyhEnCXs/lbq/Hstxno5z4gVdyc2WEW0asfjGKPyG4pEKrnBv5hdkO6+aRnQJw==} + + unist-util-is@6.0.1: + resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==} + + unist-util-position@5.0.0: + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-parents@6.0.2: + resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==} + + unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + + unrs-resolver@1.11.1: + resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==} + + update-browserslist-db@1.1.4: + resolution: {integrity: sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + use-callback-ref@1.3.3: + resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + use-sidecar@1.1.3: + resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + use-sync-external-store@1.6.0: + resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + vfile-location@5.0.3: + resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} + + vfile-message@4.0.3: + resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + + w3c-keyname@2.2.8: + resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} + + web-namespaces@2.0.1: + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} + + webidl-conversions@7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} + engines: {node: '>=12'} + + whatwg-url@14.2.0: + resolution: {integrity: sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==} + engines: {node: '>=18'} + + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-typed-array@1.1.19: + resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==} + engines: {node: '>= 0.4'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + zod-validation-error@4.0.2: + resolution: {integrity: sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + zod: ^3.25.0 || ^4.0.0 + + zod@4.1.13: + resolution: {integrity: sha512-AvvthqfqrAhNH9dnfmrfKzX5upOdjUVJYFqNSlkmGf64gRaTzlPwz99IHYnVs28qYAybvAlBV+H7pn0saFY4Ig==} + + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + +snapshots: + + '@alloc/quick-lru@5.2.0': {} + + '@babel/code-frame@7.27.1': + dependencies: + '@babel/helper-validator-identifier': 7.28.5 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.28.5': {} + + '@babel/core@7.28.5': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.28.5 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) + '@babel/helpers': 7.28.4 + '@babel/parser': 7.28.5 + '@babel/template': 7.27.2 + '@babel/traverse': 7.28.5 + '@babel/types': 7.28.5 + '@jridgewell/remapping': 2.3.5 + convert-source-map: 2.0.0 + debug: 4.4.3 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.28.5': + dependencies: + '@babel/parser': 7.28.5 + '@babel/types': 7.28.5 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + jsesc: 3.1.0 + + '@babel/helper-compilation-targets@7.27.2': + dependencies: + '@babel/compat-data': 7.28.5 + '@babel/helper-validator-option': 7.27.1 + browserslist: 4.28.0 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-globals@7.28.0': {} + + '@babel/helper-module-imports@7.27.1': + dependencies: + '@babel/traverse': 7.28.5 + '@babel/types': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-module-imports': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.28.5': {} + + '@babel/helper-validator-option@7.27.1': {} + + '@babel/helpers@7.28.4': + dependencies: + '@babel/template': 7.27.2 + '@babel/types': 7.28.5 + + '@babel/parser@7.28.5': + dependencies: + '@babel/types': 7.28.5 + + '@babel/runtime@7.28.4': {} + + '@babel/template@7.27.2': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/parser': 7.28.5 + '@babel/types': 7.28.5 + + '@babel/traverse@7.28.5': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.28.5 + '@babel/helper-globals': 7.28.0 + '@babel/parser': 7.28.5 + '@babel/template': 7.27.2 + '@babel/types': 7.28.5 + debug: 4.4.3 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.28.5': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + + '@emnapi/core@1.7.1': + dependencies: + '@emnapi/wasi-threads': 1.1.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.7.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.1.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@eslint-community/eslint-utils@4.9.0(eslint@9.39.1(jiti@2.6.1))': + dependencies: + eslint: 9.39.1(jiti@2.6.1) + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.2': {} + + '@eslint/config-array@0.21.1': + dependencies: + '@eslint/object-schema': 2.1.7 + debug: 4.4.3 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/config-helpers@0.4.2': + dependencies: + '@eslint/core': 0.17.0 + + '@eslint/core@0.17.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/eslintrc@3.3.1': + dependencies: + ajv: 6.12.6 + debug: 4.4.3 + espree: 10.4.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.1 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.39.1': {} + + '@eslint/object-schema@2.1.7': {} + + '@eslint/plugin-kit@0.4.1': + dependencies: + '@eslint/core': 0.17.0 + levn: 0.4.1 + + '@floating-ui/core@1.7.3': + dependencies: + '@floating-ui/utils': 0.2.10 + + '@floating-ui/dom@1.7.4': + dependencies: + '@floating-ui/core': 1.7.3 + '@floating-ui/utils': 0.2.10 + + '@floating-ui/react-dom@2.1.6(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@floating-ui/dom': 1.7.4 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + + '@floating-ui/utils@0.2.10': {} + + '@hookform/resolvers@5.2.2(react-hook-form@7.66.1(react@19.2.0))': + dependencies: + '@standard-schema/utils': 0.3.0 + react-hook-form: 7.66.1(react@19.2.0) + + '@humanfs/core@0.19.1': {} + + '@humanfs/node@0.16.7': + dependencies: + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.4.3 + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.4.3': {} + + '@img/colour@1.0.0': + optional: true + + '@img/sharp-darwin-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.2.4 + optional: true + + '@img/sharp-darwin-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.2.4 + optional: true + + '@img/sharp-libvips-darwin-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-darwin-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm@1.2.4': + optional: true + + '@img/sharp-libvips-linux-ppc64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-riscv64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-s390x@1.2.4': + optional: true + + '@img/sharp-libvips-linux-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + optional: true + + '@img/sharp-linux-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.2.4 + optional: true + + '@img/sharp-linux-arm@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.2.4 + optional: true + + '@img/sharp-linux-ppc64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-ppc64': 1.2.4 + optional: true + + '@img/sharp-linux-riscv64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-riscv64': 1.2.4 + optional: true + + '@img/sharp-linux-s390x@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.2.4 + optional: true + + '@img/sharp-linux-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + optional: true + + '@img/sharp-wasm32@0.34.5': + dependencies: + '@emnapi/runtime': 1.7.1 + optional: true + + '@img/sharp-win32-arm64@0.34.5': + optional: true + + '@img/sharp-win32-ia32@0.34.5': + optional: true + + '@img/sharp-win32-x64@0.34.5': + optional: true + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/remapping@2.3.5': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@mongodb-js/saslprep@1.3.2': + dependencies: + sparse-bitfield: 3.0.3 + + '@napi-rs/wasm-runtime@0.2.12': + dependencies: + '@emnapi/core': 1.7.1 + '@emnapi/runtime': 1.7.1 + '@tybys/wasm-util': 0.10.1 + optional: true + + '@next/env@16.0.3': {} + + '@next/eslint-plugin-next@16.0.3': + dependencies: + fast-glob: 3.3.1 + + '@next/swc-darwin-arm64@16.0.3': + optional: true + + '@next/swc-darwin-x64@16.0.3': + optional: true + + '@next/swc-linux-arm64-gnu@16.0.3': + optional: true + + '@next/swc-linux-arm64-musl@16.0.3': + optional: true + + '@next/swc-linux-x64-gnu@16.0.3': + optional: true + + '@next/swc-linux-x64-musl@16.0.3': + optional: true + + '@next/swc-win32-arm64-msvc@16.0.3': + optional: true + + '@next/swc-win32-x64-msvc@16.0.3': + optional: true + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.19.1 + + '@nolyfill/is-core-module@1.0.39': {} + + '@radix-ui/number@1.1.1': {} + + '@radix-ui/primitive@1.1.3': {} + + '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-avatar@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-context': 1.1.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.1.4(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-context@1.1.2(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-context@1.1.3(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.7)(react@19.2.0) + aria-hidden: 1.2.6 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react-remove-scroll: 2.7.1(@types/react@19.2.7)(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-direction@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-id@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-label@2.1.8(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-primitive': 2.1.4(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-menu@2.1.16(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + aria-hidden: 1.2.6 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react-remove-scroll: 2.7.1(@types/react@19.2.7)(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-popover@1.1.15(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.7)(react@19.2.0) + aria-hidden: 1.2.6 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react-remove-scroll: 2.7.1(@types/react@19.2.7)(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@floating-ui/react-dom': 2.1.6(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/rect': 1.1.1 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-primitive@2.1.4(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-slot': 1.2.4(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-select@2.2.6(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/number': 1.1.1 + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + aria-hidden: 1.2.6 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react-remove-scroll: 2.7.1(@types/react@19.2.7)(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-slot@1.2.3(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-slot@1.2.4(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-switch@1.2.6(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-tabs@1.1.13(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.7)(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-is-hydrated@0.1.0(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + use-sync-external-store: 1.6.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/rect': 1.1.1 + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-use-size@1.1.1(@types/react@19.2.7)(react@19.2.0)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.0) + react: 19.2.0 + optionalDependencies: + '@types/react': 19.2.7 + + '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + + '@radix-ui/rect@1.1.1': {} + + '@remirror/core-constants@3.0.0': {} + + '@rtsao/scc@1.1.0': {} + + '@shikijs/core@3.15.0': + dependencies: + '@shikijs/types': 3.15.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.5 + + '@shikijs/engine-javascript@3.15.0': + dependencies: + '@shikijs/types': 3.15.0 + '@shikijs/vscode-textmate': 10.0.2 + oniguruma-to-es: 4.3.4 + + '@shikijs/engine-oniguruma@3.15.0': + dependencies: + '@shikijs/types': 3.15.0 + '@shikijs/vscode-textmate': 10.0.2 + + '@shikijs/langs@3.15.0': + dependencies: + '@shikijs/types': 3.15.0 + + '@shikijs/themes@3.15.0': + dependencies: + '@shikijs/types': 3.15.0 + + '@shikijs/types@3.15.0': + dependencies: + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + + '@shikijs/vscode-textmate@10.0.2': {} + + '@standard-schema/utils@0.3.0': {} + + '@swc/helpers@0.5.15': + dependencies: + tslib: 2.8.1 + + '@tailwindcss/node@4.1.17': + dependencies: + '@jridgewell/remapping': 2.3.5 + enhanced-resolve: 5.18.3 + jiti: 2.6.1 + lightningcss: 1.30.2 + magic-string: 0.30.21 + source-map-js: 1.2.1 + tailwindcss: 4.1.17 + + '@tailwindcss/oxide-android-arm64@4.1.17': + optional: true + + '@tailwindcss/oxide-darwin-arm64@4.1.17': + optional: true + + '@tailwindcss/oxide-darwin-x64@4.1.17': + optional: true + + '@tailwindcss/oxide-freebsd-x64@4.1.17': + optional: true + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.17': + optional: true + + '@tailwindcss/oxide-linux-arm64-gnu@4.1.17': + optional: true + + '@tailwindcss/oxide-linux-arm64-musl@4.1.17': + optional: true + + '@tailwindcss/oxide-linux-x64-gnu@4.1.17': + optional: true + + '@tailwindcss/oxide-linux-x64-musl@4.1.17': + optional: true + + '@tailwindcss/oxide-wasm32-wasi@4.1.17': + optional: true + + '@tailwindcss/oxide-win32-arm64-msvc@4.1.17': + optional: true + + '@tailwindcss/oxide-win32-x64-msvc@4.1.17': + optional: true + + '@tailwindcss/oxide@4.1.17': + optionalDependencies: + '@tailwindcss/oxide-android-arm64': 4.1.17 + '@tailwindcss/oxide-darwin-arm64': 4.1.17 + '@tailwindcss/oxide-darwin-x64': 4.1.17 + '@tailwindcss/oxide-freebsd-x64': 4.1.17 + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.17 + '@tailwindcss/oxide-linux-arm64-gnu': 4.1.17 + '@tailwindcss/oxide-linux-arm64-musl': 4.1.17 + '@tailwindcss/oxide-linux-x64-gnu': 4.1.17 + '@tailwindcss/oxide-linux-x64-musl': 4.1.17 + '@tailwindcss/oxide-wasm32-wasi': 4.1.17 + '@tailwindcss/oxide-win32-arm64-msvc': 4.1.17 + '@tailwindcss/oxide-win32-x64-msvc': 4.1.17 + + '@tailwindcss/postcss@4.1.17': + dependencies: + '@alloc/quick-lru': 5.2.0 + '@tailwindcss/node': 4.1.17 + '@tailwindcss/oxide': 4.1.17 + postcss: 8.5.6 + tailwindcss: 4.1.17 + + '@tailwindcss/typography@0.5.19(tailwindcss@4.1.17)': + dependencies: + postcss-selector-parser: 6.0.10 + tailwindcss: 4.1.17 + + '@tiptap/core@3.11.0(@tiptap/pm@3.11.0)': + dependencies: + '@tiptap/pm': 3.11.0 + + '@tiptap/extension-blockquote@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-bold@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-bubble-menu@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)': + dependencies: + '@floating-ui/dom': 1.7.4 + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + + '@tiptap/extension-bullet-list@3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/extension-list': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + + '@tiptap/extension-code-block@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + + '@tiptap/extension-code@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-document@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-dropcursor@3.11.0(@tiptap/extensions@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/extensions': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + + '@tiptap/extension-floating-menu@3.11.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)': + dependencies: + '@floating-ui/dom': 1.7.4 + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + + '@tiptap/extension-gapcursor@3.11.0(@tiptap/extensions@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/extensions': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + + '@tiptap/extension-hard-break@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-heading@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-horizontal-rule@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + + '@tiptap/extension-image@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-italic@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-link@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + linkifyjs: 4.3.2 + + '@tiptap/extension-list-item@3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/extension-list': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + + '@tiptap/extension-list-keymap@3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/extension-list': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + + '@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + + '@tiptap/extension-ordered-list@3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/extension-list': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + + '@tiptap/extension-paragraph@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-placeholder@3.11.0(@tiptap/extensions@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/extensions': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + + '@tiptap/extension-strike@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-text@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extension-underline@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + + '@tiptap/extensions@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + + '@tiptap/pm@3.11.0': + dependencies: + prosemirror-changeset: 2.3.1 + prosemirror-collab: 1.3.1 + prosemirror-commands: 1.7.1 + prosemirror-dropcursor: 1.8.2 + prosemirror-gapcursor: 1.4.0 + prosemirror-history: 1.5.0 + prosemirror-inputrules: 1.5.1 + prosemirror-keymap: 1.2.3 + prosemirror-markdown: 1.13.2 + prosemirror-menu: 1.2.5 + prosemirror-model: 1.25.4 + prosemirror-schema-basic: 1.2.4 + prosemirror-schema-list: 1.5.1 + prosemirror-state: 1.4.4 + prosemirror-tables: 1.8.1 + prosemirror-trailing-node: 3.0.0(prosemirror-model@1.25.4)(prosemirror-state@1.4.4)(prosemirror-view@1.41.3) + prosemirror-transform: 1.10.5 + prosemirror-view: 1.41.3 + + '@tiptap/react@3.11.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + '@types/use-sync-external-store': 0.0.6 + fast-deep-equal: 3.1.3 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + use-sync-external-store: 1.6.0(react@19.2.0) + optionalDependencies: + '@tiptap/extension-bubble-menu': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-floating-menu': 3.11.0(@floating-ui/dom@1.7.4)(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + transitivePeerDependencies: + - '@floating-ui/dom' + + '@tiptap/starter-kit@3.11.0': + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@tiptap/extension-blockquote': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-bold': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-bullet-list': 3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)) + '@tiptap/extension-code': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-code-block': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-document': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-dropcursor': 3.11.0(@tiptap/extensions@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)) + '@tiptap/extension-gapcursor': 3.11.0(@tiptap/extensions@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)) + '@tiptap/extension-hard-break': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-heading': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-horizontal-rule': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-italic': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-link': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-list': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/extension-list-item': 3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)) + '@tiptap/extension-list-keymap': 3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)) + '@tiptap/extension-ordered-list': 3.11.0(@tiptap/extension-list@3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0)) + '@tiptap/extension-paragraph': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-strike': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-text': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extension-underline': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)) + '@tiptap/extensions': 3.11.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0))(@tiptap/pm@3.11.0) + '@tiptap/pm': 3.11.0 + + '@tybys/wasm-util@0.10.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/debug@4.1.12': + dependencies: + '@types/ms': 2.1.0 + + '@types/estree-jsx@1.0.5': + dependencies: + '@types/estree': 1.0.8 + + '@types/estree@1.0.8': {} + + '@types/hast@2.3.10': + dependencies: + '@types/unist': 2.0.11 + + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/json-schema@7.0.15': {} + + '@types/json5@0.0.29': {} + + '@types/jsonwebtoken@9.0.10': + dependencies: + '@types/ms': 2.1.0 + '@types/node': 20.19.25 + + '@types/linkify-it@3.0.5': {} + + '@types/linkify-it@5.0.0': {} + + '@types/markdown-it@13.0.9': + dependencies: + '@types/linkify-it': 3.0.5 + '@types/mdurl': 1.0.5 + + '@types/markdown-it@14.1.2': + dependencies: + '@types/linkify-it': 5.0.0 + '@types/mdurl': 2.0.0 + + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/mdurl@1.0.5': {} + + '@types/mdurl@2.0.0': {} + + '@types/ms@2.1.0': {} + + '@types/node@20.19.25': + dependencies: + undici-types: 6.21.0 + + '@types/prismjs@1.26.5': {} + + '@types/react-dom@19.2.3(@types/react@19.2.7)': + dependencies: + '@types/react': 19.2.7 + + '@types/react@19.2.7': + dependencies: + csstype: 3.2.3 + + '@types/unist@2.0.11': {} + + '@types/unist@3.0.3': {} + + '@types/use-sync-external-store@0.0.6': {} + + '@types/webidl-conversions@7.0.3': {} + + '@types/whatwg-url@13.0.0': + dependencies: + '@types/webidl-conversions': 7.0.3 + + '@typescript-eslint/eslint-plugin@8.48.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.48.0 + '@typescript-eslint/type-utils': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.48.0 + eslint: 9.39.1(jiti@2.6.1) + graphemer: 1.4.0 + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.1.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.48.0 + '@typescript-eslint/types': 8.48.0 + '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.48.0 + debug: 4.4.3 + eslint: 9.39.1(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.48.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.48.0(typescript@5.9.3) + '@typescript-eslint/types': 8.48.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.48.0': + dependencies: + '@typescript-eslint/types': 8.48.0 + '@typescript-eslint/visitor-keys': 8.48.0 + + '@typescript-eslint/tsconfig-utils@8.48.0(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/type-utils@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.48.0 + '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + debug: 4.4.3 + eslint: 9.39.1(jiti@2.6.1) + ts-api-utils: 2.1.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@8.48.0': {} + + '@typescript-eslint/typescript-estree@8.48.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.48.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.48.0(typescript@5.9.3) + '@typescript-eslint/types': 8.48.0 + '@typescript-eslint/visitor-keys': 8.48.0 + debug: 4.4.3 + minimatch: 9.0.5 + semver: 7.7.3 + tinyglobby: 0.2.15 + ts-api-utils: 2.1.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.48.0 + '@typescript-eslint/types': 8.48.0 + '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.48.0': + dependencies: + '@typescript-eslint/types': 8.48.0 + eslint-visitor-keys: 4.2.1 + + '@uiw/copy-to-clipboard@1.0.17': {} + + '@uiw/react-markdown-preview@5.1.5(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@babel/runtime': 7.28.4 + '@uiw/copy-to-clipboard': 1.0.17 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react-markdown: 9.0.3(@types/react@19.2.7)(react@19.2.0) + rehype-attr: 3.0.3 + rehype-autolink-headings: 7.1.0 + rehype-ignore: 2.0.2 + rehype-prism-plus: 2.0.0 + rehype-raw: 7.0.0 + rehype-rewrite: 4.0.3 + rehype-slug: 6.0.0 + remark-gfm: 4.0.1 + remark-github-blockquote-alert: 1.3.1 + unist-util-visit: 5.0.0 + transitivePeerDependencies: + - '@types/react' + - supports-color + + '@uiw/react-md-editor@4.0.8(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': + dependencies: + '@babel/runtime': 7.28.4 + '@uiw/react-markdown-preview': 5.1.5(@types/react@19.2.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + rehype: 13.0.2 + rehype-prism-plus: 2.0.1 + transitivePeerDependencies: + - '@types/react' + - supports-color + + '@ungap/structured-clone@1.3.0': {} + + '@unrs/resolver-binding-android-arm-eabi@1.11.1': + optional: true + + '@unrs/resolver-binding-android-arm64@1.11.1': + optional: true + + '@unrs/resolver-binding-darwin-arm64@1.11.1': + optional: true + + '@unrs/resolver-binding-darwin-x64@1.11.1': + optional: true + + '@unrs/resolver-binding-freebsd-x64@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-x64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-x64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-wasm32-wasi@1.11.1': + dependencies: + '@napi-rs/wasm-runtime': 0.2.12 + optional: true + + '@unrs/resolver-binding-win32-arm64-msvc@1.11.1': + optional: true + + '@unrs/resolver-binding-win32-ia32-msvc@1.11.1': + optional: true + + '@unrs/resolver-binding-win32-x64-msvc@1.11.1': + optional: true + + acorn-jsx@5.3.2(acorn@8.15.0): + dependencies: + acorn: 8.15.0 + + acorn@8.15.0: {} + + ajv@6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + argparse@2.0.1: {} + + aria-hidden@1.2.6: + dependencies: + tslib: 2.8.1 + + aria-query@5.3.2: {} + + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + + array-includes@3.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + is-string: 1.1.1 + math-intrinsics: 1.1.0 + + array.prototype.findlast@1.2.5: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.findlastindex@1.2.6: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.flat@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-shim-unscopables: 1.1.0 + + array.prototype.flatmap@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-shim-unscopables: 1.1.0 + + array.prototype.tosorted@1.1.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-shim-unscopables: 1.1.0 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + + ast-types-flow@0.0.8: {} + + async-function@1.0.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + axe-core@4.11.0: {} + + axobject-query@4.1.0: {} + + bail@2.0.2: {} + + balanced-match@1.0.2: {} + + baseline-browser-mapping@2.8.31: {} + + bcp-47-match@2.0.3: {} + + bcryptjs@3.0.3: {} + + boolbase@1.0.0: {} + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.28.0: + dependencies: + baseline-browser-mapping: 2.8.31 + caniuse-lite: 1.0.30001757 + electron-to-chromium: 1.5.260 + node-releases: 2.0.27 + update-browserslist-db: 1.1.4(browserslist@4.28.0) + + bson@7.0.0: {} + + buffer-equal-constant-time@1.0.1: {} + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + callsites@3.1.0: {} + + caniuse-lite@1.0.30001757: {} + + ccount@2.0.1: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + character-entities-html4@2.1.0: {} + + character-entities-legacy@3.0.0: {} + + character-entities@2.0.2: {} + + character-reference-invalid@2.0.1: {} + + class-variance-authority@0.7.1: + dependencies: + clsx: 2.1.1 + + client-only@0.0.1: {} + + clsx@2.1.1: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + comma-separated-tokens@2.0.3: {} + + concat-map@0.0.1: {} + + convert-source-map@2.0.0: {} + + crelt@1.0.6: {} + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + css-selector-parser@3.2.0: {} + + cssesc@3.0.0: {} + + csstype@3.2.3: {} + + damerau-levenshtein@1.0.8: {} + + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + date-fns@4.1.0: {} + + debug@3.2.7: + dependencies: + ms: 2.1.3 + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + decode-named-character-reference@1.2.0: + dependencies: + character-entities: 2.0.2 + + deep-is@0.1.4: {} + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + + dequal@2.0.3: {} + + detect-libc@2.1.2: {} + + detect-node-es@1.1.0: {} + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + direction@2.0.1: {} + + doctrine@2.1.0: + dependencies: + esutils: 2.0.3 + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + ecdsa-sig-formatter@1.0.11: + dependencies: + safe-buffer: 5.2.1 + + electron-to-chromium@1.5.260: {} + + embla-carousel-react@8.6.0(react@19.2.0): + dependencies: + embla-carousel: 8.6.0 + embla-carousel-reactive-utils: 8.6.0(embla-carousel@8.6.0) + react: 19.2.0 + + embla-carousel-reactive-utils@8.6.0(embla-carousel@8.6.0): + dependencies: + embla-carousel: 8.6.0 + + embla-carousel@8.6.0: {} + + emoji-regex@9.2.2: {} + + enhanced-resolve@5.18.3: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.3.0 + + entities@4.5.0: {} + + entities@6.0.1: {} + + es-abstract@1.24.0: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.19 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-iterator-helpers@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-set-tostringtag: 2.1.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.5 + safe-array-concat: 1.1.3 + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es-shim-unscopables@1.1.0: + dependencies: + hasown: 2.0.2 + + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + + escalade@3.2.0: {} + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + eslint-config-next@16.0.3(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@next/eslint-plugin-next': 16.0.3 + eslint: 9.39.1(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@2.6.1)) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.1(jiti@2.6.1)) + eslint-plugin-react: 7.37.5(eslint@9.39.1(jiti@2.6.1)) + eslint-plugin-react-hooks: 7.0.1(eslint@9.39.1(jiti@2.6.1)) + globals: 16.4.0 + typescript-eslint: 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-webpack + - eslint-plugin-import-x + - supports-color + + eslint-import-resolver-node@0.3.9: + dependencies: + debug: 3.2.7 + is-core-module: 2.16.1 + resolve: 1.22.11 + transitivePeerDependencies: + - supports-color + + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@2.6.1)): + dependencies: + '@nolyfill/is-core-module': 1.0.39 + debug: 4.4.3 + eslint: 9.39.1(jiti@2.6.1) + get-tsconfig: 4.13.0 + is-bun-module: 2.0.0 + stable-hash: 0.0.5 + tinyglobby: 0.2.15 + unrs-resolver: 1.11.1 + optionalDependencies: + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)) + transitivePeerDependencies: + - supports-color + + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)): + dependencies: + debug: 3.2.7 + optionalDependencies: + '@typescript-eslint/parser': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@2.6.1)) + transitivePeerDependencies: + - supports-color + + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)): + dependencies: + '@rtsao/scc': 1.1.0 + array-includes: 3.1.9 + array.prototype.findlastindex: 1.2.6 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 9.39.1(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)) + hasown: 2.0.2 + is-core-module: 2.16.1 + is-glob: 4.0.3 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.1 + semver: 6.3.1 + string.prototype.trimend: 1.0.9 + tsconfig-paths: 3.15.0 + optionalDependencies: + '@typescript-eslint/parser': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + + eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.1(jiti@2.6.1)): + dependencies: + aria-query: 5.3.2 + array-includes: 3.1.9 + array.prototype.flatmap: 1.3.3 + ast-types-flow: 0.0.8 + axe-core: 4.11.0 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 9.39.1(jiti@2.6.1) + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + safe-regex-test: 1.1.0 + string.prototype.includes: 2.0.1 + + eslint-plugin-react-hooks@7.0.1(eslint@9.39.1(jiti@2.6.1)): + dependencies: + '@babel/core': 7.28.5 + '@babel/parser': 7.28.5 + eslint: 9.39.1(jiti@2.6.1) + hermes-parser: 0.25.1 + zod: 4.1.13 + zod-validation-error: 4.0.2(zod@4.1.13) + transitivePeerDependencies: + - supports-color + + eslint-plugin-react@7.37.5(eslint@9.39.1(jiti@2.6.1)): + dependencies: + array-includes: 3.1.9 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.3 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.2.1 + eslint: 9.39.1(jiti@2.6.1) + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.9 + object.fromentries: 2.0.8 + object.values: 1.2.1 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.12 + string.prototype.repeat: 1.0.0 + + eslint-scope@8.4.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.2.1: {} + + eslint@9.39.1(jiti@2.6.1): + dependencies: + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) + '@eslint-community/regexpp': 4.12.2 + '@eslint/config-array': 0.21.1 + '@eslint/config-helpers': 0.4.2 + '@eslint/core': 0.17.0 + '@eslint/eslintrc': 3.3.1 + '@eslint/js': 9.39.1 + '@eslint/plugin-kit': 0.4.1 + '@humanfs/node': 0.16.7 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.3 + '@types/estree': 1.0.8 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.3 + escape-string-regexp: 4.0.0 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + optionalDependencies: + jiti: 2.6.1 + transitivePeerDependencies: + - supports-color + + espree@10.4.0: + dependencies: + acorn: 8.15.0 + acorn-jsx: 5.3.2(acorn@8.15.0) + eslint-visitor-keys: 4.2.1 + + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-util-is-identifier-name@3.0.0: {} + + esutils@2.0.3: {} + + eventsource-parser@3.0.6: {} + + extend@3.0.2: {} + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.1: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.19.1: + dependencies: + reusify: 1.1.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.3.3 + keyv: 4.5.4 + + flatted@3.3.3: {} + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + function-bind@1.1.2: {} + + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + + generator-function@2.0.1: {} + + gensync@1.0.0-beta.2: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-nonce@1.0.1: {} + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + + get-tsconfig@4.13.0: + dependencies: + resolve-pkg-maps: 1.0.0 + + github-slugger@2.0.0: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + globals@14.0.0: {} + + globals@16.4.0: {} + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + graphemer@1.4.0: {} + + has-bigints@1.1.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hast-util-from-html@2.0.3: + dependencies: + '@types/hast': 3.0.4 + devlop: 1.1.0 + hast-util-from-parse5: 8.0.3 + parse5: 7.3.0 + vfile: 6.0.3 + vfile-message: 4.0.3 + + hast-util-from-parse5@8.0.3: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + devlop: 1.1.0 + hastscript: 9.0.1 + property-information: 7.1.0 + vfile: 6.0.3 + vfile-location: 5.0.3 + web-namespaces: 2.0.1 + + hast-util-has-property@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-heading-rank@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-is-element@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-parse-selector@3.1.1: + dependencies: + '@types/hast': 2.3.10 + + hast-util-parse-selector@4.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-raw@9.1.0: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + '@ungap/structured-clone': 1.3.0 + hast-util-from-parse5: 8.0.3 + hast-util-to-parse5: 8.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.1 + parse5: 7.3.0 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + + hast-util-sanitize@5.0.2: + dependencies: + '@types/hast': 3.0.4 + '@ungap/structured-clone': 1.3.0 + unist-util-position: 5.0.0 + + hast-util-select@6.0.4: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + bcp-47-match: 2.0.3 + comma-separated-tokens: 2.0.3 + css-selector-parser: 3.2.0 + devlop: 1.1.0 + direction: 2.0.1 + hast-util-has-property: 3.0.0 + hast-util-to-string: 3.0.1 + hast-util-whitespace: 3.0.0 + nth-check: 2.1.1 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + hast-util-to-html@9.0.5: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 3.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.1 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.4 + zwitch: 2.0.4 + + hast-util-to-jsx-runtime@2.3.6: + dependencies: + '@types/estree': 1.0.8 + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + hast-util-whitespace: 3.0.0 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.2.0 + mdast-util-mdxjs-esm: 2.0.1 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + style-to-js: 1.1.21 + unist-util-position: 5.0.0 + vfile-message: 4.0.3 + transitivePeerDependencies: + - supports-color + + hast-util-to-parse5@8.0.0: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + + hast-util-to-string@3.0.1: + dependencies: + '@types/hast': 3.0.4 + + hast-util-whitespace@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hastscript@7.2.0: + dependencies: + '@types/hast': 2.3.10 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 3.1.1 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + + hastscript@9.0.1: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 4.0.0 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + + hermes-estree@0.25.1: {} + + hermes-parser@0.25.1: + dependencies: + hermes-estree: 0.25.1 + + html-url-attributes@3.0.1: {} + + html-void-elements@3.0.0: {} + + ignore@5.3.2: {} + + ignore@7.0.5: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + inline-style-parser@0.2.7: {} + + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + + is-alphabetical@2.0.1: {} + + is-alphanumerical@2.0.1: + dependencies: + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 + + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-bun-module@2.0.0: + dependencies: + semver: 7.7.3 + + is-callable@1.2.7: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-decimal@2.0.1: {} + + is-extglob@2.1.1: {} + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-hexadecimal@2.0.1: {} + + is-map@2.0.3: {} + + is-negative-zero@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-number@7.0.0: {} + + is-plain-obj@4.1.0: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + + is-string@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.19 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + iterator.prototype@1.1.5: + dependencies: + define-data-property: 1.1.4 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + has-symbols: 1.1.0 + set-function-name: 2.0.2 + + jiti@2.6.1: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + jsesc@3.1.0: {} + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@1.0.2: + dependencies: + minimist: 1.2.8 + + json5@2.2.3: {} + + jsonwebtoken@9.0.2: + dependencies: + jws: 3.2.2 + lodash.includes: 4.3.0 + lodash.isboolean: 3.0.3 + lodash.isinteger: 4.0.4 + lodash.isnumber: 3.0.3 + lodash.isplainobject: 4.0.6 + lodash.isstring: 4.0.1 + lodash.once: 4.1.1 + ms: 2.1.3 + semver: 7.7.3 + + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.9 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 + + jwa@1.4.2: + dependencies: + buffer-equal-constant-time: 1.0.1 + ecdsa-sig-formatter: 1.0.11 + safe-buffer: 5.2.1 + + jws@3.2.2: + dependencies: + jwa: 1.4.2 + safe-buffer: 5.2.1 + + kareem@3.0.0: {} + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + language-subtag-registry@0.3.23: {} + + language-tags@1.0.9: + dependencies: + language-subtag-registry: 0.3.23 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lightningcss-android-arm64@1.30.2: + optional: true + + lightningcss-darwin-arm64@1.30.2: + optional: true + + lightningcss-darwin-x64@1.30.2: + optional: true + + lightningcss-freebsd-x64@1.30.2: + optional: true + + lightningcss-linux-arm-gnueabihf@1.30.2: + optional: true + + lightningcss-linux-arm64-gnu@1.30.2: + optional: true + + lightningcss-linux-arm64-musl@1.30.2: + optional: true + + lightningcss-linux-x64-gnu@1.30.2: + optional: true + + lightningcss-linux-x64-musl@1.30.2: + optional: true + + lightningcss-win32-arm64-msvc@1.30.2: + optional: true + + lightningcss-win32-x64-msvc@1.30.2: + optional: true + + lightningcss@1.30.2: + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.30.2 + lightningcss-darwin-arm64: 1.30.2 + lightningcss-darwin-x64: 1.30.2 + lightningcss-freebsd-x64: 1.30.2 + lightningcss-linux-arm-gnueabihf: 1.30.2 + lightningcss-linux-arm64-gnu: 1.30.2 + lightningcss-linux-arm64-musl: 1.30.2 + lightningcss-linux-x64-gnu: 1.30.2 + lightningcss-linux-x64-musl: 1.30.2 + lightningcss-win32-arm64-msvc: 1.30.2 + lightningcss-win32-x64-msvc: 1.30.2 + + linkify-it@5.0.0: + dependencies: + uc.micro: 2.1.0 + + linkifyjs@4.3.2: {} + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.includes@4.3.0: {} + + lodash.isboolean@3.0.3: {} + + lodash.isinteger@4.0.4: {} + + lodash.isnumber@3.0.3: {} + + lodash.isplainobject@4.0.6: {} + + lodash.isstring@4.0.1: {} + + lodash.merge@4.6.2: {} + + lodash.once@4.1.1: {} + + longest-streak@3.1.0: {} + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + lucide-react@0.554.0(react@19.2.0): + dependencies: + react: 19.2.0 + + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + + markdown-it-task-lists@2.1.1: {} + + markdown-it@14.1.0: + dependencies: + argparse: 2.0.1 + entities: 4.5.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.1.0 + + markdown-table@3.0.4: {} + + math-intrinsics@1.1.0: {} + + mdast-util-find-and-replace@3.0.2: + dependencies: + '@types/mdast': 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + mdast-util-from-markdown@2.0.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.2 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.2 + micromark-util-character: 2.1.1 + + mdast-util-gfm-footnote@2.1.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm@3.1.0: + dependencies: + mdast-util-from-markdown: 2.0.2 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.1.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-mdx-expression@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-mdx-jsx@3.2.0: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + parse-entities: 4.0.2 + stringify-entities: 4.0.4 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.3 + transitivePeerDependencies: + - supports-color + + mdast-util-mdxjs-esm@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.1 + + mdast-util-to-hast@13.2.1: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@ungap/structured-clone': 1.3.0 + devlop: 1.1.0 + micromark-util-sanitize-uri: 2.0.1 + trim-lines: 3.0.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + + mdast-util-to-markdown@2.1.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + + mdurl@2.0.0: {} + + memory-pager@1.5.0: {} + + merge2@1.4.1: {} + + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-table@2.1.1: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.2 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.1 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.2 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.2.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + + micromark-util-encode@2.0.1: {} + + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.2 + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-subtokenize@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.2: {} + + micromark@4.0.2: + dependencies: + '@types/debug': 4.1.12 + debug: 4.4.3 + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + transitivePeerDependencies: + - supports-color + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.12 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.2 + + minimist@1.2.8: {} + + mongodb-connection-string-url@7.0.0: + dependencies: + '@types/whatwg-url': 13.0.0 + whatwg-url: 14.2.0 + + mongodb@7.0.0: + dependencies: + '@mongodb-js/saslprep': 1.3.2 + bson: 7.0.0 + mongodb-connection-string-url: 7.0.0 + + mongoose@9.0.0: + dependencies: + kareem: 3.0.0 + mongodb: 7.0.0 + mpath: 0.9.0 + mquery: 6.0.0 + ms: 2.1.3 + sift: 17.1.3 + transitivePeerDependencies: + - '@aws-sdk/credential-providers' + - '@mongodb-js/zstd' + - gcp-metadata + - kerberos + - mongodb-client-encryption + - snappy + - socks + + mpath@0.9.0: {} + + mquery@6.0.0: {} + + ms@2.1.3: {} + + nanoid@3.3.11: {} + + napi-postinstall@0.3.4: {} + + natural-compare@1.4.0: {} + + next-themes@0.4.6(react-dom@19.2.0(react@19.2.0))(react@19.2.0): + dependencies: + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + + next@16.0.3(@babel/core@7.28.5)(react-dom@19.2.0(react@19.2.0))(react@19.2.0): + dependencies: + '@next/env': 16.0.3 + '@swc/helpers': 0.5.15 + caniuse-lite: 1.0.30001757 + postcss: 8.4.31 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + styled-jsx: 5.1.6(@babel/core@7.28.5)(react@19.2.0) + optionalDependencies: + '@next/swc-darwin-arm64': 16.0.3 + '@next/swc-darwin-x64': 16.0.3 + '@next/swc-linux-arm64-gnu': 16.0.3 + '@next/swc-linux-arm64-musl': 16.0.3 + '@next/swc-linux-x64-gnu': 16.0.3 + '@next/swc-linux-x64-musl': 16.0.3 + '@next/swc-win32-arm64-msvc': 16.0.3 + '@next/swc-win32-x64-msvc': 16.0.3 + sharp: 0.34.5 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + node-releases@2.0.27: {} + + nth-check@2.1.1: + dependencies: + boolbase: 1.0.0 + + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 + + object.entries@1.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + object.fromentries@2.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + + object.groupby@1.0.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + + object.values@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + oniguruma-parser@0.12.1: {} + + oniguruma-to-es@4.3.4: + dependencies: + oniguruma-parser: 0.12.1 + regex: 6.0.1 + regex-recursion: 6.0.2 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + orderedmap@2.1.1: {} + + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-entities@4.0.2: + dependencies: + '@types/unist': 2.0.11 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.2.0 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + + parse-numeric-range@1.3.0: {} + + parse5@7.3.0: + dependencies: + entities: 6.0.1 + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + possible-typed-array-names@1.1.0: {} + + postcss-selector-parser@6.0.10: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss@8.4.31: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + postcss@8.5.6: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + + property-information@6.5.0: {} + + property-information@7.1.0: {} + + prosemirror-changeset@2.3.1: + dependencies: + prosemirror-transform: 1.10.5 + + prosemirror-collab@1.3.1: + dependencies: + prosemirror-state: 1.4.4 + + prosemirror-commands@1.7.1: + dependencies: + prosemirror-model: 1.25.4 + prosemirror-state: 1.4.4 + prosemirror-transform: 1.10.5 + + prosemirror-dropcursor@1.8.2: + dependencies: + prosemirror-state: 1.4.4 + prosemirror-transform: 1.10.5 + prosemirror-view: 1.41.3 + + prosemirror-gapcursor@1.4.0: + dependencies: + prosemirror-keymap: 1.2.3 + prosemirror-model: 1.25.4 + prosemirror-state: 1.4.4 + prosemirror-view: 1.41.3 + + prosemirror-history@1.5.0: + dependencies: + prosemirror-state: 1.4.4 + prosemirror-transform: 1.10.5 + prosemirror-view: 1.41.3 + rope-sequence: 1.3.4 + + prosemirror-inputrules@1.5.1: + dependencies: + prosemirror-state: 1.4.4 + prosemirror-transform: 1.10.5 + + prosemirror-keymap@1.2.3: + dependencies: + prosemirror-state: 1.4.4 + w3c-keyname: 2.2.8 + + prosemirror-markdown@1.13.2: + dependencies: + '@types/markdown-it': 14.1.2 + markdown-it: 14.1.0 + prosemirror-model: 1.25.4 + + prosemirror-menu@1.2.5: + dependencies: + crelt: 1.0.6 + prosemirror-commands: 1.7.1 + prosemirror-history: 1.5.0 + prosemirror-state: 1.4.4 + + prosemirror-model@1.25.4: + dependencies: + orderedmap: 2.1.1 + + prosemirror-schema-basic@1.2.4: + dependencies: + prosemirror-model: 1.25.4 + + prosemirror-schema-list@1.5.1: + dependencies: + prosemirror-model: 1.25.4 + prosemirror-state: 1.4.4 + prosemirror-transform: 1.10.5 + + prosemirror-state@1.4.4: + dependencies: + prosemirror-model: 1.25.4 + prosemirror-transform: 1.10.5 + prosemirror-view: 1.41.3 + + prosemirror-tables@1.8.1: + dependencies: + prosemirror-keymap: 1.2.3 + prosemirror-model: 1.25.4 + prosemirror-state: 1.4.4 + prosemirror-transform: 1.10.5 + prosemirror-view: 1.41.3 + + prosemirror-trailing-node@3.0.0(prosemirror-model@1.25.4)(prosemirror-state@1.4.4)(prosemirror-view@1.41.3): + dependencies: + '@remirror/core-constants': 3.0.0 + escape-string-regexp: 4.0.0 + prosemirror-model: 1.25.4 + prosemirror-state: 1.4.4 + prosemirror-view: 1.41.3 + + prosemirror-transform@1.10.5: + dependencies: + prosemirror-model: 1.25.4 + + prosemirror-view@1.41.3: + dependencies: + prosemirror-model: 1.25.4 + prosemirror-state: 1.4.4 + prosemirror-transform: 1.10.5 + + punycode.js@2.3.1: {} + + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + react-dom@19.2.0(react@19.2.0): + dependencies: + react: 19.2.0 + scheduler: 0.27.0 + + react-hook-form@7.66.1(react@19.2.0): + dependencies: + react: 19.2.0 + + react-is@16.13.1: {} + + react-markdown@10.1.0(@types/react@19.2.7)(react@19.2.0): + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@types/react': 19.2.7 + devlop: 1.1.0 + hast-util-to-jsx-runtime: 2.3.6 + html-url-attributes: 3.0.1 + mdast-util-to-hast: 13.2.1 + react: 19.2.0 + remark-parse: 11.0.0 + remark-rehype: 11.1.2 + unified: 11.0.5 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + transitivePeerDependencies: + - supports-color + + react-markdown@9.0.3(@types/react@19.2.7)(react@19.2.0): + dependencies: + '@types/hast': 3.0.4 + '@types/react': 19.2.7 + devlop: 1.1.0 + hast-util-to-jsx-runtime: 2.3.6 + html-url-attributes: 3.0.1 + mdast-util-to-hast: 13.2.1 + react: 19.2.0 + remark-parse: 11.0.0 + remark-rehype: 11.1.2 + unified: 11.0.5 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + transitivePeerDependencies: + - supports-color + + react-remove-scroll-bar@2.3.8(@types/react@19.2.7)(react@19.2.0): + dependencies: + react: 19.2.0 + react-style-singleton: 2.2.3(@types/react@19.2.7)(react@19.2.0) + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.7 + + react-remove-scroll@2.7.1(@types/react@19.2.7)(react@19.2.0): + dependencies: + react: 19.2.0 + react-remove-scroll-bar: 2.3.8(@types/react@19.2.7)(react@19.2.0) + react-style-singleton: 2.2.3(@types/react@19.2.7)(react@19.2.0) + tslib: 2.8.1 + use-callback-ref: 1.3.3(@types/react@19.2.7)(react@19.2.0) + use-sidecar: 1.1.3(@types/react@19.2.7)(react@19.2.0) + optionalDependencies: + '@types/react': 19.2.7 + + react-style-singleton@2.2.3(@types/react@19.2.7)(react@19.2.0): + dependencies: + get-nonce: 1.0.1 + react: 19.2.0 + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.7 + + react@19.2.0: {} + + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + + refractor@4.9.0: + dependencies: + '@types/hast': 2.3.10 + '@types/prismjs': 1.26.5 + hastscript: 7.2.0 + parse-entities: 4.0.2 + + regex-recursion@6.0.2: + dependencies: + regex-utilities: 2.3.0 + + regex-utilities@2.3.0: {} + + regex@6.0.1: + dependencies: + regex-utilities: 2.3.0 + + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + + rehype-attr@3.0.3: + dependencies: + unified: 11.0.5 + unist-util-visit: 5.0.0 + + rehype-autolink-headings@7.1.0: + dependencies: + '@types/hast': 3.0.4 + '@ungap/structured-clone': 1.3.0 + hast-util-heading-rank: 3.0.0 + hast-util-is-element: 3.0.0 + unified: 11.0.5 + unist-util-visit: 5.0.0 + + rehype-ignore@2.0.2: + dependencies: + hast-util-select: 6.0.4 + unified: 11.0.5 + unist-util-visit: 5.0.0 + + rehype-parse@9.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-from-html: 2.0.3 + unified: 11.0.5 + + rehype-pretty-code@0.14.1(shiki@3.15.0): + dependencies: + '@types/hast': 3.0.4 + hast-util-to-string: 3.0.1 + parse-numeric-range: 1.3.0 + rehype-parse: 9.0.1 + shiki: 3.15.0 + unified: 11.0.5 + unist-util-visit: 5.0.0 + + rehype-prism-plus@2.0.0: + dependencies: + hast-util-to-string: 3.0.1 + parse-numeric-range: 1.3.0 + refractor: 4.9.0 + rehype-parse: 9.0.1 + unist-util-filter: 5.0.1 + unist-util-visit: 5.0.0 + + rehype-prism-plus@2.0.1: + dependencies: + hast-util-to-string: 3.0.1 + parse-numeric-range: 1.3.0 + refractor: 4.9.0 + rehype-parse: 9.0.1 + unist-util-filter: 5.0.1 + unist-util-visit: 5.0.0 + + rehype-raw@7.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-raw: 9.1.0 + vfile: 6.0.3 + + rehype-rewrite@4.0.3: + dependencies: + hast-util-select: 6.0.4 + unified: 11.0.5 + unist-util-visit: 5.0.0 + + rehype-sanitize@6.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-sanitize: 5.0.2 + + rehype-slug@6.0.0: + dependencies: + '@types/hast': 3.0.4 + github-slugger: 2.0.0 + hast-util-heading-rank: 3.0.0 + hast-util-to-string: 3.0.1 + unist-util-visit: 5.0.0 + + rehype-stringify@10.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.5 + unified: 11.0.5 + + rehype@13.0.2: + dependencies: + '@types/hast': 3.0.4 + rehype-parse: 9.0.1 + rehype-stringify: 10.0.1 + unified: 11.0.5 + + remark-gfm@4.0.1: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-gfm: 3.1.0 + micromark-extension-gfm: 3.0.0 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-github-blockquote-alert@1.3.1: + dependencies: + unist-util-visit: 5.0.0 + + remark-parse@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.2 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-rehype@11.1.2: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + mdast-util-to-hast: 13.2.1 + unified: 11.0.5 + vfile: 6.0.3 + + remark-stringify@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-to-markdown: 2.1.2 + unified: 11.0.5 + + resolve-from@4.0.0: {} + + resolve-pkg-maps@1.0.0: {} + + resolve@1.22.11: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + resolve@2.0.0-next.5: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.1.0: {} + + rope-sequence@1.3.4: {} + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + + safe-buffer@5.2.1: {} + + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + + scheduler@0.27.0: {} + + semver@6.3.1: {} + + semver@7.7.3: {} + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + + sharp@0.34.5: + dependencies: + '@img/colour': 1.0.0 + detect-libc: 2.1.2 + semver: 7.7.3 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.34.5 + '@img/sharp-darwin-x64': 0.34.5 + '@img/sharp-libvips-darwin-arm64': 1.2.4 + '@img/sharp-libvips-darwin-x64': 1.2.4 + '@img/sharp-libvips-linux-arm': 1.2.4 + '@img/sharp-libvips-linux-arm64': 1.2.4 + '@img/sharp-libvips-linux-ppc64': 1.2.4 + '@img/sharp-libvips-linux-riscv64': 1.2.4 + '@img/sharp-libvips-linux-s390x': 1.2.4 + '@img/sharp-libvips-linux-x64': 1.2.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + '@img/sharp-linux-arm': 0.34.5 + '@img/sharp-linux-arm64': 0.34.5 + '@img/sharp-linux-ppc64': 0.34.5 + '@img/sharp-linux-riscv64': 0.34.5 + '@img/sharp-linux-s390x': 0.34.5 + '@img/sharp-linux-x64': 0.34.5 + '@img/sharp-linuxmusl-arm64': 0.34.5 + '@img/sharp-linuxmusl-x64': 0.34.5 + '@img/sharp-wasm32': 0.34.5 + '@img/sharp-win32-arm64': 0.34.5 + '@img/sharp-win32-ia32': 0.34.5 + '@img/sharp-win32-x64': 0.34.5 + optional: true + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + shiki@3.15.0: + dependencies: + '@shikijs/core': 3.15.0 + '@shikijs/engine-javascript': 3.15.0 + '@shikijs/engine-oniguruma': 3.15.0 + '@shikijs/langs': 3.15.0 + '@shikijs/themes': 3.15.0 + '@shikijs/types': 3.15.0 + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + sift@17.1.3: {} + + sonner@2.0.7(react-dom@19.2.0(react@19.2.0))(react@19.2.0): + dependencies: + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + + source-map-js@1.2.1: {} + + space-separated-tokens@2.0.2: {} + + sparse-bitfield@3.0.3: + dependencies: + memory-pager: 1.5.0 + + stable-hash@0.0.5: {} + + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + + string.prototype.includes@2.0.1: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + + string.prototype.matchall@4.0.12: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 + set-function-name: 2.0.2 + side-channel: 1.1.0 + + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.24.0 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + stringify-entities@4.0.4: + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + + strip-bom@3.0.0: {} + + strip-json-comments@3.1.1: {} + + style-to-js@1.1.21: + dependencies: + style-to-object: 1.0.14 + + style-to-object@1.0.14: + dependencies: + inline-style-parser: 0.2.7 + + styled-jsx@5.1.6(@babel/core@7.28.5)(react@19.2.0): + dependencies: + client-only: 0.0.1 + react: 19.2.0 + optionalDependencies: + '@babel/core': 7.28.5 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + tailwind-merge@3.4.0: {} + + tailwindcss@4.1.17: {} + + tapable@2.3.0: {} + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + tiptap-markdown@0.9.0(@tiptap/core@3.11.0(@tiptap/pm@3.11.0)): + dependencies: + '@tiptap/core': 3.11.0(@tiptap/pm@3.11.0) + '@types/markdown-it': 13.0.9 + markdown-it: 14.1.0 + markdown-it-task-lists: 2.1.1 + prosemirror-markdown: 1.13.2 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + tr46@5.1.1: + dependencies: + punycode: 2.3.1 + + trim-lines@3.0.1: {} + + trough@2.2.0: {} + + ts-api-utils@2.1.0(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + tsconfig-paths@3.15.0: + dependencies: + '@types/json5': 0.0.29 + json5: 1.0.2 + minimist: 1.2.8 + strip-bom: 3.0.0 + + tslib@2.8.1: {} + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + + typescript-eslint@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.48.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + typescript@5.9.3: {} + + uc.micro@2.1.0: {} + + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + + undici-types@6.21.0: {} + + unified@11.0.5: + dependencies: + '@types/unist': 3.0.3 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 6.0.3 + + unist-util-filter@5.0.1: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + unist-util-is@6.0.1: + dependencies: + '@types/unist': 3.0.3 + + unist-util-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + + unist-util-visit@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + unrs-resolver@1.11.1: + dependencies: + napi-postinstall: 0.3.4 + optionalDependencies: + '@unrs/resolver-binding-android-arm-eabi': 1.11.1 + '@unrs/resolver-binding-android-arm64': 1.11.1 + '@unrs/resolver-binding-darwin-arm64': 1.11.1 + '@unrs/resolver-binding-darwin-x64': 1.11.1 + '@unrs/resolver-binding-freebsd-x64': 1.11.1 + '@unrs/resolver-binding-linux-arm-gnueabihf': 1.11.1 + '@unrs/resolver-binding-linux-arm-musleabihf': 1.11.1 + '@unrs/resolver-binding-linux-arm64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-arm64-musl': 1.11.1 + '@unrs/resolver-binding-linux-ppc64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-riscv64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-riscv64-musl': 1.11.1 + '@unrs/resolver-binding-linux-s390x-gnu': 1.11.1 + '@unrs/resolver-binding-linux-x64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-x64-musl': 1.11.1 + '@unrs/resolver-binding-wasm32-wasi': 1.11.1 + '@unrs/resolver-binding-win32-arm64-msvc': 1.11.1 + '@unrs/resolver-binding-win32-ia32-msvc': 1.11.1 + '@unrs/resolver-binding-win32-x64-msvc': 1.11.1 + + update-browserslist-db@1.1.4(browserslist@4.28.0): + dependencies: + browserslist: 4.28.0 + escalade: 3.2.0 + picocolors: 1.1.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + use-callback-ref@1.3.3(@types/react@19.2.7)(react@19.2.0): + dependencies: + react: 19.2.0 + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.7 + + use-sidecar@1.1.3(@types/react@19.2.7)(react@19.2.0): + dependencies: + detect-node-es: 1.1.0 + react: 19.2.0 + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.7 + + use-sync-external-store@1.6.0(react@19.2.0): + dependencies: + react: 19.2.0 + + util-deprecate@1.0.2: {} + + vfile-location@5.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile: 6.0.3 + + vfile-message@4.0.3: + dependencies: + '@types/unist': 3.0.3 + unist-util-stringify-position: 4.0.0 + + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.3 + + w3c-keyname@2.2.8: {} + + web-namespaces@2.0.1: {} + + webidl-conversions@7.0.0: {} + + whatwg-url@14.2.0: + dependencies: + tr46: 5.1.1 + webidl-conversions: 7.0.0 + + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.19 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-typed-array@1.1.19: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + word-wrap@1.2.5: {} + + yallist@3.1.1: {} + + yocto-queue@0.1.0: {} + + zod-validation-error@4.0.2(zod@4.1.13): + dependencies: + zod: 4.1.13 + + zod@4.1.13: {} + + zwitch@2.0.4: {} diff --git a/postcss.config.mjs b/postcss.config.mjs new file mode 100644 index 0000000..61e3684 --- /dev/null +++ b/postcss.config.mjs @@ -0,0 +1,7 @@ +const config = { + plugins: { + "@tailwindcss/postcss": {}, + }, +}; + +export default config; diff --git a/public/Gemini.svg b/public/Gemini.svg new file mode 100644 index 0000000..e787983 --- /dev/null +++ b/public/Gemini.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/Google.svg b/public/Google.svg new file mode 100644 index 0000000..cfe24a2 --- /dev/null +++ b/public/Google.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/LOGO.png b/public/LOGO.png new file mode 100644 index 0000000000000000000000000000000000000000..831d2a7ba6a6c3f0cd803b202cd6e49da2ffa1fa GIT binary patch literal 137721 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 z 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 OKp@}-nkAR*0{;iS&;#ZG literal 0 HcmV?d00001 diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..8d965eb90296f184df1453fd288b127461a69b15 GIT binary patch literal 4286 zcmeH}dr(wW9LIm)1I-$pYWgQLbewzcV;`WEu49AQgcDj;ifO56<|`lhNDYY~7&9yl z0~8byc`x!n%S0+#FVc|@Br4k`QN<3K%H!ldALDlWVtg7*2O(|@7zcuz@7L!8a4~mb zw>xVN8Ix$I-ec&F@Pd~52 zc(56C0q*|^%uG}S5&lW=8&aQRhJ(|YA#*k}p!N)KPe#2hFWD+>E!`%CSAH&s*X~oc z)aPneHx_CaHWh3AZs+&N!8rI9gYN-o ziRdg`D_$)Lmz<@s(iN=tm6~Mbk~KqfuED5DgMUmzu7=th^ta5vhkp=!yxuxNYJwzW zAoj2Jj1wlOOcKJ8`{?u;EG8?I#pEqwF$M34F{VvotT{@GMUBTI=P{NvWn)90W=2c7 zZenY#esWu#eo&j`_I{6d;Pt?3@msi8!hI=uq7arA%p%iYVqICUGdudsUa(rUo3@B{ z^GA}s;xpM^vq!Pl9n#nv^0ju`QQgUwDqSi36I!eF`aZUwv}TdQ@{-WWj0!EN*3 z^GC!?@KU_LFaY(oFL{D+8tx?rUt||EUS*L)NmLpu`=G}8-Z~mNPe+dxBj-iPxe0X^ zhIb(NiN|d#(e^9$9=~fH&};A#a<17Q#2mgvSBj-(a5qua#jRG`*7OuZ_Wtx*$lX|u(y6!xJC>sd0+b493z?0 z<00s?v*YMkW#>lt?=h{3r7k#!0wQj+g(u`UUL#>}e ztryp&Yv!ZYPoUOS)OvZVML(>yMo)N;o6qrfg1Gs4f_D&~!2Vi{Gi3$NvsSFR1wFo~ z?x6Aw_7^kOI~49J^w%8pnrq#?b$Z^1bHw#O1ooE*%unDfU0R(WH(L%UHteloO(ty} z*1MyvUO%_Zsvp|X7C^_p40Pf7EN{N^a|P!pA?`6{+vT(9@hF zmkxq~0)~UTk_Y6RYWFLIxE1u-kBtSW^-|qcxOcZV1#IYO5A1}i9&mRMChZBYdD+kE=Wt`ih;KwLE@R~U;pPU>@V|(HKon3_7e1;Qjd?T$ Ssn%XNFn3Utsye_wpT7YG3Tp8H literal 0 HcmV?d00001 diff --git a/public/file.svg b/public/file.svg new file mode 100644 index 0000000..004145c --- /dev/null +++ b/public/file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/globe.svg b/public/globe.svg new file mode 100644 index 0000000..567f17b --- /dev/null +++ b/public/globe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/next.svg b/public/next.svg new file mode 100644 index 0000000..5174b28 --- /dev/null +++ b/public/next.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/vercel.svg b/public/vercel.svg new file mode 100644 index 0000000..7705396 --- /dev/null +++ b/public/vercel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/window.svg b/public/window.svg new file mode 100644 index 0000000..b2b2a44 --- /dev/null +++ b/public/window.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/scripts/seed.ts b/scripts/seed.ts new file mode 100644 index 0000000..c9b44e4 --- /dev/null +++ b/scripts/seed.ts @@ -0,0 +1,482 @@ +/** + * 作者: 阿瑞 + * 功能: 数据库填充脚本 (Seeding Script) + * 版本: 2.0.0 + * + * 运行方式: npx tsx scripts/seed.ts + */ + +import mongoose from 'mongoose'; +import fs from 'fs'; +import path from 'path'; +import bcrypt from 'bcryptjs'; +import { + User, + Article, + SystemConfig, + Comment, + Order, + MembershipPlan, + Category, + Tag +} from '../src/models/index'; + +// ------------------------------------------------------------------ +// 1. 环境配置加载 (手动读取 .env.local,避免依赖 dotenv) +// ------------------------------------------------------------------ +const loadEnv = () => { + const envPath = path.resolve(process.cwd(), '.env.local'); + if (fs.existsSync(envPath)) { + console.log('📄 正在加载 .env.local 配置...'); + const envConfig = fs.readFileSync(envPath, 'utf8'); + envConfig.split('\n').forEach((line) => { + const parts = line.split('='); + if (parts.length >= 2) { + const key = parts[0].trim(); + const value = parts.slice(1).join('=').trim(); + if (key && value && !key.startsWith('#')) { + process.env[key] = value; + } + } + }); + } else { + console.warn('⚠️ 未找到 .env.local 文件,尝试使用系统环境变量...'); + } +}; + +loadEnv(); + +const MONGODB_URI = process.env.MONGODB_URI; + +if (!MONGODB_URI) { + console.error('❌ 错误: MONGODB_URI 未定义,请检查 .env.local 文件'); + process.exit(1); +} + +// ------------------------------------------------------------------ +// 2. 辅助函数 +// ------------------------------------------------------------------ +const getRandomInt = (min: number, max: number) => Math.floor(Math.random() * (max - min + 1)) + min; +const getRandomItem = (arr: T[]): T => arr[Math.floor(Math.random() * arr.length)]; +const getRandomItems = (arr: T[], count: number): T[] => { + const shuffled = [...arr].sort(() => 0.5 - Math.random()); + return shuffled.slice(0, count); +}; + +// ------------------------------------------------------------------ +// 3. 主逻辑 +// ------------------------------------------------------------------ +const seed = async () => { + try { + console.log('🔌 正在连接数据库...'); + await mongoose.connect(MONGODB_URI); + console.log('✅ 数据库连接成功'); + + console.log('🧹 正在清理旧数据...'); + await Promise.all([ + User.deleteMany({}), + Article.deleteMany({}), + SystemConfig.deleteMany({}), + Comment.deleteMany({}), + Order.deleteMany({}), + MembershipPlan.deleteMany({}), + Category.deleteMany({}), + Tag.deleteMany({}) + ]); + console.log('✅ 旧数据清理完成'); + + // -------------------------------------------------------------- + // 4. 创建基础数据 + // -------------------------------------------------------------- + + // --- 4.1 系统配置 --- + console.log('⚙️ 创建系统配置...'); + await SystemConfig.create({ + 配置标识: 'default', + 站点设置: { + 网站标题: 'AOUN - 独立开发者资源站', + 网站副标题: '构建你的数字资产', + Logo地址: '/LOGO.png', + 全局SEO关键词: 'React, Next.js, AI, 独立开发, 源码下载', + 全局SEO描述: 'AOUN 是一个专注于分享高质量编程资源、AI 实战教程和独立开发经验的平台。', + 底部版权信息: '© 2025 AounApp. All Rights Reserved.' + }, + Banner配置: [ + { + 标题: 'Next.js 15 全栈实战', + 描述: '深入探索 Next.js 15 的最新特性,从 App Router 到 Server Actions,构建高性能全栈应用。', + 图片地址: 'https://images.unsplash.com/photo-1618477247222-ac59124545da?q=80&w=2070&auto=format&fit=crop', + 按钮文本: '立即学习', + 按钮链接: '/article/nextjs-15-fullstack', + 状态: 'visible' + }, + { + 标题: 'AI Agent 开发指南', + 描述: '掌握 LLM 应用开发核心,使用 LangChain 和 OpenAI 构建智能体。', + 图片地址: 'https://images.unsplash.com/photo-1677442136019-21780ecad995?q=80&w=2070&auto=format&fit=crop', + 按钮文本: '查看教程', + 按钮链接: '/article/ai-agent-guide', + 状态: 'visible' + }, + { + 标题: '独立开发变现之路', + 描述: '分享从 0 到 1 的产品构建、推广与商业化经验。', + 图片地址: 'https://images.unsplash.com/photo-1553729459-efe14ef6055d?q=80&w=2070&auto=format&fit=crop', + 按钮文本: '阅读专栏', + 按钮链接: '/category/indie-hacker', + 状态: 'visible' + } + ], + AI配置列表: [ + { + 名称: '写作助手-Gemini', + 接口地址: 'https://generativelanguage.googleapis.com/v1beta/openai', + API密钥: process.env.GEMINI_API_KEY || 'dummy-key', + 模型: 'gemini-1.5-flash', + 系统提示词: '你是一个专业的技术写作助手,擅长撰写清晰、有深度的技术文章。', + 是否启用: true, + 流式传输: true + } + ] + }); + + // --- 4.2 会员套餐 --- + console.log('💎 创建会员套餐...'); + const plans = await MembershipPlan.create([ + { + 套餐名称: '月度会员', + 有效天数: 30, + 价格: 29.9, + 描述: '适合短期突击学习,畅享一个月无限下载', + 特权配置: { 每日下载限制: 20, 购买折扣: 0.9 } + }, + { + 套餐名称: '年度会员', + 有效天数: 365, + 价格: 299, + 描述: '超值推荐,全年无忧学习,低至 0.8 元/天', + 特权配置: { 每日下载限制: 100, 购买折扣: 0.7 } + }, + { + 套餐名称: '永久会员', + 有效天数: 36500, + 价格: 999, + 描述: '一次付费,终身受益,尊享所有未来更新', + 特权配置: { 每日下载限制: 9999, 购买折扣: 0.5 } + } + ]); + + // --- 4.3 分类与标签 --- + console.log('🏷️ 创建分类与标签...'); + const categories = await Category.create([ + { 分类名称: '全栈开发', 别名: 'fullstack', 排序权重: 10 }, + { 分类名称: 'AI 工程化', 别名: 'ai-engineering', 排序权重: 9 }, + { 分类名称: '系统设计', 别名: 'system-design', 排序权重: 8 }, + { 分类名称: '独立开发', 别名: 'indie-hacker', 排序权重: 7 }, + { 分类名称: '源码资源', 别名: 'resources', 排序权重: 6 } + ]); + + const tags = await Tag.create([ + { 标签名称: 'Next.js' }, { 标签名称: 'React' }, { 标签名称: 'TypeScript' }, + { 标签名称: 'TailwindCSS' }, { 标签名称: 'Node.js' }, { 标签名称: 'PostgreSQL' }, + { 标签名称: 'MongoDB' }, { 标签名称: 'Docker' }, { 标签名称: 'LangChain' }, + { 标签名称: 'OpenAI' }, { 标签名称: 'RAG' }, { 标签名称: 'SaaS' } + ]); + + // --- 4.4 用户 --- + console.log('👥 创建用户...'); + + // 加密密码 + const adminPassword = await bcrypt.hash('admin@aoun.ltd', 10); + const userPassword = await bcrypt.hash('123456', 10); + + const adminUser = await User.create({ + 用户名: 'Admin', + 邮箱: 'admin@aoun.ltd', + 密码: adminPassword, + 角色: 'admin', + 头像: 'https://api.dicebear.com/7.x/avataaars/svg?seed=admin', + 钱包: { 当前积分: 99999, 历史总消费: 0 } + }); + + const demoUsers = await User.create([ + { + 用户名: 'Alex', + 邮箱: 'alex@example.com', + 密码: userPassword, + 角色: 'user', + 头像: 'https://api.dicebear.com/7.x/avataaars/svg?seed=Alex', + 钱包: { 当前积分: 50, 历史总消费: 100 } + }, + { + 用户名: 'Sarah', + 邮箱: 'sarah@example.com', + 密码: userPassword, + 角色: 'user', + 头像: 'https://api.dicebear.com/7.x/avataaars/svg?seed=Sarah', + 会员信息: { + 当前等级ID: plans[1]._id, // 年度会员 + 过期时间: new Date(Date.now() + 365 * 24 * 60 * 60 * 1000) + } + }, + { + 用户名: 'Developer', + 邮箱: 'dev@example.com', + 密码: userPassword, + 角色: 'editor', + 头像: 'https://api.dicebear.com/7.x/avataaars/svg?seed=Dev' + } + ]); + + const allUsers = [adminUser, ...demoUsers]; + + // --- 4.5 文章/资源 --- + console.log('📚 创建文章与资源...'); + const articlesData = [ + { + title: 'Next.js 15 App Router 深度解析与最佳实践', + summary: '全面解析 Next.js 15 的 App Router 架构,探讨 Server Components、Server Actions 以及流式渲染的最佳实践。', + content: ` +## 引言 + +Next.js 15 带来了革命性的变化,App Router 彻底改变了我们构建 React 应用的方式。本文将带你深入了解其核心概念。 + +## Server Components + +React Server Components (RSC) 允许我们在服务器端渲染组件,减少发送到客户端的 JavaScript 体积。 + +\`\`\`tsx +async function GetData() { + const res = await fetch('https://api.example.com/data'); + return res.json(); +} + +export default async function Page() { + const data = await GetData(); + return
{data.title}
; +} +\`\`\` + +## Server Actions + +不再需要单独的 API 路由,直接在组件中定义服务器端逻辑。 + +## 总结 + +掌握 App Router 是成为现代 React 全栈开发者的关键。 + `, + category: '全栈开发', + tags: ['Next.js', 'React', 'TypeScript'], + isPaid: false + }, + { + title: '构建企业级 RAG 应用:从原理到实战', + summary: '基于 LangChain 和 Vector Database,手把手教你搭建一个能够理解私有数据的 AI 知识库问答系统。', + content: ` +## 什么是 RAG? + +检索增强生成 (Retrieval-Augmented Generation) 是解决 LLM 幻觉和知识过时的有效方案。 + +## 架构设计 + +1. **文档加载与切分**:使用 LangChain Loader。 +2. **向量化 (Embedding)**:使用 OpenAI Embedding 模型。 +3. **向量数据库**:使用 Pinecone 或 Milvus。 +4. **检索与生成**:构建 Prompt,结合检索结果和 LLM。 + +## 代码实现 + +\`\`\`python +from langchain.chains import RetrievalQA +from langchain.llms import OpenAI + +qa = RetrievalQA.from_chain_type( + llm=OpenAI(), + chain_type="stuff", + retriever=docsearch.as_retriever() +) +\`\`\` + `, + category: 'AI 工程化', + tags: ['LangChain', 'RAG', 'OpenAI'], + isPaid: true + }, + { + title: 'SaaS 产品设计与系统架构指南', + summary: '如何设计一个高可用、多租户的 SaaS 系统?本文涵盖数据库设计、权限管理及计费系统实现。', + content: ` +## 多租户架构 + +选择合适的隔离策略: +- **Database per Tenant**:最高隔离性,成本高。 +- **Schema per Tenant**:平衡方案。 +- **Discriminator Column**:共享表,成本最低,开发复杂度高。 + +## 权限系统 (RBAC) + +设计灵活的角色和权限模型是 SaaS 的核心。 + +## 计费集成 + +集成 Stripe 或 Lemon Squeezy 实现订阅支付。 + `, + category: '系统设计', + tags: ['SaaS', 'System Design', 'PostgreSQL'], + isPaid: true + }, + { + title: '独立开发者如何寻找 Profitable Niche', + summary: '避开红海竞争,发现细分市场的机会。分享 5 个验证产品构想的低成本方法。', + content: ` +## 寻找痛点 + +最好的产品往往源于开发者自己的痛点。 + +## 验证想法 + +1. **Landing Page MVP**:先做落地页,收集邮箱。 +2. **Pre-sale**:尝试预售。 +3. **社区反馈**:在 Reddit 或 Product Hunt 发布。 + +## 案例分析 + +分析几个成功的独立开发产品案例... + `, + category: '独立开发', + tags: ['Indie Hacker', 'SaaS'], + isPaid: false + }, + { + title: 'React 19 Hook 使用指南', + summary: 'React 19 带来了 use()、useOptimistic() 等新 Hook,本文详细介绍它们的用法和场景。', + content: ` +## use() Hook + +\`use()\` 是一个新的 API,用于在组件中读取 Promise 或 Context 的值。 + +\`\`\`tsx +import { use } from 'react'; + +function Message({ messagePromise }) { + const message = use(messagePromise); + return

{message}

; +} +\`\`\` + +## useOptimistic + +用于处理乐观 UI 更新,提升用户体验。 + `, + category: '全栈开发', + tags: ['React', 'Next.js'], + isPaid: false + } + ]; + + const articles = []; + for (let i = 0; i < articlesData.length; i++) { + const data = articlesData[i]; + const cat = categories.find(c => c.分类名称 === data.category) || categories[0]; + const articleTags = tags.filter(t => data.tags.includes(t.标签名称)); + const author = adminUser; // Admin 发布文章 + + articles.push({ + 文章标题: data.title, + URL别名: `article-${i + 1}`, + 封面图: `https://picsum.photos/seed/${i + 100}/800/450`, + 摘要: data.summary, + 正文内容: data.content, + SEO关键词: [data.category, ...data.tags], + SEO描述: data.summary, + 作者ID: author._id, + 分类ID: cat._id, + 标签ID列表: articleTags.map(t => t._id), + 价格: data.isPaid ? 29.9 : 0, + 支付方式: 'points', + 资源属性: data.isPaid ? { + 下载链接: 'https://pan.baidu.com/s/demo-link', + 提取码: '8888', + 解压密码: 'aounapp.com' + } : {}, + 统计数据: { + 阅读数: getRandomInt(100, 5000), + 点赞数: getRandomInt(10, 500), + 评论数: 0, + 收藏数: getRandomInt(5, 200) + }, + 发布状态: 'published' + }); + } + + const createdArticles = await Article.insertMany(articles); + + // --- 4.6 评论 --- + console.log('💬 创建评论...'); + const comments = []; + for (const article of createdArticles) { + const commentCount = getRandomInt(0, 3); + for (let j = 0; j < commentCount; j++) { + const user = getRandomItem(demoUsers); + comments.push({ + 文章ID: article._id, + 用户ID: user._id, + 评论内容: `这篇文章写得很好,对我帮助很大!期待更多关于 ${article.SEO关键词[0]} 的内容。`, + 点赞数: getRandomInt(0, 10), + 状态: 'visible' + }); + } + } + await Comment.insertMany(comments); + + // 更新文章评论数 + for (const article of createdArticles) { + const count = comments.filter(c => c.文章ID === article._id).length; + await Article.findByIdAndUpdate(article._id, { '统计数据.评论数': count }); + } + + // --- 4.7 订单 --- + console.log('🧾 创建订单...'); + const orders = []; + for (let k = 0; k < 3; k++) { + const user = getRandomItem(demoUsers); + const plan = getRandomItem(plans); + orders.push({ + 订单号: `ORDER${Date.now()}${k}`, + 用户ID: user._id, + 订单类型: 'buy_membership', + 商品ID: plan._id, + 商品快照: { + 标题: plan.套餐名称, + 封面: '/images/membership.png' + }, + 支付金额: plan.价格, + 支付方式: 'alipay', + 订单状态: 'paid', + 支付时间: new Date() + }); + } + await Order.insertMany(orders); + + console.log('✨ 数据库填充完成!'); + console.log(` +📊 数据统计: +- 用户: ${allUsers.length} (管理员: admin@aoun.ltd / admin@aoun.ltd) +- 文章: ${createdArticles.length} +- 评论: ${comments.length} +- 订单: ${orders.length} +- 分类: ${categories.length} +- 标签: ${tags.length} +- 会员套餐: ${plans.length} + `); + + } catch (error) { + console.error('❌ 数据库填充失败:', error); + process.exit(1); + } finally { + await mongoose.disconnect(); + console.log('👋 数据库连接已断开'); + process.exit(0); + } +}; + +seed(); diff --git a/src/components/admin/AdminLayout.tsx b/src/components/admin/AdminLayout.tsx new file mode 100644 index 0000000..47187d6 --- /dev/null +++ b/src/components/admin/AdminLayout.tsx @@ -0,0 +1,160 @@ +import React from 'react'; +import Link from 'next/link'; +import { useRouter } from 'next/router'; +import { + LayoutDashboard, + Users, + FileText, + Settings, + LogOut, + Menu, + ShoppingBag, + MessageSquare, + CreditCard, + Image, + Bot +} from 'lucide-react'; +import { Button } from '@/components/ui/button'; +import { cn } from '@/lib/utils'; + +interface AdminLayoutProps { + children: React.ReactNode; +} + +const sidebarItems = [ + { icon: LayoutDashboard, label: '仪表盘', href: '/admin' }, + { icon: Users, label: '用户管理', href: '/admin/users' }, + { icon: FileText, label: '资源管理', href: '/admin/articles' }, + { icon: MessageSquare, label: '评论管理', href: '/admin/comments' }, + { icon: ShoppingBag, label: '订单管理', href: '/admin/orders' }, + { icon: Image, label: 'Banner 管理', href: '/admin/banners' }, + { icon: Bot, label: 'AI 助手', href: '/admin/ai' }, + { icon: Settings, label: '系统设置', href: '/admin/settings' }, +]; + +export default function AdminLayout({ children }: AdminLayoutProps) { + const router = useRouter(); + const [isSidebarOpen, setIsSidebarOpen] = React.useState(true); + + const handleLogout = async () => { + // 简单的清除 Cookie 逻辑,实际可能需要调用 API + document.cookie = 'token=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;'; + router.push('/auth/login'); + }; + + // Close sidebar on route change (mobile only) + React.useEffect(() => { + const handleRouteChange = () => { + if (window.innerWidth < 1024) { + setIsSidebarOpen(false); + } + }; + + router.events.on('routeChangeStart', handleRouteChange); + return () => { + router.events.off('routeChangeStart', handleRouteChange); + }; + }, [router]); + + return ( +
+ {/* Sidebar */} + + + {/* Main Content Wrapper */} +
+ {/* Header */} +
+ +
+
+ 欢迎回来,管理员 +
+
+ Avatar +
+
+
+ + {/* Scrollable Page Content */} +
+ {children} +
+
+ + {/* Overlay for mobile sidebar */} + {isSidebarOpen && ( +
setIsSidebarOpen(false)} + /> + )} +
+ ); +} diff --git a/src/components/admin/ArticleEditor.tsx b/src/components/admin/ArticleEditor.tsx new file mode 100644 index 0000000..f20b098 --- /dev/null +++ b/src/components/admin/ArticleEditor.tsx @@ -0,0 +1,377 @@ +import React, { useEffect, useState } from 'react'; +import { useRouter } from 'next/router'; +import { Button } from '@/components/ui/button'; +import { Input } from '@/components/ui/input'; +import { Textarea } from '@/components/ui/textarea'; +import { Label } from '@/components/ui/label'; +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from '@/components/ui/select'; +import { Switch } from '@/components/ui/switch'; +import { Loader2, Save, ArrowLeft, Globe, Lock, Image as ImageIcon, FileText, DollarSign, Settings } from 'lucide-react'; +import { useForm, Controller } from 'react-hook-form'; +import TiptapEditor from './TiptapEditor'; +import { toast } from 'sonner'; + +interface Category { + _id: string; + 分类名称: string; +} + +interface Tag { + _id: string; + 标签名称: string; +} + +interface ArticleEditorProps { + mode: 'create' | 'edit'; + articleId?: string; +} + +export default function ArticleEditor({ mode, articleId }: ArticleEditorProps) { + const router = useRouter(); + const [loading, setLoading] = useState(mode === 'edit'); + const [saving, setSaving] = useState(false); + const [categories, setCategories] = useState([]); + const [tags, setTags] = useState([]); + + + const { register, handleSubmit, control, reset, setValue, watch } = useForm({ + defaultValues: { + 文章标题: '', + URL别名: '', + 封面图: '', + 摘要: '', + 正文内容: '', + SEO关键词: '', + SEO描述: '', + 分类ID: '', + 标签ID列表: [] as string[], + 价格: 0, + 支付方式: 'points', + 资源属性: { + 下载链接: '', + 提取码: '', + 解压密码: '', + 隐藏内容: '' + }, + 发布状态: 'published' + } + }); + + useEffect(() => { + fetchDependencies(); + if (mode === 'edit' && articleId) { + fetchArticle(); + } + }, [mode, articleId]); + + const fetchDependencies = async () => { + try { + const [catRes, tagRes] = await Promise.all([ + fetch('/api/admin/categories'), + fetch('/api/admin/tags') + ]); + if (catRes.ok) setCategories(await catRes.json()); + if (tagRes.ok) setTags(await tagRes.json()); + } catch (error) { + console.error('Failed to fetch dependencies', error); + toast.error('加载分类标签失败'); + } + }; + + const fetchArticle = async () => { + setLoading(true); + try { + const res = await fetch(`/api/admin/articles/${articleId}`); + const data = await res.json(); + if (res.ok) { + const formData = { + ...data, + 分类ID: data.分类ID?._id || '', + 标签ID列表: data.标签ID列表?.map((t: any) => t._id) || [], + SEO关键词: data.SEO关键词?.join(',') || '' + }; + reset(formData); + + } else { + toast.error('加载文章失败'); + } + } catch (error) { + console.error('Failed to fetch article', error); + toast.error('加载文章出错'); + } finally { + setLoading(false); + } + }; + + const onSubmit = async (data: any) => { + + + setSaving(true); + try { + const payload = { + ...data, + SEO关键词: data.SEO关键词.split(/[,,]/).map((k: string) => k.trim()).filter(Boolean), + 价格: Number(data.价格) + }; + + const url = mode === 'edit' ? `/api/admin/articles/${articleId}` : '/api/admin/articles'; + const method = mode === 'edit' ? 'PUT' : 'POST'; + + const res = await fetch(url, { + method, + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(payload), + }); + + if (res.ok) { + toast.success('保存成功'); + router.push('/admin/articles'); + } else { + const err = await res.json(); + toast.error(`保存失败: ${err.message || '未知错误'}`); + } + } catch (error) { + console.error('Failed to save article', error); + toast.error('保存出错'); + } finally { + setSaving(false); + } + }; + + if (loading) { + return ( +
+ +
+ ); + } + + return ( +
+ {/* Top Bar */} +
+
+ +
+ + {mode === 'edit' ? '编辑文章' : '撰写新文章'} + + {watch('发布状态') === 'published' && ( + + 已发布 + + )} +
+
+
+ +
+
+ + {/* Main Editor Area */} +
+ {/* Left: Content Editor */} +
+
+ {/* Title Input */} + + + {/* Tiptap Editor */} + ( + + )} + /> +
+
+ + {/* Right: Sidebar Settings */} +
+ {/* Publishing */} +
+

+ 发布设置 +

+
+
+ + ( + + )} + /> +
+
+ + +
+
+
+ +
+ + {/* Organization */} +
+

+ 分类与标签 +

+
+
+ + ( + + )} + /> +
+
+ +
+ + +
+
+
+
+ +
+ + {/* Resource Delivery */} +
+

+ 资源交付 +

+
+
+ + +
+
+
+ + +
+
+ + +
+
+
+
+ +
+ + {/* Sales */} +
+

+ 售卖策略 +

+
+
+ + ( + + )} + /> +
+
+ + +
+
+
+ +
+ + {/* SEO */} +
+

SEO 设置

+
+
+ +