diff --git a/Dockerfile b/Dockerfile index ea505715b..ab730d3a8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,9 @@ WORKDIR /app # --- Install + Build in one stage --- FROM base AS builder -ARG CACHE_BUST=6 +# CACHE_BUST: change this value to force a full rebuild (busts Docker layer cache) +ARG CACHE_BUST=11 +RUN echo "Cache bust: ${CACHE_BUST}" COPY . . RUN pnpm install --no-frozen-lockfile ENV NEXT_TELEMETRY_DISABLED=1 @@ -30,6 +32,10 @@ ENV NEXT_TELEMETRY_DISABLED=1 COPY --from=builder /app/ ./ RUN addgroup --system --gid 1001 nodejs && adduser --system --uid 1001 nextjs + +# Ensure Next.js cache directories are writable by the nextjs user +RUN mkdir -p /app/apps/web/.next/cache && chown -R nextjs:nodejs /app/apps/web/.next/cache + USER nextjs EXPOSE 3000 diff --git a/apps/web/.env.test b/apps/web/.env.test index 98a047352..9a5ad2528 100644 --- a/apps/web/.env.test +++ b/apps/web/.env.test @@ -18,6 +18,7 @@ EMAIL_PASSWORD=password # STRIPE NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_51K9cWKI1i3VnbZTq2HGstY2S8wt3peF1MOqPXFO4LR8ln2QgS7GxL8XyKaKLvn7iFHeqAnvdDw0o48qN7rrwwcHU00jOtKhjsf +STRIPE_UI_MODE=embedded_page # TESTS ONLY SUPPORT THIS MODE, KEEP AS IS CONTACT_EMAIL=test@makerkit.dev diff --git a/apps/web/app/[locale]/home/(user)/_components/home-account-selector.tsx b/apps/web/app/[locale]/home/(user)/_components/home-account-selector.tsx index 710f37d5c..181f23138 100644 --- a/apps/web/app/[locale]/home/(user)/_components/home-account-selector.tsx +++ b/apps/web/app/[locale]/home/(user)/_components/home-account-selector.tsx @@ -22,13 +22,15 @@ export function HomeAccountSelector(props: { }>; userId: string; + collapsed?: boolean; }) { const router = useRouter(); const context = useContext(SidebarContext); + const collapsed = props.collapsed ?? !context?.open; return (
- +
+ +
{routes.map((route) => ( @@ -54,7 +56,9 @@ export function HomeMenuNavigation(props: { workspace: UserWorkspace }) { - +
+ +
diff --git a/apps/web/app/[locale]/home/(user)/_components/home-mobile-navigation.tsx b/apps/web/app/[locale]/home/(user)/_components/home-mobile-navigation.tsx index 84908a6e2..e3687b36f 100644 --- a/apps/web/app/[locale]/home/(user)/_components/home-mobile-navigation.tsx +++ b/apps/web/app/[locale]/home/(user)/_components/home-mobile-navigation.tsx @@ -1,15 +1,12 @@ 'use client'; -import Link from 'next/link'; - -import { LogOut, Menu } from 'lucide-react'; +import { Menu } from 'lucide-react'; import { useSignOut } from '@kit/supabase/hooks/use-sign-out'; import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, - DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, @@ -17,6 +14,10 @@ import { import { If } from '@kit/ui/if'; import { Trans } from '@kit/ui/trans'; +import { + MobileNavRouteLinks, + MobileNavSignOutItem, +} from '~/components/mobile-navigation-shared'; import featuresFlagConfig from '~/config/feature-flags.config'; import { personalAccountNavigationConfig } from '~/config/personal-account-navigation.config'; @@ -27,25 +28,6 @@ import type { UserWorkspace } from '../_lib/server/load-user-workspace'; export function HomeMobileNavigation(props: { workspace: UserWorkspace }) { const signOut = useSignOut(); - const Links = personalAccountNavigationConfig.routes.map((item, index) => { - if ('children' in item) { - return item.children.map((child) => { - return ( - - ); - }); - } - - if ('divider' in item) { - return ; - } - }); - return ( @@ -60,6 +42,7 @@ export function HomeMobileNavigation(props: { workspace: UserWorkspace }) { @@ -68,57 +51,16 @@ export function HomeMobileNavigation(props: { workspace: UserWorkspace }) { - {Links} + + + - signOut.mutateAsync()} /> + signOut.mutateAsync()} /> ); } - -function DropdownLink( - props: React.PropsWithChildren<{ - path: string; - label: string; - Icon: React.ReactNode; - }>, -) { - return ( - - {props.Icon} - - - - - - } - key={props.path} - /> - ); -} - -function SignOutDropdownItem( - props: React.PropsWithChildren<{ - onSignOut: () => unknown; - }>, -) { - return ( - - - - - - - - ); -} diff --git a/apps/web/app/[locale]/home/(user)/_components/home-page-header.tsx b/apps/web/app/[locale]/home/(user)/_components/home-page-header.tsx index 209a4f421..8a7255abd 100644 --- a/apps/web/app/[locale]/home/(user)/_components/home-page-header.tsx +++ b/apps/web/app/[locale]/home/(user)/_components/home-page-header.tsx @@ -1,12 +1,26 @@ +import { cookies } from 'next/headers'; + import { PageHeader } from '@kit/ui/page'; -export function HomeLayoutPageHeader( +import { personalAccountNavigationConfig } from '~/config/personal-account-navigation.config'; + +export async function HomeLayoutPageHeader( props: React.PropsWithChildren<{ title: string | React.ReactNode; description: string | React.ReactNode; }>, ) { + const cookieStore = await cookies(); + const layoutStyleCookie = cookieStore.get('layout-style')?.value; + const displaySidebarTrigger = + (layoutStyleCookie ?? personalAccountNavigationConfig.style) === 'sidebar'; + return ( - {props.children} + + {props.children} + ); } diff --git a/apps/web/app/[locale]/home/(user)/billing/_lib/server/user-billing.service.ts b/apps/web/app/[locale]/home/(user)/billing/_lib/server/user-billing.service.ts index f72ea5e75..bd7dff861 100644 --- a/apps/web/app/[locale]/home/(user)/billing/_lib/server/user-billing.service.ts +++ b/apps/web/app/[locale]/home/(user)/billing/_lib/server/user-billing.service.ts @@ -1,4 +1,6 @@ import 'server-only'; +import { redirect } from 'next/navigation'; + import { SupabaseClient } from '@supabase/supabase-js'; import * as z from 'zod'; @@ -81,9 +83,12 @@ class UserBillingService { `User requested a personal account checkout session. Contacting provider...`, ); + let checkoutToken: string | null | undefined; + let url: string | null | undefined; + try { // call the payment gateway to create the checkout session - const { checkoutToken } = await service.createCheckoutSession({ + const checkout = await service.createCheckoutSession({ returnUrl, accountId, customerEmail: user.email, @@ -93,32 +98,55 @@ class UserBillingService { enableDiscountField: product.enableDiscountField, }); - logger.info( - { - userId: user.id, - }, - `Checkout session created. Returning checkout token to client...`, - ); - - // return the checkout token to the client - // so we can call the payment gateway to complete the checkout - return { - checkoutToken, - }; + checkoutToken = checkout.checkoutToken; + url = checkout.url; } catch (error) { + const message = Error.isError(error) ? error.message : error; + logger.error( { name: `billing.personal-account`, planId, customerId, accountId, - error, + error: message, }, `Checkout session not created due to an error`, ); throw new Error(`Failed to create a checkout session`, { cause: error }); } + + if (!url && !checkoutToken) { + throw new Error( + 'Checkout session returned neither a URL nor a checkout token', + ); + } + + // if URL provided, we redirect to the provider's hosted page + if (url) { + logger.info( + { + userId: user.id, + }, + `Checkout session created. Redirecting to hosted page...`, + ); + + redirect(url); + } + + // return the checkout token to the client + // so we can call the payment gateway to complete the checkout + logger.info( + { + userId: user.id, + }, + `Checkout session created. Returning checkout token to client...`, + ); + + return { + checkoutToken, + }; } /** diff --git a/apps/web/app/[locale]/home/(user)/layout.tsx b/apps/web/app/[locale]/home/(user)/layout.tsx index 805052b26..2a7cef967 100644 --- a/apps/web/app/[locale]/home/(user)/layout.tsx +++ b/apps/web/app/[locale]/home/(user)/layout.tsx @@ -52,7 +52,7 @@ async function SidebarLayout({ children }: React.PropsWithChildren) { - + @@ -75,7 +75,7 @@ async function HeaderLayout({ children }: React.PropsWithChildren) { - + @@ -92,7 +92,9 @@ function MobileNavigation({ }) { return ( <> - +
+ +
diff --git a/apps/web/app/[locale]/home/[account]/_components/team-account-accounts-selector.tsx b/apps/web/app/[locale]/home/[account]/_components/team-account-accounts-selector.tsx index c67e437ad..b934931e0 100644 --- a/apps/web/app/[locale]/home/[account]/_components/team-account-accounts-selector.tsx +++ b/apps/web/app/[locale]/home/[account]/_components/team-account-accounts-selector.tsx @@ -1,9 +1,11 @@ 'use client'; +import { useContext } from 'react'; + import { useRouter } from 'next/navigation'; import { AccountSelector } from '@kit/accounts/account-selector'; -import { useSidebar } from '@kit/ui/sidebar'; +import { SidebarContext } from '@kit/ui/sidebar'; import featureFlagsConfig from '~/config/feature-flags.config'; import pathsConfig from '~/config/paths.config'; @@ -23,7 +25,7 @@ export function TeamAccountAccountsSelector(params: { }>; }) { const router = useRouter(); - const ctx = useSidebar(); + const ctx = useContext(SidebarContext); return ( ; const features = { - enableTeamAccounts: featureFlagsConfig.enableTeamAccounts, enableTeamCreation: featureFlagsConfig.enableTeamCreation, }; @@ -44,129 +39,23 @@ export const TeamAccountLayoutMobileNavigation = ( account: string; userId: string; accounts: Accounts; - config: z.output; }>, ) => { + const router = useRouter(); const signOut = useSignOut(); - const Links = props.config.routes.map((item, index) => { - if ('children' in item) { - return item.children.map((child) => { - return ( - - ); - }); - } - - if ('divider' in item) { - return ; - } - }); - return ( - - - - {Links} - - - - signOut.mutateAsync()} /> - - - ); -}; - -function DropdownLink( - props: React.PropsWithChildren<{ - path: string; - label: string; - Icon: React.ReactNode; - }>, -) { - return ( - - {props.Icon} - - - - - - } - /> - ); -} - -function SignOutDropdownItem( - props: React.PropsWithChildren<{ - onSignOut: () => unknown; - }>, -) { - return ( - - - - - - - - ); -} - -function TeamAccountsModal(props: { - accounts: Accounts; - userId: string; - account: string; -}) { - const router = useRouter(); - - return ( - - e.preventDefault()} - > - - - - - - - } - /> - - - - + + + - - + -
-
-
- + + + + + + + + + + + signOut.mutateAsync()} /> + + ); -} +}; diff --git a/apps/web/app/[locale]/home/[account]/_components/team-account-layout-page-header.tsx b/apps/web/app/[locale]/home/[account]/_components/team-account-layout-page-header.tsx index cecd62b30..3d5769e0b 100644 --- a/apps/web/app/[locale]/home/[account]/_components/team-account-layout-page-header.tsx +++ b/apps/web/app/[locale]/home/[account]/_components/team-account-layout-page-header.tsx @@ -1,13 +1,28 @@ +import { cookies } from 'next/headers'; + import { PageHeader } from '@kit/ui/page'; -export function TeamAccountLayoutPageHeader( +import { getTeamAccountSidebarConfig } from '~/config/team-account-navigation.config'; + +export async function TeamAccountLayoutPageHeader( props: React.PropsWithChildren<{ title: string | React.ReactNode; description: string | React.ReactNode; account: string; }>, ) { + const cookieStore = await cookies(); + const layoutStyleCookie = cookieStore.get('layout-style')?.value; + const defaultStyle = getTeamAccountSidebarConfig(props.account).style; + const displaySidebarTrigger = + (layoutStyleCookie ?? defaultStyle) === 'sidebar'; + return ( - {props.children} + + {props.children} + ); } diff --git a/apps/web/app/[locale]/home/[account]/_components/team-account-navigation-menu.tsx b/apps/web/app/[locale]/home/[account]/_components/team-account-navigation-menu.tsx index 5f6695643..066ce1165 100644 --- a/apps/web/app/[locale]/home/[account]/_components/team-account-navigation-menu.tsx +++ b/apps/web/app/[locale]/home/[account]/_components/team-account-navigation-menu.tsx @@ -44,7 +44,9 @@ export function TeamAccountNavigationMenu(props: { return (
- +
+ +
{routes.map((route) => ( @@ -53,20 +55,22 @@ export function TeamAccountNavigationMenu(props: {
-
+
- ({ - label: account.name, - value: account.slug, - image: account.picture_url, - }))} - /> +
+ ({ + label: account.name, + value: account.slug, + image: account.picture_url, + }))} + /> +
- + -
+
({ + label: name, + value: slug, + image: picture_url, + })); + return ( @@ -202,6 +208,20 @@ async function HeaderLayout({ + +
+ +
+ +
+ +
+
+ {children}
diff --git a/apps/web/components/mobile-navigation-shared.tsx b/apps/web/components/mobile-navigation-shared.tsx new file mode 100644 index 000000000..04abd33c9 --- /dev/null +++ b/apps/web/components/mobile-navigation-shared.tsx @@ -0,0 +1,78 @@ +'use client'; + +import Link from 'next/link'; + +import { LogOut } from 'lucide-react'; + +import { DropdownMenuItem, DropdownMenuSeparator } from '@kit/ui/dropdown-menu'; +import { Trans } from '@kit/ui/trans'; + +export function MobileNavDropdownLink( + props: React.PropsWithChildren<{ + path: string; + label: string; + Icon?: React.ReactNode; + }>, +) { + return ( + + {props.Icon} + + + + + + } + /> + ); +} + +export function MobileNavSignOutItem(props: { onSignOut: () => unknown }) { + return ( + + + + + + + + ); +} + +export function MobileNavRouteLinks(props: { + routes: Array< + | { + children: Array<{ + path: string; + label: string; + Icon?: React.ReactNode; + }>; + } + | { divider: true } + >; +}) { + return props.routes.map((item, index) => { + if ('children' in item) { + return item.children.map((child) => ( + + )); + } + + if ('divider' in item) { + return ; + } + }); +} diff --git a/apps/web/proxy.ts b/apps/web/proxy.ts index 9feaa37b8..d8a78993a 100644 --- a/apps/web/proxy.ts +++ b/apps/web/proxy.ts @@ -80,7 +80,10 @@ async function adminMiddleware(request: NextRequest, response: NextResponse) { return; } - const { data, error } = await getUser(request, response); + const { data, error } = await getUser(request, response).catch(() => ({ + data: null as any, + error: new Error('Supabase unreachable'), + })); // If user is not logged in, redirect to sign in page. // This should never happen, but just in case. @@ -121,7 +124,14 @@ async function getPatterns() { { pattern: new URLPattern({ pathname: '/auth/*?' }), handler: async (req: NextRequest, res: NextResponse) => { - const { data } = await getUser(req, res); + let data; + + try { + ({ data } = await getUser(req, res)); + } catch { + // Supabase unreachable — treat as logged out, let the page render + return; + } // the user is logged out, so we don't need to do anything if (!data?.claims) { @@ -148,7 +158,16 @@ async function getPatterns() { { pattern: new URLPattern({ pathname: '/home/*?' }), handler: async (req: NextRequest, res: NextResponse) => { - const { data } = await getUser(req, res); + let data; + + try { + ({ data } = await getUser(req, res)); + } catch { + // Supabase unreachable — redirect to sign in + const signIn = pathsConfig.auth.signIn; + return NextResponse.redirect(new URL(signIn, req.nextUrl.origin).href); + } + const { origin, pathname: next } = req.nextUrl; // If user is not logged in, redirect to sign in page. diff --git a/docker-compose.yml b/docker-compose.yml index c80f269dc..ded9f4385 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -339,12 +339,10 @@ services: environment: NODE_ENV: production NEXT_PUBLIC_SITE_URL: ${SITE_URL:-http://localhost:3000} - # Browser-side: external domain (baked at build time, re-stated here for SSR) + # Same URL for browser AND server — keeps Supabase cookie names consistent NEXT_PUBLIC_SUPABASE_URL: ${API_EXTERNAL_URL:-http://localhost:8000} NEXT_PUBLIC_SUPABASE_PUBLIC_KEY: ${SUPABASE_ANON_KEY} NEXT_PUBLIC_DEFAULT_LOCALE: de - # Server-side: Docker-internal URL (avoids hairpin NAT / DNS issues) - SUPABASE_INTERNAL_URL: http://supabase-kong:8000 SUPABASE_SECRET_KEY: ${SUPABASE_SERVICE_ROLE_KEY} SUPABASE_DB_WEBHOOK_SECRET: ${DB_WEBHOOK_SECRET:-webhooksecret} EMAIL_SENDER: ${EMAIL_SENDER:-noreply@myeasycms.de} diff --git a/docs/billing/stripe.mdoc b/docs/billing/stripe.mdoc index d13201fdc..afb31d832 100644 --- a/docs/billing/stripe.mdoc +++ b/docs/billing/stripe.mdoc @@ -31,6 +31,7 @@ NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_... | `STRIPE_SECRET_KEY` | Server-side API key | Dashboard → Developers → API keys | | `STRIPE_WEBHOOK_SECRET` | Webhook signature verification | Generated by Stripe CLI or Dashboard | | `NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY` | Client-side key (safe to expose) | Dashboard → Developers → API keys | +| `STRIPE_UI_MODE` | Checkout UI mode: `embedded_page` (default) or `hosted_page` (optional) | - | {% alert type="error" title="Never commit secret keys" %} Add `STRIPE_SECRET_KEY` and `STRIPE_WEBHOOK_SECRET` to `.env.local` only. Never add them to `.env` or commit them to your repository. @@ -187,6 +188,21 @@ When deploying to production, configure webhooks in the Stripe Dashboard: Webhook URLs must be publicly accessible. Vercel preview deployments with authentication enabled won't work. Test by visiting the URL in an incognito browser window. {% /alert %} +## Checkout UI Mode + +Stripe supports two checkout UI modes: + +- **`embedded_page`** (default): Embeds the checkout form directly in your application as a dialog popup. Requires `NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY`. +- **`hosted_page`**: Redirects users to a Stripe-hosted checkout page. The publishable key is not required in this mode. + +Configure this with the `STRIPE_UI_MODE` environment variable: + +```bash +STRIPE_UI_MODE=hosted_page +``` + +If not set, it defaults to `embedded_page`. + ## Free Trials Without Credit Card Allow users to start a trial without entering payment information: diff --git a/package.json b/package.json index 4107d69ff..d1fa77d41 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "next-supabase-saas-kit-turbo", - "version": "3.0.5", + "version": "3.1.1", "private": true, "author": { "name": "MakerKit", @@ -57,5 +57,5 @@ "engines": { "node": ">=20.10.0" }, - "packageManager": "pnpm@10.32.1" + "packageManager": "pnpm@10.33.0" } diff --git a/packages/billing/core/src/services/billing-strategy-provider.service.ts b/packages/billing/core/src/services/billing-strategy-provider.service.ts index 23ca1d3b6..609e48c0c 100644 --- a/packages/billing/core/src/services/billing-strategy-provider.service.ts +++ b/packages/billing/core/src/services/billing-strategy-provider.service.ts @@ -33,7 +33,8 @@ export abstract class BillingStrategyProviderService { abstract createCheckoutSession( params: z.output, ): Promise<{ - checkoutToken: string; + checkoutToken: string | null; + url?: string | null; }>; abstract cancelSubscription( diff --git a/packages/billing/stripe/src/components/stripe-embedded-checkout.tsx b/packages/billing/stripe/src/components/stripe-embedded-checkout.tsx index 09fa2efb9..c56a0a504 100644 --- a/packages/billing/stripe/src/components/stripe-embedded-checkout.tsx +++ b/packages/billing/stripe/src/components/stripe-embedded-checkout.tsx @@ -16,7 +16,7 @@ const { publishableKey } = StripeClientEnvSchema.parse({ publishableKey: process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY, }); -const stripePromise = loadStripe(publishableKey); +const stripePromise = loadStripe(publishableKey as string); export function StripeCheckout({ checkoutToken, diff --git a/packages/billing/stripe/src/schema/stripe-client-env.schema.ts b/packages/billing/stripe/src/schema/stripe-client-env.schema.ts index 22d657b53..fe36111ad 100644 --- a/packages/billing/stripe/src/schema/stripe-client-env.schema.ts +++ b/packages/billing/stripe/src/schema/stripe-client-env.schema.ts @@ -1,11 +1,17 @@ import * as z from 'zod'; +const isHostedMode = process.env.STRIPE_UI_MODE === 'hosted_page'; + export const StripeClientEnvSchema = z .object({ - publishableKey: z.string().min(1), + publishableKey: isHostedMode ? z.string().optional() : z.string().min(1), }) .refine( (schema) => { + if (isHostedMode || !schema.publishableKey) { + return true; + } + return schema.publishableKey.startsWith('pk_'); }, { diff --git a/packages/billing/stripe/src/services/create-stripe-checkout.ts b/packages/billing/stripe/src/services/create-stripe-checkout.ts index 39a045650..67f231af5 100644 --- a/packages/billing/stripe/src/services/create-stripe-checkout.ts +++ b/packages/billing/stripe/src/services/create-stripe-checkout.ts @@ -9,6 +9,13 @@ import type { CreateBillingCheckoutSchema } from '@kit/billing/schema'; const enableTrialWithoutCreditCard = process.env.STRIPE_ENABLE_TRIAL_WITHOUT_CC === 'true'; +const UI_MODE_VALUES = ['embedded_page', 'hosted_page'] as const; + +const uiMode = z + .enum(UI_MODE_VALUES) + .default('embedded_page') + .parse(process.env.STRIPE_UI_MODE); + /** * @name createStripeCheckout * @description Creates a Stripe Checkout session, and returns an Object @@ -68,11 +75,9 @@ export async function createStripeCheckout( const urls = getUrls({ returnUrl: params.returnUrl, + uiMode, }); - // we use the embedded mode, so the user does not leave the page - const uiMode = 'embedded'; - const customerData = customer ? { customer, @@ -127,10 +132,20 @@ export async function createStripeCheckout( }); } -function getUrls(params: { returnUrl: string }) { - const returnUrl = `${params.returnUrl}?session_id={CHECKOUT_SESSION_ID}`; +function getUrls(params: { + returnUrl: string; + uiMode: (typeof UI_MODE_VALUES)[number]; +}) { + const url = `${params.returnUrl}?session_id={CHECKOUT_SESSION_ID}`; + + if (params.uiMode === 'hosted_page') { + return { + success_url: url, + cancel_url: params.returnUrl, + }; + } return { - return_url: returnUrl, + return_url: url, }; } diff --git a/packages/billing/stripe/src/services/stripe-billing-strategy.service.ts b/packages/billing/stripe/src/services/stripe-billing-strategy.service.ts index c85977eb2..4ba11ac10 100644 --- a/packages/billing/stripe/src/services/stripe-billing-strategy.service.ts +++ b/packages/billing/stripe/src/services/stripe-billing-strategy.service.ts @@ -47,9 +47,9 @@ export class StripeBillingStrategyService implements BillingStrategyProviderServ logger.info(ctx, 'Creating checkout session...'); - const { client_secret } = await createStripeCheckout(stripe, params); + const { client_secret, url } = await createStripeCheckout(stripe, params); - if (!client_secret) { + if (!client_secret && !url) { logger.error(ctx, 'Failed to create checkout session'); throw new Error('Failed to create checkout session'); @@ -57,7 +57,10 @@ export class StripeBillingStrategyService implements BillingStrategyProviderServ logger.info(ctx, 'Checkout session created successfully'); - return { checkoutToken: client_secret }; + return { + checkoutToken: client_secret ?? null, + url, + }; } /** diff --git a/packages/billing/stripe/src/services/stripe-sdk.ts b/packages/billing/stripe/src/services/stripe-sdk.ts index da06618c4..8cd72018e 100644 --- a/packages/billing/stripe/src/services/stripe-sdk.ts +++ b/packages/billing/stripe/src/services/stripe-sdk.ts @@ -1,7 +1,7 @@ import 'server-only'; import { StripeServerEnvSchema } from '../schema/stripe-server-env.schema'; -const STRIPE_API_VERSION = '2026-02-25.clover'; +const STRIPE_API_VERSION = '2026-03-25.dahlia'; /** * @description returns a Stripe instance diff --git a/packages/features/course-management/src/server/api.ts b/packages/features/course-management/src/server/api.ts index 312af89be..83501fb15 100644 --- a/packages/features/course-management/src/server/api.ts +++ b/packages/features/course-management/src/server/api.ts @@ -1,11 +1,7 @@ +import type { Database } from '@kit/supabase/database'; import type { SupabaseClient } from '@supabase/supabase-js'; -import type { Database } from '@kit/supabase/database'; - -import type { - CreateCourseInput, - EnrollParticipantInput, -} from '../schema/course.schema'; +import type { CreateCourseInput, EnrollParticipantInput } from '../schema/course.schema'; /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -14,25 +10,11 @@ export function createCourseManagementApi(client: SupabaseClient) { return { // --- Courses --- - async listCourses( - accountId: string, - opts?: { - status?: string; - search?: string; - page?: number; - pageSize?: number; - }, - ) { - let query = client - .from('courses') - .select('*', { count: 'exact' }) - .eq('account_id', accountId) - .order('start_date', { ascending: false }); + async listCourses(accountId: string, opts?: { status?: string; search?: string; page?: number; pageSize?: number }) { + let query = client.from('courses').select('*', { count: 'exact' }) + .eq('account_id', accountId).order('start_date', { ascending: false }); if (opts?.status) query = query.eq('status', opts.status); - if (opts?.search) - query = query.or( - `name.ilike.%${opts.search}%,course_number.ilike.%${opts.search}%`, - ); + if (opts?.search) query = query.or(`name.ilike.%${opts.search}%,course_number.ilike.%${opts.search}%`); const page = opts?.page ?? 1; const pageSize = opts?.pageSize ?? 25; query = query.range((page - 1) * pageSize, page * pageSize - 1); @@ -42,38 +24,20 @@ export function createCourseManagementApi(client: SupabaseClient) { }, async getCourse(courseId: string) { - const { data, error } = await client - .from('courses') - .select('*') - .eq('id', courseId) - .single(); + const { data, error } = await client.from('courses').select('*').eq('id', courseId).single(); if (error) throw error; return data; }, async createCourse(input: CreateCourseInput) { - const { data, error } = await client - .from('courses') - .insert({ - account_id: input.accountId, - course_number: input.courseNumber, - name: input.name, - description: input.description, - category_id: input.categoryId, - instructor_id: input.instructorId, - location_id: input.locationId, - start_date: input.startDate, - end_date: input.endDate, - fee: input.fee, - reduced_fee: input.reducedFee, - capacity: input.capacity, - min_participants: input.minParticipants, - status: input.status, - registration_deadline: input.registrationDeadline, - notes: input.notes, - }) - .select() - .single(); + const { data, error } = await client.from('courses').insert({ + account_id: input.accountId, course_number: input.courseNumber || null, name: input.name, + description: input.description || null, category_id: input.categoryId || null, instructor_id: input.instructorId || null, + location_id: input.locationId || null, start_date: input.startDate || null, end_date: input.endDate || null, + fee: input.fee, reduced_fee: input.reducedFee ?? null, capacity: input.capacity, + min_participants: input.minParticipants, status: input.status, + registration_deadline: input.registrationDeadline || null, notes: input.notes || null, + }).select().single(); if (error) throw error; return data; }, @@ -81,161 +45,96 @@ export function createCourseManagementApi(client: SupabaseClient) { // --- Enrollment --- async enrollParticipant(input: EnrollParticipantInput) { // Check capacity - const { count } = await client - .from('course_participants') - .select('*', { count: 'exact', head: true }) - .eq('course_id', input.courseId) - .in('status', ['enrolled']); + const { count } = await client.from('course_participants').select('*', { count: 'exact', head: true }) + .eq('course_id', input.courseId).in('status', ['enrolled']); const course = await this.getCourse(input.courseId); - const status = - (count ?? 0) >= course.capacity ? 'waitlisted' : 'enrolled'; + const status = (count ?? 0) >= course.capacity ? 'waitlisted' : 'enrolled'; - const { data, error } = await client - .from('course_participants') - .insert({ - course_id: input.courseId, - member_id: input.memberId, - first_name: input.firstName, - last_name: input.lastName, - email: input.email, - phone: input.phone, - status, - }) - .select() - .single(); + const { data, error } = await client.from('course_participants').insert({ + course_id: input.courseId, member_id: input.memberId, + first_name: input.firstName, last_name: input.lastName, + email: input.email, phone: input.phone, status, + }).select().single(); if (error) throw error; return data; }, async cancelEnrollment(participantId: string) { - const { error } = await client - .from('course_participants') + const { error } = await client.from('course_participants') .update({ status: 'cancelled', cancelled_at: new Date().toISOString() }) .eq('id', participantId); if (error) throw error; }, async getParticipants(courseId: string) { - const { data, error } = await client - .from('course_participants') - .select('*') - .eq('course_id', courseId) - .order('enrolled_at'); + const { data, error } = await client.from('course_participants').select('*') + .eq('course_id', courseId).order('enrolled_at'); if (error) throw error; return data ?? []; }, // --- Sessions --- async getSessions(courseId: string) { - const { data, error } = await client - .from('course_sessions') - .select('*') - .eq('course_id', courseId) - .order('session_date'); + const { data, error } = await client.from('course_sessions').select('*') + .eq('course_id', courseId).order('session_date'); if (error) throw error; return data ?? []; }, - async createSession(input: { - courseId: string; - sessionDate: string; - startTime: string; - endTime: string; - locationId?: string; - }) { - const { data, error } = await client - .from('course_sessions') - .insert({ - course_id: input.courseId, - session_date: input.sessionDate, - start_time: input.startTime, - end_time: input.endTime, - location_id: input.locationId, - }) - .select() - .single(); + async createSession(input: { courseId: string; sessionDate: string; startTime: string; endTime: string; locationId?: string }) { + const { data, error } = await client.from('course_sessions').insert({ + course_id: input.courseId, session_date: input.sessionDate, + start_time: input.startTime, end_time: input.endTime, location_id: input.locationId, + }).select().single(); if (error) throw error; return data; }, // --- Attendance --- async getAttendance(sessionId: string) { - const { data, error } = await client - .from('course_attendance') - .select('*') - .eq('session_id', sessionId); + const { data, error } = await client.from('course_attendance').select('*').eq('session_id', sessionId); if (error) throw error; return data ?? []; }, - async markAttendance( - sessionId: string, - participantId: string, - present: boolean, - ) { - const { error } = await client.from('course_attendance').upsert( - { - session_id: sessionId, - participant_id: participantId, - present, - }, - { onConflict: 'session_id,participant_id' }, - ); + async markAttendance(sessionId: string, participantId: string, present: boolean) { + const { error } = await client.from('course_attendance').upsert({ + session_id: sessionId, participant_id: participantId, present, + }, { onConflict: 'session_id,participant_id' }); if (error) throw error; }, // --- Categories, Instructors, Locations --- async listCategories(accountId: string) { - const { data, error } = await client - .from('course_categories') - .select('*') - .eq('account_id', accountId) - .order('sort_order'); + const { data, error } = await client.from('course_categories').select('*') + .eq('account_id', accountId).order('sort_order'); if (error) throw error; return data ?? []; }, async listInstructors(accountId: string) { - const { data, error } = await client - .from('course_instructors') - .select('*') - .eq('account_id', accountId) - .order('last_name'); + const { data, error } = await client.from('course_instructors').select('*') + .eq('account_id', accountId).order('last_name'); if (error) throw error; return data ?? []; }, async listLocations(accountId: string) { - const { data, error } = await client - .from('course_locations') - .select('*') - .eq('account_id', accountId) - .order('name'); + const { data, error } = await client.from('course_locations').select('*') + .eq('account_id', accountId).order('name'); if (error) throw error; return data ?? []; }, // --- Statistics --- async getStatistics(accountId: string) { - const { data: courses } = await client - .from('courses') - .select('status') - .eq('account_id', accountId); - const { count: totalParticipants } = await client - .from('course_participants') + const { data: courses } = await client.from('courses').select('status').eq('account_id', accountId); + const { count: totalParticipants } = await client.from('course_participants') .select('*', { count: 'exact', head: true }) - .in( - 'course_id', - (courses ?? []).map((c: any) => c.id), - ); + .in('course_id', (courses ?? []).map((c: any) => c.id)); - const stats = { - totalCourses: 0, - openCourses: 0, - completedCourses: 0, - totalParticipants: totalParticipants ?? 0, - }; - for (const c of courses ?? []) { + const stats = { totalCourses: 0, openCourses: 0, completedCourses: 0, totalParticipants: totalParticipants ?? 0 }; + for (const c of (courses ?? [])) { stats.totalCourses++; if (c.status === 'open' || c.status === 'running') stats.openCourses++; if (c.status === 'completed') stats.completedCourses++; @@ -244,70 +143,30 @@ export function createCourseManagementApi(client: SupabaseClient) { }, // --- Create methods for CRUD --- - async createCategory(input: { - accountId: string; - name: string; - description?: string; - parentId?: string; - }) { - const { data, error } = await client - .from('course_categories') - .insert({ - account_id: input.accountId, - name: input.name, - description: input.description, - parent_id: input.parentId, - }) - .select() - .single(); + async createCategory(input: { accountId: string; name: string; description?: string; parentId?: string }) { + const { data, error } = await client.from('course_categories').insert({ + account_id: input.accountId, name: input.name, description: input.description, + parent_id: input.parentId, + }).select().single(); if (error) throw error; return data; }, - async createInstructor(input: { - accountId: string; - firstName: string; - lastName: string; - email?: string; - phone?: string; - qualifications?: string; - hourlyRate?: number; - }) { - const { data, error } = await client - .from('course_instructors') - .insert({ - account_id: input.accountId, - first_name: input.firstName, - last_name: input.lastName, - email: input.email, - phone: input.phone, - qualifications: input.qualifications, - hourly_rate: input.hourlyRate, - }) - .select() - .single(); + async createInstructor(input: { accountId: string; firstName: string; lastName: string; email?: string; phone?: string; qualifications?: string; hourlyRate?: number }) { + const { data, error } = await client.from('course_instructors').insert({ + account_id: input.accountId, first_name: input.firstName, last_name: input.lastName, + email: input.email, phone: input.phone, qualifications: input.qualifications, + hourly_rate: input.hourlyRate, + }).select().single(); if (error) throw error; return data; }, - async createLocation(input: { - accountId: string; - name: string; - address?: string; - room?: string; - capacity?: number; - }) { - const { data, error } = await client - .from('course_locations') - .insert({ - account_id: input.accountId, - name: input.name, - address: input.address, - room: input.room, - capacity: input.capacity, - }) - .select() - .single(); + async createLocation(input: { accountId: string; name: string; address?: string; room?: string; capacity?: number }) { + const { data, error } = await client.from('course_locations').insert({ + account_id: input.accountId, name: input.name, address: input.address, + room: input.room, capacity: input.capacity, + }).select().single(); if (error) throw error; return data; }, diff --git a/packages/features/event-management/src/server/api.ts b/packages/features/event-management/src/server/api.ts index 96cf8979a..b6a80c963 100644 --- a/packages/features/event-management/src/server/api.ts +++ b/packages/features/event-management/src/server/api.ts @@ -1,6 +1,5 @@ -import type { SupabaseClient } from '@supabase/supabase-js'; - import type { Database } from '@kit/supabase/database'; +import type { SupabaseClient } from '@supabase/supabase-js'; import type { CreateEventInput } from '../schema/event.schema'; @@ -11,28 +10,16 @@ export function createEventManagementApi(client: SupabaseClient) { const db = client; return { - async listEvents( - accountId: string, - opts?: { status?: string; page?: number }, - ) { - let query = client - .from('events') - .select('*', { count: 'exact' }) - .eq('account_id', accountId) - .order('event_date', { ascending: false }); + async listEvents(accountId: string, opts?: { status?: string; page?: number }) { + let query = client.from('events').select('*', { count: 'exact' }) + .eq('account_id', accountId).order('event_date', { ascending: false }); if (opts?.status) query = query.eq('status', opts.status); const page = opts?.page ?? 1; query = query.range((page - 1) * PAGE_SIZE, page * PAGE_SIZE - 1); const { data, error, count } = await query; if (error) throw error; const total = count ?? 0; - return { - data: data ?? [], - total, - page, - pageSize: PAGE_SIZE, - totalPages: Math.max(1, Math.ceil(total / PAGE_SIZE)), - }; + return { data: data ?? [], total, page, pageSize: PAGE_SIZE, totalPages: Math.max(1, Math.ceil(total / PAGE_SIZE)) }; }, async getRegistrationCounts(eventIds: string[]) { @@ -53,131 +40,71 @@ export function createEventManagementApi(client: SupabaseClient) { }, async getEvent(eventId: string) { - const { data, error } = await client - .from('events') - .select('*') - .eq('id', eventId) - .single(); + const { data, error } = await client.from('events').select('*').eq('id', eventId).single(); if (error) throw error; return data; }, async createEvent(input: CreateEventInput) { - const { data, error } = await client - .from('events') - .insert({ - account_id: input.accountId, - name: input.name, - description: input.description, - event_date: input.eventDate, - event_time: input.eventTime, - end_date: input.endDate, - location: input.location, - capacity: input.capacity, - min_age: input.minAge, - max_age: input.maxAge, - fee: input.fee, - status: input.status, - registration_deadline: input.registrationDeadline, - contact_name: input.contactName, - contact_email: input.contactEmail, - contact_phone: input.contactPhone, - }) - .select() - .single(); + const { data, error } = await client.from('events').insert({ + account_id: input.accountId, name: input.name, description: input.description || null, + event_date: input.eventDate || null, event_time: input.eventTime || null, end_date: input.endDate || null, + location: input.location || null, capacity: input.capacity, min_age: input.minAge ?? null, + max_age: input.maxAge ?? null, fee: input.fee, status: input.status, + registration_deadline: input.registrationDeadline || null, + contact_name: input.contactName || null, contact_email: input.contactEmail || null, contact_phone: input.contactPhone || null, + }).select().single(); if (error) throw error; return data; }, - async registerForEvent(input: { - eventId: string; - firstName: string; - lastName: string; - email?: string; - parentName?: string; - }) { + async registerForEvent(input: { eventId: string; firstName: string; lastName: string; email?: string; parentName?: string }) { // Check capacity const event = await this.getEvent(input.eventId); if (event.capacity) { - const { count } = await client - .from('event_registrations') - .select('*', { count: 'exact', head: true }) - .eq('event_id', input.eventId) - .in('status', ['pending', 'confirmed']); + const { count } = await client.from('event_registrations').select('*', { count: 'exact', head: true }) + .eq('event_id', input.eventId).in('status', ['pending', 'confirmed']); if ((count ?? 0) >= event.capacity) { throw new Error('Event is full'); } } - const { data, error } = await client - .from('event_registrations') - .insert({ - event_id: input.eventId, - first_name: input.firstName, - last_name: input.lastName, - email: input.email, - parent_name: input.parentName, - status: 'confirmed', - }) - .select() - .single(); + const { data, error } = await client.from('event_registrations').insert({ + event_id: input.eventId, first_name: input.firstName, last_name: input.lastName, + email: input.email, parent_name: input.parentName, status: 'confirmed', + }).select().single(); if (error) throw error; return data; }, async getRegistrations(eventId: string) { - const { data, error } = await client - .from('event_registrations') - .select('*') - .eq('event_id', eventId) - .order('created_at'); + const { data, error } = await client.from('event_registrations').select('*') + .eq('event_id', eventId).order('created_at'); if (error) throw error; return data ?? []; }, // Holiday passes async listHolidayPasses(accountId: string) { - const { data, error } = await client - .from('holiday_passes') - .select('*') - .eq('account_id', accountId) - .order('year', { ascending: false }); + const { data, error } = await client.from('holiday_passes').select('*') + .eq('account_id', accountId).order('year', { ascending: false }); if (error) throw error; return data ?? []; }, async getPassActivities(passId: string) { - const { data, error } = await client - .from('holiday_pass_activities') - .select('*') - .eq('pass_id', passId) - .order('activity_date'); + const { data, error } = await client.from('holiday_pass_activities').select('*') + .eq('pass_id', passId).order('activity_date'); if (error) throw error; return data ?? []; }, - async createHolidayPass(input: { - accountId: string; - name: string; - year: number; - description?: string; - price?: number; - validFrom?: string; - validUntil?: string; - }) { - const { data, error } = await client - .from('holiday_passes') - .insert({ - account_id: input.accountId, - name: input.name, - year: input.year, - description: input.description, - price: input.price ?? 0, - valid_from: input.validFrom, - valid_until: input.validUntil, - }) - .select() - .single(); + async createHolidayPass(input: { accountId: string; name: string; year: number; description?: string; price?: number; validFrom?: string; validUntil?: string }) { + const { data, error } = await client.from('holiday_passes').insert({ + account_id: input.accountId, name: input.name, year: input.year, + description: input.description, price: input.price ?? 0, + valid_from: input.validFrom, valid_until: input.validUntil, + }).select().single(); if (error) throw error; return data; }, diff --git a/packages/i18n/src/locales.tsx b/packages/i18n/src/locales.tsx index 562b3c5eb..8fa7dfe08 100644 --- a/packages/i18n/src/locales.tsx +++ b/packages/i18n/src/locales.tsx @@ -8,5 +8,6 @@ import { defaultLocale } from './default-locale'; */ export const locales: string[] = [ defaultLocale, - 'de', // German — primary locale for MyEasyCMS + // Add other locales here as needed. defaultLocale ('de') is already included above. + // 'en', // English (uncomment to enable) ]; diff --git a/packages/mcp-server/src/tools/env/model.ts b/packages/mcp-server/src/tools/env/model.ts index 20b525e00..68bd37315 100644 --- a/packages/mcp-server/src/tools/env/model.ts +++ b/packages/mcp-server/src/tools/env/model.ts @@ -625,7 +625,8 @@ export const envVariables: EnvVariableModel[] = [ { name: 'NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY', displayName: 'Stripe Publishable Key', - description: 'Your Stripe publishable key.', + description: + 'Your Stripe publishable key. Required when using embedded checkout (default), optional when STRIPE_UI_MODE is set to hosted_page.', hint: `Ex. pk_test_123456789012345678901234`, category: 'Billing', type: 'string', @@ -635,7 +636,13 @@ export const envVariables: EnvVariableModel[] = [ variable: 'NEXT_PUBLIC_BILLING_PROVIDER', condition: (value) => value === 'stripe', message: - 'NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY is required when NEXT_PUBLIC_BILLING_PROVIDER is set to "stripe"', + 'NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY is required when NEXT_PUBLIC_BILLING_PROVIDER is set to "stripe" and STRIPE_UI_MODE is not "hosted_page"', + }, + { + variable: 'STRIPE_UI_MODE', + condition: (value) => value !== 'hosted_page', + message: + 'NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY is required when STRIPE_UI_MODE is not set to "hosted_page"', }, ], validate: ({ value }) => { @@ -1391,6 +1398,21 @@ export const envVariables: EnvVariableModel[] = [ return z.coerce.boolean().optional().safeParse(value); }, }, + { + name: 'STRIPE_UI_MODE', + displayName: 'Stripe Checkout UI Mode', + description: + 'Controls whether Stripe Checkout uses an embedded page or a hosted page. Defaults to embedded_page.', + category: 'Billing', + type: 'enum', + values: ['embedded_page', 'hosted_page'], + validate: ({ value }) => { + return z + .enum(['embedded_page', 'hosted_page']) + .optional() + .safeParse(value); + }, + }, { name: 'NEXT_PUBLIC_THEME_COLOR', displayName: 'Theme Color', diff --git a/packages/supabase/src/get-supabase-client-keys.ts b/packages/supabase/src/get-supabase-client-keys.ts index 99a3e668d..1f3a3eee9 100644 --- a/packages/supabase/src/get-supabase-client-keys.ts +++ b/packages/supabase/src/get-supabase-client-keys.ts @@ -2,18 +2,8 @@ import * as z from 'zod'; /** * Returns and validates the Supabase client keys from the environment. - * - * On the server, prefers SUPABASE_INTERNAL_URL (Docker-internal) - * over NEXT_PUBLIC_SUPABASE_URL (external domain) to avoid - * hairpin NAT / DNS issues in containerized deployments. */ export function getSupabaseClientKeys() { - const isServer = typeof window === 'undefined'; - - const url = isServer - ? process.env.SUPABASE_INTERNAL_URL || process.env.NEXT_PUBLIC_SUPABASE_URL - : process.env.NEXT_PUBLIC_SUPABASE_URL; - return z .object({ url: z.string({ @@ -24,7 +14,7 @@ export function getSupabaseClientKeys() { }), }) .parse({ - url, + url: process.env.NEXT_PUBLIC_SUPABASE_URL, publicKey: process.env.NEXT_PUBLIC_SUPABASE_PUBLIC_KEY, }); } diff --git a/packages/ui/package.json b/packages/ui/package.json index 560749b9d..ddb5c22ab 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -106,40 +106,40 @@ "test:unit": "vitest run" }, "dependencies": { - "@base-ui/react": "^1.3.0", - "@hookform/resolvers": "^5.2.2", + "@base-ui/react": "catalog:", + "@hookform/resolvers": "catalog:", "@kit/shared": "workspace:*", - "clsx": "^2.1.1", - "cmdk": "^1.1.1", - "embla-carousel-react": "^8.6.0", - "input-otp": "^1.4.2", + "clsx": "catalog:", + "cmdk": "catalog:", + "embla-carousel-react": "catalog:", + "input-otp": "catalog:", "lucide-react": "catalog:", - "react-dropzone": "^15.0.0", + "react-dropzone": "catalog:", "react-resizable-panels": "catalog:", - "react-top-loading-bar": "^3.0.2", - "recharts": "3.7.0", - "tailwind-merge": "^3.5.0" + "react-top-loading-bar": "catalog:", + "recharts": "catalog:", + "tailwind-merge": "catalog:" }, "devDependencies": { "@kit/i18n": "workspace:*", "@kit/tsconfig": "workspace:*", "@supabase/supabase-js": "catalog:", "@tanstack/react-query": "catalog:", - "@tanstack/react-table": "^8.21.3", + "@tanstack/react-table": "catalog:", "@types/react": "catalog:", "@types/react-dom": "catalog:", - "class-variance-authority": "^0.7.1", - "date-fns": "^4.1.0", + "class-variance-authority": "catalog:", + "date-fns": "catalog:", "next": "catalog:", - "next-intl": "^4.8.3", - "next-safe-action": "^8.1.8", - "next-themes": "0.4.6", - "react-day-picker": "^9.14.0", + "next-intl": "catalog:", + "next-safe-action": "catalog:", + "next-themes": "catalog:", + "react-day-picker": "catalog:", "react-hook-form": "catalog:", "shadcn": "catalog:", - "sonner": "^2.0.7", + "sonner": "catalog:", "tailwindcss": "catalog:", - "vaul": "^1.1.2", + "vaul": "catalog:", "vitest": "catalog:", "zod": "catalog:" } diff --git a/packages/ui/src/makerkit/page.tsx b/packages/ui/src/makerkit/page.tsx index ed2e88eb5..dcb45f06f 100644 --- a/packages/ui/src/makerkit/page.tsx +++ b/packages/ui/src/makerkit/page.tsx @@ -60,7 +60,7 @@ export function PageMobileNavigation( return (
@@ -73,30 +73,39 @@ function PageWithHeader(props: PageProps) { const { Navigation, Children, MobileNavigation } = getSlotsFromPage(props); return ( -
+
-
- {Navigation} -
+
+
+ {Navigation} +
- {MobileNavigation} + {MobileNavigation} +
-
{Children}
+
+ {Children} +
); @@ -113,7 +122,15 @@ export function PageBody( } export function PageNavigation(props: React.PropsWithChildren) { - return
{props.children}
; + return ( +
+ {props.children} +
+ ); } export function PageDescription(props: React.PropsWithChildren) { @@ -147,16 +164,25 @@ export function PageHeader({ title, description, className, + displaySidebarTrigger = true, }: React.PropsWithChildren<{ className?: string; title?: string | React.ReactNode; description?: string | React.ReactNode; + displaySidebarTrigger?: boolean; }>) { return ( -
-
-
- +
+
+
+ + +
- {children} +
+ {children} +
); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0bb054a0d..6495b949c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,8 +16,8 @@ catalogs: specifier: ^5.2.2 version: 5.2.2 '@keystatic/core': - specifier: 0.5.49 - version: 0.5.49 + specifier: 0.5.50 + version: 0.5.50 '@keystatic/next': specifier: ^5.0.4 version: 5.0.4 @@ -34,11 +34,11 @@ catalogs: specifier: ^0.25.1 version: 0.25.1 '@markdoc/markdoc': - specifier: ^0.5.6 - version: 0.5.6 + specifier: ^0.5.7 + version: 0.5.7 '@marsidev/react-turnstile': - specifier: ^1.4.2 - version: 1.4.2 + specifier: ^1.5.0 + version: 1.5.0 '@measured/puck': specifier: ^0.20.2 version: 0.20.2 @@ -49,8 +49,8 @@ catalogs: specifier: 16.2.1 version: 16.2.1 '@nosecone/next': - specifier: 1.3.0 - version: 1.3.0 + specifier: 1.3.1 + version: 1.3.1 '@playwright/test': specifier: ^1.58.2 version: 1.58.2 @@ -64,17 +64,17 @@ catalogs: specifier: 10.46.0 version: 10.46.0 '@stripe/react-stripe-js': - specifier: 5.6.1 - version: 5.6.1 + specifier: 6.1.0 + version: 6.1.0 '@stripe/stripe-js': - specifier: 8.11.0 - version: 8.11.0 + specifier: 9.0.1 + version: 9.0.1 '@supabase/ssr': - specifier: ^0.9.0 - version: 0.9.0 + specifier: ^0.10.0 + version: 0.10.0 '@supabase/supabase-js': - specifier: 2.100.0 - version: 2.100.0 + specifier: 2.101.0 + version: 2.101.0 '@tailwindcss/postcss': specifier: ^4.2.2 version: 4.2.2 @@ -86,16 +86,16 @@ catalogs: version: 8.21.3 '@tiptap/pm': specifier: ^3.21.0 - version: 3.21.0 + version: 3.22.0 '@tiptap/react': specifier: ^3.21.0 - version: 3.21.0 + version: 3.22.0 '@tiptap/starter-kit': specifier: ^3.21.0 - version: 3.21.0 + version: 3.22.0 '@turbo/gen': - specifier: ^2.8.20 - version: 2.8.20 + specifier: ^2.9.1 + version: 2.9.1 '@types/node': specifier: 25.5.0 version: 25.5.0 @@ -103,7 +103,7 @@ catalogs: specifier: 7.0.11 version: 7.0.11 '@types/papaparse': - specifier: ^5.5.2 + specifier: ^5.5.0 version: 5.5.2 '@types/react': specifier: 19.2.14 @@ -120,24 +120,33 @@ catalogs: clsx: specifier: ^2.1.1 version: 2.1.1 + cmdk: + specifier: ^1.1.1 + version: 1.1.1 cross-env: specifier: ^10.0.0 version: 10.1.0 cssnano: - specifier: ^7.1.3 - version: 7.1.3 + specifier: ^7.1.4 + version: 7.1.4 date-fns: specifier: ^4.1.0 version: 4.1.0 dotenv: specifier: 17.3.1 version: 17.3.1 + embla-carousel-react: + specifier: ^8.6.0 + version: 8.6.0 exceljs: specifier: ^4.4.0 version: 4.4.0 iban: specifier: ^0.0.14 version: 0.0.14 + input-otp: + specifier: ^1.4.2 + version: 1.4.2 lucide-react: specifier: 1.7.0 version: 1.7.0 @@ -154,8 +163,8 @@ catalogs: specifier: 3.3.0 version: 3.3.0 next-safe-action: - specifier: ^8.1.8 - version: 8.1.8 + specifier: ^8.3.0 + version: 8.3.0 next-sitemap: specifier: ^4.2.3 version: 4.2.3 @@ -189,15 +198,24 @@ catalogs: react: specifier: 19.2.4 version: 19.2.4 + react-day-picker: + specifier: ^9.14.0 + version: 9.14.0 react-dom: specifier: 19.2.4 version: 19.2.4 + react-dropzone: + specifier: ^15.0.0 + version: 15.0.0 react-hook-form: specifier: 7.72.0 version: 7.72.0 react-resizable-panels: - specifier: ^4.7.6 - version: 4.7.6 + specifier: ^4.8.0 + version: 4.8.0 + react-top-loading-bar: + specifier: ^3.0.2 + version: 3.0.2 recharts: specifier: 3.7.0 version: 3.7.0 @@ -208,17 +226,17 @@ catalogs: specifier: ^0.0.1 version: 0.0.1 shadcn: - specifier: 4.1.0 - version: 4.1.0 + specifier: 4.1.1 + version: 4.1.1 sonner: specifier: ^2.0.7 version: 2.0.7 stripe: - specifier: 20.4.1 - version: 20.4.1 + specifier: 21.0.1 + version: 21.0.1 supabase: - specifier: 2.84.4 - version: 2.84.4 + specifier: 2.84.5 + version: 2.84.5 tailwind-merge: specifier: ^3.5.0 version: 3.5.0 @@ -232,8 +250,8 @@ catalogs: specifier: 8.5.1 version: 8.5.1 turbo: - specifier: 2.8.20 - version: 2.8.20 + specifier: 2.9.1 + version: 2.9.1 tw-animate-css: specifier: 1.4.0 version: 1.4.0 @@ -243,9 +261,12 @@ catalogs: urlpattern-polyfill: specifier: ^10.1.0 version: 10.1.0 + vaul: + specifier: ^1.1.2 + version: 1.1.2 vitest: - specifier: ^4.1.1 - version: 4.1.1 + specifier: ^4.1.2 + version: 4.1.2 wp-types: specifier: ^4.69.0 version: 4.69.0 @@ -268,16 +289,16 @@ importers: version: 4.3.2(react@19.2.4) '@tiptap/pm': specifier: 'catalog:' - version: 3.21.0 + version: 3.22.0 '@tiptap/react': specifier: 'catalog:' - version: 3.21.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 3.22.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@tiptap/starter-kit': specifier: 'catalog:' - version: 3.21.0 + version: 3.22.0 '@turbo/gen': specifier: 'catalog:' - version: 2.8.20(@types/node@25.5.0) + version: 2.9.1(@types/node@25.5.0) '@types/node': specifier: 'catalog:' version: 25.5.0 @@ -307,7 +328,7 @@ importers: version: 0.0.1 turbo: specifier: 'catalog:' - version: 2.8.20 + version: 2.9.1 typescript: specifier: 'catalog:' version: 6.0.2 @@ -331,7 +352,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@6.0.2) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@6.0.2) nodemailer: specifier: 'catalog:' version: 8.0.4 @@ -410,7 +431,7 @@ importers: version: 1.58.2 '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 dotenv: specifier: 'catalog:' version: 17.3.1 @@ -509,19 +530,19 @@ importers: version: link:../../packages/ui '@makerkit/data-loader-supabase-core': specifier: 'catalog:' - version: 0.0.10(@supabase/postgrest-js@2.100.0)(@supabase/supabase-js@2.100.0) + version: 0.0.10(@supabase/postgrest-js@2.101.0)(@supabase/supabase-js@2.101.0) '@makerkit/data-loader-supabase-nextjs': specifier: 'catalog:' - version: 1.2.5(@supabase/postgrest-js@2.100.0)(@supabase/supabase-js@2.100.0)(@tanstack/react-query@5.95.2(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) + version: 1.2.5(@supabase/postgrest-js@2.101.0)(@supabase/supabase-js@2.101.0)(@tanstack/react-query@5.95.2(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) '@marsidev/react-turnstile': specifier: 'catalog:' - version: 1.4.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 1.5.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@nosecone/next': specifier: 'catalog:' - version: 1.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + version: 1.3.1(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) @@ -545,16 +566,16 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@6.0.2) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@6.0.2) next-runtime-env: specifier: 'catalog:' version: 3.3.0(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-sitemap: specifier: 'catalog:' - version: 4.2.3(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + version: 4.2.3(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) next-themes: specifier: 'catalog:' version: 0.4.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -618,13 +639,13 @@ importers: version: 1.0.0 cssnano: specifier: 'catalog:' - version: 7.1.3(postcss@8.5.8) + version: 7.1.4(postcss@8.5.8) pino-pretty: specifier: 'catalog:' version: 13.0.0 supabase: specifier: 'catalog:' - version: 2.84.4 + version: 2.84.5 tailwindcss: specifier: 'catalog:' version: 4.2.2 @@ -684,7 +705,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -699,7 +720,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react: specifier: 'catalog:' version: 19.2.4 @@ -748,13 +769,13 @@ importers: dependencies: '@stripe/react-stripe-js': specifier: 'catalog:' - version: 5.6.1(@stripe/stripe-js@8.11.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 6.1.0(@stripe/stripe-js@9.0.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@stripe/stripe-js': specifier: 'catalog:' - version: 8.11.0 + version: 9.0.1 stripe: specifier: 'catalog:' - version: 20.4.1(@types/node@25.5.0) + version: 21.0.1(@types/node@25.5.0) devDependencies: '@kit/billing': specifier: workspace:* @@ -812,13 +833,13 @@ importers: dependencies: '@keystatic/core': specifier: 'catalog:' - version: 0.5.49(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 0.5.50(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@keystatic/next': specifier: 'catalog:' - version: 5.0.4(@keystatic/core@0.5.49(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 5.0.4(@keystatic/core@0.5.50(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@markdoc/markdoc': specifier: 'catalog:' - version: 0.5.6(@types/react@19.2.14)(react@19.2.4) + version: 0.5.7(@types/react@19.2.14)(react@19.2.4) devDependencies: '@kit/cms-types': specifier: workspace:* @@ -885,7 +906,7 @@ importers: version: link:../../tooling/typescript '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 zod: specifier: 'catalog:' version: 4.3.6 @@ -904,7 +925,7 @@ importers: version: 19.2.14 next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react: specifier: 'catalog:' version: 19.2.4 @@ -956,7 +977,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) @@ -974,10 +995,10 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-themes: specifier: 'catalog:' version: 0.4.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -1016,13 +1037,13 @@ importers: version: link:../../ui '@makerkit/data-loader-supabase-core': specifier: 'catalog:' - version: 0.0.10(@supabase/postgrest-js@2.100.0)(@supabase/supabase-js@2.100.0) + version: 0.0.10(@supabase/postgrest-js@2.101.0)(@supabase/supabase-js@2.101.0) '@makerkit/data-loader-supabase-nextjs': specifier: 'catalog:' - version: 1.2.5(@supabase/postgrest-js@2.100.0)(@supabase/supabase-js@2.100.0)(@tanstack/react-query@5.95.2(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) + version: 1.2.5(@supabase/postgrest-js@2.101.0)(@supabase/supabase-js@2.101.0)(@tanstack/react-query@5.95.2(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) @@ -1040,7 +1061,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1073,10 +1094,10 @@ importers: version: link:../../ui '@marsidev/react-turnstile': specifier: 'catalog:' - version: 1.4.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 1.5.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) @@ -1091,7 +1112,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react-hook-form: specifier: 'catalog:' version: 7.72.0(react@19.2.4) @@ -1124,7 +1145,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1133,7 +1154,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1166,7 +1187,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1175,7 +1196,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1205,7 +1226,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1214,7 +1235,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1244,7 +1265,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1253,7 +1274,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1286,7 +1307,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1295,7 +1316,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1328,7 +1349,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1340,7 +1361,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1376,7 +1397,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/papaparse': specifier: 'catalog:' version: 5.5.2 @@ -1391,7 +1412,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) papaparse: specifier: 'catalog:' version: 5.5.3 @@ -1424,7 +1445,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1433,7 +1454,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1466,7 +1487,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1475,7 +1496,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1503,7 +1524,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) @@ -1515,7 +1536,7 @@ importers: version: 1.7.0(react@19.2.4) next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react: specifier: 'catalog:' version: 19.2.4 @@ -1548,7 +1569,7 @@ importers: version: 0.20.2(@types/react@19.2.14)(immer@11.1.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1560,7 +1581,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1593,7 +1614,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1605,7 +1626,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1663,7 +1684,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) @@ -1690,10 +1711,10 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1729,7 +1750,7 @@ importers: version: link:../../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1741,7 +1762,7 @@ importers: version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -1759,7 +1780,7 @@ importers: dependencies: next-intl: specifier: 'catalog:' - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) devDependencies: '@kit/shared': specifier: workspace:* @@ -1860,13 +1881,13 @@ importers: version: 3.4.8 tsup: specifier: 'catalog:' - version: 8.5.1(@swc/core@1.15.18(@swc/helpers@0.5.19))(jiti@2.6.1)(postcss@8.5.8)(typescript@6.0.2) + version: 8.5.1(@swc/core@1.15.18(@swc/helpers@0.5.20))(jiti@2.6.1)(postcss@8.5.8)(typescript@6.0.2) typescript: specifier: 'catalog:' version: 6.0.2 vitest: specifier: 'catalog:' - version: 4.1.1(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) + version: 4.1.2(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) zod: specifier: 'catalog:' version: 4.3.6 @@ -1930,7 +1951,7 @@ importers: dependencies: next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) devDependencies: '@kit/auth': specifier: workspace:* @@ -1946,7 +1967,7 @@ importers: version: link:../../tooling/typescript '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 next: specifier: 'catalog:' version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -1982,7 +2003,7 @@ importers: version: link:../ui '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@types/react': specifier: 'catalog:' version: 19.2.14 @@ -1994,7 +2015,7 @@ importers: version: 1.7.0(react@19.2.4) next-safe-action: specifier: 'catalog:' - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: 'catalog:' version: 19.2.4 @@ -2022,9 +2043,6 @@ importers: packages/shared: dependencies: - date-fns: - specifier: 'catalog:' - version: 4.1.0 next-runtime-env: specifier: 'catalog:' version: 3.3.0(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) @@ -2050,10 +2068,10 @@ importers: version: link:../../tooling/typescript '@supabase/ssr': specifier: 'catalog:' - version: 0.9.0(@supabase/supabase-js@2.100.0) + version: 0.10.0(@supabase/supabase-js@2.101.0) '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) @@ -2073,43 +2091,43 @@ importers: packages/ui: dependencies: '@base-ui/react': - specifier: ^1.3.0 + specifier: 'catalog:' version: 1.3.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@hookform/resolvers': - specifier: ^5.2.2 + specifier: 'catalog:' version: 5.2.2(react-hook-form@7.72.0(react@19.2.4)) '@kit/shared': specifier: workspace:* version: link:../shared clsx: - specifier: ^2.1.1 + specifier: 'catalog:' version: 2.1.1 cmdk: - specifier: ^1.1.1 + specifier: 'catalog:' version: 1.1.1(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) embla-carousel-react: - specifier: ^8.6.0 + specifier: 'catalog:' version: 8.6.0(react@19.2.4) input-otp: - specifier: ^1.4.2 + specifier: 'catalog:' version: 1.4.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) lucide-react: specifier: 'catalog:' version: 1.7.0(react@19.2.4) react-dropzone: - specifier: ^15.0.0 + specifier: 'catalog:' version: 15.0.0(react@19.2.4) react-resizable-panels: specifier: 'catalog:' - version: 4.7.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 4.8.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react-top-loading-bar: - specifier: ^3.0.2 + specifier: 'catalog:' version: 3.0.2(react@19.2.4) recharts: - specifier: 3.7.0 + specifier: 'catalog:' version: 3.7.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react-is@16.13.1)(react@19.2.4)(redux@5.0.1) tailwind-merge: - specifier: ^3.5.0 + specifier: 'catalog:' version: 3.5.0 devDependencies: '@kit/i18n': @@ -2120,12 +2138,12 @@ importers: version: link:../../tooling/typescript '@supabase/supabase-js': specifier: 'catalog:' - version: 2.100.0 + version: 2.101.0 '@tanstack/react-query': specifier: 'catalog:' version: 5.95.2(react@19.2.4) '@tanstack/react-table': - specifier: ^8.21.3 + specifier: 'catalog:' version: 8.21.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@types/react': specifier: 'catalog:' @@ -2134,44 +2152,44 @@ importers: specifier: 'catalog:' version: 19.2.3(@types/react@19.2.14) class-variance-authority: - specifier: ^0.7.1 + specifier: 'catalog:' version: 0.7.1 date-fns: - specifier: ^4.1.0 + specifier: 'catalog:' version: 4.1.0 next: specifier: 'catalog:' version: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-intl: - specifier: ^4.8.3 - version: 4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + specifier: 'catalog:' + version: 4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3) next-safe-action: - specifier: ^8.1.8 - version: 8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: 'catalog:' + version: 8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-themes: - specifier: 0.4.6 + specifier: 'catalog:' version: 0.4.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react-day-picker: - specifier: ^9.14.0 + specifier: 'catalog:' version: 9.14.0(react@19.2.4) react-hook-form: specifier: 'catalog:' version: 7.72.0(react@19.2.4) shadcn: specifier: 'catalog:' - version: 4.1.0(@types/node@25.5.0)(babel-plugin-macros@3.1.0)(typescript@5.9.3) + version: 4.1.1(@types/node@25.5.0)(babel-plugin-macros@3.1.0)(typescript@5.9.3) sonner: - specifier: ^2.0.7 + specifier: 'catalog:' version: 2.0.7(react-dom@19.2.4(react@19.2.4))(react@19.2.4) tailwindcss: specifier: 'catalog:' version: 4.2.2 vaul: - specifier: ^1.1.2 + specifier: 'catalog:' version: 1.1.2(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) vitest: specifier: 'catalog:' - version: 4.1.1(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) + version: 4.1.2(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) zod: specifier: 'catalog:' version: 4.3.6 @@ -2360,6 +2378,9 @@ packages: '@braintree/sanitize-url@6.0.4': resolution: {integrity: sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==} + '@colordx/core@5.0.0': + resolution: {integrity: sha512-twwxohWH8hWWh5ZJ5z6ZNn/JyMrq08K+NzxXKVGTpH+XmMPDAYYzqvszc3OPhYhqqxmfnbCSa/YHcS7pCnChmw==} + '@corex/deepmerge@4.0.43': resolution: {integrity: sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ==} @@ -2394,8 +2415,8 @@ packages: '@dnd-kit/state@0.1.21': resolution: {integrity: sha512-pdhntEPvn/QttcF295bOJpWiLsRqA/Iczh1ODOJUxGiR+E4GkYVz9VapNNm9gDq6ST0tr/e1Q2xBztUHlJqQgA==} - '@dotenvx/dotenvx@1.57.2': - resolution: {integrity: sha512-lv9+UZPnl/KOvShepevLWm3+/wc1It5kgO5Q580evnvOFMZcgKVEYFwxlL7Ohl9my1yjTsWo28N3PJYUEO8wFQ==} + '@dotenvx/dotenvx@1.59.1': + resolution: {integrity: sha512-Qg+meC+XFxliuVSDlEPkKnaUjdaJKK6FNx/Wwl2UxhQR8pyPIuLhMavsF7ePdB9qFZUWV1jEK3ckbJir/WmF4w==} hasBin: true '@ecies/ciphers@0.2.5': @@ -2988,6 +3009,12 @@ packages: peerDependencies: hono: ^4 + '@hono/node-server@1.19.12': + resolution: {integrity: sha512-txsUW4SQ1iilgE0l9/e9VQWmELXifEFvmdA1j6WFh/aFPj99hIntrSsq/if0UWyGVkmrRPKA1wCeP+UCr1B9Uw==} + engines: {node: '>=18.14.1'} + peerDependencies: + hono: ^4 + '@hookform/resolvers@5.2.2': resolution: {integrity: sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA==} peerDependencies: @@ -3318,8 +3345,8 @@ packages: '@juggle/resize-observer@3.4.0': resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==} - '@keystar/ui@0.7.20': - resolution: {integrity: sha512-TOxAdbUsHKt0ssd7O32LRdYkIoYVnVeUx2M2NBzgOGgO11+xY9vQavQrZz/48ust1t4zNrsYKcdHPA2Yvtauew==} + '@keystar/ui@0.7.21': + resolution: {integrity: sha512-DgAfdtcieYMMG5S0EaGf/F8T8e5nol9iLfZqIZOXHkjnc7UBHY3qHea2Zzd0hUrIoAcXiv4JyCtAND0vNKjJYA==} peerDependencies: next: '>=14' react: ^18.2.0 || ^19.0.0 @@ -3328,8 +3355,8 @@ packages: next: optional: true - '@keystatic/core@0.5.49': - resolution: {integrity: sha512-joEggE0CWj7+G96CW7hpam1A0jHb+Fw773UOF9sRT2UBx22nQg7YgO/dOA8ZhKeAycqCwCR4suOu2hDnQgE1IA==} + '@keystatic/core@0.5.50': + resolution: {integrity: sha512-ilgG9hw1iWZsT8iCV+1WFX1VNo6eK+iHIs61x4vRtce6SstKad6ib7BLhXEP41Q8ja6JIKWXvv6qBPVumyy88Q==} peerDependencies: react: ^18.2.0 || ^19.0.0 react-dom: ^18.2.0 || ^19.0.0 @@ -3389,8 +3416,8 @@ packages: react: optional: true - '@markdoc/markdoc@0.5.6': - resolution: {integrity: sha512-Qs7L5YKYHADWhpOP1JthE3E5ut4Mby/UsJKsGla3g8OXBLWDImTsG5H+Mzq5h3J6a8CNnGtp+Kz9JcGtHRpoKA==} + '@markdoc/markdoc@0.5.7': + resolution: {integrity: sha512-NxreNThm7foFgMMQD6zgk7rKkcFMmdC8J5r+Zn4FKoN75F5YjvwdihwF11VhrBfL3CXnD4+YG1VYwvBL+igzvw==} engines: {node: '>=14.7.0'} peerDependencies: '@types/react': '*' @@ -3401,8 +3428,8 @@ packages: react: optional: true - '@marsidev/react-turnstile@1.4.2': - resolution: {integrity: sha512-xs1qOuyeMOz6t9BXXCXWiukC0/0+48vR08B7uwNdG05wCMnbcNgxiFmdFKDOFbM76qFYFRYlGeRfhfq1U/iZmA==} + '@marsidev/react-turnstile@1.5.0': + resolution: {integrity: sha512-Ph6mcj8u9WBDsBO7s9jKPsyRDz1sBPBJwrk+Ngx09vFInvKsQ6U6kW5amEcGq4dHOreB6DgFrOJk7/fy318YlQ==} peerDependencies: react: ^17.0.2 || ^18.0.0 || ^19.0 react-dom: ^17.0.2 || ^18.0.0 || ^19.0 @@ -3423,6 +3450,16 @@ packages: '@cfworker/json-schema': optional: true + '@modelcontextprotocol/sdk@1.29.0': + resolution: {integrity: sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ==} + engines: {node: '>=18'} + peerDependencies: + '@cfworker/json-schema': ^4.1.1 + zod: ^3.25 || ^4.0 + peerDependenciesMeta: + '@cfworker/json-schema': + optional: true + '@mswjs/interceptors@0.41.3': resolution: {integrity: sha512-cXu86tF4VQVfwz8W1SPbhoRyHJkti6mjH/XJIxp40jhO4j2k1m4KYrEykxqWPkFF3vrK4rgQppBh//AwyGSXPA==} engines: {node: '>=18'} @@ -3512,8 +3549,8 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@nosecone/next@1.3.0': - resolution: {integrity: sha512-/vk7V4c9CRNdFyrG2Lr4VsImUYSIUzSFOZwXsUIOIIE+Hr8iMaysjZ+/8Yodhk/tbM89bwxNj5uwWN4Y4jOW3w==} + '@nosecone/next@1.3.1': + resolution: {integrity: sha512-k4BOWLsHra04XtZFzeAtMFh9IbE8ZdvgkKgJoBLOTYHTV6svZnwMver4wizNrZudCXcA7cokLb0lMOICw4n3pQ==} engines: {node: '>=20'} peerDependencies: next: '>=14' @@ -4092,8 +4129,8 @@ packages: '@polka/url@1.0.0-next.29': resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} - '@preact/signals-core@1.14.0': - resolution: {integrity: sha512-AowtCcCU/33lFlh1zRFf/u+12rfrhtNakj7UpaGEsmMwUKpKWMVvcktOGcwBBNiB4lWrZWc01LhiyyzVklJyaQ==} + '@preact/signals-core@1.14.1': + resolution: {integrity: sha512-vxPpfXqrwUe9lpjqfYNjAF/0RF/eFGeLgdJzdmIIZjpOnTmGmAB4BjWone562mJGMRP4frU6iZ6ei3PDsu52Ng==} '@prisma/instrumentation@7.4.2': resolution: {integrity: sha512-r9JfchJF1Ae6yAxcaLu/V1TGqBhAuSDe3mRNOssBfx1rMzfZ4fdNvrgUBwyb/TNTGXFxlH9AZix5P257x07nrg==} @@ -5063,6 +5100,11 @@ packages: cpu: [arm] os: [android] + '@rollup/rollup-android-arm-eabi@4.60.1': + resolution: {integrity: sha512-d6FinEBLdIiK+1uACUttJKfgZREXrF0Qc2SmLII7W2AD8FfiZ9Wjd+rD/iRuf5s5dWrr1GgwXCvPqOuDquOowA==} + cpu: [arm] + os: [android] + '@rollup/rollup-android-arm64@4.59.0': resolution: {integrity: sha512-hZ+Zxj3SySm4A/DylsDKZAeVg0mvi++0PYVceVyX7hemkw7OreKdCvW2oQ3T1FMZvCaQXqOTHb8qmBShoqk69Q==} cpu: [arm64] @@ -5073,6 +5115,11 @@ packages: cpu: [arm64] os: [android] + '@rollup/rollup-android-arm64@4.60.1': + resolution: {integrity: sha512-YjG/EwIDvvYI1YvYbHvDz/BYHtkY4ygUIXHnTdLhG+hKIQFBiosfWiACWortsKPKU/+dUwQQCKQM3qrDe8c9BA==} + cpu: [arm64] + os: [android] + '@rollup/rollup-darwin-arm64@4.59.0': resolution: {integrity: sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg==} cpu: [arm64] @@ -5083,6 +5130,11 @@ packages: cpu: [arm64] os: [darwin] + '@rollup/rollup-darwin-arm64@4.60.1': + resolution: {integrity: sha512-mjCpF7GmkRtSJwon+Rq1N8+pI+8l7w5g9Z3vWj4T7abguC4Czwi3Yu/pFaLvA3TTeMVjnu3ctigusqWUfjZzvw==} + cpu: [arm64] + os: [darwin] + '@rollup/rollup-darwin-x64@4.59.0': resolution: {integrity: sha512-ZW2KkwlS4lwTv7ZVsYDiARfFCnSGhzYPdiOU4IM2fDbL+QGlyAbjgSFuqNRbSthybLbIJ915UtZBtmuLrQAT/w==} cpu: [x64] @@ -5093,6 +5145,11 @@ packages: cpu: [x64] os: [darwin] + '@rollup/rollup-darwin-x64@4.60.1': + resolution: {integrity: sha512-haZ7hJ1JT4e9hqkoT9R/19XW2QKqjfJVv+i5AGg57S+nLk9lQnJ1F/eZloRO3o9Scy9CM3wQ9l+dkXtcBgN5Ew==} + cpu: [x64] + os: [darwin] + '@rollup/rollup-freebsd-arm64@4.59.0': resolution: {integrity: sha512-EsKaJ5ytAu9jI3lonzn3BgG8iRBjV4LxZexygcQbpiU0wU0ATxhNVEpXKfUa0pS05gTcSDMKpn3Sx+QB9RlTTA==} cpu: [arm64] @@ -5103,6 +5160,11 @@ packages: cpu: [arm64] os: [freebsd] + '@rollup/rollup-freebsd-arm64@4.60.1': + resolution: {integrity: sha512-czw90wpQq3ZsAVBlinZjAYTKduOjTywlG7fEeWKUA7oCmpA8xdTkxZZlwNJKWqILlq0wehoZcJYfBvOyhPTQ6w==} + cpu: [arm64] + os: [freebsd] + '@rollup/rollup-freebsd-x64@4.59.0': resolution: {integrity: sha512-d3DuZi2KzTMjImrxoHIAODUZYoUUMsuUiY4SRRcJy6NJoZ6iIqWnJu9IScV9jXysyGMVuW+KNzZvBLOcpdl3Vg==} cpu: [x64] @@ -5113,6 +5175,11 @@ packages: cpu: [x64] os: [freebsd] + '@rollup/rollup-freebsd-x64@4.60.1': + resolution: {integrity: sha512-KVB2rqsxTHuBtfOeySEyzEOB7ltlB/ux38iu2rBQzkjbwRVlkhAGIEDiiYnO2kFOkJp+Z7pUXKyrRRFuFUKt+g==} + cpu: [x64] + os: [freebsd] + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} cpu: [arm] @@ -5125,6 +5192,12 @@ packages: os: [linux] libc: [glibc] + '@rollup/rollup-linux-arm-gnueabihf@4.60.1': + resolution: {integrity: sha512-L+34Qqil+v5uC0zEubW7uByo78WOCIrBvci69E7sFASRl0X7b/MB6Cqd1lky/CtcSVTydWa2WZwFuWexjS5o6g==} + cpu: [arm] + os: [linux] + libc: [glibc] + '@rollup/rollup-linux-arm-musleabihf@4.59.0': resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} cpu: [arm] @@ -5137,6 +5210,12 @@ packages: os: [linux] libc: [musl] + '@rollup/rollup-linux-arm-musleabihf@4.60.1': + resolution: {integrity: sha512-n83O8rt4v34hgFzlkb1ycniJh7IR5RCIqt6mz1VRJD6pmhRi0CXdmfnLu9dIUS6buzh60IvACM842Ffb3xd6Gg==} + cpu: [arm] + os: [linux] + libc: [musl] + '@rollup/rollup-linux-arm64-gnu@4.59.0': resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} cpu: [arm64] @@ -5149,6 +5228,12 @@ packages: os: [linux] libc: [glibc] + '@rollup/rollup-linux-arm64-gnu@4.60.1': + resolution: {integrity: sha512-Nql7sTeAzhTAja3QXeAI48+/+GjBJ+QmAH13snn0AJSNL50JsDqotyudHyMbO2RbJkskbMbFJfIJKWA6R1LCJQ==} + cpu: [arm64] + os: [linux] + libc: [glibc] + '@rollup/rollup-linux-arm64-musl@4.59.0': resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} cpu: [arm64] @@ -5161,6 +5246,12 @@ packages: os: [linux] libc: [musl] + '@rollup/rollup-linux-arm64-musl@4.60.1': + resolution: {integrity: sha512-+pUymDhd0ys9GcKZPPWlFiZ67sTWV5UU6zOJat02M1+PiuSGDziyRuI/pPue3hoUwm2uGfxdL+trT6Z9rxnlMA==} + cpu: [arm64] + os: [linux] + libc: [musl] + '@rollup/rollup-linux-loong64-gnu@4.59.0': resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} cpu: [loong64] @@ -5173,6 +5264,12 @@ packages: os: [linux] libc: [glibc] + '@rollup/rollup-linux-loong64-gnu@4.60.1': + resolution: {integrity: sha512-VSvgvQeIcsEvY4bKDHEDWcpW4Yw7BtlKG1GUT4FzBUlEKQK0rWHYBqQt6Fm2taXS+1bXvJT6kICu5ZwqKCnvlQ==} + cpu: [loong64] + os: [linux] + libc: [glibc] + '@rollup/rollup-linux-loong64-musl@4.59.0': resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} cpu: [loong64] @@ -5185,6 +5282,12 @@ packages: os: [linux] libc: [musl] + '@rollup/rollup-linux-loong64-musl@4.60.1': + resolution: {integrity: sha512-4LqhUomJqwe641gsPp6xLfhqWMbQV04KtPp7/dIp0nzPxAkNY1AbwL5W0MQpcalLYk07vaW9Kp1PBhdpZYYcEw==} + cpu: [loong64] + os: [linux] + libc: [musl] + '@rollup/rollup-linux-ppc64-gnu@4.59.0': resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} cpu: [ppc64] @@ -5197,6 +5300,12 @@ packages: os: [linux] libc: [glibc] + '@rollup/rollup-linux-ppc64-gnu@4.60.1': + resolution: {integrity: sha512-tLQQ9aPvkBxOc/EUT6j3pyeMD6Hb8QF2BTBnCQWP/uu1lhc9AIrIjKnLYMEroIz/JvtGYgI9dF3AxHZNaEH0rw==} + cpu: [ppc64] + os: [linux] + libc: [glibc] + '@rollup/rollup-linux-ppc64-musl@4.59.0': resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} cpu: [ppc64] @@ -5209,6 +5318,12 @@ packages: os: [linux] libc: [musl] + '@rollup/rollup-linux-ppc64-musl@4.60.1': + resolution: {integrity: sha512-RMxFhJwc9fSXP6PqmAz4cbv3kAyvD1etJFjTx4ONqFP9DkTkXsAMU4v3Vyc5BgzC+anz7nS/9tp4obsKfqkDHg==} + cpu: [ppc64] + os: [linux] + libc: [musl] + '@rollup/rollup-linux-riscv64-gnu@4.59.0': resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} cpu: [riscv64] @@ -5221,6 +5336,12 @@ packages: os: [linux] libc: [glibc] + '@rollup/rollup-linux-riscv64-gnu@4.60.1': + resolution: {integrity: sha512-QKgFl+Yc1eEk6MmOBfRHYF6lTxiiiV3/z/BRrbSiW2I7AFTXoBFvdMEyglohPj//2mZS4hDOqeB0H1ACh3sBbg==} + cpu: [riscv64] + os: [linux] + libc: [glibc] + '@rollup/rollup-linux-riscv64-musl@4.59.0': resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} cpu: [riscv64] @@ -5233,6 +5354,12 @@ packages: os: [linux] libc: [musl] + '@rollup/rollup-linux-riscv64-musl@4.60.1': + resolution: {integrity: sha512-RAjXjP/8c6ZtzatZcA1RaQr6O1TRhzC+adn8YZDnChliZHviqIjmvFwHcxi4JKPSDAt6Uhf/7vqcBzQJy0PDJg==} + cpu: [riscv64] + os: [linux] + libc: [musl] + '@rollup/rollup-linux-s390x-gnu@4.59.0': resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} cpu: [s390x] @@ -5245,6 +5372,12 @@ packages: os: [linux] libc: [glibc] + '@rollup/rollup-linux-s390x-gnu@4.60.1': + resolution: {integrity: sha512-wcuocpaOlaL1COBYiA89O6yfjlp3RwKDeTIA0hM7OpmhR1Bjo9j31G1uQVpDlTvwxGn2nQs65fBFL5UFd76FcQ==} + cpu: [s390x] + os: [linux] + libc: [glibc] + '@rollup/rollup-linux-x64-gnu@4.59.0': resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} cpu: [x64] @@ -5257,6 +5390,12 @@ packages: os: [linux] libc: [glibc] + '@rollup/rollup-linux-x64-gnu@4.60.1': + resolution: {integrity: sha512-77PpsFQUCOiZR9+LQEFg9GClyfkNXj1MP6wRnzYs0EeWbPcHs02AXu4xuUbM1zhwn3wqaizle3AEYg5aeoohhg==} + cpu: [x64] + os: [linux] + libc: [glibc] + '@rollup/rollup-linux-x64-musl@4.59.0': resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} cpu: [x64] @@ -5269,6 +5408,12 @@ packages: os: [linux] libc: [musl] + '@rollup/rollup-linux-x64-musl@4.60.1': + resolution: {integrity: sha512-5cIATbk5vynAjqqmyBjlciMJl1+R/CwX9oLk/EyiFXDWd95KpHdrOJT//rnUl4cUcskrd0jCCw3wpZnhIHdD9w==} + cpu: [x64] + os: [linux] + libc: [musl] + '@rollup/rollup-openbsd-x64@4.59.0': resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} cpu: [x64] @@ -5279,6 +5424,11 @@ packages: cpu: [x64] os: [openbsd] + '@rollup/rollup-openbsd-x64@4.60.1': + resolution: {integrity: sha512-cl0w09WsCi17mcmWqqglez9Gk8isgeWvoUZ3WiJFYSR3zjBQc2J5/ihSjpl+VLjPqjQ/1hJRcqBfLjssREQILw==} + cpu: [x64] + os: [openbsd] + '@rollup/rollup-openharmony-arm64@4.59.0': resolution: {integrity: sha512-tt9KBJqaqp5i5HUZzoafHZX8b5Q2Fe7UjYERADll83O4fGqJ49O1FsL6LpdzVFQcpwvnyd0i+K/VSwu/o/nWlA==} cpu: [arm64] @@ -5289,6 +5439,11 @@ packages: cpu: [arm64] os: [openharmony] + '@rollup/rollup-openharmony-arm64@4.60.1': + resolution: {integrity: sha512-4Cv23ZrONRbNtbZa37mLSueXUCtN7MXccChtKpUnQNgF010rjrjfHx3QxkS2PI7LqGT5xXyYs1a7LbzAwT0iCA==} + cpu: [arm64] + os: [openharmony] + '@rollup/rollup-win32-arm64-msvc@4.59.0': resolution: {integrity: sha512-V5B6mG7OrGTwnxaNUzZTDTjDS7F75PO1ae6MJYdiMu60sq0CqN5CVeVsbhPxalupvTX8gXVSU9gq+Rx1/hvu6A==} cpu: [arm64] @@ -5299,6 +5454,11 @@ packages: cpu: [arm64] os: [win32] + '@rollup/rollup-win32-arm64-msvc@4.60.1': + resolution: {integrity: sha512-i1okWYkA4FJICtr7KpYzFpRTHgy5jdDbZiWfvny21iIKky5YExiDXP+zbXzm3dUcFpkEeYNHgQ5fuG236JPq0g==} + cpu: [arm64] + os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.59.0': resolution: {integrity: sha512-UKFMHPuM9R0iBegwzKF4y0C4J9u8C6MEJgFuXTBerMk7EJ92GFVFYBfOZaSGLu6COf7FxpQNqhNS4c4icUPqxA==} cpu: [ia32] @@ -5309,6 +5469,11 @@ packages: cpu: [ia32] os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.60.1': + resolution: {integrity: sha512-u09m3CuwLzShA0EYKMNiFgcjjzwqtUMLmuCJLeZWjjOYA3IT2Di09KaxGBTP9xVztWyIWjVdsB2E9goMjZvTQg==} + cpu: [ia32] + os: [win32] + '@rollup/rollup-win32-x64-gnu@4.59.0': resolution: {integrity: sha512-laBkYlSS1n2L8fSo1thDNGrCTQMmxjYY5G0WFWjFFYZkKPjsMBsgJfGf4TLxXrF6RyhI60L8TMOjBMvXiTcxeA==} cpu: [x64] @@ -5319,6 +5484,11 @@ packages: cpu: [x64] os: [win32] + '@rollup/rollup-win32-x64-gnu@4.60.1': + resolution: {integrity: sha512-k+600V9Zl1CM7eZxJgMyTUzmrmhB/0XZnF4pRypKAlAgxmedUA+1v9R+XOFv56W4SlHEzfeMtzujLJD22Uz5zg==} + cpu: [x64] + os: [win32] + '@rollup/rollup-win32-x64-msvc@4.59.0': resolution: {integrity: sha512-2HRCml6OztYXyJXAvdDXPKcawukWY2GpR5/nxKp4iBgiO3wcoEGkAaqctIbZcNB6KlUQBIqt8VYkNSj2397EfA==} cpu: [x64] @@ -5329,6 +5499,11 @@ packages: cpu: [x64] os: [win32] + '@rollup/rollup-win32-x64-msvc@4.60.1': + resolution: {integrity: sha512-lWMnixq/QzxyhTV6NjQJ4SFo1J6PvOX8vUx5Wb4bBPsEb+8xZ89Bz6kOXpfXj9ak9AHTQVQzlgzBEc1SyM27xQ==} + cpu: [x64] + os: [win32] + '@schummar/icu-type-parser@1.21.5': resolution: {integrity: sha512-bXHSaW5jRTmke9Vd0h5P7BtWZG9Znqb8gSDxZnxaGSJnGwPLDPfS+3g0BKzeWqzgZPsIVZkM7m2tbo18cm5HBw==} @@ -5503,47 +5678,47 @@ packages: '@standard-schema/utils@0.3.0': resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==} - '@stripe/react-stripe-js@5.6.1': - resolution: {integrity: sha512-5xBrjkGmFvKvpMod6VvpOaFaa67eRbmieKeFTePZyOr/sUXzm7A3YY91l330pS0usUst5PxTZDUZHWfOc0v1GA==} + '@stripe/react-stripe-js@6.1.0': + resolution: {integrity: sha512-LbKbRv4+wUSHLb5VNxqiYcKaqXPvTju0bJaF0RrzH0h4+aKWDXAk4RzUBcpNxxj8KtjuxICElANs1Li7aTv1IQ==} peerDependencies: - '@stripe/stripe-js': '>=8.0.0 <9.0.0' + '@stripe/stripe-js': '>=9.0.0 <10.0.0' react: '>=16.8.0 <20.0.0' react-dom: '>=16.8.0 <20.0.0' - '@stripe/stripe-js@8.11.0': - resolution: {integrity: sha512-3fVF4z3efsgwgyj64nFK+6F4/vMw0mUXD2TBbOfftJtKVNx4JNv3CSfe1fY4DCtCk0JFp8/YPNcRkzgV0HJ8cg==} + '@stripe/stripe-js@9.0.1': + resolution: {integrity: sha512-un0URSosrW7wNr7xZ5iI2mC9mdeXZ3KERoVlA2RdmeLXYxHUPXq0yHzir2n/MtyXXEdSaELtz4WXGS6dzPEeKA==} engines: {node: '>=12.16'} - '@supabase/auth-js@2.100.0': - resolution: {integrity: sha512-pdT3ye3UVRN1Cg0wom6BmyY+XTtp5DiJaYnPi6j8ht5i8Lq8kfqxJMJz9GI9YDKk3w1nhGOPnh6Qz5qpyYm+1w==} + '@supabase/auth-js@2.101.0': + resolution: {integrity: sha512-00v22bzJ1LvLPQFZ8OKV5Qb1z2UkglyADQPh3PWcvUvHgAL86FdQrtMu6FewjU0CeROMpWQ4F/ExYhKKK45D0Q==} engines: {node: '>=20.0.0'} - '@supabase/functions-js@2.100.0': - resolution: {integrity: sha512-keLg79RPwP+uiwHuxFPTFgDRxPV46LM4j/swjyR2GKJgWniTVSsgiBHfbIBDcrQwehLepy09b/9QSHUywtKRWQ==} + '@supabase/functions-js@2.101.0': + resolution: {integrity: sha512-oEdCj5GmIGQwjII1fcbb/+hvUF94ZQmeFmFRoToz5Gbf2T8KPTX4vtanUmED+ekTB9Tyfap1IXFUx7klQprIaw==} engines: {node: '>=20.0.0'} '@supabase/phoenix@0.4.0': resolution: {integrity: sha512-RHSx8bHS02xwfHdAbX5Lpbo6PXbgyf7lTaXTlwtFDPwOIw64NnVRwFAXGojHhjtVYI+PEPNSWwkL90f4agN3bw==} - '@supabase/postgrest-js@2.100.0': - resolution: {integrity: sha512-xYNvNbBJaXOGcrZ44wxwp5830uo1okMHGS8h8dm3u4f0xcZ39yzbryUsubTJW41MG2gbL/6U57cA4Pi6YMZ9pA==} + '@supabase/postgrest-js@2.101.0': + resolution: {integrity: sha512-CJVsIdzRkEwH5F1NAwVq/Ewh0T/LpEpYro5hQKhfRqtZ6ghUnH0TCaA4PgyCCSWjESTqAuocBmX4ajlVK/1BPg==} engines: {node: '>=20.0.0'} - '@supabase/realtime-js@2.100.0': - resolution: {integrity: sha512-2AZs00zzEF0HuCKY8grz5eCYlwEfVi5HONLZFoNR6aDfxQivl8zdQYNjyFoqN2MZiVhQHD7u6XV/xHwM8mCEHw==} + '@supabase/realtime-js@2.101.0': + resolution: {integrity: sha512-Y2sSZhP8QtIukIJEAUPavP5LPmAKVwyuZqdAua68ECFoqiFxNZFCaxglzaeEaSg22rba9TN83n+tnP5gnQuQrg==} engines: {node: '>=20.0.0'} - '@supabase/ssr@0.9.0': - resolution: {integrity: sha512-UFY6otYV3yqCgV+AyHj80vNkTvbf1Gas2LW4dpbQ4ap6p6v3eB2oaDfcI99jsuJzwVBCFU4BJI+oDYyhNk1z0Q==} + '@supabase/ssr@0.10.0': + resolution: {integrity: sha512-36jIu+DuKzg5EgA3fnH+zHvwASvpKcL4zPgmHoZaULroS5Q4mzeHcM69zJ0sXUHddO5IcHjQNZJ9Vyhl/DdbRw==} peerDependencies: - '@supabase/supabase-js': ^2.97.0 + '@supabase/supabase-js': ^2.100.1 - '@supabase/storage-js@2.100.0': - resolution: {integrity: sha512-d4EeuK6RNIgYNA2MU9kj8lQrLm5AzZ+WwpWjGkii6SADQNIGTC/uiaTRu02XJ5AmFALQfo8fLl9xuCkO6Xw+iQ==} + '@supabase/storage-js@2.101.0': + resolution: {integrity: sha512-bFw/kBR4bfOGc2L6DjD+mC+dDsEurvQXg+QVcbFg0uDFiSREfUjjwSUtz+pkLFuu75Uy1/KzHzB2L+WpoJ9fCA==} engines: {node: '>=20.0.0'} - '@supabase/supabase-js@2.100.0': - resolution: {integrity: sha512-r0tlcukejJXJ1m/2eG/Ya5eYs4W8AC7oZfShpG3+SIo/eIU9uIt76ZeYI1SoUwUmcmzlAbgch+HDZDR/toVQPQ==} + '@supabase/supabase-js@2.101.0': + resolution: {integrity: sha512-SIFrI4Fqny+dlUNkzXQjLP6HOxTPjmEPjZc1C4MCL/naeBKNJc+h/ExxkOtGcY8nDt6BZmVSB7Hb4PSzVEUWKg==} engines: {node: '>=20.0.0'} '@swc/core-darwin-arm64@1.15.18': @@ -5625,8 +5800,8 @@ packages: '@swc/helpers@0.5.15': resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} - '@swc/helpers@0.5.19': - resolution: {integrity: sha512-QamiFeIK3txNjgUTNppE6MiG3p7TdninpZu0E0PbqVh1a9FNLT2FRhisaa4NcaX52XVhA5l7Pk58Ft7Sqi/2sA==} + '@swc/helpers@0.5.20': + resolution: {integrity: sha512-2egEBHUMasdypIzrprsu8g+OEVd7Vp2MM3a2eVlM/cyFYto0nGz5BX5BTgh/ShZZI9ed+ozEq+Ngt+rgmUs8tw==} '@swc/types@0.1.25': resolution: {integrity: sha512-iAoY/qRhNH8a/hBvm3zKj9qQ4oc2+3w1unPJa2XvTK3XjeLXtzcCingVPw/9e5mn1+0yPqxcBGp9Jf0pkfMb1g==} @@ -5746,154 +5921,154 @@ packages: resolution: {integrity: sha512-ldZXEhOBb8Is7xLs01fR3YEc3DERiz5silj8tnGkFZytt1abEvl/GhUmCE0PMLaMPTa3Jk4HbKmRlHmu+gCftg==} engines: {node: '>=12'} - '@tiptap/core@3.21.0': - resolution: {integrity: sha512-IfnQiuEeabDSPr1C/zHFTbnvlTf5z0DE/d/xz4C6bkL4ZBDJ3rr99h2qsaV0l8F+kbNswZMlQdM8rxNlMy95fQ==} + '@tiptap/core@3.22.0': + resolution: {integrity: sha512-EA/XFbvvz0yRyccqrgOwB9RQe6+uJ8NszjLKH9+3xPE2/+Sa2imax0IqWl7YOXkWihdQVrlpP+EpQF9APKx3jg==} peerDependencies: - '@tiptap/pm': ^3.21.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/extension-blockquote@3.21.0': - resolution: {integrity: sha512-JDM/RR6rM0dMCZ1UnEf7eqmN6pAdIa2llhN+E24HdTGNJCklMFhLAGE/OT8/1r7M0WWA9GVO7/PTe4EdGh6+lQ==} + '@tiptap/extension-blockquote@3.22.0': + resolution: {integrity: sha512-WF7K1jtEhkhCZFOoei3QrUHMsM6i9eqXw1IuL6cAX3+CBpqVg89KbP/cJp05dYKU0SO0LJkn87biKVqcnAcN7A==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-bold@3.21.0': - resolution: {integrity: sha512-iyEJRzG7XTCPlHwEDzUw3HnuYYCfL7lNpcCHmxcpYMrIUA8rv7EUxerIwApT6xY8hQ/07ljuJKgOyPvnJOOzuA==} + '@tiptap/extension-bold@3.22.0': + resolution: {integrity: sha512-mPG1FzOy2DVaJHHuX/eQPIuYie0kqG07M04nElBY8QlV0oYB4/kd0Aubz+m9czqHx/F9u/L98kmMFhCh2DWk2w==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-bubble-menu@3.21.0': - resolution: {integrity: sha512-/fabRRhhf8i4LAx9e8xz9ppqN5KgdJk3TxMuxAD5vAWGsejvhSoPa8O8H/QwwyntXm1Vue8aQiMHsUk48b2hGQ==} + '@tiptap/extension-bubble-menu@3.22.0': + resolution: {integrity: sha512-792CUdP0roO17jQJ+fflSJEWfw2cAric61nV2291a2iL7L/6mNJGP4QFim1FqZzfx3/FwHSXEI3NYT6wdUlh8w==} peerDependencies: - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/extension-bullet-list@3.21.0': - resolution: {integrity: sha512-PWNF+xwxgOeXYGD88sCQLKL0eBoQqjUnZNALxBjN3Y7x4llalh42rHOp2Nt2t6UbQgqTBtBzU/uFcussTpxreQ==} + '@tiptap/extension-bullet-list@3.22.0': + resolution: {integrity: sha512-GUBYUXlNMxfJVpbDQnwNU54rqIBHEIQ7KyPptghSzvmnwMlr6n10OmYSGSVvNpOAIYkHkuhzkwgUDeU+YzWbjg==} peerDependencies: - '@tiptap/extension-list': ^3.21.0 + '@tiptap/extension-list': ^3.22.0 - '@tiptap/extension-code-block@3.21.0': - resolution: {integrity: sha512-zrVOcOzDCjHQ8NJcC+qHmZZKiwnP/NMSb3qVJlSMN8TzuHept1MZCDa2Mbo70O6I0txo456SGuXB9sqV1vHmGg==} + '@tiptap/extension-code-block@3.22.0': + resolution: {integrity: sha512-HtnYHj6yHVy2dKs02j5dyEehWQMGOGRMiZBkefY3TwSSNzGESVcFfDV+Xr87j7zDGYvY16vOtVmyRTOTqPn49A==} peerDependencies: - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/extension-code@3.21.0': - resolution: {integrity: sha512-D7wA9jp+4X2r1f3FIoga73s6Rn4rmZY57Jes6a4rK3HY+3yHk1r057pPIZSY8Drfs97jxHQVFdfUYUomLSFYBA==} + '@tiptap/extension-code@3.22.0': + resolution: {integrity: sha512-JGxByyyUdR0yRt1mOxnA2dp6PmI9pr6C846UkZtuOCwhBOBLkoBGkZqW4FytLPOfWGVJpm7w5tx7h1n5uNwfag==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-document@3.21.0': - resolution: {integrity: sha512-7oCyzXI9ChvJQUlr23AURdfVar4OIsrYUvqdhEwo3bjcI/Q/j0KJiXfuh6ZzL5eVaINSailH53sZaGg4THQtUg==} + '@tiptap/extension-document@3.22.0': + resolution: {integrity: sha512-ZdtuBt2KnxIYBtp/VrKiWQ5cLPw1qDKb+sieipBaDWuvhgDNi1kfr//ByEP8xPhcjJfH/C3PCdYYVwIUJwzdqQ==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-dropcursor@3.21.0': - resolution: {integrity: sha512-6fsDSVAM2iz7eElvT6iivMrGBGjIP/oPigVZ/SPm6f31phaYhz6TIOEgV/Lr2jaPIOgyK4U0cU4Yd4KUBCmhzQ==} + '@tiptap/extension-dropcursor@3.22.0': + resolution: {integrity: sha512-yI0aMD4szbNdy/dlglPbZ9Ddc2UucRatJSifmtenCLg7YWyIIYton0T6Uym+FXAEUZ6KsaoNqEKiUbK5cRzZMQ==} peerDependencies: - '@tiptap/extensions': ^3.21.0 + '@tiptap/extensions': ^3.22.0 - '@tiptap/extension-floating-menu@3.21.0': - resolution: {integrity: sha512-n2HzTB+I/5rAl8R/1sKMv92JiY1oDK1hroXizxEKYa6dskJcAMW0CfYyPcPOZWQQEe7qoeOvQISr2ooLAKW+Mw==} + '@tiptap/extension-floating-menu@3.22.0': + resolution: {integrity: sha512-6Gg3I6n+YaCJyvpcKheWiOtU9Oy0M3lbwUGdLK7jTxgAG2YOJxEcx2CzDv3PtNcoyAVUVk9Eio21awVMOECLAQ==} peerDependencies: '@floating-ui/dom': ^1.0.0 - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/extension-gapcursor@3.21.0': - resolution: {integrity: sha512-wGjgAoYBTvPAe9QYMI5px355XcNeMkaUrMY9IHbMqgqdmHcDxqooxM4H6sYVX2CRcHwXy4I8NQAoOhSYrQJDMg==} + '@tiptap/extension-gapcursor@3.22.0': + resolution: {integrity: sha512-VsnaTU88PlA/eG9DtUvuB90z5gVZIaH6T/JVTxGasxR4CFsv0L4Zq5awwr0+SsYH9dKepRMgbanVU03c6k1SuA==} peerDependencies: - '@tiptap/extensions': ^3.21.0 + '@tiptap/extensions': ^3.22.0 - '@tiptap/extension-hard-break@3.21.0': - resolution: {integrity: sha512-6JFVSAOQ1qhQHi9mVcdn2/XO8YIMgYV8zjarzNUzP6Sf2waeE5BLXjlg6rIH/945sY1J+FndTojLru6gQ07a5A==} + '@tiptap/extension-hard-break@3.22.0': + resolution: {integrity: sha512-F51pt3fgjbtWrY0Uud+5HoJW4f7w/aBZvmoCk19nrEY955vvuQQ2PD/DZtecl4A8fF50PpRjgilrYnnh99l0ew==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-heading@3.21.0': - resolution: {integrity: sha512-ji6VJmoRnDzAHYflEYEZohMHRi77UGLW1o3ua7UhI32iJ9nuYssbPNuzEeE4SvENMQwZRszad5+a+dKAa+NC7g==} + '@tiptap/extension-heading@3.22.0': + resolution: {integrity: sha512-SnOUBXzh9Dft7HY0rqaSL/kZKg4W9wlHfpnFPW8aIuewXvFDLKa6PisqxPpHsXSbG21kfs5E0MLdwdXtNP89XA==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-horizontal-rule@3.21.0': - resolution: {integrity: sha512-vNBnOfFEY62CoJPGo4nonRM7RiOvhII1vhoO+WFr1GxDqCAfmEFjToflt7JT1UJdo6lMVcD+aaaAgOiuSz5p6g==} + '@tiptap/extension-horizontal-rule@3.22.0': + resolution: {integrity: sha512-9v08PcmJOumVmgGgcuFPZpAk+tf+m7+vaCNsNyf8Ce1i0m3GPSle1ZmxzjDU2FlpaCFrcgoUKlEjKYaFYFCJIg==} peerDependencies: - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/extension-italic@3.21.0': - resolution: {integrity: sha512-2I8oPvwyXhRn1k8lbDFIutzvhtLEjoO5mmQCNX4TnT4PdxxaSrK9+ihYg12VeqhUeO7dg1MKiFqws0HVBrwzWg==} + '@tiptap/extension-italic@3.22.0': + resolution: {integrity: sha512-+qq9QZF44O1MRqk6w1AMDZ8oDBs5AtdDdNEcdXpzVU54cJAtWyEPEfXtD0B68hOUp/RdZjMdL27fp+4Id7C1YA==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-link@3.21.0': - resolution: {integrity: sha512-oMU7Yve1sbgBsaFAUc2R0GPf4d3ZPVJeMUFC6b6X9rJIvx/IhEUEn9toQcSBGfp02uWK9NdQyIFYFdWlVXH++w==} + '@tiptap/extension-link@3.22.0': + resolution: {integrity: sha512-tGMBUAmni532G6R5gnaRvTb6c7+ST1qCHBV0p5kGGzdHaQTDd1R7S8fnuA3M7+6Sruc82iIY+Ur+6Tusvo/vLA==} peerDependencies: - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/extension-list-item@3.21.0': - resolution: {integrity: sha512-1ZymZmlQVbAoC4q5x3cro0v5+3I6l+BHqbhIMQLjQFlAOJfcE0pvqRzAFW7PduxUj41tXEtsYqp2NREvO9F5Fg==} + '@tiptap/extension-list-item@3.22.0': + resolution: {integrity: sha512-9cFvFLEtf0bnOc/LaGeX2D+c9wOxeqhzgabUl2Ztz8Xzoby4JtamXnrIpb7DG7hZMf3luJMF8bz0HSvAnNiISQ==} peerDependencies: - '@tiptap/extension-list': ^3.21.0 + '@tiptap/extension-list': ^3.22.0 - '@tiptap/extension-list-keymap@3.21.0': - resolution: {integrity: sha512-EzrfW3ASNFPWKhR8sNOq7Kqw4hvaTAOn4dlI7chB8HIANSrlyPOUn+eKAnO6HQgsUgsbjg2GbTUrGrxcoLykUg==} + '@tiptap/extension-list-keymap@3.22.0': + resolution: {integrity: sha512-uCtr5/g+Cwkmsb/VLctgo4VjKm0jv52moAmDyr/TLRjW94gnSLhwXFKzyd7BNIXBQHDyS44UEIJFD3ul4dUKdw==} peerDependencies: - '@tiptap/extension-list': ^3.21.0 + '@tiptap/extension-list': ^3.22.0 - '@tiptap/extension-list@3.21.0': - resolution: {integrity: sha512-KeBlEtLrGce2d3dgL89hmwWEtREuzlW4XY5bYWpKNvCbFqvdSb3n7vkdkw32YclZmMWxAcABgW6ucCStkE0rsQ==} + '@tiptap/extension-list@3.22.0': + resolution: {integrity: sha512-NfSCAgX44NVLib6aN4HmsP1wi6fFfK3dt6TBb9EgcR82nzq6n7dq7VEBw9V1aKqeXQEtNpqMnQFd0SDayweyfQ==} peerDependencies: - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/extension-ordered-list@3.21.0': - resolution: {integrity: sha512-+d+0orokMfqaBfvr9tUBgGvo2ZCV+fR3JzsJTmnLBWOkhBSJN7H4pnfXPTue0qwspUwRmkLJxdIlU+J7HkMrng==} + '@tiptap/extension-ordered-list@3.22.0': + resolution: {integrity: sha512-B5JSJ2Xe2KPIYYG7jpZHVeAku/VJB+CCgPYl+qIHjZ4JGTnW23qkIA+6dWk6WljGmhQL1qusxZZn4UAnZtBLeQ==} peerDependencies: - '@tiptap/extension-list': ^3.21.0 + '@tiptap/extension-list': ^3.22.0 - '@tiptap/extension-paragraph@3.21.0': - resolution: {integrity: sha512-cMPG/jCoZ9NmLZ5ctFziILaxJGfDtMTb5OLBhifMFZeMVwF1pEJIygDEfnX/HSruv507weZSQG4pERO2tRszMg==} + '@tiptap/extension-paragraph@3.22.0': + resolution: {integrity: sha512-fwkPvbGI3xvzWrTJVGZVocgA99Pgqd5kW7iv7MEWlI9uOUa6Ifu31/seHV7j+QDW3y3mADcx+zyhxcMVELtLjA==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-strike@3.21.0': - resolution: {integrity: sha512-easnVaN11Wl+5fOtfvzJ10J762S9TRXZaMj5rLBGavgf82DCYHqhGhBqpLQrJ41r4nPABGlYvTRoxfvBLB74Lg==} + '@tiptap/extension-strike@3.22.0': + resolution: {integrity: sha512-gCgFr1sIcqrJeV5Gdrh8KVZHA+0B1FpFBuOi6FzMyVfBB2sBBqKnjoInYTkPXXdP49Qu8L8hi4luFQtoj4zGzA==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-text@3.21.0': - resolution: {integrity: sha512-Zx8QdB8a5iBuE4uO21c3BjmpBfaJEr2Jd1QFnsdgx11fm6P7dGgZaGko1FaINhfOPRGTN6O/kiF02cDMdOHa/w==} + '@tiptap/extension-text@3.22.0': + resolution: {integrity: sha512-FQ3lBRswZbSEbtxOnDF4T7pdsZRmKh/8q+M29zXaDHGfBc6nuGNPlNKSIy0Iryjhf/YmMVaWDpHvzk56KD7QtA==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extension-underline@3.21.0': - resolution: {integrity: sha512-gGmBEymbWnr8AIS8bI/bPw5rcwo7wAFcBw/TsLd1nAanu1dDqSRNDBrit3m02Ru+D88u2SfNvmbOPI1pz+1f5w==} + '@tiptap/extension-underline@3.22.0': + resolution: {integrity: sha512-AxQOnXQwYmZNjagkEoCZZqbpJbLVmBcu1ivJ9dE0SAQsr1wRUp7mAg+g1SqhbMAvrXvv7yhhNevSdQKmXsnFyA==} peerDependencies: - '@tiptap/core': ^3.21.0 + '@tiptap/core': ^3.22.0 - '@tiptap/extensions@3.21.0': - resolution: {integrity: sha512-MN1uh5PmHT1F2BNsbc21MIS0AMFFA73oODlp/4ckpBR4o5AxRwV+8f43Cd52UL4MgMkKj/A+QfZ7iK9IDb0h5A==} + '@tiptap/extensions@3.22.0': + resolution: {integrity: sha512-En8p1FiFBT3V9CduErCyLPFxDRsYLISb2cCtLKTeYVeCRn2vQZK4B8WuOgHI4IBipz3I3XidmDhra4yt8mmi/w==} peerDependencies: - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 - '@tiptap/pm@3.21.0': - resolution: {integrity: sha512-I3sNo7oMMsR6FFz1ecvPb9uCF0VQuS2WV67j8Io2M7DJicRWCE/GM5DaiYjTeWBbnByk6BuG0txoJATAqPVliQ==} + '@tiptap/pm@3.22.0': + resolution: {integrity: sha512-O9kpzNnFX5837kFevwAM8yr7ImLHu8noIwIpoci0AwfJjiBMzfZBejhbzxnKEfTpFWnkvZ8rWohlb6CQdJ6Crg==} - '@tiptap/react@3.21.0': - resolution: {integrity: sha512-p+OKJgxmFB3t5nY3mjaqjKaj8vJX9++OkdrZLRxYuG7ScAHemWraWQ25sgNZl1LDaRYrdnNYxx9MP0CXOSB6ew==} + '@tiptap/react@3.22.0': + resolution: {integrity: sha512-Jt2LxSbwIUTtp+2Fg27tnsUCC5XiRl084o+/uJTa5xcY4Fdce6rsrEDMjw5P7uYObhjdnBxr514tqd2bvC6LUw==} peerDependencies: - '@tiptap/core': ^3.21.0 - '@tiptap/pm': ^3.21.0 + '@tiptap/core': ^3.22.0 + '@tiptap/pm': ^3.22.0 '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 '@types/react-dom': ^17.0.0 || ^18.0.0 || ^19.0.0 react: ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 - '@tiptap/starter-kit@3.21.0': - resolution: {integrity: sha512-w7fWxglDtqXFBgRYH+LforJyUboSAQllnWQbGVSTyX4rsICqZjkb3f6CTSUWpGoGKmlmbb2ZpEuoik7tur9d8Q==} + '@tiptap/starter-kit@3.22.0': + resolution: {integrity: sha512-3V0RysviBKbsvzHuupM30ftb/WLogSgINtIbmGQHZK4Ta1YzwzW63nAWPGKOoFw8r1HRFFO6LjtqrT6iJsPnzQ==} '@toeverything/y-indexeddb@0.10.0-canary.9': resolution: {integrity: sha512-3hzktNuOaXut/RgRjKNeqQura1zeYF+tSLSlWDc0rDBOrEpwD/1EOpKVCbgtl8ke7f4oinLfgBNk4HcwqaQUYQ==} @@ -5908,37 +6083,37 @@ packages: '@ts-morph/common@0.27.0': resolution: {integrity: sha512-Wf29UqxWDpc+i61k3oIOzcUfQt79PIT9y/MWfAGlrkjg6lBC1hwDECLXPVJAhWjiGbfBCxZd65F/LIZF3+jeJQ==} - '@turbo/darwin-64@2.8.20': - resolution: {integrity: sha512-FQ9EX1xMU5nbwjxXxM3yU88AQQ6Sqc6S44exPRroMcx9XZHqqppl5ymJF0Ig/z3nvQNwDmz1Gsnvxubo+nXWjQ==} + '@turbo/darwin-64@2.9.1': + resolution: {integrity: sha512-d1zTcIf6VWT7cdfjhi0X36C2PRsUi2HdEwYzVgkLHmuuYtL+1Y1Zu3JdlouoB/NjG2vX3q4NnKLMNhDOEweoIg==} cpu: [x64] os: [darwin] - '@turbo/darwin-arm64@2.8.20': - resolution: {integrity: sha512-Gpyh9ATFGThD6/s9L95YWY54cizg/VRWl2B67h0yofG8BpHf67DFAh9nuJVKG7bY0+SBJDAo5cMur+wOl9YOYw==} + '@turbo/darwin-arm64@2.9.1': + resolution: {integrity: sha512-AwJ4mA++Kpem33Lcov093hS1LrgqbKxqq5FCReoqsA8ayEG6eAJAo8ItDd9qQTdBiXxZH8GHCspLAMIe1t3Xyw==} cpu: [arm64] os: [darwin] - '@turbo/gen@2.8.20': - resolution: {integrity: sha512-SazKn5Pc9mitpc3uc6Pmf+QhkNtvF5t6Ro0V1cuc0QFhblbfw4KwWqFnnfTEmGzgDtb2CZJB3BK8LFMBX52eLg==} + '@turbo/gen@2.9.1': + resolution: {integrity: sha512-SGuUKYwHZKym/MCjxzLRogap5dQnjvVPk5JO5uZvLaMTnE+uYFR/BdeQemYliN0TWLskD7d7QRVIp+ttK9bPSw==} hasBin: true - '@turbo/linux-64@2.8.20': - resolution: {integrity: sha512-p2QxWUYyYUgUFG0b0kR+pPi8t7c9uaVlRtjTTI1AbCvVqkpjUfCcReBn6DgG/Hu8xrWdKLuyQFaLYFzQskZbcA==} + '@turbo/linux-64@2.9.1': + resolution: {integrity: sha512-HT9SjKkjEw9uvlgly/qwCGEm4wOXOwQPSPS+wkg+/O1Qan3F1uU/0PFYzxl3m4lfuV3CP9wr2Dq5dPrUX+B9Ag==} cpu: [x64] os: [linux] - '@turbo/linux-arm64@2.8.20': - resolution: {integrity: sha512-Gn5yjlZGLRZWarLWqdQzv0wMqyBNIdq1QLi48F1oY5Lo9kiohuf7BPQWtWxeNVS2NgJ1+nb/DzK1JduYC4AWOA==} + '@turbo/linux-arm64@2.9.1': + resolution: {integrity: sha512-+4s5GZs3kjxc1KMhLBhoQy4UBkXjOhgidA9ipNllkA4JLivSqUCuOgU1Xbyp6vzYrsqHJ9vvwo/2mXgEtD6ZHg==} cpu: [arm64] os: [linux] - '@turbo/windows-64@2.8.20': - resolution: {integrity: sha512-vyaDpYk/8T6Qz5V/X+ihKvKFEZFUoC0oxYpC1sZanK6gaESJlmV3cMRT3Qhcg4D2VxvtC2Jjs9IRkrZGL+exLw==} + '@turbo/windows-64@2.9.1': + resolution: {integrity: sha512-ZO7GCyQd5HV564XWHc9KysjanFfM3DmnWquyEByu+hQMq42g9OMU/fYOCfHS6Xj2aXkIg2FHJeRV+iAck2YrbQ==} cpu: [x64] os: [win32] - '@turbo/windows-arm64@2.8.20': - resolution: {integrity: sha512-voicVULvUV5yaGXo0Iue13BcHGYW3u0VgqSbfQwBaHbpj1zLjYV4KIe+7fYIo6DO8FVUJzxFps3ODCQG/Wy2Qw==} + '@turbo/windows-arm64@2.9.1': + resolution: {integrity: sha512-BjX2fdz38mBb/H94JXrD5cJ+mEq8NmsCbYdC42JzQebJ0X8EdNgyFoEhOydPGViOmaRmhhdZnPZKKn6wahSpcA==} cpu: [arm64] os: [win32] @@ -6097,11 +6272,11 @@ packages: peerDependencies: '@urql/core': ^5.0.0 - '@vitest/expect@4.1.1': - resolution: {integrity: sha512-xAV0fqBTk44Rn6SjJReEQkHP3RrqbJo6JQ4zZ7/uVOiJZRarBtblzrOfFIZeYUrukp2YD6snZG6IBqhOoHTm+A==} + '@vitest/expect@4.1.2': + resolution: {integrity: sha512-gbu+7B0YgUJ2nkdsRJrFFW6X7NTP44WlhiclHniUhxADQJH5Szt9mZ9hWnJPJ8YwOK5zUOSSlSvyzRf0u1DSBQ==} - '@vitest/mocker@4.1.1': - resolution: {integrity: sha512-h3BOylsfsCLPeceuCPAAJ+BvNwSENgJa4hXoXu4im0bs9Lyp4URc4JYK4pWLZ4pG/UQn7AT92K6IByi6rE6g3A==} + '@vitest/mocker@4.1.2': + resolution: {integrity: sha512-Ize4iQtEALHDttPRCmN+FKqOl2vxTiNUhzobQFFt/BM1lRUTG7zRCLOykG/6Vo4E4hnUdfVLo5/eqKPukcWW7Q==} peerDependencies: msw: ^2.4.9 vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -6111,20 +6286,20 @@ packages: vite: optional: true - '@vitest/pretty-format@4.1.1': - resolution: {integrity: sha512-GM+TEQN5WhOygr1lp7skeVjdLPqqWMHsfzXrcHAqZJi/lIVh63H0kaRCY8MDhNWikx19zBUK8ceaLB7X5AH9NQ==} + '@vitest/pretty-format@4.1.2': + resolution: {integrity: sha512-dwQga8aejqeuB+TvXCMzSQemvV9hNEtDDpgUKDzOmNQayl2OG241PSWeJwKRH3CiC+sESrmoFd49rfnq7T4RnA==} - '@vitest/runner@4.1.1': - resolution: {integrity: sha512-f7+FPy75vN91QGWsITueq0gedwUZy1fLtHOCMeQpjs8jTekAHeKP80zfDEnhrleviLHzVSDXIWuCIOFn3D3f8A==} + '@vitest/runner@4.1.2': + resolution: {integrity: sha512-Gr+FQan34CdiYAwpGJmQG8PgkyFVmARK8/xSijia3eTFgVfpcpztWLuP6FttGNfPLJhaZVP/euvujeNYar36OQ==} - '@vitest/snapshot@4.1.1': - resolution: {integrity: sha512-kMVSgcegWV2FibXEx9p9WIKgje58lcTbXgnJixfcg15iK8nzCXhmalL0ZLtTWLW9PH1+1NEDShiFFedB3tEgWg==} + '@vitest/snapshot@4.1.2': + resolution: {integrity: sha512-g7yfUmxYS4mNxk31qbOYsSt2F4m1E02LFqO53Xpzg3zKMhLAPZAjjfyl9e6z7HrW6LvUdTwAQR3HHfLjpko16A==} - '@vitest/spy@4.1.1': - resolution: {integrity: sha512-6Ti/KT5OVaiupdIZEuZN7l3CZcR0cxnxt70Z0//3CtwgObwA6jZhmVBA3yrXSVN3gmwjgd7oDNLlsXz526gpRA==} + '@vitest/spy@4.1.2': + resolution: {integrity: sha512-DU4fBnbVCJGNBwVA6xSToNXrkZNSiw59H8tcuUspVMsBDBST4nfvsPsEHDHGtWRRnqBERBQu7TrTKskmjqTXKA==} - '@vitest/utils@4.1.1': - resolution: {integrity: sha512-cNxAlaB3sHoCdL6pj6yyUXv9Gry1NHNg0kFTXdvSIZXLHsqKH7chiWOkwJ5s5+d/oMwcoG9T0bKU38JZWKusrQ==} + '@vitest/utils@4.1.2': + resolution: {integrity: sha512-xw2/TiX82lQHA06cgbqRKFb5lCAy3axQ4H4SoUFhUsg+wztiet+co86IAMDtF6Vm1hc7J6j09oh/rgDn+JdKIQ==} '@webassemblyjs/ast@1.14.1': resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} @@ -6367,13 +6542,17 @@ packages: brace-expansion@1.1.13: resolution: {integrity: sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==} - brace-expansion@2.0.2: - resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + brace-expansion@2.0.3: + resolution: {integrity: sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==} brace-expansion@5.0.4: resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} engines: {node: 18 || 20 || >=22} + brace-expansion@5.0.5: + resolution: {integrity: sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==} + engines: {node: 18 || 20 || >=22} + braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -6445,6 +6624,9 @@ packages: caniuse-lite@1.0.30001780: resolution: {integrity: sha512-llngX0E7nQci5BPJDqoZSbuZ5Bcs9F5db7EtgfwBerX9XGtkkiO4NwfDDIRzHTTwcYC8vC7bmeUEPGrKlR/TkQ==} + caniuse-lite@1.0.30001782: + resolution: {integrity: sha512-dZcaJLJeDMh4rELYFw1tvSn1bhZWYFOt468FcbHHxx/Z/dFidd1I6ciyFdi3iwfQCyOjqo9upF6lGQYtMiJWxw==} + ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -6546,9 +6728,6 @@ packages: color-string@1.9.1: resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - colord@2.9.3: - resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} - colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} @@ -6693,8 +6872,8 @@ packages: engines: {node: '>=4'} hasBin: true - cssnano-preset-default@7.0.11: - resolution: {integrity: sha512-waWlAMuCakP7//UCY+JPrQS1z0OSLeOXk2sKWJximKWGupVxre50bzPlvpbUwZIDylhf/ptf0Pk+Yf7C+hoa3g==} + cssnano-preset-default@7.0.12: + resolution: {integrity: sha512-B3Eoouzw/sl2zANI0AL9KbacummJTCww+fkHaDBMZad/xuVx8bUduPLly6hKVQAlrmvYkS1jB1CVQEKm3gn0AA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6705,8 +6884,8 @@ packages: peerDependencies: postcss: ^8.4.32 - cssnano@7.1.3: - resolution: {integrity: sha512-mLFHQAzyapMVFLiJIn7Ef4C2UCEvtlTlbyILR6B5ZsUAV3D/Pa761R5uC1YPhyBkRd3eqaDm2ncaNrD7R4mTRg==} + cssnano@7.1.4: + resolution: {integrity: sha512-T9PNS7y+5Nc9Qmu9mRONqfxG1RVY7Vuvky0XN6MZ+9hqplesTEwnj9r0ROtVuSwUVfaDhVlavuzWIVLUgm4hkQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -6860,8 +7039,8 @@ packages: dfa@1.2.0: resolution: {integrity: sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==} - diff@8.0.3: - resolution: {integrity: sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==} + diff@8.0.4: + resolution: {integrity: sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==} engines: {node: '>=0.3.1'} direction@1.0.4: @@ -7086,6 +7265,12 @@ packages: peerDependencies: express: '>= 4.11' + express-rate-limit@8.3.2: + resolution: {integrity: sha512-77VmFeJkO0/rvimEDuUC5H30oqUC4EyOhyGccfqoLebB0oiEYfM7nwPrsDsBL1gsTpwfzX8SFy2MT3TDyRq+bg==} + engines: {node: '>= 16'} + peerDependencies: + express: '>= 4.11' + express@5.2.1: resolution: {integrity: sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==} engines: {node: '>= 18'} @@ -7279,8 +7464,8 @@ packages: peerDependencies: graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - graphql@16.13.1: - resolution: {integrity: sha512-gGgrVCoDKlIZ8fIqXBBb0pPKqDgki0Z/FSKNiQzSGj2uEYHr1tq5wmBegGwJx6QB5S5cM0khSBpi/JFHMCvsmQ==} + graphql@16.13.2: + resolution: {integrity: sha512-5bJ+nf/UCpAjHM8i06fl7eLyVC9iuNAjm9qzkiu2ZGhM0VscSvS6WDPfAwkdkBuoXGM9FJSbKl6wylMwP9Ktig==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} gzip-size@6.0.0: @@ -8040,6 +8225,10 @@ packages: resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} engines: {node: 18 || 20 || >=22} + minimatch@10.2.5: + resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} + engines: {node: 18 || 20 || >=22} + minimatch@3.1.5: resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} @@ -8132,8 +8321,8 @@ packages: next: ^14 react: ^18 - next-safe-action@8.1.8: - resolution: {integrity: sha512-e/HZ886xsKtaBr/+rL1ULq6RHlaZoLJR2PMLqkxFES0VKmhMBY/Ov/sOgoBcOqLAE8N9q3swW+95gyiZxoOIKA==} + next-safe-action@8.3.0: + resolution: {integrity: sha512-TKSZnJWRbmpAcAlyKZkPm7LXHheSmG8bpx1ZSCr/8FQpac88fEMaN4mMdmiT5r17trCq/m2nOgxvtSLa1RTqxg==} engines: {node: '>=18.17'} peerDependencies: next: '>= 14.0.0' @@ -8212,8 +8401,8 @@ packages: normalize-svg-path@1.1.0: resolution: {integrity: sha512-r9KHKG2UUeB5LoTouwDzBy2VxXlHsiM6fyLQvnJa0S5hrhzqElH/CH7TUGhT1fVvIYBIKf3OpY4YJ4CK+iaqHg==} - nosecone@1.3.0: - resolution: {integrity: sha512-AYEacOpXmpbBX+GheA3Lbp8CxxsWtNanMjINFi9mt0pvPUaDCJc3VSffU21O0QDRtBM8hrBWhRVyvTqShaIHdw==} + nosecone@1.3.1: + resolution: {integrity: sha512-7Oufja1/Ud9MInuMviqyWuUPlUco0mdF99AJLm2d5hYAGtbmAMCxXJZyAwBy/ruaK+8pEp2mQ9L3LM4qbqL7dg==} engines: {node: '>=20'} npm-normalize-package-bin@5.0.0: @@ -8475,8 +8664,8 @@ packages: peerDependencies: postcss: ^8.4.38 - postcss-colormin@7.0.6: - resolution: {integrity: sha512-oXM2mdx6IBTRm39797QguYzVEWzbdlFiMNfq88fCCN1Wepw3CYmJ/1/Ifa/KjWo+j5ZURDl2NTldLJIw51IeNQ==} + postcss-colormin@7.0.7: + resolution: {integrity: sha512-sBQ628lSj3VQpDquQel8Pen5mmjFPsO4pH9lDLaHB1AVkMRHtkl0pRB5DCWznc9upWsxint/kV+AveSj7W1tew==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -8547,8 +8736,8 @@ packages: peerDependencies: postcss: ^8.4.32 - postcss-minify-gradients@7.0.1: - resolution: {integrity: sha512-X9JjaysZJwlqNkJbUDgOclyG3jZEpAMOfof6PUZjPnPrePnPG62pS17CjdM32uT1Uq1jFvNSff9l7kNbmMSL2A==} + postcss-minify-gradients@7.0.2: + resolution: {integrity: sha512-fVY3AB8Um7SJR5usHqTY2Ngf9qh8IRN+FFzrBP0ONJy6yYXsP7xyjK2BvSAIrpgs1cST+H91V0TXi3diHLYJtw==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.32 @@ -8774,8 +8963,8 @@ packages: prosemirror-state: ^1.4.2 prosemirror-view: ^1.33.8 - prosemirror-transform@1.11.0: - resolution: {integrity: sha512-4I7Ce4KpygXb9bkiPS3hTEk4dSHorfRw8uI0pE8IhxlK2GXsqv5tIA7JUSxtSu7u8APVOTtbUBxTmnHIxVkIJw==} + prosemirror-transform@1.12.0: + resolution: {integrity: sha512-GxboyN4AMIsoHNtz5uf2r2Ru551i5hWeCMD6E2Ib4Eogqoub0NflniaBPVQ4MrGE5yZ8JV9tUHg9qcZTTrcN4w==} prosemirror-view@1.41.7: resolution: {integrity: sha512-jUwKNCEIGiqdvhlS91/2QAg21e4dfU5bH2iwmSDQeosXJgKF7smG0YSplOWK0cjSNgIqXe7VXqo7EIfUFJdt3w==} @@ -8886,8 +9075,8 @@ packages: '@types/react': optional: true - react-resizable-panels@4.7.6: - resolution: {integrity: sha512-w3gbmUihfvH2Ho0iV1ULS2c/E/7HW/6g0GihogsIHjZf+JmmyVnKhryB3+I4JSxO8++uD3cKsSpOVTJV+GWEuA==} + react-resizable-panels@4.8.0: + resolution: {integrity: sha512-2uEABkewb3ky/ZgIlAUxWa1W/LjsK494fdV1QsXxst7CDRHCzo7h22tWWu3NNaBjmiuriOCt3CvhipnaYcpoIw==} peerDependencies: react: ^18.0.0 || ^19.0.0 react-dom: ^18.0.0 || ^19.0.0 @@ -9026,6 +9215,11 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rollup@4.60.1: + resolution: {integrity: sha512-VmtB2rFU/GroZ4oL8+ZqXgSA38O6GR8KSIvWmEFv63pQ0G6KaBH9s07PO8XTXP4vI+3UJUEypOfjkGfmSBBR0w==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + rope-sequence@1.3.4: resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} @@ -9056,8 +9250,8 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - sax@1.5.0: - resolution: {integrity: sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==} + sax@1.6.0: + resolution: {integrity: sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==} engines: {node: '>=11.0.0'} saxes@5.0.1: @@ -9115,10 +9309,6 @@ packages: setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - shadcn@4.1.0: - resolution: {integrity: sha512-3zETJ+0Ezj69FS6RL0HOkLKKAR5yXisXx1iISJdfLQfrUqj/VIQlanQi1Ukk+9OE+XHZVj4FQNTBSfbr2CyCYg==} - hasBin: true - shadcn@4.1.1: resolution: {integrity: sha512-nBj+7LYC9kzV9v9QmRPpoOhfW4KctJVQejywdAt/K+K+z4RYlJOcO2a4AaF7elrRWkfCbgXeGK02liV0KB9HvQ==} hasBin: true @@ -9288,11 +9478,11 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - stripe@20.4.1: - resolution: {integrity: sha512-axCguHItc8Sxt0HC6aSkdVRPffjYPV7EQqZRb2GkIa8FzWDycE7nHJM19C6xAIynH1Qp1/BHiopSi96jGBxT0w==} - engines: {node: '>=16'} + stripe@21.0.1: + resolution: {integrity: sha512-ocv0j7dWttswDWV2XL/kb6+yiLpDXNXL3RQAOB5OB2kr49z0cEatdQc12+zP/j5nrXk6rAsT4N3y/NUvBbK7Pw==} + engines: {node: '>=18'} peerDependencies: - '@types/node': '>=16' + '@types/node': '>=18' peerDependenciesMeta: '@types/node': optional: true @@ -9324,8 +9514,8 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true - supabase@2.84.4: - resolution: {integrity: sha512-+WSe/7FFMuEOa1LJr1tZh12WDwW6lpKSmBjiEmf7m9j/ialf2oxeUMlsJCdYpST5kQ7PN0XDyvqnjE0tv/AB2w==} + supabase@2.84.5: + resolution: {integrity: sha512-quguD5MJVcbbMie35d++BaV3ejXyTTZQIz3zH/z485bLxcEl+wC1EttGboq9Snukzv6sDoQkshXYga+6K4SQwA==} engines: {npm: '>=8'} hasBin: true @@ -9526,8 +9716,8 @@ packages: typescript: optional: true - turbo@2.8.20: - resolution: {integrity: sha512-Rb4qk5YT8RUwwdXtkLpkVhNEe/lor6+WV7S5tTlLpxSz6MjV5Qi8jGNn4gS6NAvrYGA/rNrE6YUQM85sCZUDbQ==} + turbo@2.9.1: + resolution: {integrity: sha512-TO9du8MwLTAKoXcGezekh9cPJabJUb0+8KxtpMR6kXdRASrmJ8qXf2GkVbCREgzbMQakzfNcux9cZtxheDY4RQ==} hasBin: true tw-animate-css@1.4.0: @@ -9733,18 +9923,18 @@ packages: yaml: optional: true - vitest@4.1.1: - resolution: {integrity: sha512-yF+o4POL41rpAzj5KVILUxm1GCjKnELvaqmU9TLLUbMfDzuN0UpUR9uaDs+mCtjPe+uYPksXDRLQGGPvj1cTmA==} + vitest@4.1.2: + resolution: {integrity: sha512-xjR1dMTVHlFLh98JE3i/f/WePqJsah4A0FK9cc8Ehp9Udk0AZk6ccpIZhh1qJ/yxVWRZ+Q54ocnD8TXmkhspGg==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.1.1 - '@vitest/browser-preview': 4.1.1 - '@vitest/browser-webdriverio': 4.1.1 - '@vitest/ui': 4.1.1 + '@vitest/browser-playwright': 4.1.2 + '@vitest/browser-preview': 4.1.2 + '@vitest/browser-webdriverio': 4.1.2 + '@vitest/ui': 4.1.2 happy-dom: '*' jsdom: '*' vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -9819,8 +10009,8 @@ packages: engines: {node: '>=8'} hasBin: true - wonka@6.3.5: - resolution: {integrity: sha512-SSil+ecw6B4/Dm7Pf2sAshKQ5hWFvfyGlfPbEd6A14dOH6VDjrmbY86u6nZvy9omGwwIPFR8V41+of1EezgoUw==} + wonka@6.3.6: + resolution: {integrity: sha512-MXH+6mDHAZ2GuMpgKS055FR6v0xVP3XwquxIMYXgiW+FejHQlMGlvVRZT4qMCxR+bEo/FCtIdKxwej9WV3YQag==} wp-types@4.69.0: resolution: {integrity: sha512-2w0i2ygylpbYpqFskg1NlvH/1DM8thZuhxjihFRHdvjgFkmzJ2cHl2kq9cBnxYWHyLHzRiLI2TupKbq3yl2STQ==} @@ -9951,6 +10141,11 @@ packages: peerDependencies: zod: ^3.25 || ^4 + zod-to-json-schema@3.25.2: + resolution: {integrity: sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==} + peerDependencies: + zod: ^3.25.28 || ^4 + zod@3.25.76: resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} @@ -9980,9 +10175,9 @@ packages: snapshots: - '@0no-co/graphql.web@1.2.0(graphql@16.13.1)': + '@0no-co/graphql.web@1.2.0(graphql@16.13.2)': optionalDependencies: - graphql: 16.13.1 + graphql: 16.13.2 '@alloc/quick-lru@5.2.0': {} @@ -10182,7 +10377,7 @@ snapshots: '@base-ui/react@1.3.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: - '@babel/runtime': 7.28.6 + '@babel/runtime': 7.29.2 '@base-ui/utils': 0.2.6(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@floating-ui/react-dom': 2.1.8(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@floating-ui/utils': 0.2.11 @@ -10195,7 +10390,7 @@ snapshots: '@base-ui/utils@0.2.6(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: - '@babel/runtime': 7.28.6 + '@babel/runtime': 7.29.2 '@floating-ui/utils': 0.2.11 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -10206,6 +10401,8 @@ snapshots: '@braintree/sanitize-url@6.0.4': {} + '@colordx/core@5.0.0': {} + '@corex/deepmerge@4.0.43': {} '@date-fns/tz@1.4.1': {} @@ -10253,19 +10450,19 @@ snapshots: '@dnd-kit/state@0.1.21': dependencies: - '@preact/signals-core': 1.14.0 + '@preact/signals-core': 1.14.1 tslib: 2.8.1 - '@dotenvx/dotenvx@1.57.2': + '@dotenvx/dotenvx@1.59.1': dependencies: commander: 11.1.0 dotenv: 17.3.1 eciesjs: 0.4.18 execa: 5.1.1 - fdir: 6.5.0(picomatch@4.0.3) + fdir: 6.5.0(picomatch@4.0.4) ignore: 5.3.2 object-treeify: 1.1.33 - picomatch: 4.0.3 + picomatch: 4.0.4 which: 4.0.0 '@ecies/ciphers@0.2.5(@noble/ciphers@1.3.0)': @@ -10678,14 +10875,18 @@ snapshots: '@formatjs/fast-memoize': 3.1.0 tslib: 2.8.1 - '@graphql-typed-document-node/core@3.2.0(graphql@16.13.1)': + '@graphql-typed-document-node/core@3.2.0(graphql@16.13.2)': dependencies: - graphql: 16.13.1 + graphql: 16.13.2 '@hono/node-server@1.19.11(hono@4.12.9)': dependencies: hono: 4.12.9 + '@hono/node-server@1.19.12(hono@4.12.9)': + dependencies: + hono: 4.12.9 + '@hookform/resolvers@5.2.2(react-hook-form@7.72.0(react@19.2.4))': dependencies: '@standard-schema/utils': 0.3.0 @@ -10915,20 +11116,20 @@ snapshots: '@internationalized/date@3.12.0': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 '@internationalized/message@3.1.8': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 intl-messageformat: 10.7.18 '@internationalized/number@3.6.5': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 '@internationalized/string@3.2.7': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 '@isaacs/fs-minipass@4.0.1': dependencies: @@ -10960,7 +11161,7 @@ snapshots: '@juggle/resize-observer@3.4.0': {} - '@keystar/ui@0.7.20(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@keystar/ui@0.7.21(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@babel/runtime': 7.29.2 '@emotion/css': 11.13.5 @@ -11057,14 +11258,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@keystatic/core@0.5.49(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@keystatic/core@0.5.50(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@babel/runtime': 7.29.2 '@braintree/sanitize-url': 6.0.4 '@emotion/weak-memoize': 0.3.1 '@floating-ui/react': 0.24.8(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@internationalized/string': 3.2.7 - '@keystar/ui': 0.7.20(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@keystar/ui': 0.7.21(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@markdoc/markdoc': 0.4.0(@types/react@19.2.14)(react@19.2.4) '@react-aria/focus': 3.21.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-aria/i18n': 3.12.16(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -11081,17 +11282,17 @@ snapshots: '@react-types/shared': 3.33.1(react@19.2.4) '@sindresorhus/slugify': 1.1.2 '@toeverything/y-indexeddb': 0.10.0-canary.9(yjs@13.6.30) - '@ts-gql/tag': 0.7.3(graphql@16.13.1) + '@ts-gql/tag': 0.7.3(graphql@16.13.2) '@types/react': 19.2.14 - '@urql/core': 5.2.0(graphql@16.13.1) - '@urql/exchange-auth': 2.2.1(@urql/core@5.2.0(graphql@16.13.1)) - '@urql/exchange-graphcache': 7.2.4(@urql/core@5.2.0(graphql@16.13.1))(graphql@16.13.1) - '@urql/exchange-persisted': 4.3.1(@urql/core@5.2.0(graphql@16.13.1)) + '@urql/core': 5.2.0(graphql@16.13.2) + '@urql/exchange-auth': 2.2.1(@urql/core@5.2.0(graphql@16.13.2)) + '@urql/exchange-graphcache': 7.2.4(@urql/core@5.2.0(graphql@16.13.2))(graphql@16.13.2) + '@urql/exchange-persisted': 4.3.1(@urql/core@5.2.0(graphql@16.13.2)) cookie: 1.1.1 emery: 1.4.4 escape-string-regexp: 4.0.0 fast-deep-equal: 3.1.3 - graphql: 16.13.1 + graphql: 16.13.2 idb-keyval: 6.2.2 ignore: 5.3.2 is-hotkey: 0.2.0 @@ -11117,7 +11318,7 @@ snapshots: prosemirror-model: 1.25.4 prosemirror-state: 1.4.4 prosemirror-tables: 1.8.5 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-view: 1.41.7 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -11127,7 +11328,7 @@ snapshots: slate-react: 0.91.11(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(slate@0.91.4) superstruct: 1.0.4 unist-util-visit: 5.1.0 - urql: 4.2.2(@urql/core@5.2.0(graphql@16.13.1))(react@19.2.4) + urql: 4.2.2(@urql/core@5.2.0(graphql@16.13.2))(react@19.2.4) y-prosemirror: 1.3.7(prosemirror-model@1.25.4)(prosemirror-state@1.4.4)(prosemirror-view@1.41.7)(y-protocols@1.0.7(yjs@13.6.30))(yjs@13.6.30) y-protocols: 1.0.7(yjs@13.6.30) yjs: 13.6.30 @@ -11135,10 +11336,10 @@ snapshots: - next - supports-color - '@keystatic/next@5.0.4(@keystatic/core@0.5.49(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@keystatic/next@5.0.4(@keystatic/core@0.5.50(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@babel/runtime': 7.28.6 - '@keystatic/core': 0.5.49(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@keystatic/core': 0.5.50(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@types/react': 19.2.14 chokidar: 3.6.0 next: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -11148,16 +11349,16 @@ snapshots: '@lemonsqueezy/lemonsqueezy.js@4.0.0': {} - '@makerkit/data-loader-supabase-core@0.0.10(@supabase/postgrest-js@2.100.0)(@supabase/supabase-js@2.100.0)': + '@makerkit/data-loader-supabase-core@0.0.10(@supabase/postgrest-js@2.101.0)(@supabase/supabase-js@2.101.0)': dependencies: - '@supabase/postgrest-js': 2.100.0 - '@supabase/supabase-js': 2.100.0 + '@supabase/postgrest-js': 2.101.0 + '@supabase/supabase-js': 2.101.0 ts-case-convert: 2.1.0 - '@makerkit/data-loader-supabase-nextjs@1.2.5(@supabase/postgrest-js@2.100.0)(@supabase/supabase-js@2.100.0)(@tanstack/react-query@5.95.2(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)': + '@makerkit/data-loader-supabase-nextjs@1.2.5(@supabase/postgrest-js@2.101.0)(@supabase/supabase-js@2.101.0)(@tanstack/react-query@5.95.2(react@19.2.4))(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)': dependencies: - '@makerkit/data-loader-supabase-core': 0.0.10(@supabase/postgrest-js@2.100.0)(@supabase/supabase-js@2.100.0) - '@supabase/supabase-js': 2.100.0 + '@makerkit/data-loader-supabase-core': 0.0.10(@supabase/postgrest-js@2.101.0)(@supabase/supabase-js@2.101.0) + '@supabase/supabase-js': 2.101.0 '@tanstack/react-query': 5.95.2(react@19.2.4) next: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: 19.2.4 @@ -11199,14 +11400,14 @@ snapshots: '@types/react': 19.2.14 react: 19.2.4 - '@markdoc/markdoc@0.5.6(@types/react@19.2.14)(react@19.2.4)': + '@markdoc/markdoc@0.5.7(@types/react@19.2.14)(react@19.2.4)': optionalDependencies: '@types/linkify-it': 3.0.5 '@types/markdown-it': 12.2.3 '@types/react': 19.2.14 react: 19.2.4 - '@marsidev/react-turnstile@1.4.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@marsidev/react-turnstile@1.5.0(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) @@ -11230,28 +11431,6 @@ snapshots: - react-dom - use-sync-external-store - '@modelcontextprotocol/sdk@1.28.0(zod@3.25.76)': - dependencies: - '@hono/node-server': 1.19.11(hono@4.12.9) - ajv: 8.18.0 - ajv-formats: 3.0.1(ajv@8.18.0) - 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.3.1(express@5.2.1) - hono: 4.12.9 - jose: 6.2.2 - 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 - '@modelcontextprotocol/sdk@1.28.0(zod@4.3.6)': dependencies: '@hono/node-server': 1.19.11(hono@4.12.9) @@ -11274,6 +11453,28 @@ snapshots: transitivePeerDependencies: - supports-color + '@modelcontextprotocol/sdk@1.29.0(zod@3.25.76)': + dependencies: + '@hono/node-server': 1.19.12(hono@4.12.9) + ajv: 8.18.0 + ajv-formats: 3.0.1(ajv@8.18.0) + 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.3.2(express@5.2.1) + hono: 4.12.9 + jose: 6.2.2 + 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.2(zod@3.25.76) + transitivePeerDependencies: + - supports-color + '@mswjs/interceptors@0.41.3': dependencies: '@open-draft/deferred-promise': 2.2.0 @@ -11338,10 +11539,10 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.20.1 - '@nosecone/next@1.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': + '@nosecone/next@1.3.1(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': dependencies: next: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - nosecone: 1.3.0 + nosecone: 1.3.1 '@open-draft/deferred-promise@2.2.0': {} @@ -11814,7 +12015,7 @@ snapshots: '@polka/url@1.0.0-next.29': {} - '@preact/signals-core@1.14.0': {} + '@preact/signals-core@1.14.1': {} '@prisma/instrumentation@7.4.2(@opentelemetry/api@1.9.1)': dependencies: @@ -11991,7 +12192,7 @@ snapshots: '@react-stately/list': 3.13.4(react@19.2.4) '@react-types/actiongroup': 3.4.23(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12002,7 +12203,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/breadcrumbs': 3.7.19(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12014,7 +12215,7 @@ snapshots: '@react-stately/toggle': 3.9.5(react@19.2.4) '@react-types/button': 3.15.1(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12029,7 +12230,7 @@ snapshots: '@react-types/button': 3.15.1(react@19.2.4) '@react-types/calendar': 3.8.3(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12045,7 +12246,7 @@ snapshots: '@react-stately/toggle': 3.9.5(react@19.2.4) '@react-types/checkbox': 3.10.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12067,7 +12268,7 @@ snapshots: '@react-types/button': 3.15.1(react@19.2.4) '@react-types/combobox': 3.14.0(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12090,7 +12291,7 @@ snapshots: '@react-types/datepicker': 3.13.5(react@19.2.4) '@react-types/dialog': 3.5.24(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12101,7 +12302,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/dialog': 3.5.24(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12117,7 +12318,7 @@ snapshots: '@react-stately/dnd': 3.7.4(react@19.2.4) '@react-types/button': 3.15.1(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12126,7 +12327,7 @@ snapshots: '@react-aria/interactions': 3.27.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 clsx: 2.1.1 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12137,7 +12338,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-stately/form': 3.2.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12155,7 +12356,7 @@ snapshots: '@react-types/checkbox': 3.10.4(react@19.2.4) '@react-types/grid': 3.3.8(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12170,7 +12371,7 @@ snapshots: '@react-stately/list': 3.13.4(react@19.2.4) '@react-stately/tree': 3.9.6(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12183,7 +12384,7 @@ snapshots: '@react-aria/ssr': 3.9.10(react@19.2.4) '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12193,7 +12394,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-stately/flags': 3.1.2 '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12201,7 +12402,7 @@ snapshots: dependencies: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12209,7 +12410,7 @@ snapshots: dependencies: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) use-sync-external-store: 1.6.0(react@19.2.4) @@ -12220,7 +12421,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/link': 3.6.7(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12234,13 +12435,13 @@ snapshots: '@react-stately/list': 3.13.4(react@19.2.4) '@react-types/listbox': 3.7.6(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) '@react-aria/live-announcer@3.4.4': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 '@react-aria/menu@3.21.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: @@ -12257,7 +12458,7 @@ snapshots: '@react-types/button': 3.15.1(react@19.2.4) '@react-types/menu': 3.10.7(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12266,7 +12467,7 @@ snapshots: '@react-aria/progress': 3.4.30(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/meter': 3.4.15(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12283,7 +12484,7 @@ snapshots: '@react-types/button': 3.15.1(react@19.2.4) '@react-types/numberfield': 3.8.18(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12300,7 +12501,7 @@ snapshots: '@react-types/button': 3.15.1(react@19.2.4) '@react-types/overlays': 3.9.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12311,7 +12512,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/progress': 3.5.18(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12326,7 +12527,7 @@ snapshots: '@react-stately/radio': 3.11.5(react@19.2.4) '@react-types/radio': 3.9.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12339,7 +12540,7 @@ snapshots: '@react-types/button': 3.15.1(react@19.2.4) '@react-types/searchfield': 3.6.8(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12358,7 +12559,7 @@ snapshots: '@react-types/button': 3.15.1(react@19.2.4) '@react-types/select': 3.12.2(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12370,7 +12571,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-stately/selection': 3.20.9(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12378,7 +12579,7 @@ snapshots: dependencies: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12389,13 +12590,13 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/button': 3.15.1(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) '@react-aria/ssr@3.9.10(react@19.2.4)': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-aria/switch@3.7.11(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': @@ -12404,7 +12605,7 @@ snapshots: '@react-stately/toggle': 3.9.5(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/switch': 3.5.17(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12424,7 +12625,7 @@ snapshots: '@react-types/grid': 3.3.8(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/table': 3.13.6(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12437,7 +12638,7 @@ snapshots: '@react-stately/tabs': 3.8.9(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/tabs': 3.3.22(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12452,7 +12653,7 @@ snapshots: '@react-stately/list': 3.13.4(react@19.2.4) '@react-types/button': 3.15.1(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12466,7 +12667,7 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/textfield': 3.12.8(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12479,7 +12680,7 @@ snapshots: '@react-stately/toast': 3.1.0(react@19.2.4) '@react-types/button': 3.15.1(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12490,7 +12691,7 @@ snapshots: '@react-stately/toggle': 3.9.5(react@19.2.4) '@react-types/checkbox': 3.10.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12500,7 +12701,7 @@ snapshots: '@react-aria/i18n': 3.12.16(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12511,7 +12712,7 @@ snapshots: '@react-stately/tooltip': 3.5.11(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/tooltip': 3.5.2(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12521,7 +12722,7 @@ snapshots: '@react-stately/flags': 3.1.2 '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 clsx: 2.1.1 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12533,7 +12734,7 @@ snapshots: '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-stately/virtualizer': 4.4.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12542,7 +12743,7 @@ snapshots: '@react-aria/interactions': 3.27.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-aria/utils': 3.33.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12777,7 +12978,7 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/calendar': 3.8.3(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/checkbox@3.7.5(react@19.2.4)': @@ -12786,13 +12987,13 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/checkbox': 3.10.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/collections@3.12.10(react@19.2.4)': dependencies: '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/combobox@3.13.0(react@19.2.4)': @@ -12804,13 +13005,13 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/combobox': 3.14.0(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/data@3.15.2(react@19.2.4)': dependencies: '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/datepicker@3.16.1(react@19.2.4)': @@ -12823,24 +13024,24 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/datepicker': 3.13.5(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/dnd@3.7.4(react@19.2.4)': dependencies: '@react-stately/selection': 3.20.9(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/flags@3.1.2': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 '@react-stately/form@3.2.4(react@19.2.4)': dependencies: '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/grid@3.11.9(react@19.2.4)': @@ -12849,7 +13050,7 @@ snapshots: '@react-stately/selection': 3.20.9(react@19.2.4) '@react-types/grid': 3.3.8(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/layout@4.6.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': @@ -12860,7 +13061,7 @@ snapshots: '@react-types/grid': 3.3.8(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/table': 3.13.6(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12870,7 +13071,7 @@ snapshots: '@react-stately/selection': 3.20.9(react@19.2.4) '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/menu@3.9.11(react@19.2.4)': @@ -12878,7 +13079,7 @@ snapshots: '@react-stately/overlays': 3.6.23(react@19.2.4) '@react-types/menu': 3.10.7(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/numberfield@3.11.0(react@19.2.4)': @@ -12887,14 +13088,14 @@ snapshots: '@react-stately/form': 3.2.4(react@19.2.4) '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/numberfield': 3.8.18(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/overlays@3.6.23(react@19.2.4)': dependencies: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/overlays': 3.9.4(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/radio@3.11.5(react@19.2.4)': @@ -12903,14 +13104,14 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/radio': 3.9.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/searchfield@3.5.19(react@19.2.4)': dependencies: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/searchfield': 3.6.8(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/select@3.9.2(react@19.2.4)': @@ -12921,7 +13122,7 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/select': 3.12.2(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/selection@3.20.9(react@19.2.4)': @@ -12929,7 +13130,7 @@ snapshots: '@react-stately/collections': 3.12.10(react@19.2.4) '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/table@3.15.4(react@19.2.4)': @@ -12942,7 +13143,7 @@ snapshots: '@react-types/grid': 3.3.8(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/table': 3.13.6(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/tabs@3.8.9(react@19.2.4)': @@ -12950,12 +13151,12 @@ snapshots: '@react-stately/list': 3.13.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) '@react-types/tabs': 3.3.22(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/toast@3.1.0(react@19.2.4)': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 use-sync-external-store: 1.6.0(react@19.2.4) @@ -12964,14 +13165,14 @@ snapshots: '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/checkbox': 3.10.4(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/tooltip@3.5.11(react@19.2.4)': dependencies: '@react-stately/overlays': 3.6.23(react@19.2.4) '@react-types/tooltip': 3.5.2(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/tree@3.9.6(react@19.2.4)': @@ -12980,18 +13181,18 @@ snapshots: '@react-stately/selection': 3.20.9(react@19.2.4) '@react-stately/utils': 3.11.0(react@19.2.4) '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/utils@3.11.0(react@19.2.4)': dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 '@react-stately/virtualizer@4.4.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@react-types/shared': 3.33.1(react@19.2.4) - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -13174,150 +13375,225 @@ snapshots: '@rollup/rollup-android-arm-eabi@4.60.0': optional: true + '@rollup/rollup-android-arm-eabi@4.60.1': + optional: true + '@rollup/rollup-android-arm64@4.59.0': optional: true '@rollup/rollup-android-arm64@4.60.0': optional: true + '@rollup/rollup-android-arm64@4.60.1': + optional: true + '@rollup/rollup-darwin-arm64@4.59.0': optional: true '@rollup/rollup-darwin-arm64@4.60.0': optional: true + '@rollup/rollup-darwin-arm64@4.60.1': + optional: true + '@rollup/rollup-darwin-x64@4.59.0': optional: true '@rollup/rollup-darwin-x64@4.60.0': optional: true + '@rollup/rollup-darwin-x64@4.60.1': + optional: true + '@rollup/rollup-freebsd-arm64@4.59.0': optional: true '@rollup/rollup-freebsd-arm64@4.60.0': optional: true + '@rollup/rollup-freebsd-arm64@4.60.1': + optional: true + '@rollup/rollup-freebsd-x64@4.59.0': optional: true '@rollup/rollup-freebsd-x64@4.60.0': optional: true + '@rollup/rollup-freebsd-x64@4.60.1': + optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': optional: true '@rollup/rollup-linux-arm-gnueabihf@4.60.0': optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.60.1': + optional: true + '@rollup/rollup-linux-arm-musleabihf@4.59.0': optional: true '@rollup/rollup-linux-arm-musleabihf@4.60.0': optional: true + '@rollup/rollup-linux-arm-musleabihf@4.60.1': + optional: true + '@rollup/rollup-linux-arm64-gnu@4.59.0': optional: true '@rollup/rollup-linux-arm64-gnu@4.60.0': optional: true + '@rollup/rollup-linux-arm64-gnu@4.60.1': + optional: true + '@rollup/rollup-linux-arm64-musl@4.59.0': optional: true '@rollup/rollup-linux-arm64-musl@4.60.0': optional: true + '@rollup/rollup-linux-arm64-musl@4.60.1': + optional: true + '@rollup/rollup-linux-loong64-gnu@4.59.0': optional: true '@rollup/rollup-linux-loong64-gnu@4.60.0': optional: true + '@rollup/rollup-linux-loong64-gnu@4.60.1': + optional: true + '@rollup/rollup-linux-loong64-musl@4.59.0': optional: true '@rollup/rollup-linux-loong64-musl@4.60.0': optional: true + '@rollup/rollup-linux-loong64-musl@4.60.1': + optional: true + '@rollup/rollup-linux-ppc64-gnu@4.59.0': optional: true '@rollup/rollup-linux-ppc64-gnu@4.60.0': optional: true + '@rollup/rollup-linux-ppc64-gnu@4.60.1': + optional: true + '@rollup/rollup-linux-ppc64-musl@4.59.0': optional: true '@rollup/rollup-linux-ppc64-musl@4.60.0': optional: true + '@rollup/rollup-linux-ppc64-musl@4.60.1': + optional: true + '@rollup/rollup-linux-riscv64-gnu@4.59.0': optional: true '@rollup/rollup-linux-riscv64-gnu@4.60.0': optional: true + '@rollup/rollup-linux-riscv64-gnu@4.60.1': + optional: true + '@rollup/rollup-linux-riscv64-musl@4.59.0': optional: true '@rollup/rollup-linux-riscv64-musl@4.60.0': optional: true + '@rollup/rollup-linux-riscv64-musl@4.60.1': + optional: true + '@rollup/rollup-linux-s390x-gnu@4.59.0': optional: true '@rollup/rollup-linux-s390x-gnu@4.60.0': optional: true + '@rollup/rollup-linux-s390x-gnu@4.60.1': + optional: true + '@rollup/rollup-linux-x64-gnu@4.59.0': optional: true '@rollup/rollup-linux-x64-gnu@4.60.0': optional: true + '@rollup/rollup-linux-x64-gnu@4.60.1': + optional: true + '@rollup/rollup-linux-x64-musl@4.59.0': optional: true '@rollup/rollup-linux-x64-musl@4.60.0': optional: true + '@rollup/rollup-linux-x64-musl@4.60.1': + optional: true + '@rollup/rollup-openbsd-x64@4.59.0': optional: true '@rollup/rollup-openbsd-x64@4.60.0': optional: true + '@rollup/rollup-openbsd-x64@4.60.1': + optional: true + '@rollup/rollup-openharmony-arm64@4.59.0': optional: true '@rollup/rollup-openharmony-arm64@4.60.0': optional: true + '@rollup/rollup-openharmony-arm64@4.60.1': + optional: true + '@rollup/rollup-win32-arm64-msvc@4.59.0': optional: true '@rollup/rollup-win32-arm64-msvc@4.60.0': optional: true + '@rollup/rollup-win32-arm64-msvc@4.60.1': + optional: true + '@rollup/rollup-win32-ia32-msvc@4.59.0': optional: true '@rollup/rollup-win32-ia32-msvc@4.60.0': optional: true + '@rollup/rollup-win32-ia32-msvc@4.60.1': + optional: true + '@rollup/rollup-win32-x64-gnu@4.59.0': optional: true '@rollup/rollup-win32-x64-gnu@4.60.0': optional: true + '@rollup/rollup-win32-x64-gnu@4.60.1': + optional: true + '@rollup/rollup-win32-x64-msvc@4.59.0': optional: true '@rollup/rollup-win32-x64-msvc@4.60.0': optional: true + '@rollup/rollup-win32-x64-msvc@4.60.1': + optional: true + '@schummar/icu-type-parser@1.21.5': {} '@sec-ant/readable-stream@0.4.1': {} @@ -13539,30 +13815,30 @@ snapshots: '@standard-schema/utils@0.3.0': {} - '@stripe/react-stripe-js@5.6.1(@stripe/stripe-js@8.11.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@stripe/react-stripe-js@6.1.0(@stripe/stripe-js@9.0.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: - '@stripe/stripe-js': 8.11.0 + '@stripe/stripe-js': 9.0.1 prop-types: 15.8.1 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - '@stripe/stripe-js@8.11.0': {} + '@stripe/stripe-js@9.0.1': {} - '@supabase/auth-js@2.100.0': + '@supabase/auth-js@2.101.0': dependencies: tslib: 2.8.1 - '@supabase/functions-js@2.100.0': + '@supabase/functions-js@2.101.0': dependencies: tslib: 2.8.1 '@supabase/phoenix@0.4.0': {} - '@supabase/postgrest-js@2.100.0': + '@supabase/postgrest-js@2.101.0': dependencies: tslib: 2.8.1 - '@supabase/realtime-js@2.100.0': + '@supabase/realtime-js@2.101.0': dependencies: '@supabase/phoenix': 0.4.0 '@types/ws': 8.18.1 @@ -13572,23 +13848,23 @@ snapshots: - bufferutil - utf-8-validate - '@supabase/ssr@0.9.0(@supabase/supabase-js@2.100.0)': + '@supabase/ssr@0.10.0(@supabase/supabase-js@2.101.0)': dependencies: - '@supabase/supabase-js': 2.100.0 + '@supabase/supabase-js': 2.101.0 cookie: 1.1.1 - '@supabase/storage-js@2.100.0': + '@supabase/storage-js@2.101.0': dependencies: iceberg-js: 0.8.1 tslib: 2.8.1 - '@supabase/supabase-js@2.100.0': + '@supabase/supabase-js@2.101.0': dependencies: - '@supabase/auth-js': 2.100.0 - '@supabase/functions-js': 2.100.0 - '@supabase/postgrest-js': 2.100.0 - '@supabase/realtime-js': 2.100.0 - '@supabase/storage-js': 2.100.0 + '@supabase/auth-js': 2.101.0 + '@supabase/functions-js': 2.101.0 + '@supabase/postgrest-js': 2.101.0 + '@supabase/realtime-js': 2.101.0 + '@supabase/storage-js': 2.101.0 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -13623,7 +13899,7 @@ snapshots: '@swc/core-win32-x64-msvc@1.15.18': optional: true - '@swc/core@1.15.18(@swc/helpers@0.5.19)': + '@swc/core@1.15.18(@swc/helpers@0.5.20)': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.25 @@ -13638,7 +13914,7 @@ snapshots: '@swc/core-win32-arm64-msvc': 1.15.18 '@swc/core-win32-ia32-msvc': 1.15.18 '@swc/core-win32-x64-msvc': 1.15.18 - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 '@swc/counter@0.1.3': {} @@ -13646,7 +13922,7 @@ snapshots: dependencies: tslib: 2.8.1 - '@swc/helpers@0.5.19': + '@swc/helpers@0.5.20': dependencies: tslib: 2.8.1 @@ -13740,119 +14016,119 @@ snapshots: '@tanstack/table-core@8.21.3': {} - '@tiptap/core@3.21.0(@tiptap/pm@3.21.0)': + '@tiptap/core@3.22.0(@tiptap/pm@3.22.0)': dependencies: - '@tiptap/pm': 3.21.0 + '@tiptap/pm': 3.22.0 - '@tiptap/extension-blockquote@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-blockquote@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-bold@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-bold@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-bubble-menu@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)': + '@tiptap/extension-bubble-menu@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)': dependencies: '@floating-ui/dom': 1.7.6 - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 optional: true - '@tiptap/extension-bullet-list@3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0))': + '@tiptap/extension-bullet-list@3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/extension-list': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) + '@tiptap/extension-list': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) - '@tiptap/extension-code-block@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)': + '@tiptap/extension-code-block@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 - '@tiptap/extension-code@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-code@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-document@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-document@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-dropcursor@3.21.0(@tiptap/extensions@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0))': + '@tiptap/extension-dropcursor@3.22.0(@tiptap/extensions@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/extensions': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) + '@tiptap/extensions': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) - '@tiptap/extension-floating-menu@3.21.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)': + '@tiptap/extension-floating-menu@3.22.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)': dependencies: '@floating-ui/dom': 1.7.6 - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 optional: true - '@tiptap/extension-gapcursor@3.21.0(@tiptap/extensions@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0))': + '@tiptap/extension-gapcursor@3.22.0(@tiptap/extensions@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/extensions': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) + '@tiptap/extensions': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) - '@tiptap/extension-hard-break@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-hard-break@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-heading@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-heading@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-horizontal-rule@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)': + '@tiptap/extension-horizontal-rule@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 - '@tiptap/extension-italic@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-italic@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-link@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)': + '@tiptap/extension-link@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 linkifyjs: 4.3.2 - '@tiptap/extension-list-item@3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0))': + '@tiptap/extension-list-item@3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/extension-list': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) + '@tiptap/extension-list': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) - '@tiptap/extension-list-keymap@3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0))': + '@tiptap/extension-list-keymap@3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/extension-list': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) + '@tiptap/extension-list': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) - '@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)': + '@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 - '@tiptap/extension-ordered-list@3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0))': + '@tiptap/extension-ordered-list@3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/extension-list': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) + '@tiptap/extension-list': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) - '@tiptap/extension-paragraph@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-paragraph@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-strike@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-strike@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-text@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-text@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extension-underline@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))': + '@tiptap/extension-underline@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) - '@tiptap/extensions@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)': + '@tiptap/extensions@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 - '@tiptap/pm@3.21.0': + '@tiptap/pm@3.22.0': dependencies: prosemirror-changeset: 2.4.0 prosemirror-collab: 1.3.1 @@ -13870,13 +14146,13 @@ snapshots: prosemirror-state: 1.4.4 prosemirror-tables: 1.8.5 prosemirror-trailing-node: 3.0.0(prosemirror-model@1.25.4)(prosemirror-state@1.4.4)(prosemirror-view@1.41.7) - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-view: 1.41.7 - '@tiptap/react@3.21.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@tiptap/react@3.22.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 '@types/react': 19.2.14 '@types/react-dom': 19.2.3(@types/react@19.2.14) '@types/use-sync-external-store': 0.0.6 @@ -13885,37 +14161,37 @@ snapshots: react-dom: 19.2.4(react@19.2.4) use-sync-external-store: 1.6.0(react@19.2.4) optionalDependencies: - '@tiptap/extension-bubble-menu': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) - '@tiptap/extension-floating-menu': 3.21.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) + '@tiptap/extension-bubble-menu': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) + '@tiptap/extension-floating-menu': 3.22.0(@floating-ui/dom@1.7.6)(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) transitivePeerDependencies: - '@floating-ui/dom' - '@tiptap/starter-kit@3.21.0': + '@tiptap/starter-kit@3.22.0': dependencies: - '@tiptap/core': 3.21.0(@tiptap/pm@3.21.0) - '@tiptap/extension-blockquote': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-bold': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-bullet-list': 3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)) - '@tiptap/extension-code': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-code-block': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) - '@tiptap/extension-document': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-dropcursor': 3.21.0(@tiptap/extensions@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)) - '@tiptap/extension-gapcursor': 3.21.0(@tiptap/extensions@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)) - '@tiptap/extension-hard-break': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-heading': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-horizontal-rule': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) - '@tiptap/extension-italic': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-link': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) - '@tiptap/extension-list': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) - '@tiptap/extension-list-item': 3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)) - '@tiptap/extension-list-keymap': 3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)) - '@tiptap/extension-ordered-list': 3.21.0(@tiptap/extension-list@3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0)) - '@tiptap/extension-paragraph': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-strike': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-text': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extension-underline': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0)) - '@tiptap/extensions': 3.21.0(@tiptap/core@3.21.0(@tiptap/pm@3.21.0))(@tiptap/pm@3.21.0) - '@tiptap/pm': 3.21.0 + '@tiptap/core': 3.22.0(@tiptap/pm@3.22.0) + '@tiptap/extension-blockquote': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-bold': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-bullet-list': 3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)) + '@tiptap/extension-code': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-code-block': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) + '@tiptap/extension-document': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-dropcursor': 3.22.0(@tiptap/extensions@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)) + '@tiptap/extension-gapcursor': 3.22.0(@tiptap/extensions@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)) + '@tiptap/extension-hard-break': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-heading': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-horizontal-rule': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) + '@tiptap/extension-italic': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-link': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) + '@tiptap/extension-list': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) + '@tiptap/extension-list-item': 3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)) + '@tiptap/extension-list-keymap': 3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)) + '@tiptap/extension-ordered-list': 3.22.0(@tiptap/extension-list@3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0)) + '@tiptap/extension-paragraph': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-strike': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-text': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extension-underline': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0)) + '@tiptap/extensions': 3.22.0(@tiptap/core@3.22.0(@tiptap/pm@3.22.0))(@tiptap/pm@3.22.0) + '@tiptap/pm': 3.22.0 '@toeverything/y-indexeddb@0.10.0-canary.9(yjs@13.6.30)': dependencies: @@ -13924,41 +14200,41 @@ snapshots: y-provider: 0.10.0-canary.9(yjs@13.6.30) yjs: 13.6.30 - '@ts-gql/tag@0.7.3(graphql@16.13.1)': + '@ts-gql/tag@0.7.3(graphql@16.13.2)': dependencies: - '@graphql-typed-document-node/core': 3.2.0(graphql@16.13.1) - graphql: 16.13.1 - graphql-tag: 2.12.6(graphql@16.13.1) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.13.2) + graphql: 16.13.2 + graphql-tag: 2.12.6(graphql@16.13.2) '@ts-morph/common@0.27.0': dependencies: fast-glob: 3.3.3 - minimatch: 10.2.4 + minimatch: 10.2.5 path-browserify: 1.0.1 - '@turbo/darwin-64@2.8.20': + '@turbo/darwin-64@2.9.1': optional: true - '@turbo/darwin-arm64@2.8.20': + '@turbo/darwin-arm64@2.9.1': optional: true - '@turbo/gen@2.8.20(@types/node@25.5.0)': + '@turbo/gen@2.9.1(@types/node@25.5.0)': dependencies: '@inquirer/prompts': 7.10.1(@types/node@25.5.0) esbuild: 0.25.12 transitivePeerDependencies: - '@types/node' - '@turbo/linux-64@2.8.20': + '@turbo/linux-64@2.9.1': optional: true - '@turbo/linux-arm64@2.8.20': + '@turbo/linux-arm64@2.9.1': optional: true - '@turbo/windows-64@2.8.20': + '@turbo/windows-64@2.9.1': optional: true - '@turbo/windows-arm64@2.8.20': + '@turbo/windows-arm64@2.9.1': optional: true '@types/chai@5.2.3': @@ -14106,79 +14382,79 @@ snapshots: dependencies: '@types/node': 25.5.0 - '@urql/core@5.2.0(graphql@16.13.1)': + '@urql/core@5.2.0(graphql@16.13.2)': dependencies: - '@0no-co/graphql.web': 1.2.0(graphql@16.13.1) - wonka: 6.3.5 + '@0no-co/graphql.web': 1.2.0(graphql@16.13.2) + wonka: 6.3.6 transitivePeerDependencies: - graphql - '@urql/exchange-auth@2.2.1(@urql/core@5.2.0(graphql@16.13.1))': + '@urql/exchange-auth@2.2.1(@urql/core@5.2.0(graphql@16.13.2))': dependencies: - '@urql/core': 5.2.0(graphql@16.13.1) - wonka: 6.3.5 + '@urql/core': 5.2.0(graphql@16.13.2) + wonka: 6.3.6 - '@urql/exchange-graphcache@7.2.4(@urql/core@5.2.0(graphql@16.13.1))(graphql@16.13.1)': + '@urql/exchange-graphcache@7.2.4(@urql/core@5.2.0(graphql@16.13.2))(graphql@16.13.2)': dependencies: - '@0no-co/graphql.web': 1.2.0(graphql@16.13.1) - '@urql/core': 5.2.0(graphql@16.13.1) - wonka: 6.3.5 + '@0no-co/graphql.web': 1.2.0(graphql@16.13.2) + '@urql/core': 5.2.0(graphql@16.13.2) + wonka: 6.3.6 transitivePeerDependencies: - graphql - '@urql/exchange-persisted@4.3.1(@urql/core@5.2.0(graphql@16.13.1))': + '@urql/exchange-persisted@4.3.1(@urql/core@5.2.0(graphql@16.13.2))': dependencies: - '@urql/core': 5.2.0(graphql@16.13.1) - wonka: 6.3.5 + '@urql/core': 5.2.0(graphql@16.13.2) + wonka: 6.3.6 - '@vitest/expect@4.1.1': + '@vitest/expect@4.1.2': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.1.1 - '@vitest/utils': 4.1.1 + '@vitest/spy': 4.1.2 + '@vitest/utils': 4.1.2 chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.1(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1))': + '@vitest/mocker@4.1.2(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1))': dependencies: - '@vitest/spy': 4.1.1 + '@vitest/spy': 4.1.2 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.14(@types/node@25.5.0)(typescript@5.9.3) vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1) - '@vitest/mocker@4.1.1(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1))': + '@vitest/mocker@4.1.2(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1))': dependencies: - '@vitest/spy': 4.1.1 + '@vitest/spy': 4.1.2 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: msw: 2.12.14(@types/node@25.5.0)(typescript@6.0.2) vite: 7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1) - '@vitest/pretty-format@4.1.1': + '@vitest/pretty-format@4.1.2': dependencies: tinyrainbow: 3.1.0 - '@vitest/runner@4.1.1': + '@vitest/runner@4.1.2': dependencies: - '@vitest/utils': 4.1.1 + '@vitest/utils': 4.1.2 pathe: 2.0.3 - '@vitest/snapshot@4.1.1': + '@vitest/snapshot@4.1.2': dependencies: - '@vitest/pretty-format': 4.1.1 - '@vitest/utils': 4.1.1 + '@vitest/pretty-format': 4.1.2 + '@vitest/utils': 4.1.2 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@4.1.1': {} + '@vitest/spy@4.1.2': {} - '@vitest/utils@4.1.1': + '@vitest/utils@4.1.2': dependencies: - '@vitest/pretty-format': 4.1.1 + '@vitest/pretty-format': 4.1.2 convert-source-map: 2.0.0 tinyrainbow: 3.1.0 @@ -14458,7 +14734,7 @@ snapshots: balanced-match: 1.0.2 concat-map: 0.0.1 - brace-expansion@2.0.2: + brace-expansion@2.0.3: dependencies: balanced-match: 1.0.2 @@ -14466,6 +14742,10 @@ snapshots: dependencies: balanced-match: 4.0.4 + brace-expansion@5.0.5: + dependencies: + balanced-match: 4.0.4 + braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -14527,7 +14807,7 @@ snapshots: caniuse-api@3.0.0: dependencies: browserslist: 4.28.1 - caniuse-lite: 1.0.30001780 + caniuse-lite: 1.0.30001782 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 @@ -14535,6 +14815,8 @@ snapshots: caniuse-lite@1.0.30001780: {} + caniuse-lite@1.0.30001782: {} + ccount@2.0.1: {} chai@6.2.2: {} @@ -14628,8 +14910,6 @@ snapshots: color-name: 1.1.4 simple-swizzle: 0.2.4 - colord@2.9.3: {} - colorette@2.0.20: {} commander@11.1.0: {} @@ -14761,14 +15041,14 @@ snapshots: cssesc@3.0.0: {} - cssnano-preset-default@7.0.11(postcss@8.5.8): + cssnano-preset-default@7.0.12(postcss@8.5.8): dependencies: browserslist: 4.28.1 css-declaration-sorter: 7.3.1(postcss@8.5.8) cssnano-utils: 5.0.1(postcss@8.5.8) postcss: 8.5.8 postcss-calc: 10.1.1(postcss@8.5.8) - postcss-colormin: 7.0.6(postcss@8.5.8) + postcss-colormin: 7.0.7(postcss@8.5.8) postcss-convert-values: 7.0.9(postcss@8.5.8) postcss-discard-comments: 7.0.6(postcss@8.5.8) postcss-discard-duplicates: 7.0.2(postcss@8.5.8) @@ -14777,7 +15057,7 @@ snapshots: postcss-merge-longhand: 7.0.5(postcss@8.5.8) postcss-merge-rules: 7.0.8(postcss@8.5.8) postcss-minify-font-values: 7.0.1(postcss@8.5.8) - postcss-minify-gradients: 7.0.1(postcss@8.5.8) + postcss-minify-gradients: 7.0.2(postcss@8.5.8) postcss-minify-params: 7.0.6(postcss@8.5.8) postcss-minify-selectors: 7.0.6(postcss@8.5.8) postcss-normalize-charset: 7.0.1(postcss@8.5.8) @@ -14799,9 +15079,9 @@ snapshots: dependencies: postcss: 8.5.8 - cssnano@7.1.3(postcss@8.5.8): + cssnano@7.1.4(postcss@8.5.8): dependencies: - cssnano-preset-default: 7.0.11(postcss@8.5.8) + cssnano-preset-default: 7.0.12(postcss@8.5.8) lilconfig: 3.1.3 postcss: 8.5.8 @@ -14910,7 +15190,7 @@ snapshots: dfa@1.2.0: {} - diff@8.0.3: {} + diff@8.0.4: {} direction@1.0.4: {} @@ -15195,6 +15475,11 @@ snapshots: express: 5.2.1 ip-address: 10.1.0 + express-rate-limit@8.3.2(express@5.2.1): + dependencies: + express: 5.2.1 + ip-address: 10.1.0 + express@5.2.1: dependencies: accepts: 2.0.0 @@ -15310,7 +15595,7 @@ snapshots: fontkit@2.0.4: dependencies: - '@swc/helpers': 0.5.19 + '@swc/helpers': 0.5.20 brotli: 1.3.3 clone: 2.1.2 dfa: 1.2.0 @@ -15419,12 +15704,12 @@ snapshots: graceful-fs@4.2.11: {} - graphql-tag@2.12.6(graphql@16.13.1): + graphql-tag@2.12.6(graphql@16.13.2): dependencies: - graphql: 16.13.1 + graphql: 16.13.2 tslib: 2.8.1 - graphql@16.13.1: {} + graphql@16.13.2: {} gzip-size@6.0.0: dependencies: @@ -16283,17 +16568,21 @@ snapshots: dependencies: brace-expansion: 5.0.4 + minimatch@10.2.5: + dependencies: + brace-expansion: 5.0.5 + minimatch@3.1.5: dependencies: brace-expansion: 1.1.13 minimatch@5.1.9: dependencies: - brace-expansion: 2.0.2 + brace-expansion: 2.0.3 minimatch@9.0.9: dependencies: - brace-expansion: 2.0.2 + brace-expansion: 2.0.3 minimist@1.2.8: {} @@ -16327,7 +16616,7 @@ snapshots: '@open-draft/deferred-promise': 2.2.0 '@types/statuses': 2.0.6 cookie: 1.1.1 - graphql: 16.13.1 + graphql: 16.13.2 headers-polyfill: 4.0.3 is-node-process: 1.2.0 outvariant: 1.4.3 @@ -16352,7 +16641,7 @@ snapshots: '@open-draft/deferred-promise': 2.2.0 '@types/statuses': 2.0.6 cookie: 1.1.1 - graphql: 16.13.1 + graphql: 16.13.2 headers-polyfill: 4.0.3 is-node-process: 1.2.0 outvariant: 1.4.3 @@ -16388,11 +16677,11 @@ snapshots: next-intl-swc-plugin-extractor@4.8.3: {} - next-intl@4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + next-intl@4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@5.9.3): dependencies: '@formatjs/intl-localematcher': 0.8.1 '@parcel/watcher': 2.5.6 - '@swc/core': 1.15.18(@swc/helpers@0.5.19) + '@swc/core': 1.15.18(@swc/helpers@0.5.20) icu-minify: 4.8.3 negotiator: 1.0.0 next: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -16405,11 +16694,11 @@ snapshots: transitivePeerDependencies: - '@swc/helpers' - next-intl@4.8.3(@swc/helpers@0.5.19)(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@6.0.2): + next-intl@4.8.3(@swc/helpers@0.5.20)(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(typescript@6.0.2): dependencies: '@formatjs/intl-localematcher': 0.8.1 '@parcel/watcher': 2.5.6 - '@swc/core': 1.15.18(@swc/helpers@0.5.19) + '@swc/core': 1.15.18(@swc/helpers@0.5.20) icu-minify: 4.8.3 negotiator: 1.0.0 next: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -16427,14 +16716,14 @@ snapshots: next: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: 19.2.4 - next-safe-action@8.1.8(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + next-safe-action@8.3.0(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: deepmerge-ts: 7.1.5 next: 16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(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) - next-sitemap@4.2.3(next@16.2.1(@babel/core@7.29.0)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)): + next-sitemap@4.2.3(next@16.2.1(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)): dependencies: '@corex/deepmerge': 4.0.43 '@next/env': 13.5.11 @@ -16503,7 +16792,7 @@ snapshots: dependencies: svg-arc-to-cubic-bezier: 3.2.0 - nosecone@1.3.0: {} + nosecone@1.3.1: {} npm-normalize-package-bin@5.0.0: {} @@ -16797,11 +17086,11 @@ snapshots: postcss-selector-parser: 7.1.1 postcss-value-parser: 4.2.0 - postcss-colormin@7.0.6(postcss@8.5.8): + postcss-colormin@7.0.7(postcss@8.5.8): dependencies: + '@colordx/core': 5.0.0 browserslist: 4.28.1 caniuse-api: 3.0.0 - colord: 2.9.3 postcss: 8.5.8 postcss-value-parser: 4.2.0 @@ -16854,9 +17143,9 @@ snapshots: postcss: 8.5.8 postcss-value-parser: 4.2.0 - postcss-minify-gradients@7.0.1(postcss@8.5.8): + postcss-minify-gradients@7.0.2(postcss@8.5.8): dependencies: - colord: 2.9.3 + '@colordx/core': 5.0.0 cssnano-utils: 5.0.1(postcss@8.5.8) postcss: 8.5.8 postcss-value-parser: 4.2.0 @@ -17009,7 +17298,7 @@ snapshots: prosemirror-changeset@2.4.0: dependencies: - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-collab@1.3.1: dependencies: @@ -17019,12 +17308,12 @@ snapshots: dependencies: prosemirror-model: 1.25.4 prosemirror-state: 1.4.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-dropcursor@1.8.2: dependencies: prosemirror-state: 1.4.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-view: 1.41.7 prosemirror-gapcursor@1.4.1: @@ -17037,14 +17326,14 @@ snapshots: prosemirror-history@1.5.0: dependencies: prosemirror-state: 1.4.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-view: 1.41.7 rope-sequence: 1.3.4 prosemirror-inputrules@1.5.1: dependencies: prosemirror-state: 1.4.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-keymap@1.2.3: dependencies: @@ -17076,12 +17365,12 @@ snapshots: dependencies: prosemirror-model: 1.25.4 prosemirror-state: 1.4.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-state@1.4.4: dependencies: prosemirror-model: 1.25.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-view: 1.41.7 prosemirror-tables@1.8.5: @@ -17089,7 +17378,7 @@ snapshots: prosemirror-keymap: 1.2.3 prosemirror-model: 1.25.4 prosemirror-state: 1.4.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 prosemirror-view: 1.41.7 prosemirror-trailing-node@3.0.0(prosemirror-model@1.25.4)(prosemirror-state@1.4.4)(prosemirror-view@1.41.7): @@ -17100,7 +17389,7 @@ snapshots: prosemirror-state: 1.4.4 prosemirror-view: 1.41.7 - prosemirror-transform@1.11.0: + prosemirror-transform@1.12.0: dependencies: prosemirror-model: 1.25.4 @@ -17108,7 +17397,7 @@ snapshots: dependencies: prosemirror-model: 1.25.4 prosemirror-state: 1.4.4 - prosemirror-transform: 1.11.0 + prosemirror-transform: 1.12.0 proto-list@1.2.4: {} @@ -17213,7 +17502,7 @@ snapshots: optionalDependencies: '@types/react': 19.2.14 - react-resizable-panels@4.7.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + react-resizable-panels@4.8.0(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) @@ -17406,6 +17695,37 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.60.0 fsevents: 2.3.3 + rollup@4.60.1: + dependencies: + '@types/estree': 1.0.8 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.60.1 + '@rollup/rollup-android-arm64': 4.60.1 + '@rollup/rollup-darwin-arm64': 4.60.1 + '@rollup/rollup-darwin-x64': 4.60.1 + '@rollup/rollup-freebsd-arm64': 4.60.1 + '@rollup/rollup-freebsd-x64': 4.60.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.60.1 + '@rollup/rollup-linux-arm-musleabihf': 4.60.1 + '@rollup/rollup-linux-arm64-gnu': 4.60.1 + '@rollup/rollup-linux-arm64-musl': 4.60.1 + '@rollup/rollup-linux-loong64-gnu': 4.60.1 + '@rollup/rollup-linux-loong64-musl': 4.60.1 + '@rollup/rollup-linux-ppc64-gnu': 4.60.1 + '@rollup/rollup-linux-ppc64-musl': 4.60.1 + '@rollup/rollup-linux-riscv64-gnu': 4.60.1 + '@rollup/rollup-linux-riscv64-musl': 4.60.1 + '@rollup/rollup-linux-s390x-gnu': 4.60.1 + '@rollup/rollup-linux-x64-gnu': 4.60.1 + '@rollup/rollup-linux-x64-musl': 4.60.1 + '@rollup/rollup-openbsd-x64': 4.60.1 + '@rollup/rollup-openharmony-arm64': 4.60.1 + '@rollup/rollup-win32-arm64-msvc': 4.60.1 + '@rollup/rollup-win32-ia32-msvc': 4.60.1 + '@rollup/rollup-win32-x64-gnu': 4.60.1 + '@rollup/rollup-win32-x64-msvc': 4.60.1 + fsevents: 2.3.3 + rope-sequence@1.3.4: {} router@2.2.0: @@ -17436,7 +17756,7 @@ snapshots: safer-buffer@2.1.2: {} - sax@1.5.0: {} + sax@1.6.0: {} saxes@5.0.1: dependencies: @@ -17506,21 +17826,21 @@ snapshots: setprototypeof@1.2.0: {} - shadcn@4.1.0(@types/node@25.5.0)(babel-plugin-macros@3.1.0)(typescript@5.9.3): + shadcn@4.1.1(@types/node@25.5.0)(babel-plugin-macros@3.1.0)(typescript@5.9.3): dependencies: '@babel/core': 7.29.0 '@babel/parser': 7.29.2 '@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.57.2 - '@modelcontextprotocol/sdk': 1.28.0(zod@3.25.76) + '@dotenvx/dotenvx': 1.59.1 + '@modelcontextprotocol/sdk': 1.29.0(zod@3.25.76) '@types/validate-npm-package-name': 4.0.2 browserslist: 4.28.1 commander: 14.0.3 cosmiconfig: 9.0.1(typescript@5.9.3) dedent: 1.7.2(babel-plugin-macros@3.1.0) deepmerge: 4.3.1 - diff: 8.0.3 + diff: 8.0.4 execa: 9.6.1 fast-glob: 3.3.3 fs-extra: 11.3.4 @@ -17541,7 +17861,7 @@ snapshots: 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) + zod-to-json-schema: 3.25.2(zod@3.25.76) transitivePeerDependencies: - '@cfworker/json-schema' - '@types/node' @@ -17555,15 +17875,15 @@ snapshots: '@babel/parser': 7.29.2 '@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.57.2 - '@modelcontextprotocol/sdk': 1.28.0(zod@3.25.76) + '@dotenvx/dotenvx': 1.59.1 + '@modelcontextprotocol/sdk': 1.29.0(zod@3.25.76) '@types/validate-npm-package-name': 4.0.2 browserslist: 4.28.1 commander: 14.0.3 cosmiconfig: 9.0.1(typescript@6.0.2) dedent: 1.7.2(babel-plugin-macros@3.1.0) deepmerge: 4.3.1 - diff: 8.0.3 + diff: 8.0.4 execa: 9.6.1 fast-glob: 3.3.3 fs-extra: 11.3.4 @@ -17584,7 +17904,7 @@ snapshots: 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) + zod-to-json-schema: 3.25.2(zod@3.25.76) transitivePeerDependencies: - '@cfworker/json-schema' - '@types/node' @@ -17789,7 +18109,7 @@ snapshots: strip-json-comments@3.1.1: {} - stripe@20.4.1(@types/node@25.5.0): + stripe@21.0.1(@types/node@25.5.0): optionalDependencies: '@types/node': 25.5.0 @@ -17819,7 +18139,7 @@ snapshots: tinyglobby: 0.2.15 ts-interface-checker: 0.1.13 - supabase@2.84.4: + supabase@2.84.5: dependencies: bin-links: 6.0.0 https-proxy-agent: 8.0.0 @@ -17846,7 +18166,7 @@ snapshots: css-what: 6.2.2 csso: 5.0.5 picocolors: 1.1.1 - sax: 1.5.0 + sax: 1.6.0 tabbable@6.4.0: {} @@ -17977,7 +18297,7 @@ snapshots: tslib@2.8.1: {} - tsup@8.5.1(@swc/core@1.15.18(@swc/helpers@0.5.19))(jiti@2.6.1)(postcss@8.5.8)(typescript@6.0.2): + tsup@8.5.1(@swc/core@1.15.18(@swc/helpers@0.5.20))(jiti@2.6.1)(postcss@8.5.8)(typescript@6.0.2): dependencies: bundle-require: 5.1.0(esbuild@0.27.3) cac: 6.7.14 @@ -17997,7 +18317,7 @@ snapshots: tinyglobby: 0.2.15 tree-kill: 1.2.2 optionalDependencies: - '@swc/core': 1.15.18(@swc/helpers@0.5.19) + '@swc/core': 1.15.18(@swc/helpers@0.5.20) postcss: 8.5.8 typescript: 6.0.2 transitivePeerDependencies: @@ -18006,14 +18326,14 @@ snapshots: - tsx - yaml - turbo@2.8.20: + turbo@2.9.1: optionalDependencies: - '@turbo/darwin-64': 2.8.20 - '@turbo/darwin-arm64': 2.8.20 - '@turbo/linux-64': 2.8.20 - '@turbo/linux-arm64': 2.8.20 - '@turbo/windows-64': 2.8.20 - '@turbo/windows-arm64': 2.8.20 + '@turbo/darwin-64': 2.9.1 + '@turbo/darwin-arm64': 2.9.1 + '@turbo/linux-64': 2.9.1 + '@turbo/linux-arm64': 2.9.1 + '@turbo/windows-64': 2.9.1 + '@turbo/windows-arm64': 2.9.1 tw-animate-css@1.4.0: {} @@ -18102,11 +18422,11 @@ snapshots: urlpattern-polyfill@10.1.0: {} - urql@4.2.2(@urql/core@5.2.0(graphql@16.13.1))(react@19.2.4): + urql@4.2.2(@urql/core@5.2.0(graphql@16.13.2))(react@19.2.4): dependencies: - '@urql/core': 5.2.0(graphql@16.13.1) + '@urql/core': 5.2.0(graphql@16.13.2) react: 19.2.4 - wonka: 6.3.5 + wonka: 6.3.6 use-callback-ref@1.3.3(@types/react@19.2.14)(react@19.2.4): dependencies: @@ -18194,7 +18514,7 @@ snapshots: fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 postcss: 8.5.8 - rollup: 4.60.0 + rollup: 4.60.1 tinyglobby: 0.2.15 optionalDependencies: '@types/node': 25.5.0 @@ -18203,15 +18523,15 @@ snapshots: lightningcss: 1.32.0 terser: 5.46.1 - vitest@4.1.1(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)): + vitest@4.1.2(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)): dependencies: - '@vitest/expect': 4.1.1 - '@vitest/mocker': 4.1.1(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) - '@vitest/pretty-format': 4.1.1 - '@vitest/runner': 4.1.1 - '@vitest/snapshot': 4.1.1 - '@vitest/spy': 4.1.1 - '@vitest/utils': 4.1.1 + '@vitest/expect': 4.1.2 + '@vitest/mocker': 4.1.2(msw@2.12.14(@types/node@25.5.0)(typescript@5.9.3))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) + '@vitest/pretty-format': 4.1.2 + '@vitest/runner': 4.1.2 + '@vitest/snapshot': 4.1.2 + '@vitest/spy': 4.1.2 + '@vitest/utils': 4.1.2 es-module-lexer: 2.0.0 expect-type: 1.3.0 magic-string: 0.30.21 @@ -18231,15 +18551,15 @@ snapshots: transitivePeerDependencies: - msw - vitest@4.1.1(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)): + vitest@4.1.2(@opentelemetry/api@1.9.1)(@types/node@25.5.0)(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)): dependencies: - '@vitest/expect': 4.1.1 - '@vitest/mocker': 4.1.1(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) - '@vitest/pretty-format': 4.1.1 - '@vitest/runner': 4.1.1 - '@vitest/snapshot': 4.1.1 - '@vitest/spy': 4.1.1 - '@vitest/utils': 4.1.1 + '@vitest/expect': 4.1.2 + '@vitest/mocker': 4.1.2(msw@2.12.14(@types/node@25.5.0)(typescript@6.0.2))(vite@7.3.1(@types/node@25.5.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)) + '@vitest/pretty-format': 4.1.2 + '@vitest/runner': 4.1.2 + '@vitest/snapshot': 4.1.2 + '@vitest/spy': 4.1.2 + '@vitest/utils': 4.1.2 es-module-lexer: 2.0.0 expect-type: 1.3.0 magic-string: 0.30.21 @@ -18341,7 +18661,7 @@ snapshots: siginfo: 2.0.0 stackback: 0.0.2 - wonka@6.3.5: {} + wonka@6.3.6: {} wp-types@4.69.0: dependencies: @@ -18436,14 +18756,14 @@ snapshots: compress-commons: 4.1.2 readable-stream: 3.6.2 - zod-to-json-schema@3.25.1(zod@3.25.76): - dependencies: - zod: 3.25.76 - zod-to-json-schema@3.25.1(zod@4.3.6): dependencies: zod: 4.3.6 + zod-to-json-schema@3.25.2(zod@3.25.76): + dependencies: + zod: 3.25.76 + zod@3.25.76: {} zod@4.3.6: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 01a88d24a..3fc3d8661 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -2,58 +2,60 @@ packages: - apps/* - packages/** - tooling/* - catalog: '@base-ui/react': ^1.3.0 '@faker-js/faker': ^10.4.0 '@hookform/resolvers': ^5.2.2 - '@keystatic/core': 0.5.49 + '@keystatic/core': 0.5.50 '@keystatic/next': ^5.0.4 '@lemonsqueezy/lemonsqueezy.js': 4.0.0 '@makerkit/data-loader-supabase-core': ^0.0.10 '@makerkit/data-loader-supabase-nextjs': ^1.2.5 '@manypkg/cli': ^0.25.1 - '@markdoc/markdoc': ^0.5.6 - '@marsidev/react-turnstile': ^1.4.2 + '@markdoc/markdoc': ^0.5.7 '@measured/puck': ^0.20.2 + '@marsidev/react-turnstile': ^1.5.0 '@modelcontextprotocol/sdk': 1.28.0 '@next/bundle-analyzer': 16.2.1 - '@nosecone/next': 1.3.0 + '@nosecone/next': 1.3.1 '@playwright/test': ^1.58.2 '@react-email/components': 1.0.10 '@react-pdf/renderer': ^4.3.2 '@sentry/nextjs': 10.46.0 - '@stripe/react-stripe-js': 5.6.1 - '@stripe/stripe-js': 8.11.0 - '@supabase/ssr': ^0.9.0 - '@supabase/supabase-js': 2.100.0 + '@stripe/react-stripe-js': 6.1.0 + '@stripe/stripe-js': 9.0.1 + '@supabase/ssr': ^0.10.0 + '@supabase/supabase-js': 2.101.0 + '@types/papaparse': ^5.5.0 '@tailwindcss/postcss': ^4.2.2 '@tanstack/react-query': 5.95.2 '@tanstack/react-table': ^8.21.3 '@tiptap/pm': ^3.21.0 '@tiptap/react': ^3.21.0 '@tiptap/starter-kit': ^3.21.0 - '@turbo/gen': ^2.8.20 + '@turbo/gen': ^2.9.1 '@types/node': 25.5.0 '@types/nodemailer': 7.0.11 - '@types/papaparse': ^5.5.2 '@types/react': 19.2.14 '@types/react-dom': 19.2.3 babel-plugin-react-compiler: 1.0.0 class-variance-authority: ^0.7.1 clsx: ^2.1.1 + cmdk: ^1.1.1 cross-env: ^10.0.0 - cssnano: ^7.1.3 + cssnano: ^7.1.4 date-fns: ^4.1.0 dotenv: 17.3.1 + embla-carousel-react: ^8.6.0 exceljs: ^4.4.0 + input-otp: ^1.4.2 iban: ^0.0.14 lucide-react: 1.7.0 nanoid: ^5.1.7 next: 16.2.1 next-intl: ^4.8.3 next-runtime-env: 3.3.0 - next-safe-action: ^8.1.8 + next-safe-action: ^8.3.0 next-sitemap: ^4.2.3 next-themes: 0.4.6 node-html-parser: ^7.1.0 @@ -65,32 +67,33 @@ catalog: pino-pretty: 13.0.0 postgres: 3.4.8 react: 19.2.4 + react-day-picker: ^9.14.0 react-dom: 19.2.4 + react-dropzone: ^15.0.0 react-hook-form: 7.72.0 - react-resizable-panels: ^4.7.6 + react-resizable-panels: ^4.8.0 + react-top-loading-bar: ^3.0.2 recharts: 3.7.0 rxjs: ^7.8.2 server-only: ^0.0.1 - shadcn: 4.1.0 + shadcn: 4.1.1 sonner: ^2.0.7 - stripe: 20.4.1 - supabase: 2.84.4 + stripe: 21.0.1 + supabase: 2.84.5 tailwind-merge: ^3.5.0 tailwindcss: 4.2.2 totp-generator: ^2.0.1 tsup: 8.5.1 - turbo: 2.8.20 + turbo: 2.9.1 tw-animate-css: 1.4.0 typescript: ^6.0.2 urlpattern-polyfill: ^10.1.0 - vitest: ^4.1.1 + vaul: ^1.1.2 + vitest: ^4.1.2 wp-types: ^4.69.0 zod: 4.3.6 - catalogMode: prefer - cleanupUnusedCatalogs: true - onlyBuiltDependencies: - '@tailwindcss/oxide' - '@sentry/cli'