From 5283ae26fb618b7efccb43f72445d2d2d1dbe87b Mon Sep 17 00:00:00 2001 From: Sarah Simionescu Date: Wed, 6 May 2026 17:17:49 -0700 Subject: [PATCH 1/5] feat: add TrustClaw template Adds solutions/trustclaw - a self-hostable personal AI agent built on Composio's tool router. Two deploy paths in the README: Vercel deploy button (standard) and the published @composio/trustclaw CLI which auto- provisions Postgres + Redis and walks through Composio + Telegram setup. Canonical source: https://github.com/ComposioHQ/trustclaw --- solutions/trustclaw/.env.example | 38 + solutions/trustclaw/.gitignore | 78 + solutions/trustclaw/.npmrc | 2 + solutions/trustclaw/LICENSE | 21 + solutions/trustclaw/README.md | 152 + solutions/trustclaw/components.json | 23 + solutions/trustclaw/eslint.config.js | 49 + solutions/trustclaw/next.config.js | 90 + solutions/trustclaw/package.json | 100 + solutions/trustclaw/pnpm-lock.yaml | 10333 ++++++++++++++++ solutions/trustclaw/postcss.config.js | 5 + solutions/trustclaw/prisma.config.ts | 23 + solutions/trustclaw/prisma/schema.prisma | 204 + solutions/trustclaw/public/favicon.ico | Bin 0 -> 15406 bytes .../images/clawd_clothing/briefcase.svg | 3 + .../public/images/clawd_clothing/coffee.svg | 42 + .../public/images/clawd_clothing/hat.svg | 19 + .../public/images/clawd_clothing/heart.svg | 17 + .../public/images/clawd_clothing/iphone.svg | 3 + .../images/clawd_clothing/nerd-glasses.svg | 6 + .../public/images/clawd_clothing/pom-pom.svg | 27 + .../images/clawd_clothing/sunglasses.svg | 19 + .../public/images/elements/circle.svg | 22 + .../public/images/elements/circle_2.svg | 15 + .../images/elements/circle_rays_right.svg | 195 + .../public/images/elements/circle_tunnel.svg | 33 + .../trustclaw/public/images/elements/cube.svg | 25 + .../public/images/elements/diamond.svg | 45 + .../public/images/elements/glitch_map.svg | 47 + .../images/elements/glitch_rectangles.svg | 36 + .../public/images/elements/layers.svg | 106 + .../images/elements/layers_centered.svg | 111 + .../public/images/elements/logo_rays_left.svg | 18 + .../public/images/elements/parallelagon.svg | 30 + .../public/images/elements/quarter_circle.svg | 11 + .../public/images/elements/rays_left.svg | 143 + .../public/images/elements/rays_right.svg | 173 + .../public/images/icons/discord.webp | Bin 0 -> 1332 bytes .../trustclaw/public/images/icons/slack.png | Bin 0 -> 4212 bytes .../trustclaw/public/images/icons/slack.svg | 1 + .../images/logo/ComposioTransparent.png | Bin 0 -> 6913 bytes .../public/images/logo/supermemory_full.svg | 8 + .../public/images/logo/supermemory_icon.svg | 3 + .../public/images/logos/airtable.svg | 13 + .../trustclaw/public/images/logos/asana.svg | 15 + .../trustclaw/public/images/logos/discord.svg | 15 + .../trustclaw/public/images/logos/dropbox.svg | 7 + .../trustclaw/public/images/logos/figma.svg | 14 + .../trustclaw/public/images/logos/github.svg | 10 + .../trustclaw/public/images/logos/gmail.svg | 14 + .../public/images/logos/googlecalendar.svg | 23 + .../public/images/logos/googledocs.svg | 60 + .../public/images/logos/googledrive.svg | 20 + .../public/images/logos/googlesheets.svg | 12 + .../trustclaw/public/images/logos/hubspot.svg | 10 + .../trustclaw/public/images/logos/jira.svg | 15 + .../trustclaw/public/images/logos/linear.svg | 15 + .../trustclaw/public/images/logos/notion.svg | 11 + .../trustclaw/public/images/logos/reddit.svg | 115 + .../trustclaw/public/images/logos/slack.svg | 22 + .../trustclaw/public/images/logos/stripe.svg | 10 + .../public/images/logos/supabase.svg | 20 + .../public/images/logos/telegram.svg | 55 + .../trustclaw/public/images/logos/todoist.svg | 1 + .../trustclaw/public/images/logos/trello.svg | 19 + .../public/images/logos/whatsapp.svg | 84 + .../public/images/platform/customer.png | Bin 0 -> 143863 bytes .../public/images/platform/platform.png | Bin 0 -> 50564 bytes .../public/images/testimonials/karan.jpg | Bin 0 -> 26640 bytes .../public/images/testimonials/palash.jpg | Bin 0 -> 23301 bytes .../public/images/testimonials/sarah.jpg | Bin 0 -> 26013 bytes .../public/images/testimonials/soham.jpg | Bin 0 -> 31094 bytes .../assistant-message/assistant-message.tsx | 139 + .../chat/assistant-message/prose-classes.ts | 2 + .../assistant-message/thinking-indicator.tsx | 23 + .../chat/assistant-message/thinking-words.ts | 90 + .../assistant-message/tool-call-segment.tsx | 102 + .../dashboard/_components/chat/chat-input.tsx | 104 + .../dashboard/_components/chat/chat-view.tsx | 239 + .../_components/chat/composio-cta.tsx | 31 + .../_components/chat/source-badge.tsx | 28 + .../chat/trustclaw-chat.skeleton.tsx | 35 + .../_components/chat/trustclaw-chat.tsx | 49 + .../_components/chat/user-message.tsx | 53 + .../_components/dashboard-navbar.tsx | 151 + .../_components/onboarding/emoji-step.tsx | 46 + .../onboarding/integrations-step.skeleton.tsx | 22 + .../onboarding/integrations-step.tsx | 177 + .../_components/onboarding/lore-step.tsx | 45 + .../_components/onboarding/model-step.tsx | 62 + .../_components/onboarding/name-step.tsx | 34 + .../onboarding/onboarding-claw-logo.tsx | 326 + .../onboarding/onboarding-client.tsx | 34 + .../onboarding/onboarding.consts.ts | 98 + .../onboarding/onboarding.skeleton.tsx | 21 + .../_components/onboarding/onboarding.tsx | 350 + .../onboarding/onboarding.variants.ts | 14 + .../onboarding/personality-step.tsx | 50 + .../_components/onboarding/progress-dots.tsx | 27 + .../_components/onboarding/step-layout.tsx | 85 + .../_components/onboarding/telegram-step.tsx | 159 + .../onboarding/writing-style-step.tsx | 50 + .../dashboard/_components/terminal-store.ts | 11 + .../terminal/terminal-log-entry.tsx | 201 + .../_components/terminal/terminal-pane.tsx | 142 + .../_components/terminal/tool-invocation.tsx | 136 + .../dashboard/_components/terminal/types.ts | 43 + .../connections/connection-tool-result.tsx | 131 + .../tool-results/connections/schema.ts | 79 + .../_components/tool-results/envelope.ts | 17 + .../tool-results/multi-exec/schema.ts | 127 + .../tool-results/search-tools/schema.ts | 79 + .../search-tools/search-tool-result.tsx | 399 + .../tool-results/workbench/schema.ts | 78 + .../workbench/workbench-tool-result.tsx | 185 + .../dashboard/_components/use-chat-hook.ts | 77 + .../app/(authenticated)/dashboard/layout.tsx | 20 + .../app/(authenticated)/dashboard/loading.tsx | 5 + .../app/(authenticated)/dashboard/page.tsx | 34 + .../_components/cron-jobs-settings.tsx | 177 + .../settings/_components/danger-zone.tsx | 121 + .../settings/_components/memory-settings.tsx | 60 + .../settings/_components/model-settings.tsx | 122 + .../_components/settings-page-client.tsx | 79 + .../_components/settings-page.skeleton.tsx | 33 + .../_components/telegram-settings.tsx | 185 + .../dashboard/settings/page.tsx | 16 + .../toolkits/_components/toolkit-card.tsx | 131 + .../toolkits/_components/toolkit-search.tsx | 27 + .../_components/toolkits-client.skeleton.tsx | 26 + .../toolkits/_components/toolkits-client.tsx | 162 + .../dashboard/toolkits/page.tsx | 14 + .../src/app/(authenticated)/layout.tsx | 29 + .../app/_components/bottom-cta-section.tsx | 37 + .../src/app/_components/chat-mockup.tsx | 192 + .../app/_components/comparison-section.tsx | 143 + .../src/app/_components/composio-wordmark.tsx | 55 + .../src/app/_components/features-section.tsx | 251 + .../_components/floating-prompts-section.tsx | 201 + .../src/app/_components/hero-section.tsx | 177 + .../src/app/_components/landing-nav.tsx | 22 + .../src/app/_components/landing-page.tsx | 29 + .../src/app/_components/openclaw-logo.tsx | 77 + .../src/app/_components/security-section.tsx | 68 + .../app/_components/testimonials-section.tsx | 140 + .../src/app/_components/trustclaw-brand.tsx | 74 + .../src/app/api/auth/[...all]/route.ts | 4 + solutions/trustclaw/src/app/api/chat/route.ts | 139 + .../src/app/api/chat/stream-store.ts | 29 + .../cron/trustclaw/execute/route.schema.ts | 21 + .../app/api/cron/trustclaw/execute/route.ts | 168 + .../src/app/api/cron/trustclaw/route.ts | 153 + .../_telegram-webhook.schema.ts | 35 + .../src/app/api/telegram-webhook/route.ts | 236 + .../src/app/api/trpc/[trpc]/route.ts | 35 + solutions/trustclaw/src/app/global-error.tsx | 35 + solutions/trustclaw/src/app/layout.tsx | 45 + .../src/app/login/_components/login-page.tsx | 172 + solutions/trustclaw/src/app/login/page.tsx | 35 + solutions/trustclaw/src/app/page.tsx | 30 + .../trustclaw/src/clients/auth/react.tsx | 8 + .../trustclaw/src/clients/trpc/errors.ts | 38 + solutions/trustclaw/src/clients/trpc/index.ts | 5 + .../src/clients/trpc/query-client.ts | 26 + .../trustclaw/src/clients/trpc/react.tsx | 73 + .../trustclaw/src/clients/trpc/server.ts | 42 + .../trustclaw/src/clients/trpc/shared.ts | 10 + .../src/components/core/animate-on-view.tsx | 63 + .../src/components/core/confirm-dialog.tsx | 93 + .../src/components/core/error-boundary.tsx | 53 + .../src/components/core/error-display.tsx | 40 + .../src/components/core/search-input.tsx | 43 + .../src/components/core/theme-provider.tsx | 16 + .../src/components/core/theme-toggle.tsx | 27 + .../components/core/toast-notifications.tsx | 31 + .../src/components/core/virtualized-list.tsx | 105 + .../src/components/ui/alert-dialog.tsx | 196 + .../trustclaw/src/components/ui/badge.tsx | 48 + .../trustclaw/src/components/ui/button.tsx | 64 + .../trustclaw/src/components/ui/card.tsx | 92 + .../src/components/ui/checkbox-group.tsx | 182 + .../trustclaw/src/components/ui/checkbox.tsx | 32 + .../src/components/ui/collapsible.tsx | 33 + .../trustclaw/src/components/ui/dialog.tsx | 158 + .../trustclaw/src/components/ui/form.tsx | 167 + .../trustclaw/src/components/ui/input.tsx | 21 + .../trustclaw/src/components/ui/label.tsx | 24 + .../trustclaw/src/components/ui/popover.tsx | 89 + .../trustclaw/src/components/ui/progress.tsx | 31 + .../src/components/ui/radio-group.tsx | 45 + .../trustclaw/src/components/ui/select.tsx | 190 + .../trustclaw/src/components/ui/separator.tsx | 28 + .../trustclaw/src/components/ui/sheet.tsx | 143 + .../trustclaw/src/components/ui/skeleton.tsx | 15 + .../trustclaw/src/components/ui/switch.tsx | 35 + .../trustclaw/src/components/ui/table.tsx | 116 + .../trustclaw/src/components/ui/tabs.tsx | 91 + .../trustclaw/src/components/ui/textarea.tsx | 18 + .../trustclaw/src/components/ui/tooltip.tsx | 57 + solutions/trustclaw/src/env.ts | 65 + solutions/trustclaw/src/lib/utils.ts | 6 + solutions/trustclaw/src/server/api/root.ts | 13 + .../src/server/api/routers/health/index.ts | 6 + .../server/api/routers/health/ping.schema.ts | 8 + .../src/server/api/routers/health/ping.ts | 5 + .../routers/toolkits/getAuthLink.schema.ts | 7 + .../api/routers/toolkits/getAuthLink.ts | 35 + .../routers/toolkits/getToolkits.schema.ts | 20 + .../api/routers/toolkits/getToolkits.ts | 41 + .../src/server/api/routers/toolkits/index.ts | 8 + .../agent/compaction/memory-flush.ts | 99 + .../trustclaw/agent/compaction/prompts.ts | 222 + .../agent/compaction/run-compaction.ts | 236 + .../trustclaw/agent/context/build-context.ts | 284 + .../agent/context/context-pruning.ts | 150 + .../trustclaw/agent/context/context-window.ts | 5 + .../agent/context/token-estimation.ts | 93 + .../routers/trustclaw/agent/error-parser.ts | 44 + .../api/routers/trustclaw/agent/index.ts | 8 + .../api/routers/trustclaw/agent/setup.ts | 277 + .../trustclaw/agent/strip-tool-echoes.ts | 5 + .../routers/trustclaw/agent/system-prompt.ts | 196 + .../trustclaw/agent/tools/cron-utils.ts | 30 + .../routers/trustclaw/agent/tools/index.ts | 12 + .../agent/tools/memory-save.schema.ts | 7 + .../trustclaw/agent/tools/memory-save.ts | 31 + .../agent/tools/memory-search.schema.ts | 11 + .../trustclaw/agent/tools/memory-search.ts | 94 + .../trustclaw/agent/tools/schedule.schema.ts | 25 + .../routers/trustclaw/agent/tools/schedule.ts | 106 + .../api/routers/trustclaw/agent/types.ts | 43 + .../trustclaw/checkConnectionStatus.schema.ts | 9 + .../trustclaw/checkConnectionStatus.ts | 25 + .../trustclaw/createInstance.schema.ts | 17 + .../api/routers/trustclaw/createInstance.ts | 172 + .../routers/trustclaw/deleteCronJob.schema.ts | 7 + .../api/routers/trustclaw/deleteCronJob.ts | 39 + .../trustclaw/deleteInstance.schema.ts | 5 + .../api/routers/trustclaw/deleteInstance.ts | 34 + .../routers/trustclaw/getCronJobs.schema.ts | 8 + .../api/routers/trustclaw/getCronJobs.ts | 47 + .../routers/trustclaw/getHistory.schema.ts | 8 + .../api/routers/trustclaw/getHistory.ts | 48 + .../routers/trustclaw/getInstance.schema.ts | 5 + .../api/routers/trustclaw/getInstance.ts | 49 + .../getIntegrationAuthLinks.schema.ts | 17 + .../trustclaw/getIntegrationAuthLinks.ts | 58 + .../routers/trustclaw/getMemories.schema.ts | 16 + .../api/routers/trustclaw/getMemories.ts | 44 + .../server/api/routers/trustclaw/getStatus.ts | 22 + .../routers/trustclaw/getStreamingMessage.ts | 19 + .../src/server/api/routers/trustclaw/index.ts | 36 + .../routers/trustclaw/linkTelegram.schema.ts | 8 + .../api/routers/trustclaw/linkTelegram.ts | 75 + .../trustclaw/saveOnboardingState.schema.ts | 29 + .../routers/trustclaw/saveOnboardingState.ts | 34 + .../routers/trustclaw/toggleCronJob.schema.ts | 8 + .../api/routers/trustclaw/toggleCronJob.ts | 56 + .../trustclaw/unlinkTelegram.schema.ts | 7 + .../api/routers/trustclaw/unlinkTelegram.ts | 32 + .../trustclaw/updateSettings.schema.ts | 21 + .../api/routers/trustclaw/updateSettings.ts | 45 + solutions/trustclaw/src/server/api/trpc.ts | 61 + solutions/trustclaw/src/server/auth.ts | 88 + .../trustclaw/src/server/clients/composio.ts | 10 + solutions/trustclaw/src/server/clients/db.ts | 31 + .../trustclaw/src/server/clients/redis.ts | 133 + .../trustclaw/src/server/clients/telegram.ts | 79 + solutions/trustclaw/src/styles/globals.css | 309 + solutions/trustclaw/tsconfig.json | 42 + solutions/trustclaw/turbo.json | 9 + solutions/trustclaw/vercel.json | 8 + 272 files changed, 27561 insertions(+) create mode 100644 solutions/trustclaw/.env.example create mode 100644 solutions/trustclaw/.gitignore create mode 100644 solutions/trustclaw/.npmrc create mode 100644 solutions/trustclaw/LICENSE create mode 100644 solutions/trustclaw/README.md create mode 100644 solutions/trustclaw/components.json create mode 100644 solutions/trustclaw/eslint.config.js create mode 100644 solutions/trustclaw/next.config.js create mode 100644 solutions/trustclaw/package.json create mode 100644 solutions/trustclaw/pnpm-lock.yaml create mode 100644 solutions/trustclaw/postcss.config.js create mode 100644 solutions/trustclaw/prisma.config.ts create mode 100644 solutions/trustclaw/prisma/schema.prisma create mode 100644 solutions/trustclaw/public/favicon.ico create mode 100644 solutions/trustclaw/public/images/clawd_clothing/briefcase.svg create mode 100644 solutions/trustclaw/public/images/clawd_clothing/coffee.svg create mode 100644 solutions/trustclaw/public/images/clawd_clothing/hat.svg create mode 100644 solutions/trustclaw/public/images/clawd_clothing/heart.svg create mode 100644 solutions/trustclaw/public/images/clawd_clothing/iphone.svg create mode 100644 solutions/trustclaw/public/images/clawd_clothing/nerd-glasses.svg create mode 100644 solutions/trustclaw/public/images/clawd_clothing/pom-pom.svg create mode 100644 solutions/trustclaw/public/images/clawd_clothing/sunglasses.svg create mode 100644 solutions/trustclaw/public/images/elements/circle.svg create mode 100644 solutions/trustclaw/public/images/elements/circle_2.svg create mode 100644 solutions/trustclaw/public/images/elements/circle_rays_right.svg create mode 100644 solutions/trustclaw/public/images/elements/circle_tunnel.svg create mode 100644 solutions/trustclaw/public/images/elements/cube.svg create mode 100644 solutions/trustclaw/public/images/elements/diamond.svg create mode 100644 solutions/trustclaw/public/images/elements/glitch_map.svg create mode 100644 solutions/trustclaw/public/images/elements/glitch_rectangles.svg create mode 100644 solutions/trustclaw/public/images/elements/layers.svg create mode 100644 solutions/trustclaw/public/images/elements/layers_centered.svg create mode 100644 solutions/trustclaw/public/images/elements/logo_rays_left.svg create mode 100644 solutions/trustclaw/public/images/elements/parallelagon.svg create mode 100644 solutions/trustclaw/public/images/elements/quarter_circle.svg create mode 100644 solutions/trustclaw/public/images/elements/rays_left.svg create mode 100644 solutions/trustclaw/public/images/elements/rays_right.svg create mode 100644 solutions/trustclaw/public/images/icons/discord.webp create mode 100644 solutions/trustclaw/public/images/icons/slack.png create mode 100644 solutions/trustclaw/public/images/icons/slack.svg create mode 100644 solutions/trustclaw/public/images/logo/ComposioTransparent.png create mode 100644 solutions/trustclaw/public/images/logo/supermemory_full.svg create mode 100644 solutions/trustclaw/public/images/logo/supermemory_icon.svg create mode 100644 solutions/trustclaw/public/images/logos/airtable.svg create mode 100644 solutions/trustclaw/public/images/logos/asana.svg create mode 100644 solutions/trustclaw/public/images/logos/discord.svg create mode 100644 solutions/trustclaw/public/images/logos/dropbox.svg create mode 100644 solutions/trustclaw/public/images/logos/figma.svg create mode 100644 solutions/trustclaw/public/images/logos/github.svg create mode 100644 solutions/trustclaw/public/images/logos/gmail.svg create mode 100644 solutions/trustclaw/public/images/logos/googlecalendar.svg create mode 100644 solutions/trustclaw/public/images/logos/googledocs.svg create mode 100644 solutions/trustclaw/public/images/logos/googledrive.svg create mode 100644 solutions/trustclaw/public/images/logos/googlesheets.svg create mode 100644 solutions/trustclaw/public/images/logos/hubspot.svg create mode 100644 solutions/trustclaw/public/images/logos/jira.svg create mode 100644 solutions/trustclaw/public/images/logos/linear.svg create mode 100644 solutions/trustclaw/public/images/logos/notion.svg create mode 100644 solutions/trustclaw/public/images/logos/reddit.svg create mode 100644 solutions/trustclaw/public/images/logos/slack.svg create mode 100644 solutions/trustclaw/public/images/logos/stripe.svg create mode 100644 solutions/trustclaw/public/images/logos/supabase.svg create mode 100644 solutions/trustclaw/public/images/logos/telegram.svg create mode 100644 solutions/trustclaw/public/images/logos/todoist.svg create mode 100644 solutions/trustclaw/public/images/logos/trello.svg create mode 100644 solutions/trustclaw/public/images/logos/whatsapp.svg create mode 100644 solutions/trustclaw/public/images/platform/customer.png create mode 100644 solutions/trustclaw/public/images/platform/platform.png create mode 100644 solutions/trustclaw/public/images/testimonials/karan.jpg create mode 100644 solutions/trustclaw/public/images/testimonials/palash.jpg create mode 100644 solutions/trustclaw/public/images/testimonials/sarah.jpg create mode 100644 solutions/trustclaw/public/images/testimonials/soham.jpg create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/assistant-message.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/prose-classes.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-indicator.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-words.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/tool-call-segment.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/chat-input.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/chat-view.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/composio-cta.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/source-badge.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/trustclaw-chat.skeleton.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/trustclaw-chat.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/user-message.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/dashboard-navbar.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/emoji-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/integrations-step.skeleton.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/integrations-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/lore-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/model-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/name-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/onboarding-claw-logo.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/onboarding-client.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/onboarding.consts.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/onboarding.skeleton.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/onboarding.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/onboarding.variants.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/personality-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/progress-dots.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/step-layout.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/telegram-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/onboarding/writing-style-step.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/terminal-store.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/terminal/terminal-log-entry.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/terminal/terminal-pane.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/terminal/tool-invocation.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/terminal/types.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/connections/connection-tool-result.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/connections/schema.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/envelope.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/multi-exec/schema.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/search-tools/schema.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/search-tools/search-tool-result.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/workbench/schema.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/tool-results/workbench/workbench-tool-result.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/_components/use-chat-hook.ts create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/layout.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/loading.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/page.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/_components/cron-jobs-settings.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/_components/danger-zone.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/_components/memory-settings.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/_components/model-settings.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/_components/settings-page-client.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/_components/settings-page.skeleton.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/_components/telegram-settings.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/settings/page.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/toolkits/_components/toolkit-card.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/toolkits/_components/toolkit-search.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/toolkits/_components/toolkits-client.skeleton.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/toolkits/_components/toolkits-client.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/dashboard/toolkits/page.tsx create mode 100644 solutions/trustclaw/src/app/(authenticated)/layout.tsx create mode 100644 solutions/trustclaw/src/app/_components/bottom-cta-section.tsx create mode 100644 solutions/trustclaw/src/app/_components/chat-mockup.tsx create mode 100644 solutions/trustclaw/src/app/_components/comparison-section.tsx create mode 100644 solutions/trustclaw/src/app/_components/composio-wordmark.tsx create mode 100644 solutions/trustclaw/src/app/_components/features-section.tsx create mode 100644 solutions/trustclaw/src/app/_components/floating-prompts-section.tsx create mode 100644 solutions/trustclaw/src/app/_components/hero-section.tsx create mode 100644 solutions/trustclaw/src/app/_components/landing-nav.tsx create mode 100644 solutions/trustclaw/src/app/_components/landing-page.tsx create mode 100644 solutions/trustclaw/src/app/_components/openclaw-logo.tsx create mode 100644 solutions/trustclaw/src/app/_components/security-section.tsx create mode 100644 solutions/trustclaw/src/app/_components/testimonials-section.tsx create mode 100644 solutions/trustclaw/src/app/_components/trustclaw-brand.tsx create mode 100644 solutions/trustclaw/src/app/api/auth/[...all]/route.ts create mode 100644 solutions/trustclaw/src/app/api/chat/route.ts create mode 100644 solutions/trustclaw/src/app/api/chat/stream-store.ts create mode 100644 solutions/trustclaw/src/app/api/cron/trustclaw/execute/route.schema.ts create mode 100644 solutions/trustclaw/src/app/api/cron/trustclaw/execute/route.ts create mode 100644 solutions/trustclaw/src/app/api/cron/trustclaw/route.ts create mode 100644 solutions/trustclaw/src/app/api/telegram-webhook/_telegram-webhook.schema.ts create mode 100644 solutions/trustclaw/src/app/api/telegram-webhook/route.ts create mode 100644 solutions/trustclaw/src/app/api/trpc/[trpc]/route.ts create mode 100644 solutions/trustclaw/src/app/global-error.tsx create mode 100644 solutions/trustclaw/src/app/layout.tsx create mode 100644 solutions/trustclaw/src/app/login/_components/login-page.tsx create mode 100644 solutions/trustclaw/src/app/login/page.tsx create mode 100644 solutions/trustclaw/src/app/page.tsx create mode 100644 solutions/trustclaw/src/clients/auth/react.tsx create mode 100644 solutions/trustclaw/src/clients/trpc/errors.ts create mode 100644 solutions/trustclaw/src/clients/trpc/index.ts create mode 100644 solutions/trustclaw/src/clients/trpc/query-client.ts create mode 100644 solutions/trustclaw/src/clients/trpc/react.tsx create mode 100644 solutions/trustclaw/src/clients/trpc/server.ts create mode 100644 solutions/trustclaw/src/clients/trpc/shared.ts create mode 100644 solutions/trustclaw/src/components/core/animate-on-view.tsx create mode 100644 solutions/trustclaw/src/components/core/confirm-dialog.tsx create mode 100644 solutions/trustclaw/src/components/core/error-boundary.tsx create mode 100644 solutions/trustclaw/src/components/core/error-display.tsx create mode 100644 solutions/trustclaw/src/components/core/search-input.tsx create mode 100644 solutions/trustclaw/src/components/core/theme-provider.tsx create mode 100644 solutions/trustclaw/src/components/core/theme-toggle.tsx create mode 100644 solutions/trustclaw/src/components/core/toast-notifications.tsx create mode 100644 solutions/trustclaw/src/components/core/virtualized-list.tsx create mode 100644 solutions/trustclaw/src/components/ui/alert-dialog.tsx create mode 100644 solutions/trustclaw/src/components/ui/badge.tsx create mode 100644 solutions/trustclaw/src/components/ui/button.tsx create mode 100644 solutions/trustclaw/src/components/ui/card.tsx create mode 100644 solutions/trustclaw/src/components/ui/checkbox-group.tsx create mode 100644 solutions/trustclaw/src/components/ui/checkbox.tsx create mode 100644 solutions/trustclaw/src/components/ui/collapsible.tsx create mode 100644 solutions/trustclaw/src/components/ui/dialog.tsx create mode 100644 solutions/trustclaw/src/components/ui/form.tsx create mode 100644 solutions/trustclaw/src/components/ui/input.tsx create mode 100644 solutions/trustclaw/src/components/ui/label.tsx create mode 100644 solutions/trustclaw/src/components/ui/popover.tsx create mode 100644 solutions/trustclaw/src/components/ui/progress.tsx create mode 100644 solutions/trustclaw/src/components/ui/radio-group.tsx create mode 100644 solutions/trustclaw/src/components/ui/select.tsx create mode 100644 solutions/trustclaw/src/components/ui/separator.tsx create mode 100644 solutions/trustclaw/src/components/ui/sheet.tsx create mode 100644 solutions/trustclaw/src/components/ui/skeleton.tsx create mode 100644 solutions/trustclaw/src/components/ui/switch.tsx create mode 100644 solutions/trustclaw/src/components/ui/table.tsx create mode 100644 solutions/trustclaw/src/components/ui/tabs.tsx create mode 100644 solutions/trustclaw/src/components/ui/textarea.tsx create mode 100644 solutions/trustclaw/src/components/ui/tooltip.tsx create mode 100644 solutions/trustclaw/src/env.ts create mode 100644 solutions/trustclaw/src/lib/utils.ts create mode 100644 solutions/trustclaw/src/server/api/root.ts create mode 100644 solutions/trustclaw/src/server/api/routers/health/index.ts create mode 100644 solutions/trustclaw/src/server/api/routers/health/ping.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/health/ping.ts create mode 100644 solutions/trustclaw/src/server/api/routers/toolkits/getAuthLink.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/toolkits/getAuthLink.ts create mode 100644 solutions/trustclaw/src/server/api/routers/toolkits/getToolkits.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/toolkits/getToolkits.ts create mode 100644 solutions/trustclaw/src/server/api/routers/toolkits/index.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/compaction/memory-flush.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/compaction/prompts.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/compaction/run-compaction.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/context/build-context.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/context/context-pruning.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/context/context-window.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/context/token-estimation.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/error-parser.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/index.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/setup.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/strip-tool-echoes.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/system-prompt.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/cron-utils.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/index.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/memory-save.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/memory-save.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/memory-search.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/memory-search.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/schedule.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/tools/schedule.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/agent/types.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/checkConnectionStatus.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/checkConnectionStatus.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/createInstance.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/createInstance.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/deleteCronJob.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/deleteCronJob.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/deleteInstance.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/deleteInstance.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getCronJobs.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getCronJobs.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getHistory.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getHistory.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getInstance.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getInstance.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getIntegrationAuthLinks.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getIntegrationAuthLinks.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getMemories.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getMemories.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getStatus.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/getStreamingMessage.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/index.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/linkTelegram.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/linkTelegram.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/saveOnboardingState.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/saveOnboardingState.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/toggleCronJob.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/toggleCronJob.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/unlinkTelegram.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/unlinkTelegram.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/updateSettings.schema.ts create mode 100644 solutions/trustclaw/src/server/api/routers/trustclaw/updateSettings.ts create mode 100644 solutions/trustclaw/src/server/api/trpc.ts create mode 100644 solutions/trustclaw/src/server/auth.ts create mode 100644 solutions/trustclaw/src/server/clients/composio.ts create mode 100644 solutions/trustclaw/src/server/clients/db.ts create mode 100644 solutions/trustclaw/src/server/clients/redis.ts create mode 100644 solutions/trustclaw/src/server/clients/telegram.ts create mode 100644 solutions/trustclaw/src/styles/globals.css create mode 100644 solutions/trustclaw/tsconfig.json create mode 100644 solutions/trustclaw/turbo.json create mode 100644 solutions/trustclaw/vercel.json diff --git a/solutions/trustclaw/.env.example b/solutions/trustclaw/.env.example new file mode 100644 index 0000000000..4fbe95e00d --- /dev/null +++ b/solutions/trustclaw/.env.example @@ -0,0 +1,38 @@ +# --- App --- +# Public URL of the deployed app. In dev, leave blank - it's derived from PORT. +NEXT_PUBLIC_APP_URL= + +# --- Database (required) --- +# Postgres with the pgvector extension enabled. Neon's free tier works. +DATABASE_URL= + +# --- Auth (required) --- +# Random 32+ char string. Generate with: openssl rand -base64 32 +BETTER_AUTH_SECRET= + +# --- Composio (required) --- +# Global API key for the Composio SDK. Get one free at https://dashboard.composio.dev/login?flow=developer +COMPOSIO_API_KEY= + +# --- Cron auth (required) --- +# Random 32+ char string. Used to authenticate /api/cron/* endpoints. +# On Vercel, this is auto-injected when crons are declared in vercel.json. +# Generate with: openssl rand -base64 32 +CRON_SECRET= + +# --- AI Gateway (only needed for local dev) --- +# On Vercel deployments, AI Gateway authenticates automatically via VERCEL_OIDC_TOKEN. +# For local dev, run `vercel link && vercel env pull` to get a short-lived OIDC token, +# OR set this manually: +# AI_GATEWAY_API_KEY= + +# --- Telegram bot (optional - Telegram features disabled when these are blank) --- +# Create a bot via @BotFather to get the token + username +TELEGRAM_BOT_TOKEN= +TELEGRAM_BOT_USERNAME= +# Random secret used to verify incoming Telegram webhook calls +TELEGRAM_WEBHOOK_SECRET= + +# --- Redis (optional - resumable streams disabled when blank, basic streaming still works) --- +# Used for resumable streams, streaming state, and abort flags. Upstash works. +REDIS_URL= diff --git a/solutions/trustclaw/.gitignore b/solutions/trustclaw/.gitignore new file mode 100644 index 0000000000..5cdbf97f41 --- /dev/null +++ b/solutions/trustclaw/.gitignore @@ -0,0 +1,78 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# database +/prisma/db.sqlite +/prisma/db.sqlite-journal +db.sqlite + +# next.js +/.next/ +/out/ +next-env.d.ts + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# local env files +# do not commit any .env files to git, except for the .env.example file. https://create.t3.gg/en/usage/env-variables#using-environment-variables +.env +.env*.local + +# vercel +.vercel + +# trustclaw deploy CLI cache +.trustclaw-deploy.json + +# typescript +*.tsbuildinfo + +# idea files +.idea + +# Generated SDK (keep .gitkeep) +src/generated/* +!src/generated/.gitignore +!src/generated/.gitkeep + +# claude batch automation +ralph/tasks.json +ralph/tasks/* +ralph/state/* +ralph/results.log +.claude/ralph.local.md + +docs/plans/* +docs/state/* +.claude/state/* + +# worktrees +.worktrees/ +.ralph-worktrees/ + +# playwright mcp +.playwright-mcp/ +/*.png +# Sentry Config File +.env.sentry-build-plugin + +# CLI build output +cli/dist/ diff --git a/solutions/trustclaw/.npmrc b/solutions/trustclaw/.npmrc new file mode 100644 index 0000000000..463ff0a2cd --- /dev/null +++ b/solutions/trustclaw/.npmrc @@ -0,0 +1,2 @@ +public-hoist-pattern[]=*eslint* +public-hoist-pattern[]=*prettier* \ No newline at end of file diff --git a/solutions/trustclaw/LICENSE b/solutions/trustclaw/LICENSE new file mode 100644 index 0000000000..f31ffc5a87 --- /dev/null +++ b/solutions/trustclaw/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Sarah Simionescu + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/solutions/trustclaw/README.md b/solutions/trustclaw/README.md new file mode 100644 index 0000000000..a2369122fb --- /dev/null +++ b/solutions/trustclaw/README.md @@ -0,0 +1,152 @@ +--- +name: TrustClaw +slug: trustclaw +publisher: Composio +description: 24/7 AI assistant with 1000+ tools via OAuth + sandboxed execution. OpenClaw's ideas, rebuilt from scratch for security. +framework: Next.js +type: + - Multi tenant-apps + - Cron +css: Tailwind +githubUrl: https://github.com/vercel/examples/tree/main/solutions/trustclaw +demoUrl: https://trustclaw.vercel.app +deployUrl: https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fvercel%2Fexamples%2Ftree%2Fmain%2Fsolutions%2Ftrustclaw&project-name=trustclaw&repository-name=trustclaw&env=DATABASE_URL,BETTER_AUTH_SECRET,COMPOSIO_API_KEY,CRON_SECRET&envDescription=DATABASE_URL%20needs%20pgvector%3B%20generate%20BETTER_AUTH_SECRET%20and%20CRON_SECRET%20with%20openssl%20rand%20-base64%2032%3B%20Composio%20key%20at%20composio.dev&envLink=https%3A%2F%2Fgithub.com%2Fvercel%2Fexamples%2Ftree%2Fmain%2Fsolutions%2Ftrustclaw%23environment-variables +relatedTemplates: + - slackbot + - cron + - ai-chatgpt +--- + +# TrustClaw + +**Your AI that does things while you sleep. _Securely._** + +A 24/7 personal AI assistant with 1000+ tools via **OAuth** and **sandboxed execution**. Built on the ideas behind OpenClaw, rebuilt from scratch for security. Talks to you on the web or Telegram, remembers what matters, and handles recurring work on autopilot. + +## Demo + +https://trustclaw.vercel.app + +## How to Use + +### Option 1: Smart CLI (recommended) + +```bash +npx @composio/trustclaw deploy +``` + +Handles the entire deploy: + +- Forks (or publishes) the repo to your GitHub +- Creates a Vercel project linked to it +- Provisions Postgres + pgvector via Vercel Marketplace (and optionally Upstash Redis) +- Auto-generates `BETTER_AUTH_SECRET` and `CRON_SECRET` +- Prompts you for a free [Composio API key](https://dashboard.composio.dev/login?flow=developer) +- Runs the Prisma schema sync against your fresh database +- Triggers the production deploy and opens the URL in your browser +- Optionally walks you through Telegram bot setup +- Tunes config (cron schedule, function timeouts) for your Vercel plan + +**Prerequisites:** [Vercel](https://vercel.com) + [GitHub](https://github.com) accounts, plus a free [Composio API key](https://dashboard.composio.dev/login?flow=developer). + +### Option 2: One-Click Deploy + +[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fvercel%2Fexamples%2Ftree%2Fmain%2Fsolutions%2Ftrustclaw&project-name=trustclaw&repository-name=trustclaw&env=DATABASE_URL,BETTER_AUTH_SECRET,COMPOSIO_API_KEY,CRON_SECRET&envDescription=DATABASE_URL%20needs%20pgvector%3B%20generate%20BETTER_AUTH_SECRET%20and%20CRON_SECRET%20with%20openssl%20rand%20-base64%2032%3B%20Composio%20key%20at%20composio.dev&envLink=https%3A%2F%2Fgithub.com%2Fvercel%2Fexamples%2Ftree%2Fmain%2Fsolutions%2Ftrustclaw%23environment-variables) + +The Vercel deploy flow will prompt for the four required env vars. You'll need to bring your own Postgres database with the [pgvector](https://github.com/pgvector/pgvector) extension. See [Environment variables](#environment-variables) below. + +### Option 3: Clone and Deploy + +```bash +git clone https://github.com/vercel/examples.git +cd examples/solutions/trustclaw +pnpm install +cp .env.example .env # fill in DATABASE_URL, BETTER_AUTH_SECRET, COMPOSIO_API_KEY, CRON_SECRET +pnpm prisma db push # apply schema (Postgres + pgvector required) +pnpm dev # http://localhost:3000 +``` + +## Features + +| | | +| ---------------------------- | ------------------------------------------------------------------------------------- | +| πŸ” **OAuth Only** | Connects through OAuth. No passwords stored or shared. | +| ⚑ **Zero Setup** | Sign up, chat, done. No API keys or config files. | +| πŸ’€ **Works While You Sleep** | Schedule tasks and let your agent handle them on autopilot. | +| ☁️ **Sandboxed Execution** | Every action runs in an isolated cloud environment that's gone when the task is done. | + +### What it can do + +- Chat with Claude in a Next.js dashboard or via a Telegram bot +- Long-term memory backed by Postgres + pgvector +- 3-layer context management (pruning, memory flush, summarization compaction) so conversations can run indefinitely +- 1000+ Composio tool integrations (Gmail, GitHub, Slack, Notion, Linear, Calendar, Drive, Stripe, HubSpot, …) +- Cron-scheduled agent runs for recurring tasks +- Username/password login via Better Auth + +## Security model + +| | TrustClaw | Vanilla local agents | +| ------------------ | ------------------------------ | ---------------------------- | +| **Setup** | Seconds | Hours of config | +| **Credentials** | Encrypted, managed by Composio | Plaintext in local config | +| **Code Execution** | Remote sandbox | On your local machine | +| **Integrations** | OAuth, 1000+ apps | Manual API key setup per app | +| **Skill Security** | Managed tool surface | Unvetted public registry | +| **Audit Trails** | Full action log | None | +| **Revocation** | One click | Find and delete config files | + +The design choices: + +- **No raw API keys handed to the agent** - Composio brokers OAuth for every tool +- **No code runs on your machine** - every tool call executes in an isolated remote environment +- **No long-lived shell access** - destructive prompt injection from a scraped email can't `rm -rf` your laptop because the agent doesn't have a shell on your laptop + +## Architecture + +``` +β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” +β”‚ Web (Next) │───▢│ Next.js App β”‚ +β”‚ Telegram │───▢│ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ +β”‚ Cron │───▢│ β”‚ tRPC API + agent runtime β”‚ β”‚ +β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ (prepareAgentRun β†’ ToolLoopAgent) β”‚ β”‚ + β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ + β”‚ β”‚ β”‚ + β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ + β”‚ β–Ό β–Ό β–Ό β–Ό β”‚ + β”‚ Postgres Redis AI Gateway Composio β”‚ + β”‚ (pgvector) (LLM + emb.) β”‚ + β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +### Tech stack + +- [Next.js 15](https://nextjs.org) (App Router) + React 19 +- [tRPC](https://trpc.io) for all backend logic +- [Better Auth](https://www.better-auth.com/) (username/password) +- [Prisma](https://prisma.io) + Postgres + [pgvector](https://github.com/pgvector/pgvector) +- [Vercel AI SDK](https://sdk.vercel.ai) + AI Gateway (LLM + embeddings) +- [Composio SDK](https://composio.dev) for tool integrations +- [Tailwind CSS](https://tailwindcss.com) + [shadcn/ui](https://ui.shadcn.com) +- Redis (resumable streams, optional) + +## Environment variables + +| Variable | Purpose | +| -------------------------------------- | ------------------------------------------------------- | +| `DATABASE_URL` | Postgres + pgvector connection string | +| `BETTER_AUTH_SECRET` | Session signing key (32+ random bytes) | +| `COMPOSIO_API_KEY` | Composio tool integrations | +| `CRON_SECRET` | Auth for `/api/cron/*` routes (auto-injected on Vercel) | +| `REDIS_URL` _(optional)_ | Resumable streams + abort flags | +| `TELEGRAM_BOT_TOKEN` _(optional)_ | Telegram bot | +| `TELEGRAM_BOT_USERNAME` _(optional)_ | Telegram bot | +| `TELEGRAM_WEBHOOK_SECRET` _(optional)_ | Telegram webhook auth | + +LLM and embedding calls route through Vercel AI Gateway - **no Anthropic or OpenAI API keys required.** + +## License + +MIT + +Built on top of [Composio](https://composio.dev). Inspired by [OpenClaw](https://github.com/openclaw/openclaw), rebuilt for security. Canonical source: [ComposioHQ/trustclaw](https://github.com/ComposioHQ/trustclaw). diff --git a/solutions/trustclaw/components.json b/solutions/trustclaw/components.json new file mode 100644 index 0000000000..c88d0656c6 --- /dev/null +++ b/solutions/trustclaw/components.json @@ -0,0 +1,23 @@ +{ + "$schema": "https://ui.shadcn.com/schema.json", + "style": "new-york", + "rsc": true, + "tsx": true, + "tailwind": { + "config": "", + "css": "src/styles/globals.css", + "baseColor": "neutral", + "cssVariables": true, + "prefix": "" + }, + "iconLibrary": "lucide", + "rtl": false, + "aliases": { + "components": "~/components", + "utils": "~/lib/utils", + "ui": "~/components/ui", + "lib": "~/lib", + "hooks": "~/hooks" + }, + "registries": {} +} diff --git a/solutions/trustclaw/eslint.config.js b/solutions/trustclaw/eslint.config.js new file mode 100644 index 0000000000..061c0d43d2 --- /dev/null +++ b/solutions/trustclaw/eslint.config.js @@ -0,0 +1,49 @@ +import { FlatCompat } from "@eslint/eslintrc"; +import tseslint from "typescript-eslint"; + +const compat = new FlatCompat({ + baseDirectory: import.meta.dirname, +}); + +export default tseslint.config( + { + ignores: [".next", "src/generated"], + }, + ...compat.extends("next/core-web-vitals"), + { + files: ["**/*.ts", "**/*.tsx"], + extends: [ + ...tseslint.configs.recommended, + ...tseslint.configs.recommendedTypeChecked, + ...tseslint.configs.stylisticTypeChecked, + ], + rules: { + "@typescript-eslint/array-type": "off", + "@typescript-eslint/consistent-type-definitions": "off", + "@typescript-eslint/consistent-type-imports": [ + "warn", + { prefer: "type-imports", fixStyle: "inline-type-imports" }, + ], + "@typescript-eslint/no-unused-vars": [ + "warn", + { argsIgnorePattern: "^_" }, + ], + "@typescript-eslint/require-await": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { checksVoidReturn: { attributes: false } }, + ], + "no-console": ["error", { allow: ["warn", "error"] }], + }, + }, + { + linterOptions: { + reportUnusedDisableDirectives: true, + }, + languageOptions: { + parserOptions: { + projectService: true, + }, + }, + }, +); diff --git a/solutions/trustclaw/next.config.js b/solutions/trustclaw/next.config.js new file mode 100644 index 0000000000..efe86368ff --- /dev/null +++ b/solutions/trustclaw/next.config.js @@ -0,0 +1,90 @@ +/** @type {import('next').NextConfig} */ +const config = { + reactStrictMode: true, + skipTrailingSlashRedirect: true, + + async headers() { + return [ + { + source: "/images/:path*", + headers: [ + { + key: "Cache-Control", + value: "public, max-age=31536000, immutable", + }, + ], + }, + { + source: "/:path*", + headers: [ + { + key: "X-Frame-Options", + value: "DENY", + }, + { + key: "X-Content-Type-Options", + value: "nosniff", + }, + { + key: "Referrer-Policy", + value: "strict-origin-when-cross-origin", + }, + { + key: "Strict-Transport-Security", + value: "max-age=31536000; includeSubDomains; preload", + }, + { + key: "Permissions-Policy", + value: "camera=(), microphone=(), geolocation=(), interest-cohort=()", + }, + ...(process.env.NODE_ENV === "production" + ? [ + { + key: "Content-Security-Policy", + value: [ + "default-src 'self'", + // 'unsafe-inline' is here because Next.js streams inline + // hydration scripts. A nonce-based CSP is the proper fix + // but our prior attempt broke hydration; revisit later. + "script-src 'self' 'unsafe-inline'", + "style-src 'self' 'unsafe-inline'", + "img-src 'self' data: https:", + "font-src 'self' data:", + "connect-src 'self' *.composio.dev", + "frame-ancestors 'none'", + "object-src 'none'", + "base-uri 'self'", + "form-action 'self'", + "upgrade-insecure-requests", + ].join("; "), + }, + ] + : []), + ], + }, + ]; + }, + + images: { + remotePatterns: [ + { + protocol: "https", + hostname: "logos.composio.dev", + }, + ], + }, + + // Transpile packages if needed + transpilePackages: [], + + // Strict mode for better debugging + typescript: { + ignoreBuildErrors: false, + }, + + eslint: { + ignoreDuringBuilds: false, + }, +}; + +export default config; diff --git a/solutions/trustclaw/package.json b/solutions/trustclaw/package.json new file mode 100644 index 0000000000..9d7db6dd11 --- /dev/null +++ b/solutions/trustclaw/package.json @@ -0,0 +1,100 @@ +{ + "name": "trustclaw", + "version": "0.1.0", + "private": true, + "type": "module", + "description": "A self-hostable personal AI agent with vector memory, Composio tools, and Telegram.", + "license": "MIT", + "repository": "https://github.com/vercel/examples.git", + "scripts": { + "build": "prisma generate && next build", + "build:local": "NODE_ENV=production next build", + "check": "next lint && tsc --noEmit", + "dev": "next dev --turbo", + "format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,mdx}\" --cache", + "format:write": "prettier --write \"**/*.{ts,tsx,js,jsx,mdx}\" --cache", + "lint": "next lint", + "lint:fix": "next lint --fix", + "auth:generate": "npx @better-auth/cli generate", + "cli:deploy": "cd cli && pnpm install --silent && pnpm exec tsx src/bin.ts deploy", + "preview": "next build && next start", + "start": "next start", + "typecheck": "tsc --noEmit" + }, + "dependencies": { + "@ai-sdk/react": "^3.0.87", + "@composio/core": "^0.6.3", + "@composio/vercel": "^0.6.3", + "@hookform/resolvers": "^5.2.2", + "@prisma/adapter-pg": "^7.3.0", + "@prisma/client": "^7.3.0", + "@radix-ui/react-dialog": "^1.1.15", + "@radix-ui/react-label": "^2.1.8", + "@radix-ui/react-roving-focus": "^1.1.11", + "@radix-ui/react-slot": "^1.2.4", + "@radix-ui/react-toast": "^1.2.15", + "@t3-oss/env-nextjs": "^0.12.0", + "@tanstack/react-query": "^5.69.0", + "@tanstack/react-virtual": "^3.13.18", + "@trpc/client": "^11.0.0", + "@trpc/react-query": "^11.0.0", + "@trpc/server": "^11.0.0", + "ai": "^6.0.78", + "better-auth": "^1.4.18", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "croner": "^10.0.1", + "framer-motion": "^12.33.0", + "ioredis": "^5.9.3", + "lucide-react": "^0.563.0", + "moment": "^2.30.1", + "moment-timezone": "^0.6.0", + "next": "^15.5.15", + "next-themes": "^0.4.6", + "pg": "^8.18.0", + "radix-ui": "^1.4.3", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "react-hook-form": "^7.71.1", + "react-markdown": "^10.1.0", + "react-virtuoso": "^4.18.1", + "remark-gfm": "^4.0.1", + "resumable-stream": "^2.2.10", + "server-only": "^0.0.1", + "sonner": "^2.0.7", + "superjson": "^2.2.1", + "tailwind-merge": "^3.4.0", + "zod": "^3.24.2", + "zustand": "^5.0.11" + }, + "devDependencies": { + "@eslint/eslintrc": "^3.3.1", + "@tailwindcss/postcss": "^4.0.15", + "@types/node": "^20.14.10", + "@types/pg": "^8.16.0", + "@types/react": "^19.0.0", + "@types/react-dom": "^19.0.0", + "dotenv": "^17.2.4", + "dotenv-cli": "^11.0.0", + "eslint": "^9.23.0", + "eslint-config-next": "^15.2.3", + "postcss": "^8.5.3", + "prettier": "^3.5.3", + "prettier-plugin-tailwindcss": "^0.6.11", + "prisma": "^7.3.0", + "shadcn": "^3.8.4", + "tailwindcss": "^4.0.15", + "tw-animate-css": "^1.4.0", + "typescript": "^5.8.2", + "typescript-eslint": "^8.27.0" + }, + "packageManager": "pnpm@10.28.2", + "pnpm": { + "onlyBuiltDependencies": [ + "prisma", + "@prisma/client", + "sharp", + "unrs-resolver" + ] + } +} diff --git a/solutions/trustclaw/pnpm-lock.yaml b/solutions/trustclaw/pnpm-lock.yaml new file mode 100644 index 0000000000..c8f1b29a58 --- /dev/null +++ b/solutions/trustclaw/pnpm-lock.yaml @@ -0,0 +1,10333 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@ai-sdk/react': + specifier: ^3.0.87 + version: 3.0.87(react@19.2.4)(zod@3.25.76) + '@composio/core': + specifier: ^0.6.3 + version: 0.6.3(zod@3.25.76) + '@composio/vercel': + specifier: ^0.6.3 + version: 0.6.3(@composio/core@0.6.3(zod@3.25.76))(ai@6.0.78(zod@3.25.76)) + '@hookform/resolvers': + specifier: ^5.2.2 + version: 5.2.2(react-hook-form@7.71.1(react@19.2.4)) + '@prisma/adapter-pg': + specifier: ^7.3.0 + version: 7.3.0 + '@prisma/client': + specifier: ^7.3.0 + version: 7.3.0(prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) + '@radix-ui/react-dialog': + specifier: ^1.1.15 + version: 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-label': + specifier: ^2.1.8 + version: 2.1.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': + specifier: ^1.1.11 + version: 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': + specifier: ^1.2.4 + version: 1.2.4(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-toast': + specifier: ^1.2.15 + version: 1.2.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@t3-oss/env-nextjs': + specifier: ^0.12.0 + version: 0.12.0(typescript@5.9.3)(valibot@1.2.0(typescript@5.9.3))(zod@3.25.76) + '@tanstack/react-query': + specifier: ^5.69.0 + version: 5.90.20(react@19.2.4) + '@tanstack/react-virtual': + specifier: ^3.13.18 + version: 3.13.18(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@trpc/client': + specifier: ^11.0.0 + version: 11.9.0(@trpc/server@11.9.0(typescript@5.9.3))(typescript@5.9.3) + '@trpc/react-query': + specifier: ^11.0.0 + version: 11.9.0(@tanstack/react-query@5.90.20(react@19.2.4))(@trpc/client@11.9.0(@trpc/server@11.9.0(typescript@5.9.3))(typescript@5.9.3))(@trpc/server@11.9.0(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + '@trpc/server': + specifier: ^11.0.0 + version: 11.9.0(typescript@5.9.3) + ai: + specifier: ^6.0.78 + version: 6.0.78(zod@3.25.76) + better-auth: + specifier: ^1.4.18 + version: 1.4.18(@prisma/client@7.3.0(prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(mysql2@3.15.3)(next@15.5.15(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(pg@8.18.0)(prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + class-variance-authority: + specifier: ^0.7.1 + version: 0.7.1 + clsx: + specifier: ^2.1.1 + version: 2.1.1 + croner: + specifier: ^10.0.1 + version: 10.0.1 + framer-motion: + specifier: ^12.33.0 + version: 12.33.0(@emotion/is-prop-valid@1.4.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + ioredis: + specifier: ^5.9.3 + version: 5.9.3 + lucide-react: + specifier: ^0.563.0 + version: 0.563.0(react@19.2.4) + moment: + specifier: ^2.30.1 + version: 2.30.1 + moment-timezone: + specifier: ^0.6.0 + version: 0.6.0 + next: + specifier: ^15.5.15 + version: 15.5.15(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + next-themes: + specifier: ^0.4.6 + version: 0.4.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + pg: + specifier: ^8.18.0 + version: 8.18.0 + radix-ui: + specifier: ^1.4.3 + version: 1.4.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: + specifier: ^19.0.0 + version: 19.2.4 + react-dom: + specifier: ^19.0.0 + version: 19.2.4(react@19.2.4) + react-hook-form: + specifier: ^7.71.1 + version: 7.71.1(react@19.2.4) + react-markdown: + specifier: ^10.1.0 + version: 10.1.0(@types/react@19.2.13)(react@19.2.4) + react-virtuoso: + specifier: ^4.18.1 + version: 4.18.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + remark-gfm: + specifier: ^4.0.1 + version: 4.0.1 + resumable-stream: + specifier: ^2.2.10 + version: 2.2.10 + server-only: + specifier: ^0.0.1 + version: 0.0.1 + sonner: + specifier: ^2.0.7 + version: 2.0.7(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + superjson: + specifier: ^2.2.1 + version: 2.2.6 + tailwind-merge: + specifier: ^3.4.0 + version: 3.4.0 + zod: + specifier: ^3.24.2 + version: 3.25.76 + zustand: + specifier: ^5.0.11 + version: 5.0.11(@types/react@19.2.13)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) + devDependencies: + '@eslint/eslintrc': + specifier: ^3.3.1 + version: 3.3.3 + '@tailwindcss/postcss': + specifier: ^4.0.15 + version: 4.1.18 + '@types/node': + specifier: ^20.14.10 + version: 20.19.32 + '@types/pg': + specifier: ^8.16.0 + version: 8.16.0 + '@types/react': + specifier: ^19.0.0 + version: 19.2.13 + '@types/react-dom': + specifier: ^19.0.0 + version: 19.2.3(@types/react@19.2.13) + dotenv: + specifier: ^17.2.4 + version: 17.2.4 + dotenv-cli: + specifier: ^11.0.0 + version: 11.0.0 + eslint: + specifier: ^9.23.0 + version: 9.39.2(jiti@2.6.1) + eslint-config-next: + specifier: ^15.2.3 + version: 15.5.12(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + postcss: + specifier: ^8.5.3 + version: 8.5.6 + prettier: + specifier: ^3.5.3 + version: 3.8.1 + prettier-plugin-tailwindcss: + specifier: ^0.6.11 + version: 0.6.14(prettier@3.8.1) + prisma: + specifier: ^7.3.0 + version: 7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + shadcn: + specifier: ^3.8.4 + version: 3.8.4(@types/node@20.19.32)(typescript@5.9.3) + tailwindcss: + specifier: ^4.0.15 + version: 4.1.18 + tw-animate-css: + specifier: ^1.4.0 + version: 1.4.0 + typescript: + specifier: ^5.8.2 + version: 5.9.3 + typescript-eslint: + specifier: ^8.27.0 + version: 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + +packages: + + '@ai-sdk/gateway@3.0.39': + resolution: {integrity: sha512-SeCZBAdDNbWpVUXiYgOAqis22p5MEYfrjRw0hiBa5hM+7sDGYQpMinUjkM8kbPXMkY+AhKLrHleBl+SuqpzlgA==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/gateway@3.0.45': + resolution: {integrity: sha512-ZB6kHV+D8mLCRnkpWotLCV/rZK4NiODxx4Kv7JdT9QmQknbG/scbE4iyoT4JLFdULA8Y/IVbMvyE0Nwq3Dceqw==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/provider-utils@4.0.14': + resolution: {integrity: sha512-7bzKd9lgiDeXM7O4U4nQ8iTxguAOkg8LZGD9AfDVZYjO5cKYRwBPwVjboFcVrxncRHu0tYxZtXZtiLKpG4pEng==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/provider-utils@4.0.15': + resolution: {integrity: sha512-8XiKWbemmCbvNN0CLR9u3PQiet4gtEVIrX4zzLxnCj06AwsEDJwJVBbKrEI4t6qE8XRSIvU2irka0dcpziKW6w==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/provider@3.0.8': + resolution: {integrity: sha512-oGMAgGoQdBXbZqNG0Ze56CHjDZ1IDYOwGYxYjO5KLSlz5HiNQ9udIXsPZ61VWaHGZ5XW/jyjmr6t2xz2jGVwbQ==} + engines: {node: '>=18'} + + '@ai-sdk/react@3.0.87': + resolution: {integrity: sha512-qa4Ywm08g27Voys1xuF2WeX3s8shd4hLJCCxi/Ws6cUZsWpMnFW2rtEfCcKRlWyJ4NRypauiNmcvQKz4v6u0/A==} + engines: {node: '>=18'} + peerDependencies: + react: ^18 || ~19.0.1 || ~19.1.2 || ^19.2.1 + + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + + '@antfu/ni@25.0.0': + resolution: {integrity: sha512-9q/yCljni37pkMr4sPrI3G4jqdIk074+iukc5aFJl7kmDCCsiJrbZ6zKxnES1Gwg+i9RcDZwvktl23puGslmvA==} + hasBin: true + + '@babel/code-frame@7.29.0': + resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.29.0': + resolution: {integrity: sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.29.0': + resolution: {integrity: sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.29.1': + resolution: {integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-annotate-as-pure@7.27.3': + resolution: {integrity: sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.28.6': + resolution: {integrity: sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-create-class-features-plugin@7.28.6': + resolution: {integrity: sha512-dTOdvsjnG3xNT9Y0AUg1wAl38y+4Rl4sf9caSQZOXdNqVn+H+HbbJ4IyyHaIqNR6SW9oJpA/RuRjsjCw2IdIow==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-globals@7.28.0': + resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-member-expression-to-functions@7.28.5': + resolution: {integrity: sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.28.6': + resolution: {integrity: sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.28.6': + resolution: {integrity: sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-optimise-call-expression@7.27.1': + resolution: {integrity: sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-plugin-utils@7.28.6': + resolution: {integrity: sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==} + engines: {node: '>=6.9.0'} + + '@babel/helper-replace-supers@7.28.6': + resolution: {integrity: sha512-mq8e+laIk94/yFec3DxSjCRD2Z0TAjhVbEJY3UQrlwVo15Lmt7C2wAUbK4bjnTs4APkwsYLTahXRraQXhb1WCg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-skip-transparent-expression-wrappers@7.27.1': + resolution: {integrity: sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==} + engines: {node: '>=6.9.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.6': + resolution: {integrity: sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.29.0': + resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-syntax-jsx@7.28.6': + resolution: {integrity: sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-typescript@7.28.6': + resolution: {integrity: sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-modules-commonjs@7.28.6': + resolution: {integrity: sha512-jppVbf8IV9iWWwWTQIxJMAJCWBuuKx71475wHwYytrRGQ2CWiDvYlADQno3tcYpS/T2UUWFQp3nVtYfK/YBQrA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typescript@7.28.6': + resolution: {integrity: sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/preset-typescript@7.28.5': + resolution: {integrity: sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/template@7.28.6': + resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.29.0': + resolution: {integrity: sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.29.0': + resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} + engines: {node: '>=6.9.0'} + + '@better-auth/core@1.4.18': + resolution: {integrity: sha512-q+awYgC7nkLEBdx2sW0iJjkzgSHlIxGnOpsN1r/O1+a4m7osJNHtfK2mKJSL1I+GfNyIlxJF8WvD/NLuYMpmcg==} + peerDependencies: + '@better-auth/utils': 0.3.0 + '@better-fetch/fetch': 1.1.21 + better-call: 1.1.8 + jose: ^6.1.0 + kysely: ^0.28.5 + nanostores: ^1.0.1 + + '@better-auth/telemetry@1.4.18': + resolution: {integrity: sha512-e5rDF8S4j3Um/0LIVATL2in9dL4lfO2fr2v1Wio4qTMRbfxqnUDTa+6SZtwdeJrbc4O+a3c+IyIpjG9Q/6GpfQ==} + peerDependencies: + '@better-auth/core': 1.4.18 + + '@better-auth/utils@0.3.0': + resolution: {integrity: sha512-W+Adw6ZA6mgvnSnhOki270rwJ42t4XzSK6YWGF//BbVXL6SwCLWfyzBc1lN2m/4RM28KubdBKQ4X5VMoLRNPQw==} + + '@better-fetch/fetch@1.1.21': + resolution: {integrity: sha512-/ImESw0sskqlVR94jB+5+Pxjf+xBwDZF/N5+y2/q4EqD7IARUTSpPfIo8uf39SYpCxyOCtbyYpUrZ3F/k0zT4A==} + + '@chevrotain/cst-dts-gen@10.5.0': + resolution: {integrity: sha512-lhmC/FyqQ2o7pGK4Om+hzuDrm9rhFYIJ/AXoQBeongmn870Xeb0L6oGEiuR8nohFNL5sMaQEJWCxr1oIVIVXrw==} + + '@chevrotain/gast@10.5.0': + resolution: {integrity: sha512-pXdMJ9XeDAbgOWKuD1Fldz4ieCs6+nLNmyVhe2gZVqoO7v8HXuHYs5OV2EzUtbuai37TlOAQHrTDvxMnvMJz3A==} + + '@chevrotain/types@10.5.0': + resolution: {integrity: sha512-f1MAia0x/pAVPWH/T73BJVyO2XU5tI4/iE7cnxb7tqdNTNhQI3Uq3XkqcoteTmD4t1aM0LbHCJOhgIDn07kl2A==} + + '@chevrotain/utils@10.5.0': + resolution: {integrity: sha512-hBzuU5+JjB2cqNZyszkDHZgOSrUUT8V3dhgRl8Q9Gp6dAj/H5+KILGjbhDpc3Iy9qmqlm/akuOI2ut9VUtzJxQ==} + + '@composio/client@0.1.0-alpha.56': + resolution: {integrity: sha512-hNgChB5uhdvT4QXNzzfUuvtG6vrfanQQFY2hPyKwbeR4x6mEmIGFiZ4y2qynErdUWldAZiB/7pY/MBMg6Q9E0g==} + + '@composio/core@0.6.3': + resolution: {integrity: sha512-PZm4LQGMaaDFHWUouMHqKPg5fNfgjM2l0zF0Vw/vfWJ34KYyo1ne6YjhGvBDmOIKPByT6Dal4/ff7AHpjedL/w==} + peerDependencies: + zod: ^3.25 || ^4 + + '@composio/json-schema-to-zod@0.1.20': + resolution: {integrity: sha512-d4V34itLrUWG/VBh7ciznKcxF/T22MBLHmuEzHoX0zsBOHsUmjYz5qtDh20S2p3FE+HHvLZxpXiv8yfdd4yI+Q==} + peerDependencies: + zod: '>=3.25.76 <5' + + '@composio/vercel@0.6.3': + resolution: {integrity: sha512-hwtqufR2mWNwdATsRfrAuWRjPVZG4maRcqWZB4jDLpuIZU1NEBMLmL2Ae7b/QFXvNYXibA4w0Ug8XavV4Zkxlg==} + peerDependencies: + '@composio/core': 0.6.3 + ai: ^5.0.0 || ^6.0.0 + + '@dotenvx/dotenvx@1.52.0': + resolution: {integrity: sha512-CaQcc8JvtzQhUSm9877b6V4Tb7HCotkcyud9X2YwdqtQKwgljkMRwU96fVYKnzN3V0Hj74oP7Es+vZ0mS+Aa1w==} + hasBin: true + + '@ecies/ciphers@0.2.5': + resolution: {integrity: sha512-GalEZH4JgOMHYYcYmVqnFirFsjZHeoGMDt9IxEnM9F7GRUUyUksJ7Ou53L83WHJq3RWKD3AcBpo0iQh0oMpf8A==} + engines: {bun: '>=1', deno: '>=2', node: '>=16'} + peerDependencies: + '@noble/ciphers': ^1.0.0 + + '@electric-sql/pglite-socket@0.0.20': + resolution: {integrity: sha512-J5nLGsicnD9wJHnno9r+DGxfcZWh+YJMCe0q/aCgtG6XOm9Z7fKeite8IZSNXgZeGltSigM9U/vAWZQWdgcSFg==} + hasBin: true + peerDependencies: + '@electric-sql/pglite': 0.3.15 + + '@electric-sql/pglite-tools@0.2.20': + resolution: {integrity: sha512-BK50ZnYa3IG7ztXhtgYf0Q7zijV32Iw1cYS8C+ThdQlwx12V5VZ9KRJ42y82Hyb4PkTxZQklVQA9JHyUlex33A==} + peerDependencies: + '@electric-sql/pglite': 0.3.15 + + '@electric-sql/pglite@0.3.15': + resolution: {integrity: sha512-Cj++n1Mekf9ETfdc16TlDi+cDDQF0W7EcbyRHYOAeZdsAe8M/FJg18itDTSwyHfar2WIezawM9o0EKaRGVKygQ==} + + '@emnapi/core@1.8.1': + resolution: {integrity: sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==} + + '@emnapi/runtime@1.10.0': + resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==} + + '@emnapi/runtime@1.8.1': + resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==} + + '@emnapi/wasi-threads@1.1.0': + resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + + '@emotion/is-prop-valid@1.4.0': + resolution: {integrity: sha512-QgD4fyscGcbbKwJmqNvUMSE02OsHUa+lAWKdEUIJKgqe5IwRSKd7+KhibEWdaKwgjLj0DRSHA9biAIqGBk05lw==} + + '@emotion/memoize@0.9.0': + resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==} + + '@eslint-community/eslint-utils@4.9.1': + resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} + 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.3': + resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.39.2': + resolution: {integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==} + 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.4': + resolution: {integrity: sha512-C3HlIdsBxszvm5McXlB8PeOEWfBhcGBTZGkGlWc2U0KFY5IwG5OQEuQ8rq52DZmcHDlPLd+YFBK+cZcytwIFWg==} + + '@floating-ui/dom@1.7.5': + resolution: {integrity: sha512-N0bD2kIPInNHUHehXhMke1rBGs1dwqvC9O9KYMyyjK7iXt7GAhnro7UlcuYcGdS/yYOlq0MAVgrow8IbWJwyqg==} + + '@floating-ui/react-dom@2.1.7': + resolution: {integrity: sha512-0tLRojf/1Go2JgEVm+3Frg9A3IW8bJgKgdO0BN5RkF//ufuz2joZM63Npau2ff3J6lUVYgDSNzNkR+aH3IVfjg==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@floating-ui/utils@0.2.10': + resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} + + '@hono/node-server@1.19.9': + resolution: {integrity: sha512-vHL6w3ecZsky+8P5MD+eFfaGTyCeOHUIFYMGpQGbrBTSmNNoxv0if69rEZ5giu36weC5saFuznL411gRX7bJDw==} + engines: {node: '>=18.14.1'} + peerDependencies: + hono: ^4 + + '@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.1.0': + resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==} + 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] + libc: [glibc] + + '@img/sharp-libvips-linux-arm@1.2.4': + resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linux-ppc64@1.2.4': + resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linux-riscv64@1.2.4': + resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linux-s390x@1.2.4': + resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linux-x64@1.2.4': + resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@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] + libc: [glibc] + + '@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] + libc: [glibc] + + '@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] + libc: [glibc] + + '@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] + libc: [glibc] + + '@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] + libc: [glibc] + + '@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] + libc: [glibc] + + '@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] + libc: [musl] + + '@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] + libc: [musl] + + '@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] + + '@inquirer/ansi@1.0.2': + resolution: {integrity: sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==} + engines: {node: '>=18'} + + '@inquirer/confirm@5.1.21': + resolution: {integrity: sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/core@10.3.2': + resolution: {integrity: sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/figures@1.0.15': + resolution: {integrity: sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==} + engines: {node: '>=18'} + + '@inquirer/type@3.0.10': + resolution: {integrity: sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@ioredis/commands@1.5.0': + resolution: {integrity: sha512-eUgLqrMf8nJkZxT24JvVRrQya1vZkQh8BBeYNwGDqa5I0VUi8ACx7uFvAaLxintokpTenkK6DASvo/bvNbBGow==} + + '@isaacs/balanced-match@4.0.1': + resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} + engines: {node: 20 || >=22} + + '@isaacs/brace-expansion@5.0.1': + resolution: {integrity: sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==} + engines: {node: 20 || >=22} + + '@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==} + + '@modelcontextprotocol/sdk@1.26.0': + resolution: {integrity: sha512-Y5RmPncpiDtTXDbLKswIJzTqu2hyBKxTNsgKqKclDbhIgg1wgtf1fRuvxgTnRfcnxtvvgbIEcqUOzZrJ6iSReg==} + engines: {node: '>=18'} + peerDependencies: + '@cfworker/json-schema': ^4.1.1 + zod: ^3.25 || ^4.0 + peerDependenciesMeta: + '@cfworker/json-schema': + optional: true + + '@mrleebo/prisma-ast@0.13.1': + resolution: {integrity: sha512-XyroGQXcHrZdvmrGJvsA9KNeOOgGMg1Vg9OlheUsBOSKznLMDl+YChxbkboRHvtFYJEMRYmlV3uoo/njCw05iw==} + engines: {node: '>=16'} + + '@mswjs/interceptors@0.41.2': + resolution: {integrity: sha512-7G0Uf0yK3f2bjElBLGHIQzgRgMESczOMyYVasq1XK8P5HaXtlW4eQhz9MBL+TQILZLaruq+ClGId+hH0w4jvWw==} + engines: {node: '>=18'} + + '@napi-rs/wasm-runtime@0.2.12': + resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} + + '@next/env@15.5.15': + resolution: {integrity: sha512-vcmyu5/MyFzN7CdqRHO3uHO44p/QPCZkuTUXroeUmhNP8bL5PHFEhik22JUazt+CDDoD6EpBYRCaS2pISL+/hg==} + + '@next/eslint-plugin-next@15.5.12': + resolution: {integrity: sha512-+ZRSDFTv4aC96aMb5E41rMjysx8ApkryevnvEYZvPZO52KvkqP5rNExLUXJFr9P4s0f3oqNQR6vopCZsPWKDcQ==} + + '@next/swc-darwin-arm64@15.5.15': + resolution: {integrity: sha512-6PvFO2Tzt10GFK2Ro9tAVEtacMqRmTarYMFKAnV2vYMdwWc73xzmDQyAV7SwEdMhzmiRoo7+m88DuiXlJlGeaw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@next/swc-darwin-x64@15.5.15': + resolution: {integrity: sha512-G+YNV+z6FDZTp/+IdGyIMFqalBTaQSnvAA+X/hrt+eaTRFSznRMz9K7rTmzvM6tDmKegNtyzgufZW0HwVzEqaQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@next/swc-linux-arm64-gnu@15.5.15': + resolution: {integrity: sha512-eVkrMcVIBqGfXB+QUC7jjZ94Z6uX/dNStbQFabewAnk13Uy18Igd1YZ/GtPRzdhtm7QwC0e6o7zOQecul4iC1w==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@next/swc-linux-arm64-musl@15.5.15': + resolution: {integrity: sha512-RwSHKMQ7InLy5GfkY2/n5PcFycKA08qI1VST78n09nN36nUPqCvGSMiLXlfUmzmpQpF6XeBYP2KRWHi0UW3uNg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@next/swc-linux-x64-gnu@15.5.15': + resolution: {integrity: sha512-nplqvY86LakS+eeiuWsNWvfmK8pFcOEW7ZtVRt4QH70lL+0x6LG/m1OpJ/tvrbwjmR8HH9/fH2jzW1GlL03TIg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@next/swc-linux-x64-musl@15.5.15': + resolution: {integrity: sha512-eAgl9NKQ84/sww0v81DQINl/vL2IBxD7sMybd0cWRw6wqgouVI53brVRBrggqBRP/NWeIAE1dm5cbKYoiMlqDQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [musl] + + '@next/swc-win32-arm64-msvc@15.5.15': + resolution: {integrity: sha512-GJVZC86lzSquh0MtvZT+L7G8+jMnJcldloOjA8Kf3wXvBrvb6OGe2MzPuALxFshSm/IpwUtD2mIoof39ymf52A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@next/swc-win32-x64-msvc@15.5.15': + resolution: {integrity: sha512-nFucjVdwlFqxh/JG3hWSJ4p8+YJV7Ii8aPDuBQULB6DzUF4UNZETXLfEUk+oI2zEznWWULPt7MeuTE6xtK1HSA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@noble/ciphers@1.3.0': + resolution: {integrity: sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==} + engines: {node: ^14.21.3 || >=16} + + '@noble/ciphers@2.1.1': + resolution: {integrity: sha512-bysYuiVfhxNJuldNXlFEitTVdNnYUc+XNJZd7Qm2a5j1vZHgY+fazadNFWFaMK/2vye0JVlxV3gHmC0WDfAOQw==} + engines: {node: '>= 20.19.0'} + + '@noble/curves@1.9.7': + resolution: {integrity: sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@2.0.1': + resolution: {integrity: sha512-XlOlEbQcE9fmuXxrVTXCTlG2nlRXa9Rj3rr5Ue/+tX+nmkgbX720YHh0VR3hBF9xDvwnb8D2shVGOwNx+ulArw==} + engines: {node: '>= 20.19.0'} + + '@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'} + + '@open-draft/deferred-promise@2.2.0': + resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==} + + '@open-draft/logger@0.3.0': + resolution: {integrity: sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==} + + '@open-draft/until@2.1.0': + resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==} + + '@opentelemetry/api@1.9.0': + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} + + '@prisma/adapter-pg@7.3.0': + resolution: {integrity: sha512-iuYQMbIPO6i9O45Fv8TB7vWu00BXhCaNAShenqF7gLExGDbnGp5BfFB4yz1K59zQ59jF6tQ9YHrg0P6/J3OoLg==} + + '@prisma/client-runtime-utils@7.3.0': + resolution: {integrity: sha512-dG/ceD9c+tnXATPk8G+USxxYM9E6UdMTnQeQ+1SZUDxTz7SgQcfxEqafqIQHcjdlcNK/pvmmLfSwAs3s2gYwUw==} + + '@prisma/client@7.3.0': + resolution: {integrity: sha512-FXBIxirqQfdC6b6HnNgxGmU7ydCPEPk7maHMOduJJfnTP+MuOGa15X4omjR/zpPUUpm8ef/mEFQjJudOGkXFcQ==} + engines: {node: ^20.19 || ^22.12 || >=24.0} + peerDependencies: + prisma: '*' + typescript: '>=5.4.0' + peerDependenciesMeta: + prisma: + optional: true + typescript: + optional: true + + '@prisma/config@7.3.0': + resolution: {integrity: sha512-QyMV67+eXF7uMtKxTEeQqNu/Be7iH+3iDZOQZW5ttfbSwBamCSdwPszA0dum+Wx27I7anYTPLmRmMORKViSW1A==} + + '@prisma/debug@7.2.0': + resolution: {integrity: sha512-YSGTiSlBAVJPzX4ONZmMotL+ozJwQjRmZweQNIq/ER0tQJKJynNkRB3kyvt37eOfsbMCXk3gnLF6J9OJ4QWftw==} + + '@prisma/debug@7.3.0': + resolution: {integrity: sha512-yh/tHhraCzYkffsI1/3a7SHX8tpgbJu1NPnuxS4rEpJdWAUDHUH25F1EDo6PPzirpyLNkgPPZdhojQK804BGtg==} + + '@prisma/dev@0.20.0': + resolution: {integrity: sha512-ovlBYwWor0OzG+yH4J3Ot+AneD818BttLA+Ii7wjbcLHUrnC4tbUPVGyNd3c/+71KETPKZfjhkTSpdS15dmXNQ==} + + '@prisma/driver-adapter-utils@7.3.0': + resolution: {integrity: sha512-Wdlezh1ck0Rq2dDINkfSkwbR53q53//Eo1vVqVLwtiZ0I6fuWDGNPxwq+SNAIHnsU+FD/m3aIJKevH3vF13U3w==} + + '@prisma/engines-version@7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735': + resolution: {integrity: sha512-IH2va2ouUHihyiTTRW889LjKAl1CusZOvFfZxCDNpjSENt7g2ndFsK0vdIw/72v7+jCN6YgkHmdAP/BI7SDgyg==} + + '@prisma/engines@7.3.0': + resolution: {integrity: sha512-cWRQoPDXPtR6stOWuWFZf9pHdQ/o8/QNWn0m0zByxf5Kd946Q875XdEJ52pEsX88vOiXUmjuPG3euw82mwQNMg==} + + '@prisma/fetch-engine@7.3.0': + resolution: {integrity: sha512-Mm0F84JMqM9Vxk70pzfNpGJ1lE4hYjOeLMu7nOOD1i83nvp8MSAcFYBnHqLvEZiA6onUR+m8iYogtOY4oPO5lQ==} + + '@prisma/get-platform@7.2.0': + resolution: {integrity: sha512-k1V0l0Td1732EHpAfi2eySTezyllok9dXb6UQanajkJQzPUGi3vO2z7jdkz67SypFTdmbnyGYxvEvYZdZsMAVA==} + + '@prisma/get-platform@7.3.0': + resolution: {integrity: sha512-N7c6m4/I0Q6JYmWKP2RCD/sM9eWiyCPY98g5c0uEktObNSZnugW2U/PO+pwL0UaqzxqTXt7gTsYsb0FnMnJNbg==} + + '@prisma/query-plan-executor@7.2.0': + resolution: {integrity: sha512-EOZmNzcV8uJ0mae3DhTsiHgoNCuu1J9mULQpGCh62zN3PxPTd+qI9tJvk5jOst8WHKQNwJWR3b39t0XvfBB0WQ==} + + '@prisma/studio-core@0.13.1': + resolution: {integrity: sha512-agdqaPEePRHcQ7CexEfkX1RvSH9uWDb6pXrZnhCRykhDFAV0/0P3d07WtfiY8hZWb7oRU4v+NkT4cGFHkQJIPg==} + peerDependencies: + '@types/react': ^18.0.0 || ^19.0.0 + react: ^18.0.0 || ^19.0.0 + react-dom: ^18.0.0 || ^19.0.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-accessible-icon@1.1.7': + resolution: {integrity: sha512-XM+E4WXl0OqUJFovy6GjmxxFyx9opfCAIUku4dlKRd5YEPqt4kALOkQOp0Of6reHuUkJuiPBEc5k0o4z4lTC8A==} + 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-accordion@1.2.12': + resolution: {integrity: sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==} + 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-alert-dialog@1.1.15': + resolution: {integrity: sha512-oTVLkEw5GpdRe29BqJ0LSDFWI3qu0vR1M0mUkOQWDIUnY/QIkLpgDMWuKxP94c2NAC2LGcgVhG1ImF3jkZ5wXw==} + 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-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-aspect-ratio@1.1.7': + resolution: {integrity: sha512-Yq6lvO9HQyPwev1onK1daHCHqXVLzPhSVjmsNjCa2Zcxy2f7uJD2itDtxknv6FzAKCwD1qQkeVDmX/cev13n/g==} + 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.10': + resolution: {integrity: sha512-V8piFfWapM5OmNCXTzVQY+E1rDa53zY+MQ4Y7356v4fFz6vqCyUtIz2rUD44ZEdwg78/jKmMJHj07+C/Z/rcog==} + 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-checkbox@1.3.3': + resolution: {integrity: sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==} + 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-collapsible@1.1.12': + resolution: {integrity: sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==} + 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-menu@2.2.16': + resolution: {integrity: sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==} + 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-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-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-form@0.1.8': + resolution: {integrity: sha512-QM70k4Zwjttifr5a4sZFts9fn8FzHYvQ5PiB19O2HsYibaHSVt9fH9rzB0XZo/YcM+b7t/p7lYCT/F5eOeF5yQ==} + 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-hover-card@1.1.15': + resolution: {integrity: sha512-qgTkjNT1CfKMoP0rcasmlH2r1DAiYicWsDsufxl940sT2wHNEWWv6FMWIQXWhVdmC1d/HYfbhQx60KYyAtKxjg==} + 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.7': + resolution: {integrity: sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ==} + 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-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-menubar@1.1.16': + resolution: {integrity: sha512-EB1FktTz5xRRi2Er974AUQZWg2yVBb1yjip38/lgwtCVRd3a+maUoGHN/xs9Yv8SY8QwbSEb+YrxGadVWbEutA==} + 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-navigation-menu@1.2.14': + resolution: {integrity: sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==} + 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-one-time-password-field@0.1.8': + resolution: {integrity: sha512-ycS4rbwURavDPVjCb5iS3aG4lURFDILi6sKI/WITUMZ13gMmn/xGjpLoqBAalhJaDk8I3UbCM5GzKHrnzwHbvg==} + 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-password-toggle-field@0.1.3': + resolution: {integrity: sha512-/UuCrDBWravcaMix4TdT+qlNdVwOM1Nck9kWx/vafXsdfj1ChfhOdfi3cy9SGBpWgTXwYCuboT/oYpJy3clqfw==} + 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-progress@1.1.7': + resolution: {integrity: sha512-vPdg/tF6YC/ynuBIJlk1mm7Le0VgW6ub6J2UWnTQ7/D23KXcPI1qy+0vBkgKgd38RCMJavBXpB83HPNFMTb0Fg==} + 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-radio-group@1.3.8': + resolution: {integrity: sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==} + 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-scroll-area@1.2.10': + resolution: {integrity: sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==} + 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-separator@1.1.7': + resolution: {integrity: sha512-0HEb8R9E8A+jZjvmFCy/J4xhbXy3TV+9XSnGJ3KvTtjlIUy/YQ/p6UYZvi7YbeoeXdyU9+Y3scizK6hkY37baA==} + 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-slider@1.3.6': + resolution: {integrity: sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==} + 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-toast@1.2.15': + resolution: {integrity: sha512-3OSz3TacUWy4WtOXV38DggwxoqJK4+eDkNMl5Z/MJZaoUPaP4/9lf81xXMe1I2ReTAptverZUpbPY4wWwWyL5g==} + 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-toggle-group@1.1.11': + resolution: {integrity: sha512-5umnS0T8JQzQT6HbPyO7Hh9dgd82NmS36DQr+X/YJ9ctFNCiiQd6IJAYYZ33LUwm8M+taCz5t2ui29fHZc4Y6Q==} + 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-toggle@1.1.10': + resolution: {integrity: sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==} + 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-toolbar@1.1.11': + resolution: {integrity: sha512-4ol06/1bLoFu1nwUqzdD4Y5RZ9oDdKeiHIsntug54Hcr1pgaHiPqHFEaXI1IFP/EsOfROQZ8Mig9VTIRza6Tjg==} + 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-tooltip@1.2.8': + resolution: {integrity: sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==} + 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==} + + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + + '@rushstack/eslint-patch@1.15.0': + resolution: {integrity: sha512-ojSshQPKwVvSMR8yT2L/QtUkV5SXi/IfDiJ4/8d6UbTPjiHVmxZzUAzGD8Tzks1b9+qQkZa0isUOvYObedITaw==} + + '@sec-ant/readable-stream@0.4.1': + resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} + + '@sindresorhus/merge-streams@4.0.0': + resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==} + engines: {node: '>=18'} + + '@standard-schema/spec@1.1.0': + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + + '@standard-schema/utils@0.3.0': + resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==} + + '@swc/helpers@0.5.15': + resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} + + '@t3-oss/env-core@0.12.0': + resolution: {integrity: sha512-lOPj8d9nJJTt81mMuN9GMk8x5veOt7q9m11OSnCBJhwp1QrL/qR+M8Y467ULBSm9SunosryWNbmQQbgoiMgcdw==} + peerDependencies: + typescript: '>=5.0.0' + valibot: ^1.0.0-beta.7 || ^1.0.0 + zod: ^3.24.0 + peerDependenciesMeta: + typescript: + optional: true + valibot: + optional: true + zod: + optional: true + + '@t3-oss/env-nextjs@0.12.0': + resolution: {integrity: sha512-rFnvYk1049RnNVUPvY8iQ55AuQh1Rr+qZzQBh3t++RttCGK4COpXGNxS4+45afuQq02lu+QAOy/5955aU8hRKw==} + peerDependencies: + typescript: '>=5.0.0' + valibot: ^1.0.0-beta.7 || ^1.0.0 + zod: ^3.24.0 + peerDependenciesMeta: + typescript: + optional: true + valibot: + optional: true + zod: + optional: true + + '@tailwindcss/node@4.1.18': + resolution: {integrity: sha512-DoR7U1P7iYhw16qJ49fgXUlry1t4CpXeErJHnQ44JgTSKMaZUdf17cfn5mHchfJ4KRBZRFA/Coo+MUF5+gOaCQ==} + + '@tailwindcss/oxide-android-arm64@4.1.18': + resolution: {integrity: sha512-dJHz7+Ugr9U/diKJA0W6N/6/cjI+ZTAoxPf9Iz9BFRF2GzEX8IvXxFIi/dZBloVJX/MZGvRuFA9rqwdiIEZQ0Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@tailwindcss/oxide-darwin-arm64@4.1.18': + resolution: {integrity: sha512-Gc2q4Qhs660bhjyBSKgq6BYvwDz4G+BuyJ5H1xfhmDR3D8HnHCmT/BSkvSL0vQLy/nkMLY20PQ2OoYMO15Jd0A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@tailwindcss/oxide-darwin-x64@4.1.18': + resolution: {integrity: sha512-FL5oxr2xQsFrc3X9o1fjHKBYBMD1QZNyc1Xzw/h5Qu4XnEBi3dZn96HcHm41c/euGV+GRiXFfh2hUCyKi/e+yw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@tailwindcss/oxide-freebsd-x64@4.1.18': + resolution: {integrity: sha512-Fj+RHgu5bDodmV1dM9yAxlfJwkkWvLiRjbhuO2LEtwtlYlBgiAT4x/j5wQr1tC3SANAgD+0YcmWVrj8R9trVMA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.18': + resolution: {integrity: sha512-Fp+Wzk/Ws4dZn+LV2Nqx3IilnhH51YZoRaYHQsVq3RQvEl+71VGKFpkfHrLM/Li+kt5c0DJe/bHXK1eHgDmdiA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-gnu@4.1.18': + resolution: {integrity: sha512-S0n3jboLysNbh55Vrt7pk9wgpyTTPD0fdQeh7wQfMqLPM/Hrxi+dVsLsPrycQjGKEQk85Kgbx+6+QnYNiHalnw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@tailwindcss/oxide-linux-arm64-musl@4.1.18': + resolution: {integrity: sha512-1px92582HkPQlaaCkdRcio71p8bc8i/ap5807tPRDK/uw953cauQBT8c5tVGkOwrHMfc2Yh6UuxaH4vtTjGvHg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@tailwindcss/oxide-linux-x64-gnu@4.1.18': + resolution: {integrity: sha512-v3gyT0ivkfBLoZGF9LyHmts0Isc8jHZyVcbzio6Wpzifg/+5ZJpDiRiUhDLkcr7f/r38SWNe7ucxmGW3j3Kb/g==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@tailwindcss/oxide-linux-x64-musl@4.1.18': + resolution: {integrity: sha512-bhJ2y2OQNlcRwwgOAGMY0xTFStt4/wyU6pvI6LSuZpRgKQwxTec0/3Scu91O8ir7qCR3AuepQKLU/kX99FouqQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + libc: [musl] + + '@tailwindcss/oxide-wasm32-wasi@4.1.18': + resolution: {integrity: sha512-LffYTvPjODiP6PT16oNeUQJzNVyJl1cjIebq/rWWBF+3eDst5JGEFSc5cWxyRCJ0Mxl+KyIkqRxk1XPEs9x8TA==} + 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.18': + resolution: {integrity: sha512-HjSA7mr9HmC8fu6bdsZvZ+dhjyGCLdotjVOgLA2vEqxEBZaQo9YTX4kwgEvPCpRh8o4uWc4J/wEoFzhEmjvPbA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@tailwindcss/oxide-win32-x64-msvc@4.1.18': + resolution: {integrity: sha512-bJWbyYpUlqamC8dpR7pfjA0I7vdF6t5VpUGMWRkXVE3AXgIZjYUYAK7II1GNaxR8J1SSrSrppRar8G++JekE3Q==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@tailwindcss/oxide@4.1.18': + resolution: {integrity: sha512-EgCR5tTS5bUSKQgzeMClT6iCY3ToqE1y+ZB0AKldj809QXk1Y+3jB0upOYZrn9aGIzPtUsP7sX4QQ4XtjBB95A==} + engines: {node: '>= 10'} + + '@tailwindcss/postcss@4.1.18': + resolution: {integrity: sha512-Ce0GFnzAOuPyfV5SxjXGn0CubwGcuDB0zcdaPuCSzAa/2vII24JTkH+I6jcbXLb1ctjZMZZI6OjDaLPJQL1S0g==} + + '@tanstack/query-core@5.90.20': + resolution: {integrity: sha512-OMD2HLpNouXEfZJWcKeVKUgQ5n+n3A2JFmBaScpNDUqSrQSjiveC7dKMe53uJUg1nDG16ttFPz2xfilz6i2uVg==} + + '@tanstack/react-query@5.90.20': + resolution: {integrity: sha512-vXBxa+qeyveVO7OA0jX1z+DeyCA4JKnThKv411jd5SORpBKgkcVnYKCiBgECvADvniBX7tobwBmg01qq9JmMJw==} + peerDependencies: + react: ^18 || ^19 + + '@tanstack/react-virtual@3.13.18': + resolution: {integrity: sha512-dZkhyfahpvlaV0rIKnvQiVoWPyURppl6w4m9IwMDpuIjcJ1sD9YGWrt0wISvgU7ewACXx2Ct46WPgI6qAD4v6A==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + '@tanstack/virtual-core@3.13.18': + resolution: {integrity: sha512-Mx86Hqu1k39icq2Zusq+Ey2J6dDWTjDvEv43PJtRCoEYTLyfaPnxIQ6iy7YAOK0NV/qOEmZQ/uCufrppZxTgcg==} + + '@trpc/client@11.9.0': + resolution: {integrity: sha512-3r4RT/GbR263QO+2gCPyrs5fEYaXua3/AzCs+GbWC09X0F+mVkyBpO3GRSDObiNU/N1YB597U7WGW3WA1d1TVw==} + peerDependencies: + '@trpc/server': 11.9.0 + typescript: '>=5.7.2' + + '@trpc/react-query@11.9.0': + resolution: {integrity: sha512-9Gpj06ZcfsA77PB5A8VC2MFS/E7pPvoNqaSlSrAgLyRsKqy0gldFOW2RMKura69M6fwtgjg9+4i2+rOHKT7qLw==} + peerDependencies: + '@tanstack/react-query': ^5.80.3 + '@trpc/client': 11.9.0 + '@trpc/server': 11.9.0 + react: '>=18.2.0' + react-dom: '>=18.2.0' + typescript: '>=5.7.2' + + '@trpc/server@11.9.0': + resolution: {integrity: sha512-T8gC4NOCzx8tCsQEQ5sSjf24bN+9AEqXZRfpThG+YCEmcEwXfS7RP8VVrl5Vodt1S+zGEDyQSof4YVAj1zq/mg==} + peerDependencies: + typescript: '>=5.7.2' + + '@ts-morph/common@0.27.0': + resolution: {integrity: sha512-Wf29UqxWDpc+i61k3oIOzcUfQt79PIT9y/MWfAGlrkjg6lBC1hwDECLXPVJAhWjiGbfBCxZd65F/LIZF3+jeJQ==} + + '@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@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/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} + + '@types/node@20.19.32': + resolution: {integrity: sha512-Ez8QE4DMfhjjTsES9K2dwfV258qBui7qxUsoaixZDiTzbde4U12e1pXGNu/ECsUIOi5/zoCxAQxIhQnaUQ2VvA==} + + '@types/pg@8.16.0': + resolution: {integrity: sha512-RmhMd/wD+CF8Dfo+cVIy3RR5cl8CyfXQ0tGgW6XBL8L4LM/UTEbNXYRbLwU6w+CgrKBNbrQWt4FUtTfaU5jSYQ==} + + '@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.13': + resolution: {integrity: sha512-KkiJeU6VbYbUOp5ITMIc7kBfqlYkKA5KhEHVrGMmUUMt7NeaZg65ojdPk+FtNrBAOXNVM5QM72jnADjM+XVRAQ==} + + '@types/statuses@2.0.6': + resolution: {integrity: sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA==} + + '@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/validate-npm-package-name@4.0.2': + resolution: {integrity: sha512-lrpDziQipxCEeK5kWxvljWYhUvOiB2A9izZd9B2AFarYAkqZshb4lPbRs7zKEic6eGtH8V/2qJW+dPp9OtF6bw==} + + '@typescript-eslint/eslint-plugin@8.54.0': + resolution: {integrity: sha512-hAAP5io/7csFStuOmR782YmTthKBJ9ND3WVL60hcOjvtGFb+HJxH4O5huAcmcZ9v9G8P+JETiZ/G1B8MALnWZQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.54.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/parser@8.54.0': + resolution: {integrity: sha512-BtE0k6cjwjLZoZixN0t5AKP0kSzlGu7FctRXYuPAm//aaiZhmfq1JwdYpYr1brzEspYyFeF+8XF5j2VK6oalrA==} + 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.54.0': + resolution: {integrity: sha512-YPf+rvJ1s7MyiWM4uTRhE4DvBXrEV+d8oC3P9Y2eT7S+HBS0clybdMIPnhiATi9vZOYDc7OQ1L/i6ga6NFYK/g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/scope-manager@8.54.0': + resolution: {integrity: sha512-27rYVQku26j/PbHYcVfRPonmOlVI6gihHtXFbTdB5sb6qA0wdAQAbyXFVarQ5t4HRojIz64IV90YtsjQSSGlQg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/tsconfig-utils@8.54.0': + resolution: {integrity: sha512-dRgOyT2hPk/JwxNMZDsIXDgyl9axdJI3ogZ2XWhBPsnZUv+hPesa5iuhdYt2gzwA9t8RE5ytOJ6xB0moV0Ujvw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/type-utils@8.54.0': + resolution: {integrity: sha512-hiLguxJWHjjwL6xMBwD903ciAwd7DmK30Y9Axs/etOkftC3ZNN9K44IuRD/EB08amu+Zw6W37x9RecLkOo3pMA==} + 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.54.0': + resolution: {integrity: sha512-PDUI9R1BVjqu7AUDsRBbKMtwmjWcn4J3le+5LpcFgWULN3LvHC5rkc9gCVxbrsrGmO1jfPybN5s6h4Jy+OnkAA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.54.0': + resolution: {integrity: sha512-BUwcskRaPvTk6fzVWgDPdUndLjB87KYDrN5EYGetnktoeAvPtO4ONHlAZDnj5VFnUANg0Sjm7j4usBlnoVMHwA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/utils@8.54.0': + resolution: {integrity: sha512-9Cnda8GS57AQakvRyG0PTejJNlA2xhvyNtEVIMlDWOOeEyBkYWhGPnfrIAnqxLMTSTo6q8g12XVjjev5l1NvMA==} + 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.54.0': + resolution: {integrity: sha512-VFlhGSl4opC0bprJiItPQ1RfUhGDIBokcPwaFH4yiBCaNPeld/9VeXbiPO1cLyorQi1G1vL+ecBk1x8o1axORA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.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] + libc: [glibc] + + '@unrs/resolver-binding-linux-arm64-musl@1.11.1': + resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': + resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': + resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': + resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==} + cpu: [riscv64] + os: [linux] + libc: [musl] + + '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': + resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@unrs/resolver-binding-linux-x64-gnu@1.11.1': + resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@unrs/resolver-binding-linux-x64-musl@1.11.1': + resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@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] + + '@vercel/oidc@3.1.0': + resolution: {integrity: sha512-Fw28YZpRnA3cAHHDlkt7xQHiJ0fcL+NRcIqsocZQUSmbzeIKRpwttJjik5ZGanXP+vlA4SbTg+AbA3bP363l+w==} + engines: {node: '>= 20'} + + accepts@2.0.0: + resolution: {integrity: sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==} + engines: {node: '>= 0.6'} + + 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 + + agent-base@7.1.4: + resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} + engines: {node: '>= 14'} + + ai@6.0.78: + resolution: {integrity: sha512-eriIX/NLWfWNDeE/OJy8wmIp9fyaH7gnxTOCPT5bp0MNkvORstp1TwRUql9au8XjXzH7o2WApqbwgxJDDV0Rbw==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + ai@6.0.85: + resolution: {integrity: sha512-2bP7M+OcNQGSIH8I3jdujUadxj4tAwuHBvLhpmDSlcjRXXry3zNGEajjjRraOjObHMO/Yqa37PJWhPVHIHt2TQ==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + ajv-formats@3.0.1: + resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansis@4.2.0: + resolution: {integrity: sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==} + engines: {node: '>=14'} + + 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==} + + ast-types@0.16.1: + resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} + engines: {node: '>=4'} + + 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'} + + aws-ssl-profiles@1.1.2: + resolution: {integrity: sha512-NZKeq9AfyQvEeNlN0zSYAaWrmBffJh3IELMZfRpJVWgrpEbtEpnjvzqBPf+mxoI287JohRDoa+/nsfqqiZmF6g==} + engines: {node: '>= 6.0.0'} + + axe-core@4.11.1: + resolution: {integrity: sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==} + 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.9.19: + resolution: {integrity: sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==} + hasBin: true + + better-auth@1.4.18: + resolution: {integrity: sha512-bnyifLWBPcYVltH3RhS7CM62MoelEqC6Q+GnZwfiDWNfepXoQZBjEvn4urcERC7NTKgKq5zNBM8rvPvRBa6xcg==} + peerDependencies: + '@lynx-js/react': '*' + '@prisma/client': ^5.0.0 || ^6.0.0 || ^7.0.0 + '@sveltejs/kit': ^2.0.0 + '@tanstack/react-start': ^1.0.0 + '@tanstack/solid-start': ^1.0.0 + better-sqlite3: ^12.0.0 + drizzle-kit: '>=0.31.4' + drizzle-orm: '>=0.41.0' + mongodb: ^6.0.0 || ^7.0.0 + mysql2: ^3.0.0 + next: ^14.0.0 || ^15.0.0 || ^16.0.0 + pg: ^8.0.0 + prisma: ^5.0.0 || ^6.0.0 || ^7.0.0 + react: ^18.0.0 || ^19.0.0 + react-dom: ^18.0.0 || ^19.0.0 + solid-js: ^1.0.0 + svelte: ^4.0.0 || ^5.0.0 + vitest: ^2.0.0 || ^3.0.0 || ^4.0.0 + vue: ^3.0.0 + peerDependenciesMeta: + '@lynx-js/react': + optional: true + '@prisma/client': + optional: true + '@sveltejs/kit': + optional: true + '@tanstack/react-start': + optional: true + '@tanstack/solid-start': + optional: true + better-sqlite3: + optional: true + drizzle-kit: + optional: true + drizzle-orm: + optional: true + mongodb: + optional: true + mysql2: + optional: true + next: + optional: true + pg: + optional: true + prisma: + optional: true + react: + optional: true + react-dom: + optional: true + solid-js: + optional: true + svelte: + optional: true + vitest: + optional: true + vue: + optional: true + + better-call@1.1.8: + resolution: {integrity: sha512-XMQ2rs6FNXasGNfMjzbyroSwKwYbZ/T3IxruSS6U2MJRsSYh3wYtG3o6H00ZlKZ/C/UPOAD97tqgQJNsxyeTXw==} + peerDependencies: + zod: ^4.0.0 + peerDependenciesMeta: + zod: + optional: true + + body-parser@2.2.2: + resolution: {integrity: sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA==} + engines: {node: '>=18'} + + 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.1: + resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + bundle-name@4.1.0: + resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} + engines: {node: '>=18'} + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + c12@3.1.0: + resolution: {integrity: sha512-uWoS8OU1MEIsOv8p/5a82c3H31LsWVR5qiyXVfBNOzfffjUWtPnhAb4BYI2uG2HfGmZmFjCtui5XNWaps+iFuw==} + peerDependencies: + magicast: ^0.3.5 + peerDependenciesMeta: + magicast: + optional: true + + 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.30001768: + resolution: {integrity: sha512-qY3aDRZC5nWPgHUgIB84WL+nySuo19wk0VJpp/XI9T34lrvkyhRvNVOFJOp2kxClQhiFBu+TaUSudf6oa3vkSA==} + + caniuse-lite@1.0.30001791: + resolution: {integrity: sha512-yk0l/YSrOnFZk3UROpDLQD9+kC1l4meK/wed583AXrzoarMGJcbRi2Q4RaUYbKxYAsZ8sWmaSa/DsLmdBeI1vQ==} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chalk@5.6.2: + resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + 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==} + + chevrotain@10.5.0: + resolution: {integrity: sha512-Pkv5rBY3+CsHOYfV5g/Vs5JY9WTHHDEKOlohI2XeygaZhUeqhAlldZ8Hz9cRmxu709bvS08YzxHdTPHhffc13A==} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + citty@0.1.6: + resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} + + citty@0.2.0: + resolution: {integrity: sha512-8csy5IBFI2ex2hTVpaHN2j+LNE199AgiI7y4dMintrr8i0lQiFn+0AWMZrWdHKIgMOer65f8IThysYhoReqjWA==} + + class-variance-authority@0.7.1: + resolution: {integrity: sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==} + + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} + + cli-spinners@2.9.2: + resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} + engines: {node: '>=6'} + + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + + client-only@0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + + cluster-key-slot@1.1.2: + resolution: {integrity: sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==} + engines: {node: '>=0.10.0'} + + code-block-writer@13.0.3: + resolution: {integrity: sha512-Oofo0pq3IKnsFtuHqSF7TqBfr71aeyZDVJ0HpmqB7FBM2qEigL0iPONSCZSO9pE9dZTAxANe5XHG9Uy0YMv8cg==} + + 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==} + + commander@11.1.0: + resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} + engines: {node: '>=16'} + + commander@14.0.3: + resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==} + engines: {node: '>=20'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + confbox@0.2.4: + resolution: {integrity: sha512-ysOGlgTFbN2/Y6Cg3Iye8YKulHw+R2fNXHrgSmXISQdMnomY6eNDprVdW9R5xBguEqI954+S6709UyiO7B+6OQ==} + + consola@3.4.2: + resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} + engines: {node: ^14.18.0 || >=16.10.0} + + content-disposition@1.0.1: + resolution: {integrity: sha512-oIXISMynqSqm241k6kcQ5UwttDILMK4BiurCfGEREw6+X9jkkpEe5T9FZaApyLGGOnFuyMWZpdolTXMtvEJ08Q==} + engines: {node: '>=18'} + + content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} + engines: {node: '>= 0.6'} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + cookie-signature@1.2.2: + resolution: {integrity: sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==} + engines: {node: '>=6.6.0'} + + cookie@0.7.2: + resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} + engines: {node: '>= 0.6'} + + cookie@1.1.1: + resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} + engines: {node: '>=18'} + + copy-anything@4.0.5: + resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==} + engines: {node: '>=18'} + + cors@2.8.6: + resolution: {integrity: sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==} + engines: {node: '>= 0.10'} + + cosmiconfig@9.0.0: + resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + + croner@10.0.1: + resolution: {integrity: sha512-ixNtAJndqh173VQ4KodSdJEI6nuioBWI0V1ITNKhZZsO0pEMoDxz539T4FTTbSZ/xIOSuDnzxLVRqBVSvPNE2g==} + engines: {node: '>=18.0'} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + 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-uri-to-buffer@4.0.1: + resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} + engines: {node: '>= 12'} + + 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'} + + 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.3.0: + resolution: {integrity: sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==} + + dedent@1.7.1: + resolution: {integrity: sha512-9JmrhGZpOlEgOLdQgSm0zxFaYoQon408V1v49aqTWuXENVlnCuY9JBZcXZiCsZQWDjTm5Qf/nIvAy77mXDAjEg==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + deepmerge-ts@7.1.5: + resolution: {integrity: sha512-HOJkrhaYsweh+W+e74Yn7YStZOilkoPb6fycpwNLKzSPtruFs48nYis0zy5yJz1+ktUhHxoRDJ27RQAWLIJVJw==} + engines: {node: '>=16.0.0'} + + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + + default-browser-id@5.0.1: + resolution: {integrity: sha512-x1VCxdX4t+8wVfd1so/9w+vQ4vx7lKd2Qp5tDRutErwmR85OgmfX7RlLRMWafRMY7hbEiXIbudNrjOAPa/hL8Q==} + engines: {node: '>=18'} + + default-browser@5.5.0: + resolution: {integrity: sha512-H9LMLr5zwIbSxrmvikGuI/5KGhZ8E2zH3stkMgM5LpOWDutGM2JZaj460Udnf1a+946zc7YBgrqEWwbk7zHvGw==} + engines: {node: '>=18'} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-lazy-prop@3.0.0: + resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} + engines: {node: '>=12'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + + defu@6.1.4: + resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} + + denque@2.1.0: + resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} + engines: {node: '>=0.10'} + + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + destr@2.0.5: + resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==} + + 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==} + + diff@8.0.3: + resolution: {integrity: sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==} + engines: {node: '>=0.3.1'} + + doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + + dotenv-cli@11.0.0: + resolution: {integrity: sha512-r5pA8idbk7GFWuHEU7trSTflWcdBpQEK+Aw17UrSHjS6CReuhrrPcyC3zcQBPQvhArRHnBo/h6eLH1fkCvNlww==} + hasBin: true + + dotenv-expand@12.0.3: + resolution: {integrity: sha512-uc47g4b+4k/M/SeaW1y4OApx+mtLWl92l5LMPP0GNXctZqELk+YGgOPIIC5elYmUH4OuoK3JLhuRUYegeySiFA==} + engines: {node: '>=12'} + + dotenv@16.6.1: + resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==} + engines: {node: '>=12'} + + dotenv@17.2.4: + resolution: {integrity: sha512-mudtfb4zRB4bVvdj0xRo+e6duH1csJRM8IukBqfTRvHotn9+LBXB8ynAidP9zHqoRC/fsllXgk4kCKlR21fIhw==} + engines: {node: '>=12'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + eciesjs@0.4.17: + resolution: {integrity: sha512-TOOURki4G7sD1wDCjj7NfLaXZZ49dFOeEb5y39IXpb8p0hRzVvfvzZHOi5JcT+PpyAbi/Y+lxPb8eTag2WYH8w==} + engines: {bun: '>=1', deno: '>=2', node: '>=16'} + + ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + + effect@3.18.4: + resolution: {integrity: sha512-b1LXQJLe9D11wfnOKAk3PKxuqYshQ0Heez+y5pnkd3jLj1yx9QhM72zZ9uUrOQyNvrs2GZZd/3maL0ZV18YuDA==} + + electron-to-chromium@1.5.286: + resolution: {integrity: sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A==} + + emoji-regex@10.6.0: + resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + empathic@2.0.0: + resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==} + engines: {node: '>=14'} + + encodeurl@2.0.0: + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} + engines: {node: '>= 0.8'} + + enhanced-resolve@5.19.0: + resolution: {integrity: sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==} + engines: {node: '>=10.13.0'} + + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + error-ex@1.3.4: + resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==} + + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} + 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.2: + resolution: {integrity: sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==} + 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-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + + 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@15.5.12: + resolution: {integrity: sha512-ktW3XLfd+ztEltY5scJNjxjHwtKWk6vU2iwzZqSN09UsbBmMeE/cVlJ1yESg6Yx5LW7p/Z8WzUAgYXGLEmGIpg==} + peerDependencies: + eslint: ^7.23.0 || ^8.0.0 || ^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@5.2.0: + resolution: {integrity: sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 + + 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.2: + resolution: {integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==} + 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} + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + esquery@1.7.0: + resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} + 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'} + + etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} + engines: {node: '>= 0.6'} + + eventsource-parser@3.0.6: + resolution: {integrity: sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==} + engines: {node: '>=18.0.0'} + + eventsource@3.0.7: + resolution: {integrity: sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==} + engines: {node: '>=18.0.0'} + + execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + + execa@9.6.1: + resolution: {integrity: sha512-9Be3ZoN4LmYR90tUoVu2te2BsbzHfhJyfEiAVfz7N5/zv+jduIfLrV2xdQXOHbaD6KgpGdO9PRPM1Y4Q9QkPkA==} + engines: {node: ^18.19.0 || >=20.5.0} + + express-rate-limit@8.2.1: + resolution: {integrity: sha512-PCZEIEIxqwhzw4KF0n7QF4QqruVTcF73O5kFKUnGOyjbCCgizBBiFaYpd/fnBLUMPw/BWw9OsiN7GgrNYr7j6g==} + engines: {node: '>= 16'} + peerDependencies: + express: '>= 4.11' + + express@5.2.1: + resolution: {integrity: sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==} + engines: {node: '>= 18'} + + exsolve@1.0.8: + resolution: {integrity: sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + + fast-check@3.23.2: + resolution: {integrity: sha512-h5+1OzzfCC3Ef7VbtKdcv7zsstUQwUDlYpUTvjeUsJAssPgLn7QzbboPtL5ro04Mq0rPOsMzl7q5hIbRs2wD1A==} + engines: {node: '>=8.0.0'} + + 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-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + 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==} + + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + + fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fetch-blob@3.2.0: + resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} + engines: {node: ^12.20 || >= 14.13} + + figures@6.1.0: + resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==} + engines: {node: '>=18'} + + 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'} + + finalhandler@2.1.1: + resolution: {integrity: sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==} + engines: {node: '>= 18.0.0'} + + 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'} + + foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + + formdata-polyfill@4.0.10: + resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} + engines: {node: '>=12.20.0'} + + forwarded@0.2.0: + resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} + engines: {node: '>= 0.6'} + + framer-motion@12.33.0: + resolution: {integrity: sha512-ca8d+rRPcDP5iIF+MoT3WNc0KHJMjIyFAbtVLvM9eA7joGSpeqDfiNH/kCs1t4CHi04njYvWyj0jS4QlEK/rJQ==} + peerDependencies: + '@emotion/is-prop-valid': '*' + react: ^18.0.0 || ^19.0.0 + react-dom: ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@emotion/is-prop-valid': + optional: true + react: + optional: true + react-dom: + optional: true + + fresh@2.0.0: + resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==} + engines: {node: '>= 0.8'} + + fs-extra@11.3.3: + resolution: {integrity: sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==} + engines: {node: '>=14.14'} + + 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==} + + fuzzysort@3.1.0: + resolution: {integrity: sha512-sR9BNCjBg6LNgwvxlBd0sBABvQitkLzoVY9MYYROQVX/FvfJ4Mai9LsGhDgd8qYdds0bY77VzYd5iuB+v5rwQQ==} + + fzf@0.5.2: + resolution: {integrity: sha512-Tt4kuxLXFKHy8KT40zwsUPUkg1CrsgY25FxA2U/j/0WgEDCk3ddc/zLTCCcbSHX9FcKtLuVaDGtGE/STWC+j3Q==} + + generate-function@2.3.1: + resolution: {integrity: sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==} + + 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-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-east-asian-width@1.4.0: + resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==} + engines: {node: '>=18'} + + 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-own-enumerable-keys@1.0.0: + resolution: {integrity: sha512-PKsK2FSrQCyxcGHsGrLDcK0lx+0Ke+6e8KFFozA9/fIQLhQzPaRvJFdcz7+Axg3jUH/Mq+NI4xa5u/UT2tQskA==} + engines: {node: '>=14.16'} + + get-port-please@3.2.0: + resolution: {integrity: sha512-I9QVvBw5U/hw3RmWpYKRumUeaDgxTPd401x364rLmWBJcOQ753eov1eTgzDqRG9bqFIfDc7gfzcQEWrUri3o1A==} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + get-stream@9.0.1: + resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} + engines: {node: '>=18'} + + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + + get-tsconfig@4.13.3: + resolution: {integrity: sha512-vp8Cj/+9Q/ibZUrq1rhy8mCTQpCk31A3uu9wc1C50yAb3x2pFHOsGdAZQ7jD86ARayyxZUViYeIztW+GE8dcrg==} + + giget@2.0.0: + resolution: {integrity: sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==} + hasBin: true + + 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'} + + 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==} + + grammex@3.1.12: + resolution: {integrity: sha512-6ufJOsSA7LcQehIJNCO7HIBykfM7DXQual0Ny780/DEcJIpBlHRvcqEBWGPYd7hrXL2GJ3oJI1MIhaXjWmLQOQ==} + + graphmatch@1.1.0: + resolution: {integrity: sha512-0E62MaTW5rPZVRLyIJZG/YejmdA/Xr1QydHEw3Vt+qOKkMIOE8WDLc9ZX2bmAjtJFZcId4lEdrdmASsEy7D1QA==} + + graphql@16.12.0: + resolution: {integrity: sha512-DKKrynuQRne0PNpEbzuEdHlYOMksHSUI8Zc9Unei5gTsMNA2/vMpoMz/yKba50pejK56qj98qM0SjYxAKi13gQ==} + engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + + 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-to-jsx-runtime@2.3.6: + resolution: {integrity: sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==} + + hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + + headers-polyfill@4.0.3: + resolution: {integrity: sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ==} + + hono@4.11.4: + resolution: {integrity: sha512-U7tt8JsyrxSRKspfhtLET79pU8K+tInj5QZXs1jSugO1Vq5dFj3kmZsRldo29mTBfcjDRVRXrEZ6LS63Cog9ZA==} + engines: {node: '>=16.9.0'} + + hono@4.11.8: + resolution: {integrity: sha512-eVkB/CYCCei7K2WElZW9yYQFWssG0DhaDhVvr7wy5jJ22K+ck8fWW0EsLpB0sITUTvPnc97+rrbQqIr5iqiy9Q==} + engines: {node: '>=16.9.0'} + + html-url-attributes@3.0.1: + resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} + + http-errors@2.0.1: + resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==} + engines: {node: '>= 0.8'} + + http-status-codes@2.3.0: + resolution: {integrity: sha512-RJ8XvFvpPM/Dmc5SV+dC4y5PCeOhT3x1Hq0NU3rjGeg5a/CqlhZ7uudknPwZFz4aeAXDcbAyaeP7GAo9lvngtA==} + + https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + engines: {node: '>= 14'} + + human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + + human-signals@8.0.1: + resolution: {integrity: sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==} + engines: {node: '>=18.18.0'} + + iconv-lite@0.7.2: + resolution: {integrity: sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw==} + engines: {node: '>=0.10.0'} + + 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'} + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + 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'} + + ioredis@5.9.3: + resolution: {integrity: sha512-VI5tMCdeoxZWU5vjHWsiE/Su76JGhBvWF1MJnV9ZtGltHk9BmD48oDq8Tj8haZ85aceXZMxLNDQZRVo5QKNgXA==} + engines: {node: '>=12.22.0'} + + ip-address@10.0.1: + resolution: {integrity: sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA==} + engines: {node: '>= 12'} + + ipaddr.js@1.9.1: + resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} + engines: {node: '>= 0.10'} + + 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-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + 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-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + + 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-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + 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-in-ssh@1.0.0: + resolution: {integrity: sha512-jYa6Q9rH90kR1vKB6NM7qqd1mge3Fx4Dhw5TVlK1MUBqhEOuCagrEHMevNuCcbECmXZ0ThXkRm+Ymr51HwEPAw==} + engines: {node: '>=20'} + + is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + + is-interactive@2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + + 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-node-process@1.2.0: + resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==} + + 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-obj@3.0.0: + resolution: {integrity: sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==} + engines: {node: '>=12'} + + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + + is-promise@4.0.0: + resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==} + + is-property@1.0.2: + resolution: {integrity: sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-regexp@3.1.0: + resolution: {integrity: sha512-rbku49cWloU5bSMI+zaRaXdQHXnthP6DZ/vLnfdSKyL4zUzuWnomtOEiZZOd+ioQ+avFo/qau3KPTc7Fjy1uPA==} + engines: {node: '>=12'} + + 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-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + is-stream@4.0.1: + resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==} + engines: {node: '>=18'} + + 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-unicode-supported@1.3.0: + resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} + engines: {node: '>=12'} + + is-unicode-supported@2.1.0: + resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==} + engines: {node: '>=18'} + + 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'} + + is-what@5.5.0: + resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==} + engines: {node: '>=18'} + + is-wsl@3.1.0: + resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} + engines: {node: '>=16'} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + isexe@3.1.2: + resolution: {integrity: sha512-mIcis6w+JiQf3P7t7mg/35GKB4T1FQsBOtMIvuKw4YErj5RjtbhcTd5/I30fmkmGMwvI0WlzSNN+27K0QCMkAw==} + engines: {node: '>=20'} + + 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 + + jose@6.1.3: + resolution: {integrity: sha512-0TpaTfihd4QMNwrz/ob2Bp7X04yuxJkjRGi4aKmOqwhov54i6u79oCv7T+C7lo70MKH6BesI3vscD1yb/yzKXQ==} + + 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-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + json-schema-typed@8.0.2: + resolution: {integrity: sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==} + + json-schema@0.4.0: + resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + + 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 + + jsonfile@6.2.0: + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} + + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + kleur@3.0.3: + resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} + engines: {node: '>=6'} + + kleur@4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + + kysely@0.28.11: + resolution: {integrity: sha512-zpGIFg0HuoC893rIjYX1BETkVWdDnzTzF5e0kWXJFg5lE0k1/LfNWBejrcnOFu8Q2Rfq/hTDTU7XLUM8QOrpzg==} + engines: {node: '>=20.0.0'} + + 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] + libc: [glibc] + + lightningcss-linux-arm64-musl@1.30.2: + resolution: {integrity: sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [musl] + + lightningcss-linux-x64-gnu@1.30.2: + resolution: {integrity: sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [glibc] + + lightningcss-linux-x64-musl@1.30.2: + resolution: {integrity: sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [musl] + + 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'} + + lilconfig@2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} + engines: {node: '>=10'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.defaults@4.2.0: + resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} + + lodash.isarguments@3.1.0: + resolution: {integrity: sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + log-symbols@6.0.0: + resolution: {integrity: sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==} + engines: {node: '>=18'} + + long@5.3.2: + resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==} + + 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==} + + lru.min@1.1.4: + resolution: {integrity: sha512-DqC6n3QQ77zdFpCMASA1a3Jlb64Hv2N2DciFGkO/4L9+q/IpIAuRlKOvCXabtRW6cQf8usbmM6BE/TOPysCdIA==} + engines: {bun: '>=1.0.0', deno: '>=1.30.0', node: '>=8.0.0'} + + lucide-react@0.563.0: + resolution: {integrity: sha512-8dXPB2GI4dI8jV4MgUDGBeLdGk8ekfqVZ0BdLcrRzocGgG75ltNEmWS+gE7uokKF/0oSUuczNDT+g9hFJ23FkA==} + 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-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==} + + media-typer@1.1.0: + resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==} + engines: {node: '>= 0.8'} + + merge-descriptors@2.0.0: + resolution: {integrity: sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==} + engines: {node: '>=18'} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + 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'} + + mime-db@1.54.0: + resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} + engines: {node: '>= 0.6'} + + mime-types@3.0.2: + resolution: {integrity: sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==} + engines: {node: '>=18'} + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + + minimatch@10.1.2: + resolution: {integrity: sha512-fu656aJ0n2kcXwsnwnv9g24tkU5uSmOlTjd6WyyaKm2Z+h1qmY6bAjrcaIxF/BslFqbZ8UBtbJi7KgQOZD2PTw==} + engines: {node: 20 || >=22} + + 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==} + + moment-timezone@0.6.0: + resolution: {integrity: sha512-ldA5lRNm3iJCWZcBCab4pnNL3HSZYXVb/3TYr75/1WCTWYuTqYUb5f/S384pncYjJ88lbO8Z4uPDvmoluHJc8Q==} + + moment@2.30.1: + resolution: {integrity: sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==} + + motion-dom@12.33.0: + resolution: {integrity: sha512-XRPebVypsl0UM+7v0Hr8o9UAj0S2djsQWRdHBd5iVouVpMrQqAI0C/rDAT3QaYnXnHuC5hMcwDHCboNeyYjPoQ==} + + motion-utils@12.29.2: + resolution: {integrity: sha512-G3kc34H2cX2gI63RqU+cZq+zWRRPSsNIOjpdl9TN4AQwC4sgwYPl/Q/Obf/d53nOm569T0fYK+tcoSV50BWx8A==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + msw@2.12.9: + resolution: {integrity: sha512-NYbi51C6M3dujGmcmuGemu68jy12KqQPoVWGeroKToLGsBgrwG5ErM8WctoIIg49/EV49SEvYM9WSqO4G7kNeQ==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + typescript: '>= 4.8.x' + peerDependenciesMeta: + typescript: + optional: true + + mute-stream@2.0.0: + resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} + engines: {node: ^18.17.0 || >=20.5.0} + + mysql2@3.15.3: + resolution: {integrity: sha512-FBrGau0IXmuqg4haEZRBfHNWB5mUARw6hNwPDXXGg0XzVJ50mr/9hb267lvpVMnhZ1FON3qNd4Xfcez1rbFwSg==} + engines: {node: '>= 8.0'} + + named-placeholders@1.1.6: + resolution: {integrity: sha512-Tz09sEL2EEuv5fFowm419c1+a/jSMiBjI9gHxVLrVdbUkkNUUfjsVYs9pVZu5oCon/kmRh9TfLEObFtkVxmY0w==} + engines: {node: '>=8.0.0'} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + nanoid@3.3.12: + resolution: {integrity: sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + nanostores@1.1.0: + resolution: {integrity: sha512-yJBmDJr18xy47dbNVlHcgdPrulSn1nhSE6Ns9vTG+Nx9VPT6iV1MD6aQFp/t52zpf82FhLLTXAXr30NuCnxvwA==} + engines: {node: ^20.0.0 || >=22.0.0} + + 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==} + + negotiator@1.0.0: + resolution: {integrity: sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==} + engines: {node: '>= 0.6'} + + 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@15.5.15: + resolution: {integrity: sha512-VSqCrJwtLVGwAVE0Sb/yikrQfkwkZW9p+lL/J4+xe+G3ZA+QnWPqgcfH1tDUEuk9y+pthzzVFp4L/U8JerMfMQ==} + engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.51.1 + babel-plugin-react-compiler: '*' + react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + + node-domexception@1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + engines: {node: '>=10.5.0'} + deprecated: Use your platform's native DOMException instead + + node-fetch-native@1.6.7: + resolution: {integrity: sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==} + + node-fetch@3.3.2: + resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + node-releases@2.0.27: + resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} + + npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} + + npm-run-path@6.0.0: + resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==} + engines: {node: '>=18'} + + nypm@0.6.5: + resolution: {integrity: sha512-K6AJy1GMVyfyMXRVB88700BJqNUkByijGJM8kEHpLdcAt+vSQAVfkWWHYzuRXHSY6xA2sNc5RjTj0p9rE2izVQ==} + engines: {node: '>=18'} + hasBin: true + + 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-treeify@1.1.33: + resolution: {integrity: sha512-EFVjAYfzWqWsBMRHPMAXLCDIJnpMhdWAqR7xG6M6a2cs6PMFpl/+Z20w9zDW4vkxOFfddegBKq9Rehd0bxWE7A==} + engines: {node: '>= 10'} + + 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'} + + ohash@2.0.11: + resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} + + on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} + engines: {node: '>= 0.8'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + + open@11.0.0: + resolution: {integrity: sha512-smsWv2LzFjP03xmvFoJ331ss6h+jixfA4UUV/Bsiyuu4YJPfN+FIQGOIiv4w9/+MoHkfkJ22UIaQWRVFRfH6Vw==} + engines: {node: '>=20'} + + openai@6.35.0: + resolution: {integrity: sha512-L/skwIGnt5xQZHb0UfTu9uAUKbis3ehKypOuJKi20QvG7UStV6C8IC3myGYHcdiF4kms/bAvOJ9UqqNWqi8x/Q==} + hasBin: true + peerDependencies: + ws: ^8.18.0 + zod: ^3.25 || ^4.0 + peerDependenciesMeta: + ws: + optional: true + zod: + optional: true + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + ora@8.2.0: + resolution: {integrity: sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==} + engines: {node: '>=18'} + + outvariant@1.4.3: + resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==} + + 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'} + + package-manager-detector@1.6.0: + resolution: {integrity: sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==} + + 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-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + parse-ms@4.0.0: + resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==} + engines: {node: '>=18'} + + parseurl@1.3.3: + resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} + engines: {node: '>= 0.8'} + + path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + + 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-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-to-regexp@6.3.0: + resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} + + path-to-regexp@8.3.0: + resolution: {integrity: sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==} + + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + + perfect-debounce@1.0.0: + resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} + + pg-cloudflare@1.3.0: + resolution: {integrity: sha512-6lswVVSztmHiRtD6I8hw4qP/nDm1EJbKMRhf3HCYaqud7frGysPv7FYJ5noZQdhQtN2xJnimfMtvQq21pdbzyQ==} + + pg-connection-string@2.11.0: + resolution: {integrity: sha512-kecgoJwhOpxYU21rZjULrmrBJ698U2RxXofKVzOn5UDj61BPj/qMb7diYUR1nLScCDbrztQFl1TaQZT0t1EtzQ==} + + pg-int8@1.0.1: + resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} + engines: {node: '>=4.0.0'} + + pg-pool@3.11.0: + resolution: {integrity: sha512-MJYfvHwtGp870aeusDh+hg9apvOe2zmpZJpyt+BMtzUWlVqbhFmMK6bOBXLBUPd7iRtIF9fZplDc7KrPN3PN7w==} + peerDependencies: + pg: '>=8.0' + + pg-protocol@1.11.0: + resolution: {integrity: sha512-pfsxk2M9M3BuGgDOfuy37VNRRX3jmKgMjcvAcWqNDpZSf4cUmv8HSOl5ViRQFsfARFn0KuUQTgLxVMbNq5NW3g==} + + pg-types@2.2.0: + resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==} + engines: {node: '>=4'} + + pg@8.18.0: + resolution: {integrity: sha512-xqrUDL1b9MbkydY/s+VZ6v+xiMUmOUk7SS9d/1kpyQxoJ6U9AO1oIJyUWVZojbfe5Cc/oluutcgFG4L9RDP1iQ==} + engines: {node: '>= 16.0.0'} + peerDependencies: + pg-native: '>=3.0.1' + peerDependenciesMeta: + pg-native: + optional: true + + pgpass@1.0.5: + resolution: {integrity: sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==} + + 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'} + + pkce-challenge@5.0.1: + resolution: {integrity: sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==} + engines: {node: '>=16.20.0'} + + pkg-types@2.3.0: + resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + postcss-selector-parser@7.1.1: + resolution: {integrity: sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==} + 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} + + postgres-array@2.0.0: + resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==} + engines: {node: '>=4'} + + postgres-array@3.0.4: + resolution: {integrity: sha512-nAUSGfSDGOaOAEGwqsRY27GPOea7CNipJPOA7lPbdEpx5Kg3qzdP0AaWC5MlhTWV9s4hFX39nomVZ+C4tnGOJQ==} + engines: {node: '>=12'} + + postgres-bytea@1.0.1: + resolution: {integrity: sha512-5+5HqXnsZPE65IJZSMkZtURARZelel2oXUEO8rH83VS/hxH5vv1uHquPg5wZs8yMAfdv971IU+kcPUczi7NVBQ==} + engines: {node: '>=0.10.0'} + + postgres-date@1.0.7: + resolution: {integrity: sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==} + engines: {node: '>=0.10.0'} + + postgres-interval@1.2.0: + resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==} + engines: {node: '>=0.10.0'} + + postgres@3.4.7: + resolution: {integrity: sha512-Jtc2612XINuBjIl/QTWsV5UvE8UHuNblcO3vVADSrKsrc6RqGX6lOW1cEo3CM2v0XG4Nat8nI+YM7/f26VxXLw==} + engines: {node: '>=12'} + + powershell-utils@0.1.0: + resolution: {integrity: sha512-dM0jVuXJPsDN6DvRpea484tCUaMiXWjuCn++HGTqUWzGDjv5tZkEZldAJ/UMlqRYGFrD/etByo4/xOuC/snX2A==} + engines: {node: '>=20'} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prettier-plugin-tailwindcss@0.6.14: + resolution: {integrity: sha512-pi2e/+ZygeIqntN+vC573BcW5Cve8zUB0SSAGxqpB4f96boZF4M3phPVoOFCeypwkpRYdi7+jQ5YJJUwrkGUAg==} + engines: {node: '>=14.21.3'} + peerDependencies: + '@ianvs/prettier-plugin-sort-imports': '*' + '@prettier/plugin-hermes': '*' + '@prettier/plugin-oxc': '*' + '@prettier/plugin-pug': '*' + '@shopify/prettier-plugin-liquid': '*' + '@trivago/prettier-plugin-sort-imports': '*' + '@zackad/prettier-plugin-twig': '*' + prettier: ^3.0 + prettier-plugin-astro: '*' + prettier-plugin-css-order: '*' + prettier-plugin-import-sort: '*' + prettier-plugin-jsdoc: '*' + prettier-plugin-marko: '*' + prettier-plugin-multiline-arrays: '*' + prettier-plugin-organize-attributes: '*' + prettier-plugin-organize-imports: '*' + prettier-plugin-sort-imports: '*' + prettier-plugin-style-order: '*' + prettier-plugin-svelte: '*' + peerDependenciesMeta: + '@ianvs/prettier-plugin-sort-imports': + optional: true + '@prettier/plugin-hermes': + optional: true + '@prettier/plugin-oxc': + optional: true + '@prettier/plugin-pug': + optional: true + '@shopify/prettier-plugin-liquid': + optional: true + '@trivago/prettier-plugin-sort-imports': + optional: true + '@zackad/prettier-plugin-twig': + optional: true + prettier-plugin-astro: + optional: true + prettier-plugin-css-order: + optional: true + prettier-plugin-import-sort: + optional: true + prettier-plugin-jsdoc: + optional: true + prettier-plugin-marko: + optional: true + prettier-plugin-multiline-arrays: + optional: true + prettier-plugin-organize-attributes: + optional: true + prettier-plugin-organize-imports: + optional: true + prettier-plugin-sort-imports: + optional: true + prettier-plugin-style-order: + optional: true + prettier-plugin-svelte: + optional: true + + prettier@3.8.1: + resolution: {integrity: sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==} + engines: {node: '>=14'} + hasBin: true + + pretty-ms@9.3.0: + resolution: {integrity: sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==} + engines: {node: '>=18'} + + prisma@7.3.0: + resolution: {integrity: sha512-ApYSOLHfMN8WftJA+vL6XwAPOh/aZ0BgUyyKPwUFgjARmG6EBI9LzDPf6SWULQMSAxydV9qn5gLj037nPNlg2w==} + engines: {node: ^20.19 || ^22.12 || >=24.0} + hasBin: true + peerDependencies: + better-sqlite3: '>=9.0.0' + typescript: '>=5.4.0' + peerDependenciesMeta: + better-sqlite3: + optional: true + typescript: + optional: true + + prompts@2.4.2: + resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} + engines: {node: '>= 6'} + + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + + proper-lockfile@4.1.2: + resolution: {integrity: sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==} + + property-information@7.1.0: + resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==} + + proxy-addr@2.0.7: + resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} + engines: {node: '>= 0.10'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + pure-rand@6.1.0: + resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} + + pusher-js@8.4.0: + resolution: {integrity: sha512-wp3HqIIUc1GRyu1XrP6m2dgyE9MoCsXVsWNlohj0rjSkLf+a0jLvEyVubdg58oMk7bhjBWnFClgp8jfAa6Ak4Q==} + + qs@6.14.1: + resolution: {integrity: sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==} + engines: {node: '>=0.6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + radix-ui@1.4.3: + resolution: {integrity: sha512-aWizCQiyeAenIdUbqEpXgRA1ya65P13NKn/W8rWkcN0OPkRDxdBVLWnIEDsS2RpwCK2nobI7oMUSmexzTDyAmA==} + 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 + + range-parser@1.2.1: + resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} + engines: {node: '>= 0.6'} + + raw-body@3.0.2: + resolution: {integrity: sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==} + engines: {node: '>= 0.10'} + + rc9@2.1.2: + resolution: {integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==} + + react-dom@19.2.4: + resolution: {integrity: sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==} + peerDependencies: + react: ^19.2.4 + + react-hook-form@7.71.1: + resolution: {integrity: sha512-9SUJKCGKo8HUSsCO+y0CtqkqI5nNuaDqTxyqPsZPqIwudpj4rCrAz/jZV+jn57bx5gtZKOh3neQu94DXMc+w5w==} + 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-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.2: + resolution: {integrity: sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==} + 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-virtuoso@4.18.1: + resolution: {integrity: sha512-KF474cDwaSb9+SJ380xruBB4P+yGWcVkcu26HtMqYNMTYlYbrNy8vqMkE+GpAApPPufJqgOLMoWMFG/3pJMXUA==} + peerDependencies: + react: '>=16 || >=17 || >= 18 || >= 19' + react-dom: '>=16 || >=17 || >= 18 || >=19' + + react@19.2.4: + resolution: {integrity: sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==} + engines: {node: '>=0.10.0'} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + recast@0.23.11: + resolution: {integrity: sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==} + engines: {node: '>= 4'} + + redis-errors@1.2.0: + resolution: {integrity: sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==} + engines: {node: '>=4'} + + redis-parser@3.0.0: + resolution: {integrity: sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==} + engines: {node: '>=4'} + + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + regexp-to-ast@0.5.0: + resolution: {integrity: sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + remark-gfm@4.0.1: + resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} + + 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==} + + remeda@2.33.4: + resolution: {integrity: sha512-ygHswjlc/opg2VrtiYvUOPLjxjtdKvjGz1/plDhkG66hjNjFr1xmfrs2ClNFo/E6TyUFiwYNh53bKV26oBoMGQ==} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + 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 + + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} + + resumable-stream@2.2.10: + resolution: {integrity: sha512-pSJtiDVkPgirq4x+e+gu67IEkUVYGu1cPgW5AnTHCfYGRfIUjS3d4pj7VGveXmYWb9hy6yIMFTM4YzK7rqj14A==} + + retry@0.12.0: + resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} + engines: {node: '>= 4'} + + rettime@0.10.1: + resolution: {integrity: sha512-uyDrIlUEH37cinabq0AX4QbgV4HbFZ/gqoiunWQ1UqBtRvTTytwhNYjE++pO/MjPTZL5KQCf2bEoJ/BJNVQ5Kw==} + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rou3@0.7.12: + resolution: {integrity: sha512-iFE4hLDuloSWcD7mjdCDhx2bKcIsYbtOTpfH5MHHLSKMOUyjqQXTeZVa289uuwEGEKFoE/BAPbhaU4B774nceg==} + + router@2.2.0: + resolution: {integrity: sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==} + engines: {node: '>= 18'} + + run-applescript@7.1.0: + resolution: {integrity: sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==} + engines: {node: '>=18'} + + 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-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'} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + 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.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + engines: {node: '>=10'} + hasBin: true + + send@1.2.1: + resolution: {integrity: sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==} + engines: {node: '>= 18'} + + seq-queue@0.0.5: + resolution: {integrity: sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q==} + + serve-static@2.2.1: + resolution: {integrity: sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==} + engines: {node: '>= 18'} + + server-only@0.0.1: + resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} + + set-cookie-parser@2.7.2: + resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==} + + 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'} + + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + + shadcn@3.8.4: + resolution: {integrity: sha512-pSad/m1+PGzB0aLsRBV0EkyGg9al1nJqYUuucg6d8v8xZspPZ5/ehGNEp5M4b1KQYqdO5/gGPbkhVbgmXqG9Pw==} + hasBin: true + + 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'} + + 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'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + 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'} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} + + split2@4.2.0: + resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} + engines: {node: '>= 10.x'} + + sqlstring@2.3.3: + resolution: {integrity: sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==} + engines: {node: '>= 0.6'} + + stable-hash@0.0.5: + resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} + + standard-as-callback@2.1.0: + resolution: {integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==} + + statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + + std-env@3.10.0: + resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} + + stdin-discarder@0.2.2: + resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} + engines: {node: '>=18'} + + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + + strict-event-emitter@0.5.1: + resolution: {integrity: sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + + 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==} + + stringify-object@5.0.0: + resolution: {integrity: sha512-zaJYxz2FtcMb4f+g60KsRNFOpVMUyuJgA51Zi5Z1DOTC3S59+OQiVOzE9GZt0x72uBGWKsQIuBKeF9iusmKFsg==} + engines: {node: '>=14.16'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} + engines: {node: '>=12'} + + strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + + strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + + strip-final-newline@4.0.0: + resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==} + engines: {node: '>=18'} + + 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 + + superjson@2.2.6: + resolution: {integrity: sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==} + engines: {node: '>=16'} + + 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'} + + swr@2.4.0: + resolution: {integrity: sha512-sUlC20T8EOt1pHmDiqueUWMmRRX03W7w5YxovWX7VR2KHEPCTMly85x05vpkP5i6Bu4h44ePSMD9Tc+G2MItFw==} + peerDependencies: + react: ^16.11.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + tagged-tag@1.0.0: + resolution: {integrity: sha512-yEFYrVhod+hdNyx7g5Bnkkb0G6si8HJurOoOEgC8B/O0uXLHlaey/65KRv6cuWBNhBgHKAROVpc7QyYqE5gFng==} + engines: {node: '>=20'} + + tailwind-merge@3.4.0: + resolution: {integrity: sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==} + + tailwindcss@4.1.18: + resolution: {integrity: sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==} + + tapable@2.3.0: + resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} + engines: {node: '>=6'} + + throttleit@2.1.0: + resolution: {integrity: sha512-nt6AMGKW1p/70DF/hGBdJB57B8Tspmbp5gfJ8ilhLnt7kkr2ye7hzD6NVG8GGErk2HWF34igrL2CXmNIkzKqKw==} + engines: {node: '>=18'} + + tiny-invariant@1.3.3: + resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} + + tinyexec@1.0.2: + resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} + engines: {node: '>=18'} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + tldts-core@7.0.22: + resolution: {integrity: sha512-KgbTDC5wzlL6j/x6np6wCnDSMUq4kucHNm00KXPbfNzmllCmtmvtykJHfmgdHntwIeupW04y8s1N/43S1PkQDw==} + + tldts@7.0.22: + resolution: {integrity: sha512-nqpKFC53CgopKPjT6Wfb6tpIcZXHcI6G37hesvikhx0EmUGPkZrujRyAjgnmp1SHNgpQfKVanZ+KfpANFt2Hxw==} + hasBin: true + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + tough-cookie@6.0.0: + resolution: {integrity: sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==} + engines: {node: '>=16'} + + 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.4.0: + resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + + ts-morph@26.0.0: + resolution: {integrity: sha512-ztMO++owQnz8c/gIENcM9XfCEzgoGphTv+nKpYNM1bgsdOVC/jRZuEBf6N+mLLDNg68Kl+GgUZfOySaRiG1/Ug==} + + tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + + tsconfig-paths@4.2.0: + resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} + engines: {node: '>=6'} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + tw-animate-css@1.4.0: + resolution: {integrity: sha512-7bziOlRqH0hJx80h/3mbicLW7o8qLsH5+RaLR2t+OHM3D0JlWGODQKQ4cxbK7WlvmUxpcj6Kgu6EKqjrGFe3QQ==} + + tweetnacl@1.0.3: + resolution: {integrity: sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@5.4.3: + resolution: {integrity: sha512-AXSAQJu79WGc79/3e9/CR77I/KQgeY1AhNvcShIH4PTcGYyC4xv6H4R4AUOwkPS5799KlVDAu8zExeCrkGquiA==} + engines: {node: '>=20'} + + type-is@2.0.1: + resolution: {integrity: sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==} + engines: {node: '>= 0.6'} + + 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.54.0: + resolution: {integrity: sha512-CKsJ+g53QpsNPqbzUsfKVgd3Lny4yKZ1pP4qN3jdMOg/sisIDLGyDMezycquXLE5JsEU0wp3dGNdzig0/fmSVQ==} + 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 + + 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==} + + unicorn-magic@0.3.0: + resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==} + engines: {node: '>=18'} + + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + + 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.1.0: + resolution: {integrity: sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + unrs-resolver@1.11.1: + resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==} + + until-async@3.0.2: + resolution: {integrity: sha512-IiSk4HlzAMqTUseHHe3VhIGyuFmN90zMTpD3Z3y8jeQbzLIq500MVM7Jq2vUAnTKAFPJrqwkzr6PoTcPhGcOiw==} + + update-browserslist-db@1.2.3: + resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} + 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==} + + valibot@1.2.0: + resolution: {integrity: sha512-mm1rxUsmOxzrwnX5arGS+U4T25RdvpPjPN4yR0u9pUBov9+zGVtO84tif1eY4r6zWxVxu3KzIyknJy3rxfRZZg==} + peerDependencies: + typescript: '>=5' + peerDependenciesMeta: + typescript: + optional: true + + validate-npm-package-name@7.0.2: + resolution: {integrity: sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A==} + engines: {node: ^20.17.0 || >=22.9.0} + + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + + vfile-message@4.0.3: + resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + + web-streams-polyfill@3.3.3: + resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} + engines: {node: '>= 8'} + + 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.20: + resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==} + engines: {node: '>= 0.4'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + which@4.0.0: + resolution: {integrity: sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==} + engines: {node: ^16.13.0 || >=18.0.0} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + wsl-utils@0.3.1: + resolution: {integrity: sha512-g/eziiSUNBSsdDJtCLB8bdYEUMj4jR7AGeUo96p/3dTafgjHhpF4RiCFPiRILwjQoDXx5MqkBr4fwWtR3Ky4Wg==} + engines: {node: '>=20'} + + xtend@4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + yoctocolors-cjs@2.1.3: + resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} + engines: {node: '>=18'} + + yoctocolors@2.1.2: + resolution: {integrity: sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==} + engines: {node: '>=18'} + + zeptomatch@2.1.0: + resolution: {integrity: sha512-KiGErG2J0G82LSpniV0CtIzjlJ10E04j02VOudJsPyPwNZgGnRKQy7I1R7GMyg/QswnE4l7ohSGrQbQbjXPPDA==} + + zod-to-json-schema@3.25.1: + resolution: {integrity: sha512-pM/SU9d3YAggzi6MtR4h7ruuQlqKtad8e9S0fmxcMi+ueAK5Korys/aWcV9LIIHTVbj01NdzxcnXSN+O74ZIVA==} + peerDependencies: + zod: ^3.25 || ^4 + + zod@3.25.76: + resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} + + zod@4.3.6: + resolution: {integrity: sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==} + + zustand@5.0.11: + resolution: {integrity: sha512-fdZY+dk7zn/vbWNCYmzZULHRrss0jx5pPFiOuMZ/5HJN6Yv3u+1Wswy/4MpZEkEGhtNH+pwxZB8OKgUBPzYAGg==} + engines: {node: '>=12.20.0'} + peerDependencies: + '@types/react': '>=18.0.0' + immer: '>=9.0.6' + react: '>=18.0.0' + use-sync-external-store: '>=1.2.0' + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + use-sync-external-store: + optional: true + + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + +snapshots: + + '@ai-sdk/gateway@3.0.39(zod@3.25.76)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.14(zod@3.25.76) + '@vercel/oidc': 3.1.0 + zod: 3.25.76 + + '@ai-sdk/gateway@3.0.45(zod@3.25.76)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.15(zod@3.25.76) + '@vercel/oidc': 3.1.0 + zod: 3.25.76 + + '@ai-sdk/provider-utils@4.0.14(zod@3.25.76)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@standard-schema/spec': 1.1.0 + eventsource-parser: 3.0.6 + zod: 3.25.76 + + '@ai-sdk/provider-utils@4.0.15(zod@3.25.76)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@standard-schema/spec': 1.1.0 + eventsource-parser: 3.0.6 + zod: 3.25.76 + + '@ai-sdk/provider@3.0.8': + dependencies: + json-schema: 0.4.0 + + '@ai-sdk/react@3.0.87(react@19.2.4)(zod@3.25.76)': + dependencies: + '@ai-sdk/provider-utils': 4.0.15(zod@3.25.76) + ai: 6.0.85(zod@3.25.76) + react: 19.2.4 + swr: 2.4.0(react@19.2.4) + throttleit: 2.1.0 + transitivePeerDependencies: + - zod + + '@alloc/quick-lru@5.2.0': {} + + '@antfu/ni@25.0.0': + dependencies: + ansis: 4.2.0 + fzf: 0.5.2 + package-manager-detector: 1.6.0 + tinyexec: 1.0.2 + + '@babel/code-frame@7.29.0': + dependencies: + '@babel/helper-validator-identifier': 7.28.5 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.29.0': {} + + '@babel/core@7.29.0': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/helper-compilation-targets': 7.28.6 + '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0) + '@babel/helpers': 7.28.6 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + '@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.29.1': + dependencies: + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + jsesc: 3.1.0 + + '@babel/helper-annotate-as-pure@7.27.3': + dependencies: + '@babel/types': 7.29.0 + + '@babel/helper-compilation-targets@7.28.6': + dependencies: + '@babel/compat-data': 7.29.0 + '@babel/helper-validator-option': 7.27.1 + browserslist: 4.28.1 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-create-class-features-plugin@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-annotate-as-pure': 7.27.3 + '@babel/helper-member-expression-to-functions': 7.28.5 + '@babel/helper-optimise-call-expression': 7.27.1 + '@babel/helper-replace-supers': 7.28.6(@babel/core@7.29.0) + '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 + '@babel/traverse': 7.29.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/helper-globals@7.28.0': {} + + '@babel/helper-member-expression-to-functions@7.28.5': + dependencies: + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-imports@7.28.6': + dependencies: + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-validator-identifier': 7.28.5 + '@babel/traverse': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-optimise-call-expression@7.27.1': + dependencies: + '@babel/types': 7.29.0 + + '@babel/helper-plugin-utils@7.28.6': {} + + '@babel/helper-replace-supers@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-member-expression-to-functions': 7.28.5 + '@babel/helper-optimise-call-expression': 7.27.1 + '@babel/traverse': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-skip-transparent-expression-wrappers@7.27.1': + dependencies: + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + 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.6': + dependencies: + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + + '@babel/parser@7.29.0': + dependencies: + '@babel/types': 7.29.0 + + '@babel/plugin-syntax-jsx@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-plugin-utils': 7.28.6 + + '@babel/plugin-syntax-typescript@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-plugin-utils': 7.28.6 + + '@babel/plugin-transform-modules-commonjs@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0) + '@babel/helper-plugin-utils': 7.28.6 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-typescript@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-annotate-as-pure': 7.27.3 + '@babel/helper-create-class-features-plugin': 7.28.6(@babel/core@7.29.0) + '@babel/helper-plugin-utils': 7.28.6 + '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 + '@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.29.0) + transitivePeerDependencies: + - supports-color + + '@babel/preset-typescript@7.28.5(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-plugin-utils': 7.28.6 + '@babel/helper-validator-option': 7.27.1 + '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0) + '@babel/plugin-transform-modules-commonjs': 7.28.6(@babel/core@7.29.0) + '@babel/plugin-transform-typescript': 7.28.6(@babel/core@7.29.0) + transitivePeerDependencies: + - supports-color + + '@babel/template@7.28.6': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 + + '@babel/traverse@7.29.0': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/helper-globals': 7.28.0 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + debug: 4.4.3 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.29.0': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + + '@better-auth/core@1.4.18(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.8(zod@3.25.76))(jose@6.1.3)(kysely@0.28.11)(nanostores@1.1.0)': + dependencies: + '@better-auth/utils': 0.3.0 + '@better-fetch/fetch': 1.1.21 + '@standard-schema/spec': 1.1.0 + better-call: 1.1.8(zod@4.3.6) + jose: 6.1.3 + kysely: 0.28.11 + nanostores: 1.1.0 + zod: 4.3.6 + + '@better-auth/telemetry@1.4.18(@better-auth/core@1.4.18(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.8(zod@3.25.76))(jose@6.1.3)(kysely@0.28.11)(nanostores@1.1.0))': + dependencies: + '@better-auth/core': 1.4.18(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.8(zod@3.25.76))(jose@6.1.3)(kysely@0.28.11)(nanostores@1.1.0) + '@better-auth/utils': 0.3.0 + '@better-fetch/fetch': 1.1.21 + + '@better-auth/utils@0.3.0': {} + + '@better-fetch/fetch@1.1.21': {} + + '@chevrotain/cst-dts-gen@10.5.0': + dependencies: + '@chevrotain/gast': 10.5.0 + '@chevrotain/types': 10.5.0 + lodash: 4.17.21 + + '@chevrotain/gast@10.5.0': + dependencies: + '@chevrotain/types': 10.5.0 + lodash: 4.17.21 + + '@chevrotain/types@10.5.0': {} + + '@chevrotain/utils@10.5.0': {} + + '@composio/client@0.1.0-alpha.56': {} + + '@composio/core@0.6.3(zod@3.25.76)': + dependencies: + '@composio/client': 0.1.0-alpha.56 + '@composio/json-schema-to-zod': 0.1.20(zod@3.25.76) + '@types/json-schema': 7.0.15 + chalk: 4.1.2 + openai: 6.35.0(zod@3.25.76) + pusher-js: 8.4.0 + semver: 7.7.4 + zod: 3.25.76 + zod-to-json-schema: 3.25.1(zod@3.25.76) + transitivePeerDependencies: + - ws + + '@composio/json-schema-to-zod@0.1.20(zod@3.25.76)': + dependencies: + zod: 3.25.76 + + '@composio/vercel@0.6.3(@composio/core@0.6.3(zod@3.25.76))(ai@6.0.78(zod@3.25.76))': + dependencies: + '@composio/core': 0.6.3(zod@3.25.76) + ai: 6.0.78(zod@3.25.76) + + '@dotenvx/dotenvx@1.52.0': + dependencies: + commander: 11.1.0 + dotenv: 17.2.4 + eciesjs: 0.4.17 + execa: 5.1.1 + fdir: 6.5.0(picomatch@4.0.3) + ignore: 5.3.2 + object-treeify: 1.1.33 + picomatch: 4.0.3 + which: 4.0.0 + + '@ecies/ciphers@0.2.5(@noble/ciphers@1.3.0)': + dependencies: + '@noble/ciphers': 1.3.0 + + '@electric-sql/pglite-socket@0.0.20(@electric-sql/pglite@0.3.15)': + dependencies: + '@electric-sql/pglite': 0.3.15 + + '@electric-sql/pglite-tools@0.2.20(@electric-sql/pglite@0.3.15)': + dependencies: + '@electric-sql/pglite': 0.3.15 + + '@electric-sql/pglite@0.3.15': {} + + '@emnapi/core@1.8.1': + dependencies: + '@emnapi/wasi-threads': 1.1.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.10.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.8.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.1.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@emotion/is-prop-valid@1.4.0': + dependencies: + '@emotion/memoize': 0.9.0 + optional: true + + '@emotion/memoize@0.9.0': + optional: true + + '@eslint-community/eslint-utils@4.9.1(eslint@9.39.2(jiti@2.6.1))': + dependencies: + eslint: 9.39.2(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.3': + 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.2': {} + + '@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.4': + dependencies: + '@floating-ui/utils': 0.2.10 + + '@floating-ui/dom@1.7.5': + dependencies: + '@floating-ui/core': 1.7.4 + '@floating-ui/utils': 0.2.10 + + '@floating-ui/react-dom@2.1.7(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@floating-ui/dom': 1.7.5 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + '@floating-ui/utils@0.2.10': {} + + '@hono/node-server@1.19.9(hono@4.11.4)': + dependencies: + hono: 4.11.4 + + '@hono/node-server@1.19.9(hono@4.11.8)': + dependencies: + hono: 4.11.8 + + '@hookform/resolvers@5.2.2(react-hook-form@7.71.1(react@19.2.4))': + dependencies: + '@standard-schema/utils': 0.3.0 + react-hook-form: 7.71.1(react@19.2.4) + + '@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.1.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.10.0 + 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 + + '@inquirer/ansi@1.0.2': {} + + '@inquirer/confirm@5.1.21(@types/node@20.19.32)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.19.32) + '@inquirer/type': 3.0.10(@types/node@20.19.32) + optionalDependencies: + '@types/node': 20.19.32 + + '@inquirer/core@10.3.2(@types/node@20.19.32)': + dependencies: + '@inquirer/ansi': 1.0.2 + '@inquirer/figures': 1.0.15 + '@inquirer/type': 3.0.10(@types/node@20.19.32) + cli-width: 4.1.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 20.19.32 + + '@inquirer/figures@1.0.15': {} + + '@inquirer/type@3.0.10(@types/node@20.19.32)': + optionalDependencies: + '@types/node': 20.19.32 + + '@ioredis/commands@1.5.0': {} + + '@isaacs/balanced-match@4.0.1': {} + + '@isaacs/brace-expansion@5.0.1': + dependencies: + '@isaacs/balanced-match': 4.0.1 + + '@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 + + '@modelcontextprotocol/sdk@1.26.0(zod@3.25.76)': + dependencies: + '@hono/node-server': 1.19.9(hono@4.11.8) + ajv: 8.17.1 + ajv-formats: 3.0.1(ajv@8.17.1) + content-type: 1.0.5 + cors: 2.8.6 + cross-spawn: 7.0.6 + eventsource: 3.0.7 + eventsource-parser: 3.0.6 + express: 5.2.1 + express-rate-limit: 8.2.1(express@5.2.1) + hono: 4.11.8 + jose: 6.1.3 + json-schema-typed: 8.0.2 + pkce-challenge: 5.0.1 + raw-body: 3.0.2 + zod: 3.25.76 + zod-to-json-schema: 3.25.1(zod@3.25.76) + transitivePeerDependencies: + - supports-color + + '@mrleebo/prisma-ast@0.13.1': + dependencies: + chevrotain: 10.5.0 + lilconfig: 2.1.0 + + '@mswjs/interceptors@0.41.2': + dependencies: + '@open-draft/deferred-promise': 2.2.0 + '@open-draft/logger': 0.3.0 + '@open-draft/until': 2.1.0 + is-node-process: 1.2.0 + outvariant: 1.4.3 + strict-event-emitter: 0.5.1 + + '@napi-rs/wasm-runtime@0.2.12': + dependencies: + '@emnapi/core': 1.8.1 + '@emnapi/runtime': 1.8.1 + '@tybys/wasm-util': 0.10.1 + optional: true + + '@next/env@15.5.15': {} + + '@next/eslint-plugin-next@15.5.12': + dependencies: + fast-glob: 3.3.1 + + '@next/swc-darwin-arm64@15.5.15': + optional: true + + '@next/swc-darwin-x64@15.5.15': + optional: true + + '@next/swc-linux-arm64-gnu@15.5.15': + optional: true + + '@next/swc-linux-arm64-musl@15.5.15': + optional: true + + '@next/swc-linux-x64-gnu@15.5.15': + optional: true + + '@next/swc-linux-x64-musl@15.5.15': + optional: true + + '@next/swc-win32-arm64-msvc@15.5.15': + optional: true + + '@next/swc-win32-x64-msvc@15.5.15': + optional: true + + '@noble/ciphers@1.3.0': {} + + '@noble/ciphers@2.1.1': {} + + '@noble/curves@1.9.7': + dependencies: + '@noble/hashes': 1.8.0 + + '@noble/hashes@1.8.0': {} + + '@noble/hashes@2.0.1': {} + + '@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.20.1 + + '@nolyfill/is-core-module@1.0.39': {} + + '@open-draft/deferred-promise@2.2.0': {} + + '@open-draft/logger@0.3.0': + dependencies: + is-node-process: 1.2.0 + outvariant: 1.4.3 + + '@open-draft/until@2.1.0': {} + + '@opentelemetry/api@1.9.0': {} + + '@prisma/adapter-pg@7.3.0': + dependencies: + '@prisma/driver-adapter-utils': 7.3.0 + pg: 8.18.0 + postgres-array: 3.0.4 + transitivePeerDependencies: + - pg-native + + '@prisma/client-runtime-utils@7.3.0': {} + + '@prisma/client@7.3.0(prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3)': + dependencies: + '@prisma/client-runtime-utils': 7.3.0 + optionalDependencies: + prisma: 7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + typescript: 5.9.3 + + '@prisma/config@7.3.0': + dependencies: + c12: 3.1.0 + deepmerge-ts: 7.1.5 + effect: 3.18.4 + empathic: 2.0.0 + transitivePeerDependencies: + - magicast + + '@prisma/debug@7.2.0': {} + + '@prisma/debug@7.3.0': {} + + '@prisma/dev@0.20.0(typescript@5.9.3)': + dependencies: + '@electric-sql/pglite': 0.3.15 + '@electric-sql/pglite-socket': 0.0.20(@electric-sql/pglite@0.3.15) + '@electric-sql/pglite-tools': 0.2.20(@electric-sql/pglite@0.3.15) + '@hono/node-server': 1.19.9(hono@4.11.4) + '@mrleebo/prisma-ast': 0.13.1 + '@prisma/get-platform': 7.2.0 + '@prisma/query-plan-executor': 7.2.0 + foreground-child: 3.3.1 + get-port-please: 3.2.0 + hono: 4.11.4 + http-status-codes: 2.3.0 + pathe: 2.0.3 + proper-lockfile: 4.1.2 + remeda: 2.33.4 + std-env: 3.10.0 + valibot: 1.2.0(typescript@5.9.3) + zeptomatch: 2.1.0 + transitivePeerDependencies: + - typescript + + '@prisma/driver-adapter-utils@7.3.0': + dependencies: + '@prisma/debug': 7.3.0 + + '@prisma/engines-version@7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735': {} + + '@prisma/engines@7.3.0': + dependencies: + '@prisma/debug': 7.3.0 + '@prisma/engines-version': 7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735 + '@prisma/fetch-engine': 7.3.0 + '@prisma/get-platform': 7.3.0 + + '@prisma/fetch-engine@7.3.0': + dependencies: + '@prisma/debug': 7.3.0 + '@prisma/engines-version': 7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735 + '@prisma/get-platform': 7.3.0 + + '@prisma/get-platform@7.2.0': + dependencies: + '@prisma/debug': 7.2.0 + + '@prisma/get-platform@7.3.0': + dependencies: + '@prisma/debug': 7.3.0 + + '@prisma/query-plan-executor@7.2.0': {} + + '@prisma/studio-core@0.13.1(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@types/react': 19.2.13 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + '@radix-ui/number@1.1.1': {} + + '@radix-ui/primitive@1.1.3': {} + + '@radix-ui/react-accessible-icon@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-accordion@1.2.12(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-alert-dialog@1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-aspect-ratio@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-avatar@1.1.10(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-checkbox@1.3.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-collapsible@1.1.12(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-context-menu@2.2.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-context@1.1.2(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + aria-hidden: 1.2.6 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + react-remove-scroll: 2.7.2(@types/react@19.2.13)(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-direction@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-form@0.1.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-label': 2.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-hover-card@1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-id@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-label@2.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-label@2.1.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-primitive': 2.1.4(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-menu@2.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + aria-hidden: 1.2.6 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + react-remove-scroll: 2.7.2(@types/react@19.2.13)(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-menubar@1.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-one-time-password-field@0.1.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + 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.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-password-toggle-field@0.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-popover@1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + aria-hidden: 1.2.6 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + react-remove-scroll: 2.7.2(@types/react@19.2.13)(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@floating-ui/react-dom': 2.1.7(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/rect': 1.1.1 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-primitive@2.1.4(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-slot': 1.2.4(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-progress@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-radio-group@1.3.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-scroll-area@1.2.10(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/number': 1.1.1 + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-select@2.2.6(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + 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.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + aria-hidden: 1.2.6 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + react-remove-scroll: 2.7.2(@types/react@19.2.13)(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-separator@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-slider@1.3.6(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + 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.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-slot@1.2.3(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-slot@1.2.4(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-switch@1.2.6(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-tabs@1.1.13(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-toast@1.2.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-toggle-group@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-toggle': 1.1.10(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-toggle@1.1.10(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-toolbar@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-separator': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-toggle-group': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-tooltip@1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-is-hydrated@0.1.0(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + use-sync-external-store: 1.6.0(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/rect': 1.1.1 + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-use-size@1.1.1(@types/react@19.2.13)(react@19.2.4)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + react: 19.2.4 + optionalDependencies: + '@types/react': 19.2.13 + + '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + '@radix-ui/rect@1.1.1': {} + + '@rtsao/scc@1.1.0': {} + + '@rushstack/eslint-patch@1.15.0': {} + + '@sec-ant/readable-stream@0.4.1': {} + + '@sindresorhus/merge-streams@4.0.0': {} + + '@standard-schema/spec@1.1.0': {} + + '@standard-schema/utils@0.3.0': {} + + '@swc/helpers@0.5.15': + dependencies: + tslib: 2.8.1 + + '@t3-oss/env-core@0.12.0(typescript@5.9.3)(valibot@1.2.0(typescript@5.9.3))(zod@3.25.76)': + optionalDependencies: + typescript: 5.9.3 + valibot: 1.2.0(typescript@5.9.3) + zod: 3.25.76 + + '@t3-oss/env-nextjs@0.12.0(typescript@5.9.3)(valibot@1.2.0(typescript@5.9.3))(zod@3.25.76)': + dependencies: + '@t3-oss/env-core': 0.12.0(typescript@5.9.3)(valibot@1.2.0(typescript@5.9.3))(zod@3.25.76) + optionalDependencies: + typescript: 5.9.3 + valibot: 1.2.0(typescript@5.9.3) + zod: 3.25.76 + + '@tailwindcss/node@4.1.18': + dependencies: + '@jridgewell/remapping': 2.3.5 + enhanced-resolve: 5.19.0 + jiti: 2.6.1 + lightningcss: 1.30.2 + magic-string: 0.30.21 + source-map-js: 1.2.1 + tailwindcss: 4.1.18 + + '@tailwindcss/oxide-android-arm64@4.1.18': + optional: true + + '@tailwindcss/oxide-darwin-arm64@4.1.18': + optional: true + + '@tailwindcss/oxide-darwin-x64@4.1.18': + optional: true + + '@tailwindcss/oxide-freebsd-x64@4.1.18': + optional: true + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.18': + optional: true + + '@tailwindcss/oxide-linux-arm64-gnu@4.1.18': + optional: true + + '@tailwindcss/oxide-linux-arm64-musl@4.1.18': + optional: true + + '@tailwindcss/oxide-linux-x64-gnu@4.1.18': + optional: true + + '@tailwindcss/oxide-linux-x64-musl@4.1.18': + optional: true + + '@tailwindcss/oxide-wasm32-wasi@4.1.18': + optional: true + + '@tailwindcss/oxide-win32-arm64-msvc@4.1.18': + optional: true + + '@tailwindcss/oxide-win32-x64-msvc@4.1.18': + optional: true + + '@tailwindcss/oxide@4.1.18': + optionalDependencies: + '@tailwindcss/oxide-android-arm64': 4.1.18 + '@tailwindcss/oxide-darwin-arm64': 4.1.18 + '@tailwindcss/oxide-darwin-x64': 4.1.18 + '@tailwindcss/oxide-freebsd-x64': 4.1.18 + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.18 + '@tailwindcss/oxide-linux-arm64-gnu': 4.1.18 + '@tailwindcss/oxide-linux-arm64-musl': 4.1.18 + '@tailwindcss/oxide-linux-x64-gnu': 4.1.18 + '@tailwindcss/oxide-linux-x64-musl': 4.1.18 + '@tailwindcss/oxide-wasm32-wasi': 4.1.18 + '@tailwindcss/oxide-win32-arm64-msvc': 4.1.18 + '@tailwindcss/oxide-win32-x64-msvc': 4.1.18 + + '@tailwindcss/postcss@4.1.18': + dependencies: + '@alloc/quick-lru': 5.2.0 + '@tailwindcss/node': 4.1.18 + '@tailwindcss/oxide': 4.1.18 + postcss: 8.5.6 + tailwindcss: 4.1.18 + + '@tanstack/query-core@5.90.20': {} + + '@tanstack/react-query@5.90.20(react@19.2.4)': + dependencies: + '@tanstack/query-core': 5.90.20 + react: 19.2.4 + + '@tanstack/react-virtual@3.13.18(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + dependencies: + '@tanstack/virtual-core': 3.13.18 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + '@tanstack/virtual-core@3.13.18': {} + + '@trpc/client@11.9.0(@trpc/server@11.9.0(typescript@5.9.3))(typescript@5.9.3)': + dependencies: + '@trpc/server': 11.9.0(typescript@5.9.3) + typescript: 5.9.3 + + '@trpc/react-query@11.9.0(@tanstack/react-query@5.90.20(react@19.2.4))(@trpc/client@11.9.0(@trpc/server@11.9.0(typescript@5.9.3))(typescript@5.9.3))(@trpc/server@11.9.0(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)': + dependencies: + '@tanstack/react-query': 5.90.20(react@19.2.4) + '@trpc/client': 11.9.0(@trpc/server@11.9.0(typescript@5.9.3))(typescript@5.9.3) + '@trpc/server': 11.9.0(typescript@5.9.3) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + typescript: 5.9.3 + + '@trpc/server@11.9.0(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@ts-morph/common@0.27.0': + dependencies: + fast-glob: 3.3.3 + minimatch: 10.1.2 + path-browserify: 1.0.1 + + '@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@3.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/json-schema@7.0.15': {} + + '@types/json5@0.0.29': {} + + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/ms@2.1.0': {} + + '@types/node@20.19.32': + dependencies: + undici-types: 6.21.0 + + '@types/pg@8.16.0': + dependencies: + '@types/node': 20.19.32 + pg-protocol: 1.11.0 + pg-types: 2.2.0 + + '@types/react-dom@19.2.3(@types/react@19.2.13)': + dependencies: + '@types/react': 19.2.13 + + '@types/react@19.2.13': + dependencies: + csstype: 3.2.3 + + '@types/statuses@2.0.6': {} + + '@types/unist@2.0.11': {} + + '@types/unist@3.0.3': {} + + '@types/validate-npm-package-name@4.0.2': {} + + '@typescript-eslint/eslint-plugin@8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.54.0 + '@typescript-eslint/type-utils': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.54.0 + eslint: 9.39.2(jiti@2.6.1) + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.54.0 + '@typescript-eslint/types': 8.54.0 + '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.54.0 + debug: 4.4.3 + eslint: 9.39.2(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.54.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.54.0(typescript@5.9.3) + '@typescript-eslint/types': 8.54.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.54.0': + dependencies: + '@typescript-eslint/types': 8.54.0 + '@typescript-eslint/visitor-keys': 8.54.0 + + '@typescript-eslint/tsconfig-utils@8.54.0(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/type-utils@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.54.0 + '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + debug: 4.4.3 + eslint: 9.39.2(jiti@2.6.1) + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@8.54.0': {} + + '@typescript-eslint/typescript-estree@8.54.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.54.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.54.0(typescript@5.9.3) + '@typescript-eslint/types': 8.54.0 + '@typescript-eslint/visitor-keys': 8.54.0 + debug: 4.4.3 + minimatch: 9.0.5 + semver: 7.7.4 + tinyglobby: 0.2.15 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.54.0 + '@typescript-eslint/types': 8.54.0 + '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) + eslint: 9.39.2(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.54.0': + dependencies: + '@typescript-eslint/types': 8.54.0 + eslint-visitor-keys: 4.2.1 + + '@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 + + '@vercel/oidc@3.1.0': {} + + accepts@2.0.0: + dependencies: + mime-types: 3.0.2 + negotiator: 1.0.0 + + acorn-jsx@5.3.2(acorn@8.15.0): + dependencies: + acorn: 8.15.0 + + acorn@8.15.0: {} + + agent-base@7.1.4: {} + + ai@6.0.78(zod@3.25.76): + dependencies: + '@ai-sdk/gateway': 3.0.39(zod@3.25.76) + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.14(zod@3.25.76) + '@opentelemetry/api': 1.9.0 + zod: 3.25.76 + + ai@6.0.85(zod@3.25.76): + dependencies: + '@ai-sdk/gateway': 3.0.45(zod@3.25.76) + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.15(zod@3.25.76) + '@opentelemetry/api': 1.9.0 + zod: 3.25.76 + + ajv-formats@3.0.1(ajv@8.17.1): + optionalDependencies: + ajv: 8.17.1 + + 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 + + ajv@8.17.1: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + + ansi-regex@5.0.1: {} + + ansi-regex@6.2.2: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansis@4.2.0: {} + + 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.1 + 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.1 + 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.1 + 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.1 + 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.1 + 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.1 + 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.1 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + + ast-types-flow@0.0.8: {} + + ast-types@0.16.1: + dependencies: + tslib: 2.8.1 + + async-function@1.0.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + aws-ssl-profiles@1.1.2: {} + + axe-core@4.11.1: {} + + axobject-query@4.1.0: {} + + bail@2.0.2: {} + + balanced-match@1.0.2: {} + + baseline-browser-mapping@2.9.19: {} + + better-auth@1.4.18(@prisma/client@7.3.0(prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(mysql2@3.15.3)(next@15.5.15(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(pg@8.18.0)(prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + dependencies: + '@better-auth/core': 1.4.18(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.8(zod@3.25.76))(jose@6.1.3)(kysely@0.28.11)(nanostores@1.1.0) + '@better-auth/telemetry': 1.4.18(@better-auth/core@1.4.18(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.8(zod@3.25.76))(jose@6.1.3)(kysely@0.28.11)(nanostores@1.1.0)) + '@better-auth/utils': 0.3.0 + '@better-fetch/fetch': 1.1.21 + '@noble/ciphers': 2.1.1 + '@noble/hashes': 2.0.1 + better-call: 1.1.8(zod@4.3.6) + defu: 6.1.4 + jose: 6.1.3 + kysely: 0.28.11 + nanostores: 1.1.0 + zod: 4.3.6 + optionalDependencies: + '@prisma/client': 7.3.0(prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) + mysql2: 3.15.3 + next: 15.5.15(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + pg: 8.18.0 + prisma: 7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + better-call@1.1.8(zod@4.3.6): + dependencies: + '@better-auth/utils': 0.3.0 + '@better-fetch/fetch': 1.1.21 + rou3: 0.7.12 + set-cookie-parser: 2.7.2 + optionalDependencies: + zod: 4.3.6 + + body-parser@2.2.2: + dependencies: + bytes: 3.1.2 + content-type: 1.0.5 + debug: 4.4.3 + http-errors: 2.0.1 + iconv-lite: 0.7.2 + on-finished: 2.4.1 + qs: 6.14.1 + raw-body: 3.0.2 + type-is: 2.0.1 + transitivePeerDependencies: + - supports-color + + 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.1: + dependencies: + baseline-browser-mapping: 2.9.19 + caniuse-lite: 1.0.30001768 + electron-to-chromium: 1.5.286 + node-releases: 2.0.27 + update-browserslist-db: 1.2.3(browserslist@4.28.1) + + bundle-name@4.1.0: + dependencies: + run-applescript: 7.1.0 + + bytes@3.1.2: {} + + c12@3.1.0: + dependencies: + chokidar: 4.0.3 + confbox: 0.2.4 + defu: 6.1.4 + dotenv: 16.6.1 + exsolve: 1.0.8 + giget: 2.0.0 + jiti: 2.6.1 + ohash: 2.0.11 + pathe: 2.0.3 + perfect-debounce: 1.0.0 + pkg-types: 2.3.0 + rc9: 2.1.2 + + 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.30001768: {} + + caniuse-lite@1.0.30001791: {} + + ccount@2.0.1: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chalk@5.6.2: {} + + character-entities-html4@2.1.0: {} + + character-entities-legacy@3.0.0: {} + + character-entities@2.0.2: {} + + character-reference-invalid@2.0.1: {} + + chevrotain@10.5.0: + dependencies: + '@chevrotain/cst-dts-gen': 10.5.0 + '@chevrotain/gast': 10.5.0 + '@chevrotain/types': 10.5.0 + '@chevrotain/utils': 10.5.0 + lodash: 4.17.21 + regexp-to-ast: 0.5.0 + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + citty@0.1.6: + dependencies: + consola: 3.4.2 + + citty@0.2.0: {} + + class-variance-authority@0.7.1: + dependencies: + clsx: 2.1.1 + + cli-cursor@5.0.0: + dependencies: + restore-cursor: 5.1.0 + + cli-spinners@2.9.2: {} + + cli-width@4.1.0: {} + + client-only@0.0.1: {} + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + clsx@2.1.1: {} + + cluster-key-slot@1.1.2: {} + + code-block-writer@13.0.3: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + comma-separated-tokens@2.0.3: {} + + commander@11.1.0: {} + + commander@14.0.3: {} + + concat-map@0.0.1: {} + + confbox@0.2.4: {} + + consola@3.4.2: {} + + content-disposition@1.0.1: {} + + content-type@1.0.5: {} + + convert-source-map@2.0.0: {} + + cookie-signature@1.2.2: {} + + cookie@0.7.2: {} + + cookie@1.1.1: {} + + copy-anything@4.0.5: + dependencies: + is-what: 5.5.0 + + cors@2.8.6: + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + + cosmiconfig@9.0.0(typescript@5.9.3): + dependencies: + env-paths: 2.2.1 + import-fresh: 3.3.1 + js-yaml: 4.1.1 + parse-json: 5.2.0 + optionalDependencies: + typescript: 5.9.3 + + croner@10.0.1: {} + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + cssesc@3.0.0: {} + + csstype@3.2.3: {} + + damerau-levenshtein@1.0.8: {} + + data-uri-to-buffer@4.0.1: {} + + 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 + + debug@3.2.7: + dependencies: + ms: 2.1.3 + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + decode-named-character-reference@1.3.0: + dependencies: + character-entities: 2.0.2 + + dedent@1.7.1: {} + + deep-is@0.1.4: {} + + deepmerge-ts@7.1.5: {} + + deepmerge@4.3.1: {} + + default-browser-id@5.0.1: {} + + default-browser@5.5.0: + dependencies: + bundle-name: 4.1.0 + default-browser-id: 5.0.1 + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-lazy-prop@3.0.0: {} + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + + defu@6.1.4: {} + + denque@2.1.0: {} + + depd@2.0.0: {} + + dequal@2.0.3: {} + + destr@2.0.5: {} + + detect-libc@2.1.2: {} + + detect-node-es@1.1.0: {} + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + diff@8.0.3: {} + + doctrine@2.1.0: + dependencies: + esutils: 2.0.3 + + dotenv-cli@11.0.0: + dependencies: + cross-spawn: 7.0.6 + dotenv: 17.2.4 + dotenv-expand: 12.0.3 + minimist: 1.2.8 + + dotenv-expand@12.0.3: + dependencies: + dotenv: 16.6.1 + + dotenv@16.6.1: {} + + dotenv@17.2.4: {} + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + eciesjs@0.4.17: + dependencies: + '@ecies/ciphers': 0.2.5(@noble/ciphers@1.3.0) + '@noble/ciphers': 1.3.0 + '@noble/curves': 1.9.7 + '@noble/hashes': 1.8.0 + + ee-first@1.1.1: {} + + effect@3.18.4: + dependencies: + '@standard-schema/spec': 1.1.0 + fast-check: 3.23.2 + + electron-to-chromium@1.5.286: {} + + emoji-regex@10.6.0: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + empathic@2.0.0: {} + + encodeurl@2.0.0: {} + + enhanced-resolve@5.19.0: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.3.0 + + env-paths@2.2.1: {} + + error-ex@1.3.4: + dependencies: + is-arrayish: 0.2.1 + + es-abstract@1.24.1: + 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.20 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-iterator-helpers@1.2.2: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + 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-html@1.0.3: {} + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + eslint-config-next@15.5.12(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@next/eslint-plugin-next': 15.5.12 + '@rushstack/eslint-patch': 1.15.0 + '@typescript-eslint/eslint-plugin': 8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.2(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.2(jiti@2.6.1)) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2(jiti@2.6.1)) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.2(jiti@2.6.1)) + eslint-plugin-react: 7.37.5(eslint@9.39.2(jiti@2.6.1)) + eslint-plugin-react-hooks: 5.2.0(eslint@9.39.2(jiti@2.6.1)) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - 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.2(jiti@2.6.1)): + dependencies: + '@nolyfill/is-core-module': 1.0.39 + debug: 4.4.3 + eslint: 9.39.2(jiti@2.6.1) + get-tsconfig: 4.13.3 + 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.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2(jiti@2.6.1)) + transitivePeerDependencies: + - supports-color + + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.54.0(eslint@9.39.2(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.2(jiti@2.6.1)): + dependencies: + debug: 3.2.7 + optionalDependencies: + '@typescript-eslint/parser': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.2(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.2(jiti@2.6.1)) + transitivePeerDependencies: + - supports-color + + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2(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.2(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.54.0(eslint@9.39.2(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.2(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.54.0(eslint@9.39.2(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.2(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.1 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 9.39.2(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@5.2.0(eslint@9.39.2(jiti@2.6.1)): + dependencies: + eslint: 9.39.2(jiti@2.6.1) + + eslint-plugin-react@7.37.5(eslint@9.39.2(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.2 + eslint: 9.39.2(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.2(jiti@2.6.1): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(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.3 + '@eslint/js': 9.39.2 + '@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.7.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.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 + + esprima@4.0.1: {} + + esquery@1.7.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: {} + + etag@1.8.1: {} + + eventsource-parser@3.0.6: {} + + eventsource@3.0.7: + dependencies: + eventsource-parser: 3.0.6 + + execa@5.1.1: + dependencies: + cross-spawn: 7.0.6 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + execa@9.6.1: + dependencies: + '@sindresorhus/merge-streams': 4.0.0 + cross-spawn: 7.0.6 + figures: 6.1.0 + get-stream: 9.0.1 + human-signals: 8.0.1 + is-plain-obj: 4.1.0 + is-stream: 4.0.1 + npm-run-path: 6.0.0 + pretty-ms: 9.3.0 + signal-exit: 4.1.0 + strip-final-newline: 4.0.0 + yoctocolors: 2.1.2 + + express-rate-limit@8.2.1(express@5.2.1): + dependencies: + express: 5.2.1 + ip-address: 10.0.1 + + express@5.2.1: + dependencies: + accepts: 2.0.0 + body-parser: 2.2.2 + content-disposition: 1.0.1 + content-type: 1.0.5 + cookie: 0.7.2 + cookie-signature: 1.2.2 + debug: 4.4.3 + depd: 2.0.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 2.1.1 + fresh: 2.0.0 + http-errors: 2.0.1 + merge-descriptors: 2.0.0 + mime-types: 3.0.2 + on-finished: 2.4.1 + once: 1.4.0 + parseurl: 1.3.3 + proxy-addr: 2.0.7 + qs: 6.14.1 + range-parser: 1.2.1 + router: 2.2.0 + send: 1.2.1 + serve-static: 2.2.1 + statuses: 2.0.2 + type-is: 2.0.1 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + + exsolve@1.0.8: {} + + extend@3.0.2: {} + + fast-check@3.23.2: + dependencies: + pure-rand: 6.1.0 + + 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-glob@3.3.3: + 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: {} + + fast-uri@3.1.0: {} + + fastq@1.20.1: + dependencies: + reusify: 1.1.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fetch-blob@3.2.0: + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 3.3.3 + + figures@6.1.0: + dependencies: + is-unicode-supported: 2.1.0 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + finalhandler@2.1.1: + dependencies: + debug: 4.4.3 + encodeurl: 2.0.0 + escape-html: 1.0.3 + on-finished: 2.4.1 + parseurl: 1.3.3 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + + 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 + + foreground-child@3.3.1: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + formdata-polyfill@4.0.10: + dependencies: + fetch-blob: 3.2.0 + + forwarded@0.2.0: {} + + framer-motion@12.33.0(@emotion/is-prop-valid@1.4.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + dependencies: + motion-dom: 12.33.0 + motion-utils: 12.29.2 + tslib: 2.8.1 + optionalDependencies: + '@emotion/is-prop-valid': 1.4.0 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + fresh@2.0.0: {} + + fs-extra@11.3.3: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.2.0 + universalify: 2.0.1 + + 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: {} + + fuzzysort@3.1.0: {} + + fzf@0.5.2: {} + + generate-function@2.3.1: + dependencies: + is-property: 1.0.2 + + generator-function@2.0.1: {} + + gensync@1.0.0-beta.2: {} + + get-caller-file@2.0.5: {} + + get-east-asian-width@1.4.0: {} + + 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-own-enumerable-keys@1.0.0: {} + + get-port-please@3.2.0: {} + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-stream@6.0.1: {} + + get-stream@9.0.1: + dependencies: + '@sec-ant/readable-stream': 0.4.1 + is-stream: 4.0.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.3: + dependencies: + resolve-pkg-maps: 1.0.0 + + giget@2.0.0: + dependencies: + citty: 0.1.6 + consola: 3.4.2 + defu: 6.1.4 + node-fetch-native: 1.6.7 + nypm: 0.6.5 + pathe: 2.0.3 + + 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: {} + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + grammex@3.1.12: {} + + graphmatch@1.1.0: {} + + graphql@16.12.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-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-whitespace@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + headers-polyfill@4.0.3: {} + + hono@4.11.4: {} + + hono@4.11.8: {} + + html-url-attributes@3.0.1: {} + + http-errors@2.0.1: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.2 + toidentifier: 1.0.1 + + http-status-codes@2.3.0: {} + + https-proxy-agent@7.0.6: + dependencies: + agent-base: 7.1.4 + debug: 4.4.3 + transitivePeerDependencies: + - supports-color + + human-signals@2.1.0: {} + + human-signals@8.0.1: {} + + iconv-lite@0.7.2: + dependencies: + safer-buffer: 2.1.2 + + 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: {} + + inherits@2.0.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 + + ioredis@5.9.3: + dependencies: + '@ioredis/commands': 1.5.0 + cluster-key-slot: 1.1.2 + debug: 4.4.3 + denque: 2.1.0 + lodash.defaults: 4.2.0 + lodash.isarguments: 3.1.0 + redis-errors: 1.2.0 + redis-parser: 3.0.0 + standard-as-callback: 2.1.0 + transitivePeerDependencies: + - supports-color + + ip-address@10.0.1: {} + + ipaddr.js@1.9.1: {} + + 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-arrayish@0.2.1: {} + + 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.4 + + 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-docker@3.0.0: {} + + is-extglob@2.1.1: {} + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-fullwidth-code-point@3.0.0: {} + + 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-in-ssh@1.0.0: {} + + is-inside-container@1.0.0: + dependencies: + is-docker: 3.0.0 + + is-interactive@2.0.0: {} + + is-map@2.0.3: {} + + is-negative-zero@2.0.3: {} + + is-node-process@1.2.0: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-number@7.0.0: {} + + is-obj@3.0.0: {} + + is-plain-obj@4.1.0: {} + + is-promise@4.0.0: {} + + is-property@1.0.2: {} + + 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-regexp@3.1.0: {} + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + + is-stream@2.0.1: {} + + is-stream@4.0.1: {} + + 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.20 + + is-unicode-supported@1.3.0: {} + + is-unicode-supported@2.1.0: {} + + 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 + + is-what@5.5.0: {} + + is-wsl@3.1.0: + dependencies: + is-inside-container: 1.0.0 + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + isexe@3.1.2: {} + + 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: {} + + jose@6.1.3: {} + + 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-parse-even-better-errors@2.3.1: {} + + json-schema-traverse@0.4.1: {} + + json-schema-traverse@1.0.0: {} + + json-schema-typed@8.0.2: {} + + json-schema@0.4.0: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@1.0.2: + dependencies: + minimist: 1.2.8 + + json5@2.2.3: {} + + jsonfile@6.2.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + 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 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + kleur@3.0.3: {} + + kleur@4.1.5: {} + + kysely@0.28.11: {} + + 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 + + lilconfig@2.1.0: {} + + lines-and-columns@1.2.4: {} + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.defaults@4.2.0: {} + + lodash.isarguments@3.1.0: {} + + lodash.merge@4.6.2: {} + + lodash@4.17.21: {} + + log-symbols@6.0.0: + dependencies: + chalk: 5.6.2 + is-unicode-supported: 1.3.0 + + long@5.3.2: {} + + 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 + + lru.min@1.1.4: {} + + lucide-react@0.563.0(react@19.2.4): + dependencies: + react: 19.2.4 + + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + + 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.3.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.1.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.1.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + + media-typer@1.1.0: {} + + merge-descriptors@2.0.0: {} + + merge-stream@2.0.0: {} + + merge2@1.4.1: {} + + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.3.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.3.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.3.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 + + mime-db@1.54.0: {} + + mime-types@3.0.2: + dependencies: + mime-db: 1.54.0 + + mimic-fn@2.1.0: {} + + mimic-function@5.0.1: {} + + minimatch@10.1.2: + dependencies: + '@isaacs/brace-expansion': 5.0.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: {} + + moment-timezone@0.6.0: + dependencies: + moment: 2.30.1 + + moment@2.30.1: {} + + motion-dom@12.33.0: + dependencies: + motion-utils: 12.29.2 + + motion-utils@12.29.2: {} + + ms@2.1.3: {} + + msw@2.12.9(@types/node@20.19.32)(typescript@5.9.3): + dependencies: + '@inquirer/confirm': 5.1.21(@types/node@20.19.32) + '@mswjs/interceptors': 0.41.2 + '@open-draft/deferred-promise': 2.2.0 + '@types/statuses': 2.0.6 + cookie: 1.1.1 + graphql: 16.12.0 + headers-polyfill: 4.0.3 + is-node-process: 1.2.0 + outvariant: 1.4.3 + path-to-regexp: 6.3.0 + picocolors: 1.1.1 + rettime: 0.10.1 + statuses: 2.0.2 + strict-event-emitter: 0.5.1 + tough-cookie: 6.0.0 + type-fest: 5.4.3 + until-async: 3.0.2 + yargs: 17.7.2 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - '@types/node' + + mute-stream@2.0.0: {} + + mysql2@3.15.3: + dependencies: + aws-ssl-profiles: 1.1.2 + denque: 2.1.0 + generate-function: 2.3.1 + iconv-lite: 0.7.2 + long: 5.3.2 + lru.min: 1.1.4 + named-placeholders: 1.1.6 + seq-queue: 0.0.5 + sqlstring: 2.3.3 + + named-placeholders@1.1.6: + dependencies: + lru.min: 1.1.4 + + nanoid@3.3.11: {} + + nanoid@3.3.12: {} + + nanostores@1.1.0: {} + + napi-postinstall@0.3.4: {} + + natural-compare@1.4.0: {} + + negotiator@1.0.0: {} + + next-themes@0.4.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + dependencies: + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + next@15.5.15(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + dependencies: + '@next/env': 15.5.15 + '@swc/helpers': 0.5.15 + caniuse-lite: 1.0.30001791 + postcss: 8.4.31 + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + styled-jsx: 5.1.6(@babel/core@7.29.0)(react@19.2.4) + optionalDependencies: + '@next/swc-darwin-arm64': 15.5.15 + '@next/swc-darwin-x64': 15.5.15 + '@next/swc-linux-arm64-gnu': 15.5.15 + '@next/swc-linux-arm64-musl': 15.5.15 + '@next/swc-linux-x64-gnu': 15.5.15 + '@next/swc-linux-x64-musl': 15.5.15 + '@next/swc-win32-arm64-msvc': 15.5.15 + '@next/swc-win32-x64-msvc': 15.5.15 + '@opentelemetry/api': 1.9.0 + sharp: 0.34.5 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + node-domexception@1.0.0: {} + + node-fetch-native@1.6.7: {} + + node-fetch@3.3.2: + dependencies: + data-uri-to-buffer: 4.0.1 + fetch-blob: 3.2.0 + formdata-polyfill: 4.0.10 + + node-releases@2.0.27: {} + + npm-run-path@4.0.1: + dependencies: + path-key: 3.1.1 + + npm-run-path@6.0.0: + dependencies: + path-key: 4.0.0 + unicorn-magic: 0.3.0 + + nypm@0.6.5: + dependencies: + citty: 0.2.0 + pathe: 2.0.3 + tinyexec: 1.0.2 + + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object-treeify@1.1.33: {} + + 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.1 + 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.1 + + 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 + + ohash@2.0.11: {} + + on-finished@2.4.1: + dependencies: + ee-first: 1.1.1 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + + open@11.0.0: + dependencies: + default-browser: 5.5.0 + define-lazy-prop: 3.0.0 + is-in-ssh: 1.0.0 + is-inside-container: 1.0.0 + powershell-utils: 0.1.0 + wsl-utils: 0.3.1 + + openai@6.35.0(zod@3.25.76): + optionalDependencies: + zod: 3.25.76 + + 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 + + ora@8.2.0: + dependencies: + chalk: 5.6.2 + cli-cursor: 5.0.0 + cli-spinners: 2.9.2 + is-interactive: 2.0.0 + is-unicode-supported: 2.1.0 + log-symbols: 6.0.0 + stdin-discarder: 0.2.2 + string-width: 7.2.0 + strip-ansi: 7.1.2 + + outvariant@1.4.3: {} + + 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 + + package-manager-detector@1.6.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.3.0 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.29.0 + error-ex: 1.3.4 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + + parse-ms@4.0.0: {} + + parseurl@1.3.3: {} + + path-browserify@1.0.1: {} + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + path-key@4.0.0: {} + + path-parse@1.0.7: {} + + path-to-regexp@6.3.0: {} + + path-to-regexp@8.3.0: {} + + pathe@2.0.3: {} + + perfect-debounce@1.0.0: {} + + pg-cloudflare@1.3.0: + optional: true + + pg-connection-string@2.11.0: {} + + pg-int8@1.0.1: {} + + pg-pool@3.11.0(pg@8.18.0): + dependencies: + pg: 8.18.0 + + pg-protocol@1.11.0: {} + + pg-types@2.2.0: + dependencies: + pg-int8: 1.0.1 + postgres-array: 2.0.0 + postgres-bytea: 1.0.1 + postgres-date: 1.0.7 + postgres-interval: 1.2.0 + + pg@8.18.0: + dependencies: + pg-connection-string: 2.11.0 + pg-pool: 3.11.0(pg@8.18.0) + pg-protocol: 1.11.0 + pg-types: 2.2.0 + pgpass: 1.0.5 + optionalDependencies: + pg-cloudflare: 1.3.0 + + pgpass@1.0.5: + dependencies: + split2: 4.2.0 + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + pkce-challenge@5.0.1: {} + + pkg-types@2.3.0: + dependencies: + confbox: 0.2.4 + exsolve: 1.0.8 + pathe: 2.0.3 + + possible-typed-array-names@1.1.0: {} + + postcss-selector-parser@7.1.1: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss@8.4.31: + dependencies: + nanoid: 3.3.12 + 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 + + postgres-array@2.0.0: {} + + postgres-array@3.0.4: {} + + postgres-bytea@1.0.1: {} + + postgres-date@1.0.7: {} + + postgres-interval@1.2.0: + dependencies: + xtend: 4.0.2 + + postgres@3.4.7: {} + + powershell-utils@0.1.0: {} + + prelude-ls@1.2.1: {} + + prettier-plugin-tailwindcss@0.6.14(prettier@3.8.1): + dependencies: + prettier: 3.8.1 + + prettier@3.8.1: {} + + pretty-ms@9.3.0: + dependencies: + parse-ms: 4.0.0 + + prisma@7.3.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + dependencies: + '@prisma/config': 7.3.0 + '@prisma/dev': 0.20.0(typescript@5.9.3) + '@prisma/engines': 7.3.0 + '@prisma/studio-core': 0.13.1(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + mysql2: 3.15.3 + postgres: 3.4.7 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - '@types/react' + - magicast + - react + - react-dom + + prompts@2.4.2: + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + + proper-lockfile@4.1.2: + dependencies: + graceful-fs: 4.2.11 + retry: 0.12.0 + signal-exit: 3.0.7 + + property-information@7.1.0: {} + + proxy-addr@2.0.7: + dependencies: + forwarded: 0.2.0 + ipaddr.js: 1.9.1 + + punycode@2.3.1: {} + + pure-rand@6.1.0: {} + + pusher-js@8.4.0: + dependencies: + tweetnacl: 1.0.3 + + qs@6.14.1: + dependencies: + side-channel: 1.1.0 + + queue-microtask@1.2.3: {} + + radix-ui@1.4.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-accessible-icon': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-accordion': 1.2.12(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-alert-dialog': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-aspect-ratio': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-avatar': 1.1.10(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-checkbox': 1.3.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-context-menu': 2.2.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-dropdown-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-form': 0.1.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-hover-card': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-label': 2.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-menubar': 1.1.16(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-one-time-password-field': 0.1.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-password-toggle-field': 0.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-popover': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-progress': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-radio-group': 1.3.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-scroll-area': 1.2.10(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-select': 2.2.6(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-separator': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slider': 1.3.6(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-switch': 1.2.6(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-tabs': 1.1.13(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-toast': 1.2.15(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-toggle': 1.1.10(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-toggle-group': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-toolbar': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-tooltip': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.13)(react@19.2.4) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + '@types/react-dom': 19.2.3(@types/react@19.2.13) + + range-parser@1.2.1: {} + + raw-body@3.0.2: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.1 + iconv-lite: 0.7.2 + unpipe: 1.0.0 + + rc9@2.1.2: + dependencies: + defu: 6.1.4 + destr: 2.0.5 + + react-dom@19.2.4(react@19.2.4): + dependencies: + react: 19.2.4 + scheduler: 0.27.0 + + react-hook-form@7.71.1(react@19.2.4): + dependencies: + react: 19.2.4 + + react-is@16.13.1: {} + + react-markdown@10.1.0(@types/react@19.2.13)(react@19.2.4): + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@types/react': 19.2.13 + 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.4 + remark-parse: 11.0.0 + remark-rehype: 11.1.2 + unified: 11.0.5 + unist-util-visit: 5.1.0 + vfile: 6.0.3 + transitivePeerDependencies: + - supports-color + + react-remove-scroll-bar@2.3.8(@types/react@19.2.13)(react@19.2.4): + dependencies: + react: 19.2.4 + react-style-singleton: 2.2.3(@types/react@19.2.13)(react@19.2.4) + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.13 + + react-remove-scroll@2.7.2(@types/react@19.2.13)(react@19.2.4): + dependencies: + react: 19.2.4 + react-remove-scroll-bar: 2.3.8(@types/react@19.2.13)(react@19.2.4) + react-style-singleton: 2.2.3(@types/react@19.2.13)(react@19.2.4) + tslib: 2.8.1 + use-callback-ref: 1.3.3(@types/react@19.2.13)(react@19.2.4) + use-sidecar: 1.1.3(@types/react@19.2.13)(react@19.2.4) + optionalDependencies: + '@types/react': 19.2.13 + + react-style-singleton@2.2.3(@types/react@19.2.13)(react@19.2.4): + dependencies: + get-nonce: 1.0.1 + react: 19.2.4 + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.13 + + react-virtuoso@4.18.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + dependencies: + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + react@19.2.4: {} + + readdirp@4.1.2: {} + + recast@0.23.11: + dependencies: + ast-types: 0.16.1 + esprima: 4.0.1 + source-map: 0.6.1 + tiny-invariant: 1.3.3 + tslib: 2.8.1 + + redis-errors@1.2.0: {} + + redis-parser@3.0.0: + dependencies: + redis-errors: 1.2.0 + + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + 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 + + regexp-to-ast@0.5.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 + + 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-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 + + remeda@2.33.4: {} + + require-directory@2.1.1: {} + + require-from-string@2.0.2: {} + + 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 + + restore-cursor@5.1.0: + dependencies: + onetime: 7.0.0 + signal-exit: 4.1.0 + + resumable-stream@2.2.10: {} + + retry@0.12.0: {} + + rettime@0.10.1: {} + + reusify@1.1.0: {} + + rou3@0.7.12: {} + + router@2.2.0: + dependencies: + debug: 4.4.3 + depd: 2.0.0 + is-promise: 4.0.0 + parseurl: 1.3.3 + path-to-regexp: 8.3.0 + transitivePeerDependencies: + - supports-color + + run-applescript@7.1.0: {} + + 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-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 + + safer-buffer@2.1.2: {} + + scheduler@0.27.0: {} + + semver@6.3.1: {} + + semver@7.7.4: {} + + send@1.2.1: + dependencies: + debug: 4.4.3 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 2.0.0 + http-errors: 2.0.1 + mime-types: 3.0.2 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + + seq-queue@0.0.5: {} + + serve-static@2.2.1: + dependencies: + encodeurl: 2.0.0 + escape-html: 1.0.3 + parseurl: 1.3.3 + send: 1.2.1 + transitivePeerDependencies: + - supports-color + + server-only@0.0.1: {} + + set-cookie-parser@2.7.2: {} + + 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 + + setprototypeof@1.2.0: {} + + shadcn@3.8.4(@types/node@20.19.32)(typescript@5.9.3): + dependencies: + '@antfu/ni': 25.0.0 + '@babel/core': 7.29.0 + '@babel/parser': 7.29.0 + '@babel/plugin-transform-typescript': 7.28.6(@babel/core@7.29.0) + '@babel/preset-typescript': 7.28.5(@babel/core@7.29.0) + '@dotenvx/dotenvx': 1.52.0 + '@modelcontextprotocol/sdk': 1.26.0(zod@3.25.76) + '@types/validate-npm-package-name': 4.0.2 + browserslist: 4.28.1 + commander: 14.0.3 + cosmiconfig: 9.0.0(typescript@5.9.3) + dedent: 1.7.1 + deepmerge: 4.3.1 + diff: 8.0.3 + execa: 9.6.1 + fast-glob: 3.3.3 + fs-extra: 11.3.3 + fuzzysort: 3.1.0 + https-proxy-agent: 7.0.6 + kleur: 4.1.5 + msw: 2.12.9(@types/node@20.19.32)(typescript@5.9.3) + node-fetch: 3.3.2 + open: 11.0.0 + ora: 8.2.0 + postcss: 8.5.6 + postcss-selector-parser: 7.1.1 + prompts: 2.4.2 + recast: 0.23.11 + stringify-object: 5.0.0 + tailwind-merge: 3.4.0 + ts-morph: 26.0.0 + tsconfig-paths: 4.2.0 + validate-npm-package-name: 7.0.2 + zod: 3.25.76 + zod-to-json-schema: 3.25.1(zod@3.25.76) + transitivePeerDependencies: + - '@cfworker/json-schema' + - '@types/node' + - babel-plugin-macros + - supports-color + - typescript + + sharp@0.34.5: + dependencies: + '@img/colour': 1.1.0 + detect-libc: 2.1.2 + semver: 7.7.4 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.34.5 + '@img/sharp-darwin-x64': 0.34.5 + '@img/sharp-libvips-darwin-arm64': 1.2.4 + '@img/sharp-libvips-darwin-x64': 1.2.4 + '@img/sharp-libvips-linux-arm': 1.2.4 + '@img/sharp-libvips-linux-arm64': 1.2.4 + '@img/sharp-libvips-linux-ppc64': 1.2.4 + '@img/sharp-libvips-linux-riscv64': 1.2.4 + '@img/sharp-libvips-linux-s390x': 1.2.4 + '@img/sharp-libvips-linux-x64': 1.2.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + '@img/sharp-linux-arm': 0.34.5 + '@img/sharp-linux-arm64': 0.34.5 + '@img/sharp-linux-ppc64': 0.34.5 + '@img/sharp-linux-riscv64': 0.34.5 + '@img/sharp-linux-s390x': 0.34.5 + '@img/sharp-linux-x64': 0.34.5 + '@img/sharp-linuxmusl-arm64': 0.34.5 + '@img/sharp-linuxmusl-x64': 0.34.5 + '@img/sharp-wasm32': 0.34.5 + '@img/sharp-win32-arm64': 0.34.5 + '@img/sharp-win32-ia32': 0.34.5 + '@img/sharp-win32-x64': 0.34.5 + optional: true + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + 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 + + signal-exit@3.0.7: {} + + signal-exit@4.1.0: {} + + sisteransi@1.0.5: {} + + sonner@2.0.7(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + dependencies: + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + + source-map-js@1.2.1: {} + + source-map@0.6.1: {} + + space-separated-tokens@2.0.2: {} + + split2@4.2.0: {} + + sqlstring@2.3.3: {} + + stable-hash@0.0.5: {} + + standard-as-callback@2.1.0: {} + + statuses@2.0.2: {} + + std-env@3.10.0: {} + + stdin-discarder@0.2.2: {} + + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + + strict-event-emitter@0.5.1: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@7.2.0: + dependencies: + emoji-regex: 10.6.0 + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.2 + + string.prototype.includes@2.0.1: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + + 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.1 + 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.1 + + 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.1 + 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 + + stringify-object@5.0.0: + dependencies: + get-own-enumerable-keys: 1.0.0 + is-obj: 3.0.0 + is-regexp: 3.1.0 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.2: + dependencies: + ansi-regex: 6.2.2 + + strip-bom@3.0.0: {} + + strip-final-newline@2.0.0: {} + + strip-final-newline@4.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.29.0)(react@19.2.4): + dependencies: + client-only: 0.0.1 + react: 19.2.4 + optionalDependencies: + '@babel/core': 7.29.0 + + superjson@2.2.6: + dependencies: + copy-anything: 4.0.5 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + swr@2.4.0(react@19.2.4): + dependencies: + dequal: 2.0.3 + react: 19.2.4 + use-sync-external-store: 1.6.0(react@19.2.4) + + tagged-tag@1.0.0: {} + + tailwind-merge@3.4.0: {} + + tailwindcss@4.1.18: {} + + tapable@2.3.0: {} + + throttleit@2.1.0: {} + + tiny-invariant@1.3.3: {} + + tinyexec@1.0.2: {} + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + tldts-core@7.0.22: {} + + tldts@7.0.22: + dependencies: + tldts-core: 7.0.22 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + toidentifier@1.0.1: {} + + tough-cookie@6.0.0: + dependencies: + tldts: 7.0.22 + + trim-lines@3.0.1: {} + + trough@2.2.0: {} + + ts-api-utils@2.4.0(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + ts-morph@26.0.0: + dependencies: + '@ts-morph/common': 0.27.0 + code-block-writer: 13.0.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 + + tsconfig-paths@4.2.0: + dependencies: + json5: 2.2.3 + minimist: 1.2.8 + strip-bom: 3.0.0 + + tslib@2.8.1: {} + + tw-animate-css@1.4.0: {} + + tweetnacl@1.0.3: {} + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-fest@5.4.3: + dependencies: + tagged-tag: 1.0.0 + + type-is@2.0.1: + dependencies: + content-type: 1.0.5 + media-typer: 1.1.0 + mime-types: 3.0.2 + + 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.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.54.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.2(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + typescript@5.9.3: {} + + 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: {} + + unicorn-magic@0.3.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-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.1.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + + universalify@2.0.1: {} + + unpipe@1.0.0: {} + + 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 + + until-async@3.0.2: {} + + update-browserslist-db@1.2.3(browserslist@4.28.1): + dependencies: + browserslist: 4.28.1 + 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.13)(react@19.2.4): + dependencies: + react: 19.2.4 + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.13 + + use-sidecar@1.1.3(@types/react@19.2.13)(react@19.2.4): + dependencies: + detect-node-es: 1.1.0 + react: 19.2.4 + tslib: 2.8.1 + optionalDependencies: + '@types/react': 19.2.13 + + use-sync-external-store@1.6.0(react@19.2.4): + dependencies: + react: 19.2.4 + + util-deprecate@1.0.2: {} + + valibot@1.2.0(typescript@5.9.3): + optionalDependencies: + typescript: 5.9.3 + + validate-npm-package-name@7.0.2: {} + + vary@1.1.2: {} + + 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 + + web-streams-polyfill@3.3.3: {} + + 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.20 + + 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.20: + 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 + + which@4.0.0: + dependencies: + isexe: 3.1.2 + + word-wrap@1.2.5: {} + + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + wsl-utils@0.3.1: + dependencies: + is-wsl: 3.1.0 + powershell-utils: 0.1.0 + + xtend@4.0.2: {} + + y18n@5.0.8: {} + + yallist@3.1.1: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yocto-queue@0.1.0: {} + + yoctocolors-cjs@2.1.3: {} + + yoctocolors@2.1.2: {} + + zeptomatch@2.1.0: + dependencies: + grammex: 3.1.12 + graphmatch: 1.1.0 + + zod-to-json-schema@3.25.1(zod@3.25.76): + dependencies: + zod: 3.25.76 + + zod@3.25.76: {} + + zod@4.3.6: {} + + zustand@5.0.11(@types/react@19.2.13)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)): + optionalDependencies: + '@types/react': 19.2.13 + react: 19.2.4 + use-sync-external-store: 1.6.0(react@19.2.4) + + zwitch@2.0.4: {} diff --git a/solutions/trustclaw/postcss.config.js b/solutions/trustclaw/postcss.config.js new file mode 100644 index 0000000000..c2ddf74822 --- /dev/null +++ b/solutions/trustclaw/postcss.config.js @@ -0,0 +1,5 @@ +export default { + plugins: { + "@tailwindcss/postcss": {}, + }, +}; diff --git a/solutions/trustclaw/prisma.config.ts b/solutions/trustclaw/prisma.config.ts new file mode 100644 index 0000000000..6a1c28a03f --- /dev/null +++ b/solutions/trustclaw/prisma.config.ts @@ -0,0 +1,23 @@ +import { createRequire } from 'module' +import { defineConfig, env } from 'prisma/config' + +// Try to load .env into process.env via dotenv. Only relevant for direct +// CLI usage (e.g. `pnpm prisma db push` from a developer's shell). When +// DATABASE_URL is already set in the environment, dotenv is a no-op - and +// we don't want missing dotenv to break the config (e.g. running prisma +// from a freshly-cloned fork without node_modules). +try { + createRequire(import.meta.url)('dotenv/config') +} catch { + // dotenv not available - rely on process.env as-is +} + +export default defineConfig({ + schema: 'prisma/schema.prisma', + migrations: { + path: 'prisma/migrations', + }, + datasource: { + url: env('DATABASE_URL'), + }, +}) diff --git a/solutions/trustclaw/prisma/schema.prisma b/solutions/trustclaw/prisma/schema.prisma new file mode 100644 index 0000000000..740b47a563 --- /dev/null +++ b/solutions/trustclaw/prisma/schema.prisma @@ -0,0 +1,204 @@ +generator client { + provider = "prisma-client" + output = "../src/generated/prisma" + previewFeatures = ["postgresqlExtensions"] +} + +datasource db { + provider = "postgresql" + extensions = [vector] +} + +enum MessageRole { + user + assistant +} + +enum MessageSource { + web + telegram + cron +} + +enum MessageType { + regular + compaction_summary + memory_flush + hidden +} + +model User { + id String @id + name String + email String + emailVerified Boolean @default(false) + image String? + timezone String @default("UTC") + username String? @unique + displayUsername String? + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + sessions Session[] + accounts Account[] + instances ComposioClawInstance[] + onboardingState OnboardingState? + + @@unique([email]) + @@map("user") +} + +model Session { + id String @id + expiresAt DateTime + token String + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + ipAddress String? + userAgent String? + userId String + user User @relation(fields: [userId], references: [id], onDelete: Cascade) + + @@unique([token]) + @@index([userId]) + @@map("session") +} + +model Account { + id String @id + accountId String + providerId String + userId String + user User @relation(fields: [userId], references: [id], onDelete: Cascade) + accessToken String? + refreshToken String? + idToken String? + accessTokenExpiresAt DateTime? + refreshTokenExpiresAt DateTime? + scope String? + password String? + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + + @@index([userId]) + @@map("account") +} + +model Verification { + id String @id + identifier String + value String + expiresAt DateTime + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + + @@index([identifier]) + @@map("verification") +} + +model ComposioClawInstance { + id String @id @default(cuid()) + userId String @unique + + // Anthropic config + anthropicModel String @default("claude-sonnet-4-5-20250929") + + // Telegram linking + telegramChatId String? @unique + telegramLinkToken String? @unique + telegramLinkTokenExpiresAt DateTime? + + // Agent identity, stored as text + soulPrompt String? + identityPrompt String? + userPrompt String? + + // Context compaction + compactionCount Int @default(0) + lastCompactionSummary String? + lastCompactionAt DateTime? + tokensAtCompaction Int? + memoryFlushCount Int @default(0) + + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + + user User @relation(fields: [userId], references: [id], onDelete: Cascade) + + messages Message[] + memories Memory[] + cronJobs CronJob[] + + @@index([userId]) + @@map("composio_claw_instance") +} + +model Message { + id String @id @default(cuid()) + instanceId String + role MessageRole + content Json + source MessageSource @default(web) + messageType MessageType @default(regular) + + inputTokens Int? + outputTokens Int? + cacheReadTokens Int? + cacheWriteTokens Int? + + createdAt DateTime @default(now()) + instance ComposioClawInstance @relation(fields: [instanceId], references: [id], onDelete: Cascade) + + @@index([instanceId, createdAt]) + @@map("composio_claw_message") +} + +model Memory { + id String @id @default(cuid()) + instanceId String + content String + embedding Unsupported("VECTOR(1024)") + createdAt DateTime @default(now()) + + instance ComposioClawInstance @relation(fields: [instanceId], references: [id], onDelete: Cascade) + + @@index([instanceId, createdAt]) + @@map("composio_claw_memory") +} + +model CronJob { + id String @id @default(cuid()) + instanceId String + expression String + prompt String + timezone String @default("UTC") + enabled Boolean @default(true) + lastRunAt DateTime? + nextRunAt DateTime? + + lockedAt DateTime? + lockedBy String? + lastError String? + + instance ComposioClawInstance @relation(fields: [instanceId], references: [id], onDelete: Cascade) + + @@index([instanceId, nextRunAt]) + @@map("composio_claw_cron_job") +} + +model OnboardingState { + id String @id @default(cuid()) + userId String @unique + currentStep String + name String @default("") + writingStyle String? + personality String? + emoji String? + lore String @default("") @db.Text + anthropicModel String @default("claude-sonnet-4-5-20250929") + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + + user User @relation(fields: [userId], references: [id], onDelete: Cascade) + + @@map("onboarding_state") +} diff --git a/solutions/trustclaw/public/favicon.ico b/solutions/trustclaw/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..79c6373775a76c7ef39c3893f6d74dd13506be47 GIT binary patch literal 15406 zcmeHOc~DeG8h_TND*IoODiH7-6cG>+SxpQQYCQ0Yf_UeUz~)jsV{Hnrhz8drrMRxT zio^rFP&WaO%?1?}Qx!xM(8#)i23(C$rGlcUP#)j*uZK6hdGp?!Z)B+0Rd3$a-QTbK zef{-!jUcoW{vf>is=&@VVcJWA@VX!fI-TJ@;59+m%ASRWHox~5gaS`N2w-(s6V}4; zoShVlpP%2$o}S+8JUqPW*+DiQ^=M;g>xH(qwlk?`jjp$MM;bbGII(&r?IiRpV*d2g z>4b9WQaR0L@Z&PqSywrL9}HQAtS&tyuB3v7Wr`s#U8gH}^1|JzGqtP8D+8adGi9b?OHc6Eltm z4H`o6@d>K!uV25;>2BGwmDfQ#(7^n4>(+z9!unDB_C9vEm*Z5sFDWVI^z-vi(&wKi z(eB-Q81{I=7z{@OjTkXXm43<}Y?vMkh|>^L}pMzRl})?b?k-kB+9riV8=tq867+H?0|f-R&+YuA3Z#L=6QH{7c=~g_Kw+F zeM6t##h?LNQal})0Pytmx?rsjt=@wcXaWPUJWtx<7(ml7=k3{?J0_={Z)f=4&iCUe ze&=`%vUBOuFKODeMDp?Jq_&n-pF7Lv`}Y0QD2Hy`xIs&nEM;=CyDB}c=lRT;vqt*j z#ofDiY0a9yQ&3QE&2a<=hmc-B#JFE8(HC(vHa61s?K>zm^iP`L(CY`&!-o%f_l=EB ze9y){ZmnFtd_@!bUwn~lMyjf+ipGu|$9QlV<>c(As;aB>?AbH3dY1NfTX`Zmd8t{y z6%`d`W9!i)fF@3yOv{(ApdWttH{H2&$D(ebM!$1s9oH2WEm};|r_Z2WyRvMeFYj;n z?ktDsXJ&3UqX#_orKduWxAH=a^$4*+e?jN*lSqjaaJCA0}m_^yy z*=BPj$Eb8)SXgLAf8fBkO!~suq-~)W2LuGsn{P(Y+i#Dd@#7~^r%qi>>PYKbx^{%V zrT*-F_j{*bP*7m?`|sJamjVNOQF!=UTn~m`58V`d(%QA_C_Q~Mlb3@X`u<5t^G#$4 zR-SOn!bnxeQ?YoI@C(C->|3I=4}h zlb4yzhm!n}@)`DI$VIFR>2pV}t;s(xuMQLu5lJ&=&Z5nmw=i4nEIoSkh-21*KI{{D zxq0&@ZP<`T1qG+5p`k(kn&0EQ0h=RZmbUTt59D-y`|Sq(_+u`8_0`u@Sy`z_Q~L1G zp?^6|TZ%(^ZE626Dk|dku@-xul&18$sOXGzsC>QT=H~J>AgyQV+8G@%C1p9M-_+E^ zZ0an&?kv%gziY9H9Mzw_7|lq&*5!TMc5kr9Y^&=yM)m#;wqR@8U$6mN)BXf~6oW0; zI`+2#!SC}IeiG)Q72?^^&IUgTtA^6MYe(8AXafVs zq6ao$-_^DduHe1{y#T6IT$mt!`$H>^=n&a@f6F&P8<2F)_k zb@*Z9xK7t}t$c^S;PBxibne_a?%(L%-CsU`PTsq2Zwd+u=CK^9B98b_O3GiUfByl5 z*pWNSyV%(A1ibPByREXaiZ*RZC)8o#0=FE;q)AhlA3)s?`t<2jKEAxXV?0*rx;0{X zZDW1HHxB66 z-oNoiINiHV_e@*DuI@k6FSzF@w=Gw@x)hdFw53_W=8K#dJd=3kCq?LIMa25F5Su`>Af?%!`< z$9<})sUgI#kSEj7@PMyX#J=REyu5;tQ}fJDgMkzr+=qO9{S^I=t5&5F ze5z{WbL2VvVQRAE=+UD*PbNG(f})~E(3C0fa$jvmMkbY)mvdh^e~h3OX;>F1vd2HPWg-1p@OPPI0OAE}l7`w#HBl()tHg?IAjxJL{P z{5NFCFq%C19WJ8~M_jOAkrO^U^?gcf{7PeT<+B&~)xWJP=Uwdk#r(JK{3BmNtyq#j z2M!$M_DPp6zI?Cs_YYwCAHft763TSUe%ua&jTsd+oXMegSzLM|_39O(x$c9wr&CEmJqi)w4@xE=<50y;3>m6iR6+Xs=6gG}@e?7sm4y?7iJwofN! z_aGJtn;3Zv$Q#iDx3mvm-|jpoB|3U6i%UmP&z^z&tQMcdSf%=>v@f-5=yb^2O-=oq z<~*cC(;odpFA3l=nHQCuY1p7E0@BDM + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/clawd_clothing/coffee.svg b/solutions/trustclaw/public/images/clawd_clothing/coffee.svg new file mode 100644 index 0000000000..cb301fd8e5 --- /dev/null +++ b/solutions/trustclaw/public/images/clawd_clothing/coffee.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/clawd_clothing/hat.svg b/solutions/trustclaw/public/images/clawd_clothing/hat.svg new file mode 100644 index 0000000000..65d8442988 --- /dev/null +++ b/solutions/trustclaw/public/images/clawd_clothing/hat.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/clawd_clothing/heart.svg b/solutions/trustclaw/public/images/clawd_clothing/heart.svg new file mode 100644 index 0000000000..38e7e8eeae --- /dev/null +++ b/solutions/trustclaw/public/images/clawd_clothing/heart.svg @@ -0,0 +1,17 @@ + + + + + + + + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/clawd_clothing/iphone.svg b/solutions/trustclaw/public/images/clawd_clothing/iphone.svg new file mode 100644 index 0000000000..6cc7f3fcef --- /dev/null +++ b/solutions/trustclaw/public/images/clawd_clothing/iphone.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/clawd_clothing/nerd-glasses.svg b/solutions/trustclaw/public/images/clawd_clothing/nerd-glasses.svg new file mode 100644 index 0000000000..4c70738f06 --- /dev/null +++ b/solutions/trustclaw/public/images/clawd_clothing/nerd-glasses.svg @@ -0,0 +1,6 @@ + + + +glasses + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/clawd_clothing/pom-pom.svg b/solutions/trustclaw/public/images/clawd_clothing/pom-pom.svg new file mode 100644 index 0000000000..47b9f7f8da --- /dev/null +++ b/solutions/trustclaw/public/images/clawd_clothing/pom-pom.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/clawd_clothing/sunglasses.svg b/solutions/trustclaw/public/images/clawd_clothing/sunglasses.svg new file mode 100644 index 0000000000..9f9f662fe6 --- /dev/null +++ b/solutions/trustclaw/public/images/clawd_clothing/sunglasses.svg @@ -0,0 +1,19 @@ + + + + + + + + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/elements/circle.svg b/solutions/trustclaw/public/images/elements/circle.svg new file mode 100644 index 0000000000..89b424bd73 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/circle.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/circle_2.svg b/solutions/trustclaw/public/images/elements/circle_2.svg new file mode 100644 index 0000000000..4d6f111845 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/circle_2.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/circle_rays_right.svg b/solutions/trustclaw/public/images/elements/circle_rays_right.svg new file mode 100644 index 0000000000..47c9a7cf18 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/circle_rays_right.svg @@ -0,0 +1,195 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/circle_tunnel.svg b/solutions/trustclaw/public/images/elements/circle_tunnel.svg new file mode 100644 index 0000000000..52270fd4cd --- /dev/null +++ b/solutions/trustclaw/public/images/elements/circle_tunnel.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/cube.svg b/solutions/trustclaw/public/images/elements/cube.svg new file mode 100644 index 0000000000..a058fb544c --- /dev/null +++ b/solutions/trustclaw/public/images/elements/cube.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/diamond.svg b/solutions/trustclaw/public/images/elements/diamond.svg new file mode 100644 index 0000000000..5c8f297673 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/diamond.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/glitch_map.svg b/solutions/trustclaw/public/images/elements/glitch_map.svg new file mode 100644 index 0000000000..5a85631ad3 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/glitch_map.svg @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/glitch_rectangles.svg b/solutions/trustclaw/public/images/elements/glitch_rectangles.svg new file mode 100644 index 0000000000..11d60b1d87 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/glitch_rectangles.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/layers.svg b/solutions/trustclaw/public/images/elements/layers.svg new file mode 100644 index 0000000000..b7751d865c --- /dev/null +++ b/solutions/trustclaw/public/images/elements/layers.svg @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/layers_centered.svg b/solutions/trustclaw/public/images/elements/layers_centered.svg new file mode 100644 index 0000000000..0655c0198b --- /dev/null +++ b/solutions/trustclaw/public/images/elements/layers_centered.svg @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/logo_rays_left.svg b/solutions/trustclaw/public/images/elements/logo_rays_left.svg new file mode 100644 index 0000000000..e100384967 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/logo_rays_left.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/parallelagon.svg b/solutions/trustclaw/public/images/elements/parallelagon.svg new file mode 100644 index 0000000000..51d0b40e72 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/parallelagon.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/quarter_circle.svg b/solutions/trustclaw/public/images/elements/quarter_circle.svg new file mode 100644 index 0000000000..a9ca5ecaa3 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/quarter_circle.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/rays_left.svg b/solutions/trustclaw/public/images/elements/rays_left.svg new file mode 100644 index 0000000000..eae10754e7 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/rays_left.svg @@ -0,0 +1,143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/elements/rays_right.svg b/solutions/trustclaw/public/images/elements/rays_right.svg new file mode 100644 index 0000000000..e159f63c40 --- /dev/null +++ b/solutions/trustclaw/public/images/elements/rays_right.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/icons/discord.webp b/solutions/trustclaw/public/images/icons/discord.webp new file mode 100644 index 0000000000000000000000000000000000000000..9c1a08aae1911227dac9f8928465b5d0ad101acf GIT binary patch literal 1332 zcmV-41|Nq$;oQ|n8(+gP#u)1!9M+E?Gayp1o$?D3ijpK^!Jnnw^Uk|35Y~Ns`v~RId+XoX79rPCV9xN7053+%PE_!{j52L=)hpZ2s zblPGs25oyU7Hy>$SsS|Pbj5xQy7qn~U8Nt;g^qenu_vRZ(v$R|Koh#^^~Ao6diK5~ zJ*6+ugU)&_u{WcZy*G=N(wnRW-E}%*e})fb(Xsa@>nQz!Q-KZ-8e)$|4O@>E4W&o< zLxEF(E)R0CPveKO$nAZ~a-~mjV(7G&3cVVnVy_mdy;oVP{J8)pgl-QqpGWGgmN+!b^u8$Y z^fqdML{X6FY7ragV$|R)Wp^n`Ep+**zzaZrpzDWBcGsxN4SYc^)6F0=(9KP5SsZyS0<4VL@r3N-g6Kha)7zt8|hboij*`!9UD77#hnu63~WK>1WQi*Gm@=O~~ z=Bh%OYi~&6I&2(L#2gv|t|FAVh-c*5rChJJ&&)GHII&fh!N}07Xd?7){7@F2D3#fu zY3to+B=Kw=*rjswmX_>Na7eMrDow_Jw0N0)?JoIX3Vsp3DVB9&_cUM=#Wn477zXC|W6R(3>D%CQ_WnSMu0*%1+K27*jFp;*k! zbo!8)i8qQMoe&ip`HM~?L=$lr5u`I(Eo4Whp^9Y3MnweajABtYJ30*&qMrDp4AL3V zcUAS{=sZ-2&LnxrAiW`4^<+nHLxpG}*&>7F-%xn!$Y1n6RETCL6sip1-w?$jmuI>d zD`Y)MM=7lDh{9SW^3Oz99}u2NK1v~7Afm8Vp8PY><*7n=CXGc3?h+A&_4%q-^6Rxu zboYR8BArEwn5Su7r^ylTE|i@TDl&;nHp*m2TBFQhfvSijy-~!QI3zr2jsl5HZUQsu zj(nqyz&Dfj$mVTO<(f%<k0t$9fAu0 literal 0 HcmV?d00001 diff --git a/solutions/trustclaw/public/images/icons/slack.png b/solutions/trustclaw/public/images/icons/slack.png new file mode 100644 index 0000000000000000000000000000000000000000..da258488d32f94c298b9a9383b479ddb024db135 GIT binary patch literal 4212 zcmbtXc{r4P_a7R}*oMK_*XWTMOEVEsBC=&kOhafaq3mh0iy5+SF+8?N^$?>*$X>>l zW$+*)WD=p0?U9}O-ShnZeE)d=c<<}Fm-9L2e9wK(^}Wye+(|Z8CVboy+#nE$&&<@w z76f8Lu}%mlfP_V*6F?vVT{9yCyU?j0#RF-}z2cXUU}L;8F&68B0l#Rog_yU4Fg6h0 z*ceeJqu=Mj1ulHdQ0dYi7iPXyA-3i&-Z&!g2QtPK{EOvN?7M+Q|LY;Uu=acJH%%|U zUVL!qu-Vn?(x$J>;Kjfp+26mG0N4vtP`pRz97^@{dvtkcf)kHHX)TCVFb@k{y%?T? zMfjSN^nG}___n8CE*r=t{r!-h^J*!Uiph|_fRt3t$%sbf&CyjTX zO~hwa7`qWpp&K|H&^?tRN$=~c_iAEwjA*{b3IsokIyq#QyQa9Rn{k~S1`c>=`CewP zQE<$J5reVlU`ODZk;>MNGz>U)W2>=S0+|Kb*cQO!mK5P7AwLF>l53_4+e~9zatV&J z>2ZtIf2AThk;!pO&eNdTcvpkJOz(b?;S-7$KD2zj5yR8dKx{J&T%4*Fpjatt2d{+r zK>Fstu701(YC*2PYCqZOoMh_#h2g1GxA@(m1(d0x)o78`i&}Aw#Yr0})K*BbL;Bo~ zwIHDM(MO^XhJ&Jp1+q3wYF0_g^7W1Bf3&r4$%1T;Z^V}kH=@4kJBs**+3$l%EQ`keRW6di&+4o6r8fdbEejy~nt8j_h5vL0`0 zr`YgKdnz4s3uFq-s-WBs6(Uy%pg=@pDg^QLfw>(7L1UN0fm86YvQm#mF92w$5{d9H zAd1F)vtj}Aq_#Mgg(zCPIubj{p3+b7@Ck@E$I*$<9aKLn^CicxH zx`buz5tHZ5^3I=?cLX9DT;d%u53@=EBK2l|UU5w}84+M<-Pk^q-{aQFT5*{`O&HHc5Exosc4L?)PuxRF~` zX`|e^p_I`yM9m#{OX_JN*_1Mx%AgLJc(gyBEz0dJHCM&m4#u8etP7R=I{Fabwm2Ga z%szSo+5h&O6hc0kSHp?H{3t|Oa=w$2)*lew=@MRysG4w|7ND$<$bYwv=UCdrnb1%u z2qRdne&*7`4*iP15&3 zoQ3y;Q>+#m8k+|s(vtK^f^%Rw?x1Z8*d&C8Z;8B8 z<9M^fBQVcQU#TKa<(-KTN)ZRP_&y~7+}%jF3v1U}wZJ?}A8Kmy@TU^upNoYN^lw>H zPm{W{diTzHNn?+rL%(o7>;1I0+3SIA_F5?-uabLbv#v{>{AZ`d`P-07M`Uqr9#vRe z@6Nl5#KWWW`bV0FPejD^{`^}$y3@d4f#jtM16yp?Jt*#-r5P~=JlFrCE>Sc_HmTY{ zr>_t5fR|C|M32RnXb3|`FAg&k6b8$`KeGEsiB_;xK|ce%vJ~p!bwl&b>-iKz;_^#> zBf$R8z^Dw`>_E>MpdwG-m3FN6n0jbD-t}mi@7rO16r>d1GvH%*-28khH85|hGkJKI z=S7>F8uGe(=!KpLo))|SYNH8>c{p;pT)^c4YYW3eu6w>+JbaW#>3a_@pT5gguI{-=MRG7B@rfalJ!z({Wtc^+0AK zBi37KB?Bi|T~ecf6Ph?-oQQp8)syUfq$vl@eS$kxPNr^*oh`z)@|qI2I?wLm zYNGzou{Pj++>l@|CXdt4IS8q>tK%Mu&8yRd8RWR;{pOMt)UAbZ()L|*v}0XKCSA!* zs!-jl_p9k^)1l3LqUW%mCBe&i&TtxId~w`(WTT4fDc-Q+g+dtyT4g2>`-O!UbHa z)v~@FtWolYWcxYn;_qK8vRs?qSkJ?!2D}G_+?zkU>YvlI^9Kdxe;-WzzpAT2 zukerT&6lgZ9W!DTJwFE3MLHA2Uk>*9dj87o(JSzO(^8{*<#QD&Z#L)47(==2e~8tx$_yI0mb zJ2lg z=iKLZcPEl~Z4Pe*?C(Du(wMA*%hltd%%J|r?vOu!h_L$B+0YA7wntg{E`?_!#ZHW8 z*J<7?N7%|_%EGYh>eBv~QgDw4yu%X5@rx6S5p{_o`>6~Km;!qC3sFhiO9@lnT|`EX z{W&JVJe|aQx(Tmz_|M}Ha@hFZ3!Mu&VX>H|T;=X(JUdS7Q$NOEOSj%1oql4rZNi{m|1A01KrkSKD4OReR{2lFdl|kkVY*?P$wjUZfhvxH5%)X1 zJe|yT)Q@LOiSV`-33_N*R6nr=8QG~)q2W6vB7QlU1~l3MLoHW%?RP53meTh1Z3_>% zJ`SG`>(&40BJRDtK-pF}25qS2h2gWlUJmmK9}`M3I@Qlr#wnCn^pr=K=c=UP|o*ztuhDrsj^c;)D>^TC`;xw24} zoXD#{Upa{57tP%M!5*rH(?htSGf3&y6BGzzlQ!oke`14;yF7cX4QL(194RfR$k8a9 zjuB^UchC9~soNQGA|zzNTdfKc0$#4iZ}h3Rx~pSC7S_{T`$lxvI8x3$P(Jef`}41k zg4&Knu9TyA<&Ai$rE=}M#dN%?5Xvg(LM=H;xOL0;YusXOc<{Sh6gX|_RLMdIQ!g&Z zRMD|5Y4KJuF`j=>xQQ3GQ*HFs@H)6zm>aP3NIY*+&$%e&r*j;bVWw`2M-NRRw z=doo0FrP8EZqfK0QulLyvq?n^?bn=~8hw?N5pxshT(`hJsaP69#w=owfaPKOZAtRK z*xYGRA(FAwH|G?vp6X~^aKpW@YlHxQpM}6JPrubp5iqh1FQ_K&)09RpMEe)H1lHVg zml^Ea7oyxH5!~nR9!F=Mn=UA)tX8-bEmhKYyCSc7U8+S}TwNqq8g&O#U(DGTkj3-Y z3T_4f{|~uFx0%O1Tu%h)R>H|n#I0GuSM9fI?{^&os1@|_|H!aVApHs><5M_Uy|d3S z^WHaei|hanW=A5Zdw5;D5yd8l^CxZ1F!VTMideiZd^$bQK&!$i9zUps9_CoR0$_6o z5g;(~C4ON~^?Waj&{4Ymk`Rp-0m7H!%_cx;B^lSXi?Y~Vl_M7j#&WJk2Eb?>ENFQk zSH@I^_R_F>34iORPGjw0&3OrfS#8D83J1e1TfK$H)H>$hFT2}&~sMi-EOul zq8W+;16jo5YchWhZ?Dew_=!PEl`R4}Xjp+p;gVoms0vNG5lp5kRe;H*@b`w^alP{G zXM492_7*k&ubj&@~&B1T6e4Mc0Ww;`06>bP+=$PWR3o=A#`w%$d zrDi*u7PH)rlE@HNRMYzScq583%}HzKfTkWHm1)gjD4h|^l*28_#ZHE+L2ncE@#2bT z*IW{xI#1i^g&B!M#}9sD6g5-tNa;8@f89&(~|%Jnpxz4x7td zciKwiMkZHQXJgk8R!~RVJ%iDOd{P+__E61WZoX7G$J?0%_TIAndvtxxNvN)}fy!zzu$+i#Y*hP#iDB8KRBl{}YG9|3k z_&IL2ow^PuCSPN@X0k|v=+|Y}#?A~Kfv8N}o&@A~(OCEdJcur|jk*#x=^8l!|62zc z8kn{e9|Bv_bFMVvH`(cENl01NT0dlBOS}-3c?mv4W7Ac{HGOvNFAiFX?*+oX?F>Gf zqZ+j4>XF{<;18l+yovLQT<7ss`yD+nRxkYgcUKkCT0H}%ptU4!Q5t@5^*>0!`n|Vo XA5?#($n+<8vXo}VRz@!j@x=cFT=;`6 literal 0 HcmV?d00001 diff --git a/solutions/trustclaw/public/images/icons/slack.svg b/solutions/trustclaw/public/images/icons/slack.svg new file mode 100644 index 0000000000..7dc4a3366f --- /dev/null +++ b/solutions/trustclaw/public/images/icons/slack.svg @@ -0,0 +1 @@ +Slack diff --git a/solutions/trustclaw/public/images/logo/ComposioTransparent.png b/solutions/trustclaw/public/images/logo/ComposioTransparent.png new file mode 100644 index 0000000000000000000000000000000000000000..efac28a70e977ef3d48eafdce770165581e3b411 GIT binary patch literal 6913 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 + + + + + + + diff --git a/solutions/trustclaw/public/images/logo/supermemory_icon.svg b/solutions/trustclaw/public/images/logo/supermemory_icon.svg new file mode 100644 index 0000000000..4b63ae4f5c --- /dev/null +++ b/solutions/trustclaw/public/images/logo/supermemory_icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/solutions/trustclaw/public/images/logos/airtable.svg b/solutions/trustclaw/public/images/logos/airtable.svg new file mode 100644 index 0000000000..0efc6882bc --- /dev/null +++ b/solutions/trustclaw/public/images/logos/airtable.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/asana.svg b/solutions/trustclaw/public/images/logos/asana.svg new file mode 100644 index 0000000000..53e7d08c51 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/asana.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/discord.svg b/solutions/trustclaw/public/images/logos/discord.svg new file mode 100644 index 0000000000..56026a9425 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/discord.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/dropbox.svg b/solutions/trustclaw/public/images/logos/dropbox.svg new file mode 100644 index 0000000000..eef778a8ed --- /dev/null +++ b/solutions/trustclaw/public/images/logos/dropbox.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/figma.svg b/solutions/trustclaw/public/images/logos/figma.svg new file mode 100644 index 0000000000..f9248566c9 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/figma.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/github.svg b/solutions/trustclaw/public/images/logos/github.svg new file mode 100644 index 0000000000..13604591a0 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/github.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/gmail.svg b/solutions/trustclaw/public/images/logos/gmail.svg new file mode 100644 index 0000000000..59c919bc64 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/gmail.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/googlecalendar.svg b/solutions/trustclaw/public/images/logos/googlecalendar.svg new file mode 100644 index 0000000000..ece2e581d0 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/googlecalendar.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/googledocs.svg b/solutions/trustclaw/public/images/logos/googledocs.svg new file mode 100644 index 0000000000..6dcac8cae8 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/googledocs.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/googledrive.svg b/solutions/trustclaw/public/images/logos/googledrive.svg new file mode 100644 index 0000000000..699126a2c3 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/googledrive.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/googlesheets.svg b/solutions/trustclaw/public/images/logos/googlesheets.svg new file mode 100644 index 0000000000..fbee41426b --- /dev/null +++ b/solutions/trustclaw/public/images/logos/googlesheets.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/hubspot.svg b/solutions/trustclaw/public/images/logos/hubspot.svg new file mode 100644 index 0000000000..d94e6f33ad --- /dev/null +++ b/solutions/trustclaw/public/images/logos/hubspot.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/jira.svg b/solutions/trustclaw/public/images/logos/jira.svg new file mode 100644 index 0000000000..3d7402c1f2 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/jira.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/linear.svg b/solutions/trustclaw/public/images/logos/linear.svg new file mode 100644 index 0000000000..ed2fcb9667 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/linear.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/notion.svg b/solutions/trustclaw/public/images/logos/notion.svg new file mode 100644 index 0000000000..24687f822a --- /dev/null +++ b/solutions/trustclaw/public/images/logos/notion.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/reddit.svg b/solutions/trustclaw/public/images/logos/reddit.svg new file mode 100644 index 0000000000..3d14f042b7 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/reddit.svg @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/slack.svg b/solutions/trustclaw/public/images/logos/slack.svg new file mode 100644 index 0000000000..dd72b92723 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/slack.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/stripe.svg b/solutions/trustclaw/public/images/logos/stripe.svg new file mode 100644 index 0000000000..9bb6f65a51 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/stripe.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/supabase.svg b/solutions/trustclaw/public/images/logos/supabase.svg new file mode 100644 index 0000000000..741a1213bc --- /dev/null +++ b/solutions/trustclaw/public/images/logos/supabase.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/telegram.svg b/solutions/trustclaw/public/images/logos/telegram.svg new file mode 100644 index 0000000000..14c4c9289b --- /dev/null +++ b/solutions/trustclaw/public/images/logos/telegram.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/logos/todoist.svg b/solutions/trustclaw/public/images/logos/todoist.svg new file mode 100644 index 0000000000..c3fbf1b9d7 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/todoist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/logos/trello.svg b/solutions/trustclaw/public/images/logos/trello.svg new file mode 100644 index 0000000000..d29eea0796 --- /dev/null +++ b/solutions/trustclaw/public/images/logos/trello.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/solutions/trustclaw/public/images/logos/whatsapp.svg b/solutions/trustclaw/public/images/logos/whatsapp.svg new file mode 100644 index 0000000000..9f911458ef --- /dev/null +++ b/solutions/trustclaw/public/images/logos/whatsapp.svg @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/trustclaw/public/images/platform/customer.png b/solutions/trustclaw/public/images/platform/customer.png new file mode 100644 index 0000000000000000000000000000000000000000..5af921d0c418fa25a1d73bee7dcc9158fc468359 GIT binary patch literal 143863 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 v(5XXG9(! literal 0 HcmV?d00001 diff --git a/solutions/trustclaw/public/images/testimonials/karan.jpg b/solutions/trustclaw/public/images/testimonials/karan.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d09fb3a20777e06979256bdc360bf18bf390e98d GIT binary patch literal 26640 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

>jcI(*0D84HQ7fJh<}1xRaSp8(`h} zIkx{}l)f)T2o_{!#DC4~pLqJe5%s^Pg+OM;N+Qal>iq8!p}z+_P)cb1jj=I6fu6&Z zl0i_^Xb%+h`C9@l{)Ui>B)Fo@Hw$ZXEGhoEFJbyiEg2HFLpQc;`6FijGyJ`HEhdQgSV4Y(F5uC>R$gZ68@|8M6>u#bEtc0CtpGZ2fm4q?Q4d zY|}*^PUhafRFI&(6w{MZhwAycH&%Z*nb=7*J9uM`?zq8_+CDwR<4U+fpepGG`Ddn< z6*oW@ieVr9D1UO2mf3`nkdE z!CBfz3X<|~rLbmJN@r!Fa$Q;64Sr(APzv%QaSQ{vrf?|cXykZaKvpV_tLZ=JIYPk( z3C=o|La=tWriHGeu;%f_D58*uS$G4S@j!-$2%=l8W7Dv2=klWv9^tt}Wah$9<@Q<} z?N=%TrNO9{WZ!{>wieQ+=G^!(gq@_1kFYzokED9IWkCuw^F$paA$_uVNPcg>-c6s7 z@)c(mi6JZ5wPtooLqMm*BgFM)@`N!1i+}=#olb%R9K0;CT!FM=Du$pi7u3L;G}M#l z9nx|)thzqFBAnBp2FCPbNTCoM*A2?|Y<+1M-3`R`cCUCu6OL3QB&_b;MzcbZ`-yGc zTZAh!wavm5I?|>xaQv9X8Qzb*gqnb9;c3jAK1tUj z$Jpt?Su!dI~iok1Skf~9lfIa{LPWu4@0RXkdW<%HM#_ zl3byH(l@);B>$bfK`E#&ze{YWxImw!JB-jRk&cj9N)SXjM7u=cE9q$yEVJg9%MJ1m zxu7epoEM=s&Mh+5$tbQB8O1$8Qtm-2qN1sVO zR!Z;{x%135p>caiHHg%!^c8XQmCFVSayRjRCh56&lv1a!qSMwPkZbLJ|1?}&Hz=1g zc0u!y8kH(&du`Z_NGX>i_o_-?4S|+xVX09|W=SNBNq;@n2yG{{j4B`;6}N{MIlYrh z$)!NaR${6t*KP=ud!484p0q5vek@gEtEbZaM!DJCO<4Uvoe05nV`gYUH>cVp_u)r1+0eMylm zCAS%hX}EOISl=TsnhPVZrIffpNga?ipeUAAp~TA_m8i(9 zCHod(S=4+9zkUL+LqZ6cJt#P!Ga<(miIMp6`8YJCnb+MFQ8y!8`;iQle{7))+K+|mu?yabb!?9j5I$D*xcu;Czq_NH;HDIU`>%la>Y_lkm0cWCl z7q7Qv2C|lg2=W3fdC5)Ou#wr-MhF>Z{r$bu02>Z@BWg_9(;K~5+*>~HULfnor{bz!Z6NLO&P zcvL5&AojZRd5eD2w~aau-A5=sGKB?~%g8VFnnj16nz5_!wQo-ebML8(H$q8IODOL1 zMwFiG_MQRKZi;wuEjP`k+zCCq1Et&<-GP}}1e8e51Qltr3Q-8}ZG_V`8V^Gs)h)+D z^(jSdeP4-pD$NNxPauLuK`pFv8&bPMU5Sok7)M0sE`FK3RUJb0z$B)KO^vumusojt z+iR4HDn8Sye9a~d7z@Q|(?ylPUettz4NHBgmV&myPU^Q4y=qKP?^WPwdD@srv&hiR zZ@m*jds!47yX7Fwps}lP14`%G>%tNOl82vWf1p#9(1(7)r54iaHh<}^Mk94%>H9SS z9@HnmUCId=*37#&_AK{`Q+gnm+O9JTajp65TKP3BKSJah%$ZVRVvRZ?-JR}0?t-5> zL?#)WlpL&MasoK&WOUT36IBa=Ze>|TKkC&eohIN4NmDQN`%e(Y2`>{e(!mxuEJKbW z+r#6YHqFe2faM~4=)*?9X~CSsc|DKgYA|vXMWcqrCVkcvQ&}KfYP~5lcvwRt7Ou4C zXPQO_gxMnAxMG3XA|Coc8ytEAhWTZZ{tgi+&A4qA0n#0U2M2OoqloSm3EgpVh%C}J zg0V9?jS97z6pgAq4d6YJNE>cG9-^Pb{|eG1E!)p{jI7F)DhBNJnp!XtmAp%JmX_#2 zX5*tnYZJo-@E0%N^`yoRfG}ZkcI`#oGL>q?3)0e;&6?scq^E7(KUa9Eg`}vd?9WIh zW=7@<__3|p;#ksUgKwF1pj+v!=Cl1jnBbfz|IEt-}y^xjSY@=p~|!|Ng) zI@^mjaXQ<8Vbccx0C@CHAz7-RX2EiJ^PX5tq*yx{`2sGAaZmPVut!bNk+5E#mHg^4 zEX9m=5G|QU)hNWEhbAj=4kuUSinlN`s2;MpoBT`<5{{QEw4$PVN|aT~I!sFZmC{i# zM>e%y^)AU^Xtflq*45&-k}J*4ql(tGjypl#tDi9vG-8Jx51B|6b=%;U<6oCCv?4k2 zToL4eMZQJ(#1dDh1vlByKS;Do5*#k@g}d#VN|&a1^t?W-AwVdaH;7V2yKc(p{oEBD zjm>s%o7Q=cH4?SxRX5(vS4fd;rZjl?&wkY%5)&mLE6(4DV{n8O4#`kFN@khNt}qh1 zN+m1OQCY;T;sr{8k*(qfF<6KZIMhsci4m z)2`Pmh@#Tm-Frq2Z<`=K{KA^sAkX(Gr)J~N^AUKWQ*xdalxeX&KTz2PO6+uFIKA;< z9|ko`EFpJ!BY_A(imAqDtijAnHx0_i;-=tJ9DX+|Fy-P@d`jY?b&R4=j6=jpU1PbI zb8{0-LP<--btA*Ygcz%udrXnMwKI;$S>Pj#&OG zBi=Fd0a=tr0CkiE9?^iM!aR{7$1D1Qixp{q5LPORD~X9)^1=lyXroZoSD9b}z0*WE zTaUa!N|YaYcp}ig@b5*gUswr#(()Aagbmwddte2v8k7K+AT7(y@aLn}U~I-VD`eka zSi69N-qRYD5Fk}bo?_#9{9b2R^^6@;wT*+M9>nZU5wHDMK&n} zL{5aF0TJS3q(@E1bx908s~v9OS+cf&oFY(^vlhU}v?J zsc}fc>~AVB&Z4QMd$z5cz8=Opu$XSCxByDTtja6ALZ+sAPgFJd{lA0p%-hnS$HadO zzR)q4y}u5nHv^eim5fAz-U5?kOb92Hfr)Z+Ncj|qj?v2qI1W91``Mskq92IPB`B?3 zWjxe7LTTBTNI_jHZ0$CC2sVZP0FaIfRnyG=C9&3PITWDA0X<<1xL<~|;Ql40DuIh! z7ku`|vlgw|SERkl2JCwX~~GtypTwqgk`4$7Apzk{x#bO@~}Px2_p`TnIHulCpc$0`iZA{$O! ze(qC2k!;r@)=U`fE36`^*>+eRuD$`{aoL~+3ubO2RA4n^IXTp8h#{HDr?dMyMfVCu z9NlunO?GIUr0S=_Ji75Y@SJoQ4ceGMx}I{;v@-Cc#jyTq^DoO zh2~#*WlL&bEV+36UMGmgSx2=m;$=~iy`wyVK<*FX2!JC_U-=12dP-{P4`2(F?B<#+ zKaIh?Fr&iLErCYZ?3V!Bd6m$yD%U4d#0WMvt`$;&QuAjgqy;PO%(jXMmx{dnMS6*h z%vUT&Boj2*xJrez9@D;M!q~Wi&uDa)T*u70eScqzi#K?fy(&B-4YBx{{xpR5z{>TM zx#b6#W7(HvhB6HC(--RqB`?2uOc}=cfx38t^?jZN2&CGg@h=vro$bg5b< zx52+i@L!pIqle*g`b*>RxId^e_XmoXnRt%YIGFxF9-EtOmFp$J`|ekvNlaN$(LUwL2a{K5u;_td$S-B-#EWi?As-rxuXqUz2%>**4a;YFpzMMj!fg;6V_oAS~R5dbg)P~_sNW4P^+tU9p-(1j^$ zd|f~q*sZl*90Yz>``*g%7Y5|CP3ktMV>ESH&gf=Y;TQR;f%p;bq^D9d6 zvSpyeo;Zgq&DE;e>tqzs(dq9yzl+}z=pgGXXjJ17kV3v7OqVL=B+~`lQ<4s9cB%^4d`G;&VvRw@N@`l#d|XQq9#@;eD}i*^m_lkB zQRn)M{BR_{DYVrEg6QF7B^gVOg6_py%3SIoN2n*e>EQNa-BrTiP+3xm(jZz^F?Ffzn1#oz^ydKM`3)EP1I) zhTt8G)-X65UzuD~3M%W?T$JS=>0VPRC}M+o%7_J3)0)}ZUQ1e4R5Tw*!BYWlJi!R6 z16G-{My~<0XmVZlTyfS>6LXBMx?clR11zgf=bS~Y!J&LY$ZK1R;3#Ut!nuxc0d8k@&iuyohB}KiZkJtwH+tMHH#2#Gdm^t#G zTN=9bsfO0@*=s+)+$91M?1z*#^jtV5$vFFSwnHrKPY#Zg04X>*s~&pe=dLkhUT>Bf zY^YsOa<~J3FqRK^dw@`8eEh+WFw`S3D;Mn5ub(BSx1rMQ!l!BbErAtBzwUI~UHZX5u$u;8Xw126+PL-orM5eV7nqW&S4v`BPZG0jR4n2SJjSm&`~l3v zh{t3s$Sa7u9+95^0O=a#{97cIvB#$%9E|1y+{r_de3WNlRC4p9CtS zDEFLz2C%tbKQJ}{`q2O!%wzRe5#Wbhk59XWu+1(R0{VKz0O2kT!HpHxWW8CML%bq_ z`pZ>Y?*JdXVifm)+cIS*wqV?A&B{<4^Avw*p(Ru;8^H=X%&dIC%%{Ai;y&qB+ElBR zUL_lpQ&BY&h-A?9^QiZZ9b{RG?p&Jyx)0=m;fl;wcv@6UN+_6P2Rb`ZO0aU}RG?cbuBYoM83Q!sm z4J+OrlE5pBXey=skHWVcX8M;Gar{f3*m`ChOm7i?5x+T#1PAFqlhzHrx;{_j;w|$m z8eHdFDe*0=QiADU^Y9U&9iZ+<-ViV0%`%);vrit;v{>wN#WtuEJaZW+w^%i}W`JJ% z#lj`LbeTd8P8?i&ZW=)7%ebY$&8^7x*N7)fs~9896gCC0r2%?nG2Q{j6s|Xa%qGaS z=$pD@-nB8*7i3JeAHXZHW+qccq4towE&`7cw&QrhxRv(eRzRqWEh;B5C3cx=W*rU7 z0Hq;}D@=53_Lxy`Az!R~M3!)40*o*tS|Jodzo<%F;_!y8H!MQxyT;Yubbk@lE2C?e zj$s;L9Af2}2<5EzfDo~_k4R>4CFWwERv)L7Y)XKsNn)wVx?j=Un%1}adNEc2=qI`q^QvU!`mN7?3 zq|2YuCb1GZ?+|SRL0~&|@ro_2+j(==4HJ1zUDi&SCP9wDBUNs@zy&$RrIt(262~$n z*H8N@Pw@(%mvrge?G@@Rvkf(irnJ&VQ1|z4#R>o=!UeO-8nY~KwD#ghXS7?_Q*~DVR?zxZl zgQ5O0`?VJk(EisSxQ{l{sPJfpQM1j#=qYeYiWK8q!zGXkDd^{)Xn3)yZ7|<}Wp=hb zu$YLSSPHy`Zragau&OFe>2CdvcsClb+9>3|EP4yL*G4fKid;0xZ2IOgqhov!ZJH}? zF2He{Gq4x@cmj*YTizJz0x}`)tMtrgU`C1!-3kSD%?F82he0Z}H!7uel*&3p z#=isbZ;0E7EF0rB60d1Q%uLF>RJI~SsDVm0vhYd_@I8O*NDs&@_kXB2S2aiVFC%$2 zJtp%IS>3)#ewWr=<)%~JvZk)4K-tW-3)KGL3pZkyew@F2YEes@=McjdYilh}fI#CL zLue|zEpkqf&I+`6;=cGW>~k;)cONiRDn3sT%7%cdgQ+zwD_5^qjc(&VW0+<7SOnOF zS_%qvidO4aw@v$9%uw)Ti-BLc?*M`b@=UtIu^X0p!wp9pCDX*W{gr%0mxwNYCS+Kh zqp7&=S%~b#m0AgTMr%lWa{i&qXQ6O&sZg!pt$pSd4s(v4zj{8U8wrox4N}qGu2&f* z6pkH7yDImZ;^OJjD1UL>;Vvi+CE})RAw|L+-%Kk~)T&(HVuHDbIg&)J6#R#|2nLQy z&v+{hK%JTF~rCm)T~2YqSUPt z^f_G#fDrb__Z>{Wj8rx%g3WZS!wrjbcG2;79wohL;v)72Xt%UV0qSM*`_v6(REANT zc!NiN7!Bgm99AZGEoDK>?nAgQI(3!<$(Sagfa+)E0y^a)yT5_)2vm_2IP};3=^Bh) z8I0Im*ApHZu`aw>0r&SsK=QghxQjNHA}C%rL|+XFcu>EXPw{a~{f_@_Ce4Ua$IYSKxXwxr`lUc*IOx8N5M( z+Iq*B-v9w|Zm~I$P8Tm82j&=weBLT!z~Oi|+x|khyw}&mai~n}ihittzc)p~{r$#T zMP6>xysdfRxbDRTT>+KsO0YB%B+yx_d{%RF2vtB(8ZqKi zh;t3FKOt1=PuifMteh8h83C4xV|sv5lcTv}0uEgCC0MI4-`=whd*hjSD?R@J-&o!P zt2{Lnrq3Cco+jwo->fVWy!CjFr-(d7iz$JQC01gm1lOU~a@^{gFND?8jOVmg%3JY; z&-oN`7eT+j+z_y<1!gTKPD71BC0Jc{e8txkq1AQYq%^&1hrh(Y6`5yjQGrjE_<4rJ z)#1NsN>+rx&5vw+N79**1E``tV&3)c=h78=4#d_{;^j+i*`{QxQF7R2)9>>Ll$bXV zrhsPQ5%E7V_lF64C7N=*u}Nxx9GARO+fzM)iU+L~2nRG8HrMm`2tsE_K*EN+(QmY< zrRNBAmnzKQAJidU85@O_T$l-LnkyCK`kY}NEM>0QbX%V=P6R-9IsVy+O0zoO`5J?_ zj%CHb$mzZ_7*Js0hN|%wHFD((#L<}W&|16^Y}W$#YwvhV8`B`&Inwx{gR2*Yguab* zcN@}zE6D!<5gH~N^r!$t0{oonCD~C$+bW&4UF?&_F$_Sid}b<{%W?HK=#M%5VoKQHHj?q(Q5p&`jmzglwf*PRdmkc@C#(jZw*6 zar%W(bSSv!eD#$3Ce~Mg<);d z#dtf1>HCR7lHWd`IE5%HjPK{WGHA3~N4JRWymQdr-^1zBGl@_vT(=}GB4VLX?QED@ z)KnVD*NcNxvHh&2*1e0A-#CNY`Fln4axI#L=ngownF^2_UGDTYTvRb$5oNS%`eDzyrSz!4m1rf# zmmY||l5!n6a{O60 zxeIK?)GZ43aS%$?5OJ2!@FOjv$|>pB<|YswH7w|ku!aRX*oT5#)FPl75&Qik+t(P| zm;;}V(NyIl4c4n+^tp|LY62dt2>UnICU&(dv$eWv`P5ey@_w@v1sXVbZ`yNJHJ{(! zV0XY3L7)3BH3v+C)*BZE7kA&ch|)meypoqQ4jp6fye@*9r@uRjt!xda@b&ACkU*;r z=r-@&G^>F#4%tBL=rWz|0GYtkhBcy+@$H2IXfXe$A$S#H4m+GKDA*ca9UslsM@GneNa zmyBvO0BG&HeSJ@Jv^a{VPrk7ZAy=H@I4h4{drQ+{GEw%UfM(hT5z=kJt+?;{Vu4|| zvj#_Lnd{jrKOeY^)Weeh0GVb2rMA_s;2p_DG+ry0wxlU+4z9L^7Rtn-MFn?@wd`Xv zC?GjQv6?#_Icz@}XEx6+qbYA<*T`V0dGPeXc z?A6r5)_6hO$l(hMs_pl;n1Hw%I{vdPTXVqRU?3QmX-3ZEt{^n<^PHEe0#uE5-++y^c8@#!iKTvWA%7<0(?ft&NjA!oPT%oHvU7PJKMb{)R?LZ0?Gvl;YAahA>>zQ#a3&`oxVGEGG z9NQ0}h9wQeM*&{qvx^FxDd-b#0Tzx;vIe$3umspc2yr-1M>>V^3fph5PR`-57J3_w zSpjxAl|Pv&GCV7+$q?HgnjoF;mDKy0qtTwgBW6l;R%PwqCT z9mwln5FP~ucYgWiTax1`!Pg&gEF+_NIrV`pz-w9iaSn*p4f=cY2d!90JMr%qYqt#C zh2-~~<)G=q=T!(G5Cf|8zK_g(-Po*NtmMy|{Tq`Mrz&Yvs zK-t1$B=-1-uopE}`^;|I8&z3;n6HTKZXYoH%wY9P`^XG zx&=6BCf3fHlZRUe)-HT@%6ITqifl*G^$Ys3d z5(x~oRVaP&8kEI0rfbY&GoQ%r8fWhlybFNDqD$biF*om`#8*axJ8_%hHpyC^$ktYMgvfmSX&e@Ij!lx zcvM`i-d+CyiQkM3l}|?y*`sN8y6?CJ*7MiR%BXY3jQwUqhXv}tpC1yvlQ(yZs0%18 z*;IeAP1w5icDeb87o~E>+(zK4%S?>Q=*Dw@&k(XWV8#bH?TLEOAYQkK5SdjB;`5Eo zOlp){@e6AfYR|kdC9=1svoom`snPz&DLsZ*06LCc2NBh#Pz5EX)6Yz?tU|@4MHIt9 z?6Y+p6cAFh4w7p$i9?KuZtvoI` z#1PP)IInM6O_3_f*AZD_Raake{>C#6EXj#iXcqH+K5zJ!EiIg`Vje&#Lr+F)NJ_j{ z-eXi#K&hKP;t&8cRP6e}qCRM$$53xezAiOkx}_}*o~at>u5~eJZ~KgxsuAq}022kl zLDsv?@`ciu1%^CC6;(exLohjybp9cNrFkE@ny8|VX0DVTiiu@!GzX7})spFog1cSR zV1&@F^;g4ZT{n$KXrEP>l|?&V6EM!ALqv$m4PxQoF3o9lQA)7DOo*82fQhUkCz)Qw z_kOVjE;??C&&07TQLk-kC}6F2YgxSeMxtB_lq}WocgK1MUQle?i`Oy5k+lQd99Bf{ z04q0}GlMwkDouK)4!_T|G_!gfed`#ZMd5}p-ksrXlxroAKk{a?fUXu}e$xeLGPM9L z&I2wcJI$0lsjV)0M9rkmdiJ=AR}O36KN6Dyi^+9RtT$OM@BYDY=cPBy7tP|ED!$YQ zS+8u~KJhHfrj^90s|6+(ezo!Ha+IYY30hs$M-Iv&FFqAAR7l>$m6DttEQ&_7nYS1Ym}p&j8hn^ z-C=di#WO4pew=Gv;&1_`ReetWN;UrUDgc0i!_Ie^VF3kZc6MHs z4S?$L;my-4{{UiZLwf)LBaBuvuP|Y=^II(tSBfDVuT!dWBY8G5?Ko)A00H3T(=voX z!H{CtfZ(H2vfP8CTHMph;%gc^LCOK6Rc;u=SI)S^QisD-7Fo%OL>?5XY1v0E{6JGq zD$@Jx-x1Ljv~T{vyr&Fbq;A&Ho>HSygzzmcTzCHEtqpT^eL4I5M{E>Ek?#qWENC&r zsm0ZttgclkX3P^XRLclx-Pv0atBcr30AXoEgM+-yi<&}=HRW46@anJ&U_({*O(z}^ zl@xRq=a^0u^SocyT%?YMJ6FuPY`|Sv7@2Eyb(~BzQNtO<*TDp#Zpp>nCi_${w&<;K ze=`MLc06JY?jVTWqj0MSAzN^M&v+K>D%P~<=IpWJWFp)oEA)b zMRak{;g@3IFulXJ_Y5x%jr*z0SShrl5m3g;gN*+G5M~RwRCuyvdd5)>t4}Z6j1D2K zi!Psi^?=~3F{7@f&{e!Y&ZXc69D|I1l9JqAn77IIv?b(L_3!u67G3D$UYYL_iV2W7 z_x(gYtg_v9h(fC++G`kkRIrWv*lS&Gp%N0U(Piv1)`5Y&5weWu%X+5yl%cYlH(zlu zik)vA`N6$$Eh+(Ijb?y9$jSz53F__vzj$flvxw9RC23xQ;D1RO=sg zQ89|fs_n5zm-1ZPQxOQPRjE?Ww}F9G8f+G5qA9SKGI9h!(kEdjDA9KSV2yRC7;D^& zL$)f;JN@Ad4s_?)05IQlT9Nig=GCaMYRqisq~bmtCZsK zd`Cngql&M%jJqQnzvzY8R_Wo*PV2T$k6rWq#-iqv8r!e^gHdqmI;s3l5QQM|=38uN z&OmX;+{TA9lb>&oGScYlnGL|4l)22XIC`18`0p%Lo$ey?JUAg#2cfU~0O;+;kLz%7 zjw7+{){lsTVGfHJ*Ty1TW9UHHZLd1(k>VCC_`n9wCq@>{Op~>RB`KYbvrrb3C4Ra= zd7Oz0&yPIA2s2rxs_Op$$P$)Jqq|?mqEJ?q(-nwhxN5tlx1O@tP3pj^>G3N@4j!L< zVj6)_D=8CCNZ|9cWmj^L)~>gSO}m4J5DzL~zb-I=3Mp2Oz!r9cmx!TC%Qk5%GS#-4 zzHSDT!)xiU?{N`t2pR1J8v&$S_xCYC33y*0>{S3!MwaOtcvwx8mW}tQR3OiMc)4?L z!TYah-y?%d1<1f9u&-fLQELRi2vF08y*m)}fUxiWq5Y7kHr63KTW$gsELJb069$JF zPwE{8fpT5TqQy6K_QV!ocdNKJffk%y*ZksMo0Pi!L8^LKGg$e9VIgB!<|PZPWZfQ~ zu%NUZWZnM&RVs;1@Nt~)?%-~cjfZ9~66UZzkvA$<+}}=-TZ35VG+*A+18S_bUw?@0 zAgN7W-S++?EU*ff9FWd5uzyx}_dsE7+hD81-6~kh0mv%n7|mZEc$Gn-^}s3w%{4L@ zQp^xMa04=dm@|)7xQH^!1-)*w+GL{JcbD#FVJdCac|9VPmUC_ulio55xm3TOHSZ8! z!E0P&Sg3+*SVKGS8rV9RI=b-yv4Hbe-&&W|lQx^}h+ zX7;X-EC7JLgPV)0v>1uDjxGt{e-aZjS0_W9=zoI`U;mB{0IV?n9qWIq{J;H0 zFt>0u16?32s3DJ;lZzV&i-54Ar<>DXoCv}gW}i*WLAVrz8C*aY2*Qhh%T52qM}M)^ zzxe4dc2QRq2LQkkL72qqU(E0qoBoUc-V2G@XBT@=8#@rDu(xvuUBf@}_f8Nk95mEG zIl(_aSAZ%&8XyKB0hj{Z0oDLJfE$1jlskZQ_J8ij_D?@WfFr1n87OrEcmrHOJ*)tq zL46rOrS1S%fCVVG1eIHW4m(f_ko-sY|Iw+dCHvp;K(~x23jjbJetg`~0RS*L0Kj|1 z$H!~&$H#jK006N801T%7r@vz=NS#-p^2Gm?QRD#tC?Nnqd;fpROv?a(4v>yKion-|+z@>i~edF90Av2LNPc0{~Q@ z^P%W}YyrdpP!N!ikPuLy1PTfY8U_&-1|%p52ylo%6f`s-3J{2nMSzWtfrkkM;*jFt z5fTy;6Qg63QIHW)5D*a){T&1h)D;FA1{oF>nFs@jLG=GDAHx73ELb8~A_N#202~Mg z0R;OP{c8|lP+)&2)PEOn02l-$=qh1BwYXpai2tP$)EXRA`|%Bc2muBFM}lL1!@Pj<3WgyTc=@IbRl&&x&U1Ctq4YeAEVqJX1-+gv-qL69gGvhB*nTQv}xwXh+l98(R z7wEM-9v^m-qc(w^B%xhoqd?4qpf)!DVV4K4_ygNh5j=IJ_Ui^sU$IS%A)sKgEdjpAk7L3f_XEkzHZ?~^8m4p}lcncJm2&(zn(0^ztROTniSWr}Fh1j! zX7plcMVXeK8TQ!nTqH;r)?i#!+OWxbTh5>|xKAbqb%Wry(*&p4K3bV>V?F!JW=km^ zbMX#|-PBC06I`~$)K!B&PJd>8YsT`hPAQZ>V^!smU`HTTMUa<2D^?6WTUu~4R69%K zCTw(F@#{j)OV`bzcHz5POO^=Yl4(_qqfX1?BVxY_kX*`g+iRqbv{hQz(W~pEA$aXTyo^hiC6V8`4?|;@5*<=M;WwnA`_LpBJvXj#6oicP?#}3uhk@Ay?)#et+waVm<43lAMM0A>tahdB zs0Mbg3%9$N7CG{GQ38s&iO+#d8{vNEG#BHG^746k3@#ZzG`$#~mLqs~y-k1AVfv;% zJao~roL%s~W?u2RPu=q#FRJ7xCCDX7rSRuQ^3I`h@~c~}HOW*uo+Rhl3sB418fC98 zyO%`rH7A;xxS~`fr6)%R6Px9o~mPWsG-Pjytz)DE_hpRc+i62I$;0{RiFkR zJHOYgn-Y_n`-vR)Pz_yPEb=I|^N5AR*UgG)l#W`{d|uK0*PRyT3r4S_Ne0Q3=IYH4 z-MQ9OR2gh5_MkR-dlJ=HN)y-nZ^*XEvX*O`XS2xnvoPsjhXg-OqmyXE=Fq@yM8dWn zOl^f-2wLaB&+Cw}%aBpwqN2)SxOTuMWqs`_u!|AY!tUU6P|)qZZKoci#iw zRS5Y;x@gPFIX1p*D#;=buT3GEr0%|;%Cn#d0mFhz#!>!B;fSZyLzJZ2x+u~0YZ@Lx z3+$>3MB*nk2}_#zrmPVLhU+eeB&PUNp&i;g!hO%w2K{qS&nE8a7Tv?@QZ2B2H37C- zjfphAbjmPVmmVgt`~5f)t7~Dygt`@(?UyG769(-o=u=L8t^S zqgLucLULl6Ta7juE+^G_@m76W3fXy5hD$|~<~pd8VaJ|KKXJ9}O>$1`&lG9=ayA4M zU$Vx|0uz&SRjFj~l7jdf;TWU%F`Q*d0AiNMxS*lAxnztHzX= zQH+O+NM^BSkH<=YF_=RJny26~Zc}NgDH3)}j4L6A+xR@>r+DaVX(8UDD?z>Y=6PJD zs`7JCgy(Z3PVMK--9&qLM&9ZisFxCYLW-4&Eb;01N033L)LEFKtBYMUUXuNY+71V9 z#Act2TPlVwR@fZ7y+bqCHwd3tb;y>>t=0b|et{l6yP6XtWuAm?f2$eddU( zCj2&*CCaPee>g1oO6NpOhAf;GfSwjc&JBZ}SP-Tx!=WTYql+nP}P^!-v(nr#A4pH?5nS7&*{5s~EN#6Z{ zEv@mxkoc^EX?e)0?$(G&VW+uz(~)Qxb~>1@$*LAZ=UM=LVd_B4Zw zCC}dOn%|Wz1;WN1x`6xh&)Ti7&`v|llpQpRm#^b0h&7U+4-Yw4lgmsu!T%J4?$GT^ zzLJyuRHt+ z!5|d;PUIh_brZx{`TGAoRc%ul}to?K~V;L|HxZT0HE2A044(s*+fJb<;R$FylO@IO$N z)rm6pX{T15+RGFa7t2W>a_=?O>6+Jk724mJZ!oIJ3!62oF|cr0tK|a!bbGH|l0!S* zcM#p&T~jFYX06CFR!7c=g^z=P3I2VX163wJrXqg#rVw%E9piYj!lmt&9Z-F% z?;|ZLC$o0(OmUOGa_55i+*{6uE;sXxDOs0N;;VM8`g9Hqj+U7^TT#X)j4BqMv{J)g z&J3K%e!3wQ`(Fme7phZPyS2{=A?5z;y^8g)b52NZ_tn3_%_3Ff=bPEv*4U=gG@;jF z(Wh*)P4J(aH-wAf#qA{BbrWn8{``fCjP`EDF(~MA?d;HM2C9SZKm2w+}_(P>>$Qz2IkNAac6G57SonI0QG`2Tmo_Pk!0iPRl5>o zy~j^C62x4%{nPH~vk)d3&0{RA=qQXeHjZ)-#oB#lgsgD|yk>X01!>e&l<9Xpz+W|d zq0*{Vl2|?oqQ`92hZY{rRV@Rx$SbTr;m$8N{T%I`$rvLt1jktPz0^|1Y9>#4hZnOt z`+Zq+f(lJ=9O%$=Gpo0ZP=(DZ3zZ_NPB?3mYd0MUwxzmixVNTmet{Dd!rvpw+r7um zCaA78ZJPyFV#_j;&Bo-7)2wW!_qq^fh6*&>fgz{qbih9&m7hW-H#X21QU{C`g_3bp zd1DmfTF@0iB2>mE|D@lmgK=QN!N8H~Aq|-wZC&R(7G4jW7bq?cwj=PCr$Z9)O0dp7 zHlI+Q6hK@00F34<*vsowX%yzo!z2mu;!4K#+Fv}fy&md7z^Nc$ZCrLeU4FxTLG^QV zA{ui^I&Cw%8b}7xeL3w zyp!$%_^8EETMQDyD6=b~ixtmY*NNsh%9Mj}B6UJ$xaO8H)J3h-H0v$Fh;#Vdyh>zd zY@4|k=Mjf%|6~h>?6GUj5du5dTUzRjRKIuiF$0>xud`ZA&&IGeS`N^we)1^kc>YBUls9{yS?5QcPmda?Y z#r;r;?Z#WLvRnNh53*LhPqc0m`$?D_U6=^y_~lOR+vZKQXKTevv2F69e<~mZ$pzU+ z#Rb^~d2HEzz$$pBA&wN4IgZ&JfB$SNfAb)W__Dfsw`B@WwU-lV#+|$0NrVjv)TD zT==zfi=!|E{hCR2FmlKFt$~$Toanoos^6A*@xpkHK+CgM;KS;w5NSBkFavdCR>E`S z;)79v3s)3=+=g#&6-=rS%KI0u55O@CLz>(|cFs-NTSnw<3#x-tsEzOf;jnMzH9xE$ zV#M}4(J;!MCK(~i1M>KnL?LP>we%Rjsn5@Cc>@{ej$51D4Dw_%jrvnS2=%F;X1?3h%q4Q#7MG( z9gXco6auTXd)-nhTUp+4UqVhhAK+fE_;Ff%=(f^pJKmdazid0+pu-Jx^emWsOUtY} zNjfyR2Sg)(D~6IQv2jUV@8F=WSj%~h3_x)QsqSzisjsB@DGpI{qvgFd=4fE{tnQtg zFXtjTmEusnSgVk9broElS13(~u5MMcr@MyUPCvl8ijJK)Z{@dd!-De#G4+$M6ftmN z{{x_V_$4uq1C-xK84elXsi_e_&?|^u_hg47&75PlVXhcstTEJn7G^`T=F9tOBu{PC zbS0$J=nKj6NZ0{0BK71LLiZf3yv^u(n4ezsoKIy6frVlWOuI5H5EVUpZjUQ-@3T)( zZF(6VGNg9hhV?}r#vvuz-xz&j&33o5aZaWl)p>1DlKFn)CP@mR2|Xa*k#%b7!^%|( zZlW1xL0ffizx`6+y6ySyf$FPd5sD+aCVkgvV{*`LY4sH%L9^gKO4wicc3dO|1#MLw zU=((R@F~eZV=Z!Im011IFZL+gE8;`-Z#W`A|!_uEJ3p*r2MiWcW=_kM?zu#FQoRN~ny+;3)A z{Kx&es=Y1O^yN%2RCKUgVpXQ;g(%GE_O7un^LXqgdafnwh@G4T zMp3(6+UtNy`+J!NtED!!eSgb=?Lm@N#{^RWldco3XK7XBSv6jTE5cTlQInmAcjH^r$z7yL{D#2{l|M9gG(InbcPq@10 z{N4(=_cZj9)#YwoRfOE**j`@V^Bgm+W+rW(yMK*69QO8e&$g*^-I>`c>S=5#^(iwT z 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 BR&D?Q literal 0 HcmV?d00001 diff --git a/solutions/trustclaw/public/images/testimonials/sarah.jpg b/solutions/trustclaw/public/images/testimonials/sarah.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8fc76100a741385cc2f288dce69eca269fd2ab1d GIT binary patch literal 26013 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 NXr#?H{{Xq4|Jf}-P7MG6 literal 0 HcmV?d00001 diff --git a/solutions/trustclaw/public/images/testimonials/soham.jpg b/solutions/trustclaw/public/images/testimonials/soham.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c0961ff4b252591f83575009d5729044c0277224 GIT binary patch literal 31094 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 Ncw|o6mB)YU{}+eX9IOBU literal 0 HcmV?d00001 diff --git a/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/assistant-message.tsx b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/assistant-message.tsx new file mode 100644 index 0000000000..35daec1e2d --- /dev/null +++ b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/assistant-message.tsx @@ -0,0 +1,139 @@ +'use client' + +import { useState, useRef, useEffect } from 'react' +import Markdown from 'react-markdown' +import remarkGfm from 'remark-gfm' +import { Copy, Check } from 'lucide-react' +import type { UIMessage } from '@ai-sdk/react' +import type { ChatStatus, DynamicToolUIPart, ToolUIPart } from 'ai' +import { isToolUIPart } from 'ai' +import { ThinkingIndicator } from './thinking-indicator' +import { ToolCallSegment } from './tool-call-segment' +import { stripToolResultEchoes } from '~/server/api/routers/trustclaw/agent/strip-tool-echoes' +import { PROSE_CLASSES } from './prose-classes' + +type TextUIPart = { type: 'text'; text: string } + +type MessageSegment = + | { kind: 'text'; parts: TextUIPart[] } + | { kind: 'tool-call'; part: DynamicToolUIPart | ToolUIPart } + +function segmentParts(parts: UIMessage['parts']): MessageSegment[] { + const segments: MessageSegment[] = [] + let textAccum: TextUIPart[] = [] + + for (const part of parts) { + if (part.type === 'text') { + textAccum.push(part) + } else if (isToolUIPart(part)) { + if (textAccum.length > 0) { + segments.push({ kind: 'text', parts: textAccum }) + textAccum = [] + } + segments.push({ kind: 'tool-call', part }) + } + } + if (textAccum.length > 0) { + segments.push({ kind: 'text', parts: textAccum }) + } + return segments +} + +interface AssistantMessageProps { + message: UIMessage + status: ChatStatus + onOpenTerminal: () => void +} + +export function AssistantMessage({ + message, + status, + onOpenTerminal, +}: AssistantMessageProps) { + const [copied, setCopied] = useState(false) + const copyTimeoutRef = useRef>(null) + + useEffect(() => { + return () => { + if (copyTimeoutRef.current) clearTimeout(copyTimeoutRef.current) + } + }, []) + + const segments = segmentParts(message.parts) + + const getFullTextContent = () => + segments + .filter( + (s): s is Extract => s.kind === 'text' + ) + .map((s) => stripToolResultEchoes(s.parts.map((p) => p.text).join(''))) + .filter(Boolean) + .join('\n') + + const hasTextContent = segments.some((s) => s.kind === 'text') + + const handleCopy = () => { + void navigator.clipboard.writeText(getFullTextContent()) + setCopied(true) + if (copyTimeoutRef.current) clearTimeout(copyTimeoutRef.current) + copyTimeoutRef.current = setTimeout(() => setCopied(false), 2000) + } + + if (segments.length === 0) { + if (status === 'error') { + return ( +

+ Something went wrong +
+ ) + } + + if (status === 'streaming' || status === 'submitted') { + return + } + + return null + } + + return ( +
+ {segments.map((segment, idx) => { + if (segment.kind === 'text') { + const textContent = stripToolResultEchoes( + segment.parts.map((p) => p.text).join('') + ) + if (!textContent) return null + + return ( +
+
+ {textContent} +
+
+ ) + } + + return ( + + ) + })} + + {hasTextContent && ( + + )} +
+ ) +} diff --git a/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/prose-classes.ts b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/prose-classes.ts new file mode 100644 index 0000000000..cafba515b0 --- /dev/null +++ b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/prose-classes.ts @@ -0,0 +1,2 @@ +export const PROSE_CLASSES = + 'prose prose-sm prose-invert max-w-none break-words text-foreground prose-headings:text-foreground prose-headings:font-medium prose-strong:font-medium prose-p:my-2 prose-headings:my-3 prose-ul:my-1 prose-ol:my-1 prose-li:my-0 prose-pre:my-2 prose-pre:bg-muted prose-pre:border prose-pre:border-border prose-pre:whitespace-pre-wrap prose-pre:break-words prose-code:text-foreground/80 prose-a:text-primary' diff --git a/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-indicator.tsx b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-indicator.tsx new file mode 100644 index 0000000000..f83f9a9f62 --- /dev/null +++ b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-indicator.tsx @@ -0,0 +1,23 @@ +'use client' + +import { useState, useEffect } from 'react' +import { THINKING_WORDS } from './thinking-words' + +export function ThinkingIndicator() { + const [index, setIndex] = useState(0) + + useEffect(() => { + const interval = setInterval(() => { + setIndex((i) => (i + 1) % THINKING_WORDS.length) + }, 2500) + return () => clearInterval(interval) + }, []) + + return ( +
+ + {THINKING_WORDS[index]}... + +
+ ) +} diff --git a/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-words.ts b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-words.ts new file mode 100644 index 0000000000..3cc63d3630 --- /dev/null +++ b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/thinking-words.ts @@ -0,0 +1,90 @@ +export const THINKING_WORDS = [ + 'Accomplishing', + 'Actioning', + 'Actualizing', + 'Baking', + 'Booping', + 'Brewing', + 'Calculating', + 'Cerebrating', + 'Channelling', + 'Churning', + 'Coalescing', + 'Cogitating', + 'Combobulating', + 'Computing', + 'Concocting', + 'Conjuring', + 'Considering', + 'Contemplating', + 'Cooking', + 'Crafting', + 'Creating', + 'Crunching', + 'Deciphering', + 'Deliberating', + 'Determining', + 'Discombobulating', + 'Divining', + 'Effecting', + 'Elucidating', + 'Enchanting', + 'Envisioning', + 'Finagling', + 'Flibbertigibbeting', + 'Forging', + 'Forming', + 'Frolicking', + 'Generating', + 'Germinating', + 'Hatching', + 'Herding', + 'Honking', + 'Hustling', + 'Ideating', + 'Imagining', + 'Incubating', + 'Inferring', + 'Jiving', + 'Manifesting', + 'Marinating', + 'Meandering', + 'Moseying', + 'Mulling', + 'Mustering', + 'Musing', + 'Noodling', + 'Percolating', + 'Perusing', + 'Philosophising', + 'Pondering', + 'Pontificating', + 'Processing', + 'Puttering', + 'Puzzling', + 'Reticulating', + 'Ruminating', + 'Scheming', + 'Schlepping', + 'Shimmying', + 'Shucking', + 'Simmering', + 'Smooshing', + 'Spelunking', + 'Spinning', + 'Stewing', + 'Sussing', + 'Synthesizing', + 'Thinking', + 'Tinkering', + 'Transmuting', + 'Unfurling', + 'Unravelling', + 'Vibing', + 'Wandering', + 'Whirring', + 'Wibbling', + 'Wizarding', + 'Working', + 'Wrangling', +] as const diff --git a/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/tool-call-segment.tsx b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/tool-call-segment.tsx new file mode 100644 index 0000000000..066628f99a --- /dev/null +++ b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/assistant-message/tool-call-segment.tsx @@ -0,0 +1,102 @@ +'use client' + +import { ExternalLink, Check } from 'lucide-react' +import { getToolName } from 'ai' +import type { DynamicToolUIPart, ToolUIPart } from 'ai' +import { ToolInvocation } from '../../terminal/tool-invocation' +import Link from 'next/link' +import { parseManageConnectionsResult } from '../../tool-results/connections/schema' +import { trpc } from '~/clients/trpc' + +interface InlineConnectionAction { + toolkit: string + redirectUrl: string +} + +function getInlineConnectionActions( + toolCall: DynamicToolUIPart | ToolUIPart +): InlineConnectionAction[] { + const toolName = getToolName(toolCall) + if (!toolName.endsWith('MANAGE_CONNECTIONS')) return [] + if (toolCall.state !== 'output-available' || !toolCall.output) return [] + + const args = (toolCall.input ?? {}) as Record + const parsed = parseManageConnectionsResult(toolCall.output, args) + if (!parsed) return [] + + const actions: InlineConnectionAction[] = [] + for (const [toolkit, entry] of Object.entries(parsed.results)) { + if (entry.redirect_url?.startsWith('https://')) { + actions.push({ toolkit, redirectUrl: entry.redirect_url }) + } + } + return actions +} + +interface ToolCallSegmentProps { + toolCall: DynamicToolUIPart | ToolUIPart + onOpenTerminal: () => void +} + +export function ToolCallSegment({ + toolCall, + onOpenTerminal, +}: ToolCallSegmentProps) { + const connectionActions = getInlineConnectionActions(toolCall) + + const allToolkits = connectionActions.map((a) => a.toolkit) + + const connectionStatus = trpc.trustclaw.checkConnectionStatus.useQuery( + { toolkits: allToolkits }, + { + enabled: allToolkits.length > 0, + } + ) + + const connectedToolkits = new Set( + connectionStatus.data?.statuses + .filter((s) => s.connected) + .map((s) => s.toolkit) ?? [] + ) + + const handleClick = () => { + onOpenTerminal() + window.dispatchEvent( + new CustomEvent('tool-focus', { + detail: { toolCallId: toolCall.toolCallId }, + }) + ) + } + + return ( +
+ + {connectionActions.length > 0 && ( +
+ {connectionActions.map((action) => + connectedToolkits.has(action.toolkit) ? ( + + + {action.toolkit} connected + + ) : ( + + Connect {action.toolkit} + + + ) + )} +
+ )} +
+ ) +} diff --git a/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/chat-input.tsx b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/chat-input.tsx new file mode 100644 index 0000000000..3c6250d515 --- /dev/null +++ b/solutions/trustclaw/src/app/(authenticated)/dashboard/_components/chat/chat-input.tsx @@ -0,0 +1,104 @@ +'use client' + +import { useState, useRef, useEffect, useCallback } from 'react' +import { ArrowUp, Square } from 'lucide-react' +import type { ChatStatus } from 'ai' +import { Button } from '~/components/ui/button' +import { Textarea } from '~/components/ui/textarea' +import { cn } from '~/lib/utils' + +interface ChatInputProps { + onSend: (message: string) => void + onStop: () => void + status: ChatStatus +} + +const MAX_MESSAGE_LENGTH = 50_000 + +export function ChatInput({ onSend, onStop, status }: ChatInputProps) { + const [input, setInput] = useState('') + const textareaRef = useRef(null) + + const isStreaming = status === 'streaming' || status === 'submitted' + const isTooLong = input.length > MAX_MESSAGE_LENGTH + const canSend = input.trim().length > 0 && !isStreaming && !isTooLong + + useEffect(() => { + const textarea = textareaRef.current + if (textarea) { + textarea.style.height = 'auto' + textarea.style.height = `${Math.min(textarea.scrollHeight, 200)}px` + } + }, [input]) + + const handleSubmit = useCallback(() => { + if (!canSend) return + onSend(input.trim()) + setInput('') + }, [canSend, input, onSend]) + + const handleStop = useCallback(() => { + onStop() + }, [onStop]) + + const handleKeyDown = (e: React.KeyboardEvent) => { + if (e.key === 'Enter' && !e.shiftKey) { + e.preventDefault() + if (isStreaming) return + handleSubmit() + } + } + + return ( +
+
+