diff --git a/nextjs/sdk.ts b/nextjs/sdk.ts index 6c47b259..b07c3087 100644 --- a/nextjs/sdk.ts +++ b/nextjs/sdk.ts @@ -2,11 +2,9 @@ import "dotenv/config"; import { Autumn } from "autumn-js"; const main = async () => { - const autumn = new Autumn({ - secretKey: process.env.AUTUMN_SECRET_KEY, - }); - - + const autumn = new Autumn({ + secretKey: process.env.AUTUMN_SECRET_KEY, + }); }; main(); diff --git a/package/src/libraries/backend/routes/genRoutes.ts b/package/src/libraries/backend/routes/genRoutes.ts index f22906eb..a6b4a962 100644 --- a/package/src/libraries/backend/routes/genRoutes.ts +++ b/package/src/libraries/backend/routes/genRoutes.ts @@ -2,204 +2,201 @@ import type { AttachParams, CheckoutParams } from "@sdk/general/attachTypes"; import { addRoute, type RouterContext } from "rou3"; import type { QueryParams } from "@/client/types/clientGenTypes"; import type { - Autumn, - BillingPortalParams, - CancelParams, - CheckParams, - CustomerData, - SetupPaymentParams, - TrackParams, + Autumn, + BillingPortalParams, + CancelParams, + CheckParams, + CustomerData, + SetupPaymentParams, + TrackParams, } from "../../../sdk"; import { BASE_PATH } from "../constants"; import { withAuth } from "../utils/withAuth"; const sanitizeBody = (body: any) => { - const bodyCopy = { ...body }; - delete bodyCopy.customer_id; - delete bodyCopy.customer_data; - return bodyCopy; + const bodyCopy = { ...body }; + delete bodyCopy.customer_id; + delete bodyCopy.customer_data; + return bodyCopy; }; const checkoutHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - customer_data, - body, - }: { - autumn: Autumn; - customer_id: string; - customer_data?: CustomerData; - body: CheckoutParams; - }) => { - const result = await autumn.checkout({ - ...sanitizeBody(body), - customer_id, - customer_data, - }); + fn: async ({ + autumn, + customer_id, + customer_data, + body, + }: { + autumn: Autumn; + customer_id: string; + customer_data?: CustomerData; + body: CheckoutParams; + }) => { + const result = await autumn.checkout({ + ...sanitizeBody(body), + customer_id, + customer_data, + }); - return result; - }, + return result; + }, }); const attachHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - customer_data, - body, - }: { - autumn: Autumn; - customer_id: string; - customer_data?: CustomerData; - body: AttachParams; - }) => { - console.log("Body: ", body); - console.log("Customer ID: ", customer_id); - return await autumn.attach({ - ...sanitizeBody(body), - customer_id, - customer_data, - }); - }, + fn: async ({ + autumn, + customer_id, + customer_data, + body, + }: { + autumn: Autumn; + customer_id: string; + customer_data?: CustomerData; + body: AttachParams; + }) => { + console.log("Body: ", body); + console.log("Customer ID: ", customer_id); + return await autumn.attach({ + ...sanitizeBody(body), + customer_id, + customer_data, + }); + }, }); const setupPaymentHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - customer_data, - body, - }: { - autumn: Autumn; - customer_id: string; - customer_data?: CustomerData; - body: SetupPaymentParams; - }) => { - return await autumn.setupPayment({ - ...sanitizeBody(body), - customer_id, - customer_data, - }); - }, + fn: async ({ + autumn, + customer_id, + customer_data, + body, + }: { + autumn: Autumn; + customer_id: string; + customer_data?: CustomerData; + body: SetupPaymentParams; + }) => { + return await autumn.setupPayment({ + ...sanitizeBody(body), + customer_id, + customer_data, + }); + }, }); const cancelHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - body, - }: { - autumn: Autumn; - customer_id: string; - body: CancelParams; - }) => { - return await autumn.cancel({ - ...sanitizeBody(body), - customer_id, - }); - }, + fn: async ({ + autumn, + customer_id, + body, + }: { + autumn: Autumn; + customer_id: string; + body: CancelParams; + }) => { + return await autumn.cancel({ + ...sanitizeBody(body), + customer_id, + }); + }, }); const checkHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - customer_data, - body, - }: { - autumn: Autumn; - customer_id: string; - customer_data?: CustomerData; - body: CheckParams; - }) => { + fn: async ({ + autumn, + customer_id, + customer_data, + body, + }: { + autumn: Autumn; + customer_id: string; + customer_data?: CustomerData; + body: CheckParams; + }) => { + const result = await autumn.check({ + ...sanitizeBody(body), + customer_id, + customer_data, + }); - - const result = await autumn.check({ - ...sanitizeBody(body), - customer_id, - customer_data, - }); - - return result; - }, + return result; + }, }); const trackHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - customer_data, - body, - }: { - autumn: Autumn; - customer_id: string; - customer_data?: CustomerData; - body: TrackParams; - }) => { - return await autumn.track({ - ...sanitizeBody(body), - customer_id, - customer_data, - }); - }, + fn: async ({ + autumn, + customer_id, + customer_data, + body, + }: { + autumn: Autumn; + customer_id: string; + customer_data?: CustomerData; + body: TrackParams; + }) => { + return await autumn.track({ + ...sanitizeBody(body), + customer_id, + customer_data, + }); + }, }); const openBillingPortalHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - body, - }: { - autumn: Autumn; - customer_id: string; - body: BillingPortalParams; - }) => { - return await autumn.customers.billingPortal(customer_id, body); - }, + fn: async ({ + autumn, + customer_id, + body, + }: { + autumn: Autumn; + customer_id: string; + body: BillingPortalParams; + }) => { + return await autumn.customers.billingPortal(customer_id, body); + }, }); const queryHandler = withAuth({ - fn: async ({ - autumn, - customer_id, - body, - }: { - autumn: Autumn; - customer_id: string; - body: QueryParams; - }) => { - - return await autumn.query({ - ...sanitizeBody(body), - customer_id, - }); - }, + fn: async ({ + autumn, + customer_id, + body, + }: { + autumn: Autumn; + customer_id: string; + body: QueryParams; + }) => { + return await autumn.query({ + ...sanitizeBody(body), + customer_id, + }); + }, }); const addGenRoutes = (router: RouterContext) => { - addRoute(router, "POST", `${BASE_PATH}/checkout`, { - handler: checkoutHandler, - }); - addRoute(router, "POST", `${BASE_PATH}/attach`, { - handler: attachHandler, - }); - addRoute(router, "POST", `${BASE_PATH}/cancel`, { - handler: cancelHandler, - }); - addRoute(router, "POST", `${BASE_PATH}/check`, { - handler: checkHandler, - }); - addRoute(router, "POST", `${BASE_PATH}/track`, { - handler: trackHandler, - }); - addRoute(router, "POST", `${BASE_PATH}/billing_portal`, { - handler: openBillingPortalHandler, - }); - addRoute(router, "POST", `${BASE_PATH}/setup_payment`, { - handler: setupPaymentHandler, - }); - addRoute(router, "POST", `${BASE_PATH}/query`, { - handler: queryHandler, - }); + addRoute(router, "POST", `${BASE_PATH}/checkout`, { + handler: checkoutHandler, + }); + addRoute(router, "POST", `${BASE_PATH}/attach`, { + handler: attachHandler, + }); + addRoute(router, "POST", `${BASE_PATH}/cancel`, { + handler: cancelHandler, + }); + addRoute(router, "POST", `${BASE_PATH}/check`, { + handler: checkHandler, + }); + addRoute(router, "POST", `${BASE_PATH}/track`, { + handler: trackHandler, + }); + addRoute(router, "POST", `${BASE_PATH}/billing_portal`, { + handler: openBillingPortalHandler, + }); + addRoute(router, "POST", `${BASE_PATH}/setup_payment`, { + handler: setupPaymentHandler, + }); + addRoute(router, "POST", `${BASE_PATH}/query`, { + handler: queryHandler, + }); }; export { addGenRoutes }; diff --git a/package/src/libraries/react/client/clientGenMethods.ts b/package/src/libraries/react/client/clientGenMethods.ts index d3c285e8..4d379dbb 100644 --- a/package/src/libraries/react/client/clientGenMethods.ts +++ b/package/src/libraries/react/client/clientGenMethods.ts @@ -1,106 +1,106 @@ import type { - AutumnPromise, - BillingPortalResult, - CancelResult, - CheckResult, - QueryResult, - SetupPaymentResult, - TrackResult, + AutumnPromise, + BillingPortalResult, + CancelResult, + CheckResult, + QueryResult, + SetupPaymentResult, + TrackResult, } from "@sdk"; import type { AttachResult, CheckoutResult } from "@sdk/general/attachTypes"; import type { AutumnClient } from "./ReactAutumnClient"; import type { AttachParams, CheckoutParams } from "./types/clientAttachTypes"; import type { - CancelParams, - CheckParams, - OpenBillingPortalParams, - QueryParams, - SetupPaymentParams, - TrackParams, + CancelParams, + CheckParams, + OpenBillingPortalParams, + QueryParams, + SetupPaymentParams, + TrackParams, } from "./types/clientGenTypes"; export async function checkoutMethod( - this: AutumnClient, - params: CheckoutParams + this: AutumnClient, + params: CheckoutParams, ): AutumnPromise { - const finalParams = { - ...params, - successUrl: params.successUrl ?? this.defaultReturnUrl, - }; - const res = await this.post(`${this.prefix}/checkout`, finalParams); - return res; + const finalParams = { + ...params, + successUrl: params.successUrl ?? this.defaultReturnUrl, + }; + const res = await this.post(`${this.prefix}/checkout`, finalParams); + return res; } export async function attachMethod( - this: AutumnClient, - params: AttachParams + this: AutumnClient, + params: AttachParams, ): AutumnPromise { - const finalParams = { - ...params, - successUrl: params.successUrl ?? this.defaultReturnUrl, - }; - const res = await this.post(`${this.prefix}/attach`, finalParams); - return res; + const finalParams = { + ...params, + successUrl: params.successUrl ?? this.defaultReturnUrl, + }; + const res = await this.post(`${this.prefix}/attach`, finalParams); + return res; } export async function setupPaymentMethod( - this: AutumnClient, - params: SetupPaymentParams + this: AutumnClient, + params: SetupPaymentParams, ): AutumnPromise { - const finalParams = { - ...params, - successUrl: params.successUrl ?? this.defaultReturnUrl, - }; - const res = await this.post(`${this.prefix}/setup_payment`, finalParams); - return res; + const finalParams = { + ...params, + successUrl: params.successUrl ?? this.defaultReturnUrl, + }; + const res = await this.post(`${this.prefix}/setup_payment`, finalParams); + return res; } export async function cancelMethod( - this: AutumnClient, - params: CancelParams + this: AutumnClient, + params: CancelParams, ): AutumnPromise { - const res = await this.post(`${this.prefix}/cancel`, params); - return res; + const res = await this.post(`${this.prefix}/cancel`, params); + return res; } export async function checkMethod( - this: AutumnClient, - params: CheckParams + this: AutumnClient, + params: CheckParams, ): AutumnPromise { - // Remove dialog from params - const noDialogParams = { - ...params, - dialog: undefined, - }; + // Remove dialog from params + const noDialogParams = { + ...params, + dialog: undefined, + }; - const res = await this.post(`${this.prefix}/check`, noDialogParams); - return res; + const res = await this.post(`${this.prefix}/check`, noDialogParams); + return res; } export async function trackMethod( - this: AutumnClient, - params: TrackParams + this: AutumnClient, + params: TrackParams, ): AutumnPromise { - const res = await this.post(`${this.prefix}/track`, params); - return res; + const res = await this.post(`${this.prefix}/track`, params); + return res; } export async function openBillingPortalMethod( - this: AutumnClient, - params?: OpenBillingPortalParams + this: AutumnClient, + params?: OpenBillingPortalParams, ): AutumnPromise { - const finalParams = { - ...(params || {}), - returnUrl: params?.returnUrl ?? this.defaultReturnUrl, - }; - const res = await this.post(`${this.prefix}/billing_portal`, finalParams); - return res; + const finalParams = { + ...(params || {}), + returnUrl: params?.returnUrl ?? this.defaultReturnUrl, + }; + const res = await this.post(`${this.prefix}/billing_portal`, finalParams); + return res; } export async function queryMethod( - this: AutumnClient, - params: QueryParams + this: AutumnClient, + params: QueryParams, ): AutumnPromise { - const res = await this.post(`${this.prefix}/query`, params); - return res; + const res = await this.post(`${this.prefix}/query`, params); + return res; } diff --git a/package/src/libraries/react/client/types/clientGenTypes.ts b/package/src/libraries/react/client/types/clientGenTypes.ts index ce684ab1..45db4aeb 100644 --- a/package/src/libraries/react/client/types/clientGenTypes.ts +++ b/package/src/libraries/react/client/types/clientGenTypes.ts @@ -2,57 +2,59 @@ import { QueryRangeEnum } from "@sdk"; import { z } from "zod/v4"; export const CancelParamsSchema = z.object({ - productId: z.string(), - entityId: z.string().optional(), - cancelImmediately: z.boolean().optional(), + productId: z.string(), + entityId: z.string().optional(), + cancelImmediately: z.boolean().optional(), }); export type CancelParams = z.infer; // Add interfaces for function params export const CheckParamsSchema = z.object({ - featureId: z.string().optional(), - productId: z.string().optional(), - entityId: z.string().optional(), - requiredBalance: z.number().optional(), - sendEvent: z.boolean().optional(), - withPreview: z.boolean().optional(), - dialog: z.any().optional(), - entityData: z.any().optional(), - properties: z.record(z.string(), z.any()).optional(), + featureId: z.string().optional(), + productId: z.string().optional(), + entityId: z.string().optional(), + requiredBalance: z.number().optional(), + sendEvent: z.boolean().optional(), + withPreview: z.boolean().optional(), + dialog: z.any().optional(), + entityData: z.any().optional(), + properties: z.record(z.string(), z.any()).optional(), }); export type CheckParams = z.infer; export const TrackParamsSchema = z.object({ - featureId: z.string().optional(), - eventName: z.string().optional(), - entityId: z.string().optional(), - value: z.number().optional(), - idempotencyKey: z.string().optional(), - entityData: z.any().optional(), + featureId: z.string().optional(), + eventName: z.string().optional(), + entityId: z.string().optional(), + value: z.number().optional(), + idempotencyKey: z.string().optional(), + entityData: z.any().optional(), }); export type TrackParams = z.infer; export const OpenBillingPortalParamsSchema = z.object({ - returnUrl: z.string().optional(), - openInNewTab: z.boolean().optional(), + returnUrl: z.string().optional(), + openInNewTab: z.boolean().optional(), }); -export type OpenBillingPortalParams = z.infer; +export type OpenBillingPortalParams = z.infer< + typeof OpenBillingPortalParamsSchema +>; export const SetupPaymentParamsSchema = z.object({ - successUrl: z.string().optional(), - checkoutSessionParams: z.record(z.string(), z.any()).optional(), - openInNewTab: z.boolean().optional(), + successUrl: z.string().optional(), + checkoutSessionParams: z.record(z.string(), z.any()).optional(), + openInNewTab: z.boolean().optional(), }); export type SetupPaymentParams = z.infer; export const QueryParamsSchema = z.object({ - featureId: z.string().or(z.array(z.string())), - range: QueryRangeEnum.optional(), + featureId: z.string().or(z.array(z.string())), + range: QueryRangeEnum.optional(), }); export type QueryParams = z.infer; diff --git a/package/src/sdk/client.ts b/package/src/sdk/client.ts index bfc3f5d8..80df97c2 100644 --- a/package/src/sdk/client.ts +++ b/package/src/sdk/client.ts @@ -14,7 +14,6 @@ import { import { CancelParams, CheckParams, - QueryParams, SetupPaymentParams, TrackParams, UsageParams, @@ -31,6 +30,8 @@ import { toContainerResult } from "./response"; import { staticWrapper } from "./utils"; import { logger } from "../utils/logger"; import { featureMethods } from "./features/featureMethods"; +import { eventMethods } from "./events/eventMethods"; +import { QueryParams } from "./events/eventTypes"; const LATEST_API_VERSION = "1.2"; @@ -111,13 +112,14 @@ export class Autumn { static entities = entityMethods(); static referrals = referralMethods(); static features = featureMethods(); + static events = eventMethods(); customers = customerMethods(this); products = productMethods(this); entities = entityMethods(this); referrals = referralMethods(this); features = featureMethods(this); - + events = eventMethods(this); /** @@ -367,4 +369,6 @@ export class Autumn { params, }); } + + } diff --git a/package/src/sdk/events/eventMethods.ts b/package/src/sdk/events/eventMethods.ts new file mode 100644 index 00000000..5b51016e --- /dev/null +++ b/package/src/sdk/events/eventMethods.ts @@ -0,0 +1,37 @@ +import type { AutumnPromise } from "@sdk/response"; +import { staticWrapper } from "@sdk/utils"; +import type { Autumn } from "../client"; +import type { + EventListResponse, + ListParams, + QueryParams, + QueryResult, +} from "./eventTypes"; + +export const eventMethods = (instance?: Autumn) => { + return { + list: (params: ListParams) => + staticWrapper(handleEventList, instance, { params }), + aggregate: (params: QueryParams) => + staticWrapper(handleEventAggregate, instance, { params }), + }; +}; + +const handleEventList = async ({ + instance, + params, +}: { + instance: Autumn; + params: ListParams; +}): AutumnPromise => { + return instance.post("/events/list", params); +}; +const handleEventAggregate = async ({ + instance, + params, +}: { + instance: Autumn; + params: QueryParams; +}): AutumnPromise => { + return instance.post("/events/aggregate", params); +}; diff --git a/package/src/sdk/events/eventTypes.ts b/package/src/sdk/events/eventTypes.ts new file mode 100644 index 00000000..6490b067 --- /dev/null +++ b/package/src/sdk/events/eventTypes.ts @@ -0,0 +1,72 @@ +import { + CursorPaginationQuerySchema, + createCursorPaginatedResponseSchema, +} from "@sdk/general/cursorTypes"; +import { z } from "zod/v4"; + +export const QueryRangeEnum = z.enum([ + "24h", + "7d", + "30d", + "90d", + "last_cycle", + "1bc", + "3bc", +]); + +export const BinSizeEnum = z.enum(["day", "hour"]); + +export const QueryParamsSchema = z.object({ + customer_id: z.string(), + feature_id: z.string().or(z.array(z.string())), + range: QueryRangeEnum.optional(), + group_by: z.string().startsWith("properties.").optional(), + bin_size: BinSizeEnum.optional(), + custom_range: z + .object({ + start: z.number(), + end: z.number(), + }) + .optional(), +}); + +export type QueryParams = z.infer; + +export type QueryResult = { + list: Array< + { + period: number; + } & { + [key: string]: number | Record; + } + >; +}; + +export const ListParamsSchema = CursorPaginationQuerySchema.extend({ + customer_id: z.string(), + feature_id: z.string().or(z.array(z.string())), + time_range: z + .object({ + start: z.coerce.number().optional(), + end: z.coerce.number().optional(), + }) + .optional(), +}); + +export type ListParams = z.infer; + +export const EventListSchema = z.object({ + id: z.string().describe("Event ID (KSUID)"), + timestamp: z.number().describe("Event timestamp (epoch milliseconds)"), + event_name: z.string().describe("Name of the event"), + customer_id: z.string().describe("Customer identifier"), + value: z.number().describe("Event value/count"), + properties: z.object({}).describe("Event properties (JSONB)"), +}); + +export type EventList = z.infer; + +export const EventListResponseSchema = + createCursorPaginatedResponseSchema(EventListSchema); + +export type EventListResponse = z.infer; diff --git a/package/src/sdk/general/cursorTypes.ts b/package/src/sdk/general/cursorTypes.ts new file mode 100644 index 00000000..0a5f4417 --- /dev/null +++ b/package/src/sdk/general/cursorTypes.ts @@ -0,0 +1,34 @@ +import { z } from "zod/v4"; + +export const PaginationDefaults = { + Limit: 100, + MaxLimit: 1000, +}; + +export const CursorPaginationQuerySchema = z.object({ + starting_after: z.string().optional(), + limit: z.coerce + .number() + .int() + .min(1) + .max(PaginationDefaults.MaxLimit) + .default(PaginationDefaults.Limit) + .optional(), +}); + +export type CursorPaginationQuery = z.infer; + +export const createCursorPaginatedResponseSchema = ( + itemSchema: T, +) => + z.object({ + list: z.array(itemSchema), + has_more: z.boolean(), + next_cursor: z.string().nullable(), + }); + +export type CursorPaginatedResponse = { + data: T[]; + has_more: boolean; + next_cursor: string | null; +}; diff --git a/package/src/sdk/general/genMethods.ts b/package/src/sdk/general/genMethods.ts index 6bea8d5c..dcb6251e 100644 --- a/package/src/sdk/general/genMethods.ts +++ b/package/src/sdk/general/genMethods.ts @@ -12,8 +12,6 @@ import { CancelResult, CheckParams, CheckResult, - QueryParams, - QueryResult, SetupPaymentParams, SetupPaymentResult, TrackParams, @@ -21,6 +19,7 @@ import { UsageParams, UsageResult, } from "./genTypes"; +import { QueryParams, QueryResult } from "../events/eventTypes"; export const handleCheckout = async ({ instance, @@ -133,4 +132,4 @@ export const handleQuery = async ({ }): AutumnPromise => { return instance.post("/query", params); -}; +}; \ No newline at end of file diff --git a/package/src/sdk/general/genTypes.ts b/package/src/sdk/general/genTypes.ts index b57b1265..875210ed 100644 --- a/package/src/sdk/general/genTypes.ts +++ b/package/src/sdk/general/genTypes.ts @@ -84,22 +84,3 @@ export interface SetupPaymentResult { customer_id: string; url: string; } - -export const QueryRangeEnum = z.enum(["24h", "7d", "30d", "90d", "last_cycle"]); -export const QueryParamsSchema = z.object({ - customer_id: z.string(), - feature_id: z.string().or(z.array(z.string())), - range: QueryRangeEnum.optional(), -}); - -export type QueryParams = z.infer; - -export type QueryResult = { - list: Array< - { - period: number; - } & { - [key: string]: number; - } - >; -}; diff --git a/package/src/sdk/index.ts b/package/src/sdk/index.ts index 25d16161..76ab7424 100644 --- a/package/src/sdk/index.ts +++ b/package/src/sdk/index.ts @@ -25,44 +25,49 @@ export { toContainerResult } from "./response"; // Export Zod schemas for convex integration export { - CancelParamsSchema, - CancelResultSchema, - TrackParamsSchema, - TrackResultSchema, - CheckParamsSchema, - QueryParamsSchema, - QueryRangeEnum, + CancelParamsSchema, + CancelResultSchema, + TrackParamsSchema, + TrackResultSchema, + CheckParamsSchema, } from "./general/genTypes"; export { - AttachFeatureOptionsSchema, - AttachParamsSchema, - AttachResultSchema, - CheckoutParamsSchema, + QueryParamsSchema, + QueryRangeEnum, + type QueryParams, + type QueryResult, + EventListResponseSchema, + EventListSchema, + type EventList, + type EventListResponse, +} from "./events/eventTypes"; + +export { + AttachFeatureOptionsSchema, + AttachParamsSchema, + AttachResultSchema, + CheckoutParamsSchema, } from "./general/attachTypes"; export { - CustomerDataSchema, - CoreCusFeatureSchema, - CreateCustomerParamsSchema, - BillingPortalParamsSchema, - UpdateBalancesParamsSchema, + CustomerDataSchema, + CoreCusFeatureSchema, + CreateCustomerParamsSchema, + BillingPortalParamsSchema, + UpdateBalancesParamsSchema, } from "./customers/cusTypes"; export { - EntityDataSchema, - TransferProductParamsSchema, + EntityDataSchema, + TransferProductParamsSchema, } from "./customers/entities/entTypes"; export { - CreateReferralCodeParamsSchema, - RedeemReferralCodeParamsSchema, + CreateReferralCodeParamsSchema, + RedeemReferralCodeParamsSchema, } from "./referrals/referralTypes"; -export { - CheckFeatureResultSchema, -} from "./general/checkTypes"; +export { CheckFeatureResultSchema } from "./general/checkTypes"; -export { - FeatureSchema, -} from "./features/featureTypes"; +export { FeatureSchema } from "./features/featureTypes"; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 616d034c..438b4d6a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -164,235 +164,6 @@ importers: specifier: 3.2.4 version: 3.2.4(@edge-runtime/vm@5.0.0)(@types/debug@4.1.12)(@types/node@18.17.0)(jiti@2.5.1)(lightningcss@1.30.1)(msw@2.10.4(@types/node@18.17.0)(typescript@5.5.4))(terser@5.43.1)(tsx@4.20.4)(yaml@2.8.1) - frameworks/atmn-test: - dependencies: - atmn: - specifier: workspace:* - version: link:../../atmn - - frameworks/convex-quick: - dependencies: - '@useautumn/convex': - specifier: workspace:* - version: link:../../convex - autumn-js: - specifier: workspace:* - version: link:../../package - convex: - specifier: ^1.27.4 - version: 1.29.3(@clerk/clerk-react@5.45.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(react@19.1.1) - typescript: - specifier: ^5 - version: 5.9.2 - devDependencies: - '@types/bun': - specifier: latest - version: 1.3.3 - - frameworks/nextjs-test: - dependencies: - '@clerk/nextjs': - specifier: ^6.28.1 - version: 6.30.1(next@15.3.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-accordion': - specifier: ^1.2.11 - version: 1.2.11(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-dialog': - specifier: ^1.1.14 - version: 1.1.15(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-popover': - specifier: ^1.1.14 - version: 1.1.15(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-slot': - specifier: ^1.2.3 - version: 1.2.3(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-switch': - specifier: ^1.2.5 - version: 1.2.5(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@tailwindcss/cli': - specifier: ^4.1.11 - version: 4.1.11 - atmn: - specifier: workspace:* - version: link:../../atmn - autumn-js: - specifier: workspace:* - version: link:../../package - better-auth: - specifier: ^1.2.12 - version: 1.3.34(next@15.3.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - class-variance-authority: - specifier: ^0.7.1 - version: 0.7.1 - clsx: - specifier: ^2.1.1 - version: 2.1.1 - lucide-react: - specifier: ^0.525.0 - version: 0.525.0(react@19.1.1) - next: - specifier: 15.3.4 - version: 15.3.4(@babel/core@7.28.3)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - pg: - specifier: ^8.16.3 - version: 8.16.3 - react: - specifier: ^19.0.0 - version: 19.1.1 - react-dom: - specifier: ^19.0.0 - version: 19.1.1(react@19.1.1) - recharts: - specifier: 2.15.4 - version: 2.15.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - tailwind-merge: - specifier: ^3.3.1 - version: 3.3.1 - zod: - specifier: ^4.0.0 - version: 4.1.5 - devDependencies: - '@eslint/eslintrc': - specifier: ^3 - version: 3.3.1 - '@tailwindcss/postcss': - specifier: ^4.0.0 - version: 4.1.11 - '@types/node': - specifier: ^20 - version: 20.19.10 - '@types/pg': - specifier: ^8.15.2 - version: 8.15.5 - '@types/react': - specifier: ^19 - version: 19.1.10 - '@types/react-dom': - specifier: ^19 - version: 19.1.9(@types/react@19.1.10) - autoprefixer: - specifier: ^10.4.21 - version: 10.4.21(postcss@8.5.6) - eslint: - specifier: ^9 - version: 9.29.0(jiti@2.5.1) - eslint-config-next: - specifier: 15.3.4 - version: 15.3.4(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2) - postcss-prefix-selector: - specifier: ^2.1.1 - version: 2.1.1(postcss@8.5.6) - tailwindcss: - specifier: ^4.1.10 - version: 4.1.12 - tw-animate-css: - specifier: ^1.3.4 - version: 1.3.6 - typescript: - specifier: ^5 - version: 5.9.2 - - frameworks/quick-test: - dependencies: - atmn: - specifier: workspace:* - version: link:../../atmn - autumn-js: - specifier: workspace:* - version: link:../../package - - frameworks/speakeasy-test: - dependencies: - dotenv: - specifier: ^17.2.2 - version: 17.2.3 - typescript: - specifier: ^5 - version: 5.9.2 - devDependencies: - '@types/bun': - specifier: latest - version: 1.3.3 - - frameworks/with-supabase: - dependencies: - '@radix-ui/react-checkbox': - specifier: ^1.3.1 - version: 1.3.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-dropdown-menu': - specifier: ^2.1.14 - version: 2.1.16(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-label': - specifier: ^2.1.6 - version: 2.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-slot': - specifier: ^1.2.2 - version: 1.2.3(@types/react@19.1.10)(react@19.1.1) - '@supabase/ssr': - specifier: latest - version: 0.8.0(@supabase/supabase-js@2.86.0) - '@supabase/supabase-js': - specifier: latest - version: 2.86.0 - class-variance-authority: - specifier: ^0.7.1 - version: 0.7.1 - clsx: - specifier: ^2.1.1 - version: 2.1.1 - lucide-react: - specifier: ^0.511.0 - version: 0.511.0(react@19.1.1) - next: - specifier: latest - version: 16.0.7(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - next-themes: - specifier: ^0.4.6 - version: 0.4.6(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - react: - specifier: ^19.0.0 - version: 19.1.1 - react-dom: - specifier: ^19.0.0 - version: 19.1.1(react@19.1.1) - tailwind-merge: - specifier: ^3.3.0 - version: 3.3.1 - devDependencies: - '@eslint/eslintrc': - specifier: ^3 - version: 3.3.1 - '@types/node': - specifier: ^20 - version: 20.19.10 - '@types/react': - specifier: ^19 - version: 19.1.10 - '@types/react-dom': - specifier: ^19 - version: 19.1.9(@types/react@19.1.10) - autoprefixer: - specifier: ^10.4.20 - version: 10.4.21(postcss@8.5.6) - eslint: - specifier: ^9 - version: 9.29.0(jiti@2.5.1) - eslint-config-next: - specifier: 15.3.1 - version: 15.3.1(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2) - postcss: - specifier: ^8 - version: 8.5.6 - tailwindcss: - specifier: ^3.4.1 - version: 3.4.17(ts-node@10.9.2(@types/node@20.19.10)(typescript@5.9.2)) - tailwindcss-animate: - specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.17(ts-node@10.9.2(@types/node@20.19.10)(typescript@5.9.2))) - typescript: - specifier: ^5 - version: 5.9.2 - nextjs: dependencies: '@clerk/nextjs': @@ -1676,265 +1447,128 @@ packages: resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} - '@img/colour@1.0.0': - resolution: {integrity: sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==} - engines: {node: '>=18'} - '@img/sharp-darwin-arm64@0.34.3': resolution: {integrity: sha512-ryFMfvxxpQRsgZJqBd4wsttYQbCxsJksrv9Lw/v798JcQ8+w84mBWuXwl+TT0WJ/WrYOLaYpwQXi3sA9nTIaIg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [darwin] - '@img/sharp-darwin-arm64@0.34.5': - resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [arm64] - os: [darwin] - '@img/sharp-darwin-x64@0.34.3': resolution: {integrity: sha512-yHpJYynROAj12TA6qil58hmPmAwxKKC7reUqtGLzsOHfP7/rniNGTL8tjWX6L3CTV4+5P4ypcS7Pp+7OB+8ihA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [darwin] - '@img/sharp-darwin-x64@0.34.5': - resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [x64] - os: [darwin] - '@img/sharp-libvips-darwin-arm64@1.2.0': resolution: {integrity: sha512-sBZmpwmxqwlqG9ueWFXtockhsxefaV6O84BMOrhtg/YqbTaRdqDE7hxraVE3y6gVM4eExmfzW4a8el9ArLeEiQ==} cpu: [arm64] os: [darwin] - '@img/sharp-libvips-darwin-arm64@1.2.4': - resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==} - cpu: [arm64] - os: [darwin] - '@img/sharp-libvips-darwin-x64@1.2.0': resolution: {integrity: sha512-M64XVuL94OgiNHa5/m2YvEQI5q2cl9d/wk0qFTDVXcYzi43lxuiFTftMR1tOnFQovVXNZJ5TURSDK2pNe9Yzqg==} cpu: [x64] os: [darwin] - '@img/sharp-libvips-darwin-x64@1.2.4': - resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==} - cpu: [x64] - os: [darwin] - '@img/sharp-libvips-linux-arm64@1.2.0': resolution: {integrity: sha512-RXwd0CgG+uPRX5YYrkzKyalt2OJYRiJQ8ED/fi1tq9WQW2jsQIn0tqrlR5l5dr/rjqq6AHAxURhj2DVjyQWSOA==} cpu: [arm64] os: [linux] - '@img/sharp-libvips-linux-arm64@1.2.4': - resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} - cpu: [arm64] - os: [linux] - '@img/sharp-libvips-linux-arm@1.2.0': resolution: {integrity: sha512-mWd2uWvDtL/nvIzThLq3fr2nnGfyr/XMXlq8ZJ9WMR6PXijHlC3ksp0IpuhK6bougvQrchUAfzRLnbsen0Cqvw==} cpu: [arm] os: [linux] - '@img/sharp-libvips-linux-arm@1.2.4': - resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} - cpu: [arm] - os: [linux] - '@img/sharp-libvips-linux-ppc64@1.2.0': resolution: {integrity: sha512-Xod/7KaDDHkYu2phxxfeEPXfVXFKx70EAFZ0qyUdOjCcxbjqyJOEUpDe6RIyaunGxT34Anf9ue/wuWOqBW2WcQ==} cpu: [ppc64] os: [linux] - '@img/sharp-libvips-linux-ppc64@1.2.4': - resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} - cpu: [ppc64] - os: [linux] - - '@img/sharp-libvips-linux-riscv64@1.2.4': - resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} - cpu: [riscv64] - os: [linux] - '@img/sharp-libvips-linux-s390x@1.2.0': resolution: {integrity: sha512-eMKfzDxLGT8mnmPJTNMcjfO33fLiTDsrMlUVcp6b96ETbnJmd4uvZxVJSKPQfS+odwfVaGifhsB07J1LynFehw==} cpu: [s390x] os: [linux] - '@img/sharp-libvips-linux-s390x@1.2.4': - resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} - cpu: [s390x] - os: [linux] - '@img/sharp-libvips-linux-x64@1.2.0': resolution: {integrity: sha512-ZW3FPWIc7K1sH9E3nxIGB3y3dZkpJlMnkk7z5tu1nSkBoCgw2nSRTFHI5pB/3CQaJM0pdzMF3paf9ckKMSE9Tg==} cpu: [x64] os: [linux] - '@img/sharp-libvips-linux-x64@1.2.4': - resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} - cpu: [x64] - os: [linux] - '@img/sharp-libvips-linuxmusl-arm64@1.2.0': resolution: {integrity: sha512-UG+LqQJbf5VJ8NWJ5Z3tdIe/HXjuIdo4JeVNADXBFuG7z9zjoegpzzGIyV5zQKi4zaJjnAd2+g2nna8TZvuW9Q==} cpu: [arm64] os: [linux] - '@img/sharp-libvips-linuxmusl-arm64@1.2.4': - resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} - cpu: [arm64] - os: [linux] - '@img/sharp-libvips-linuxmusl-x64@1.2.0': resolution: {integrity: sha512-SRYOLR7CXPgNze8akZwjoGBoN1ThNZoqpOgfnOxmWsklTGVfJiGJoC/Lod7aNMGA1jSsKWM1+HRX43OP6p9+6Q==} cpu: [x64] os: [linux] - '@img/sharp-libvips-linuxmusl-x64@1.2.4': - resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} - cpu: [x64] - os: [linux] - '@img/sharp-linux-arm64@0.34.3': resolution: {integrity: sha512-QdrKe3EvQrqwkDrtuTIjI0bu6YEJHTgEeqdzI3uWJOH6G1O8Nl1iEeVYRGdj1h5I21CqxSvQp1Yv7xeU3ZewbA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] - '@img/sharp-linux-arm64@0.34.5': - resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [arm64] - os: [linux] - '@img/sharp-linux-arm@0.34.3': resolution: {integrity: sha512-oBK9l+h6KBN0i3dC8rYntLiVfW8D8wH+NPNT3O/WBHeW0OQWCjfWksLUaPidsrDKpJgXp3G3/hkmhptAW0I3+A==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm] os: [linux] - '@img/sharp-linux-arm@0.34.5': - resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [arm] - os: [linux] - '@img/sharp-linux-ppc64@0.34.3': resolution: {integrity: sha512-GLtbLQMCNC5nxuImPR2+RgrviwKwVql28FWZIW1zWruy6zLgA5/x2ZXk3mxj58X/tszVF69KK0Is83V8YgWhLA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [ppc64] os: [linux] - '@img/sharp-linux-ppc64@0.34.5': - resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [ppc64] - os: [linux] - - '@img/sharp-linux-riscv64@0.34.5': - resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [riscv64] - os: [linux] - '@img/sharp-linux-s390x@0.34.3': resolution: {integrity: sha512-3gahT+A6c4cdc2edhsLHmIOXMb17ltffJlxR0aC2VPZfwKoTGZec6u5GrFgdR7ciJSsHT27BD3TIuGcuRT0KmQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [s390x] os: [linux] - '@img/sharp-linux-s390x@0.34.5': - resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [s390x] - os: [linux] - '@img/sharp-linux-x64@0.34.3': resolution: {integrity: sha512-8kYso8d806ypnSq3/Ly0QEw90V5ZoHh10yH0HnrzOCr6DKAPI6QVHvwleqMkVQ0m+fc7EH8ah0BB0QPuWY6zJQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] - '@img/sharp-linux-x64@0.34.5': - resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [x64] - os: [linux] - '@img/sharp-linuxmusl-arm64@0.34.3': resolution: {integrity: sha512-vAjbHDlr4izEiXM1OTggpCcPg9tn4YriK5vAjowJsHwdBIdx0fYRsURkxLG2RLm9gyBq66gwtWI8Gx0/ov+JKQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] - '@img/sharp-linuxmusl-arm64@0.34.5': - resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [arm64] - os: [linux] - '@img/sharp-linuxmusl-x64@0.34.3': resolution: {integrity: sha512-gCWUn9547K5bwvOn9l5XGAEjVTTRji4aPTqLzGXHvIr6bIDZKNTA34seMPgM0WmSf+RYBH411VavCejp3PkOeQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] - '@img/sharp-linuxmusl-x64@0.34.5': - resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [x64] - os: [linux] - '@img/sharp-wasm32@0.34.3': resolution: {integrity: sha512-+CyRcpagHMGteySaWos8IbnXcHgfDn7pO2fiC2slJxvNq9gDipYBN42/RagzctVRKgxATmfqOSulgZv5e1RdMg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [wasm32] - '@img/sharp-wasm32@0.34.5': - resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [wasm32] - '@img/sharp-win32-arm64@0.34.3': resolution: {integrity: sha512-MjnHPnbqMXNC2UgeLJtX4XqoVHHlZNd+nPt1kRPmj63wURegwBhZlApELdtxM2OIZDRv/DFtLcNhVbd1z8GYXQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [win32] - '@img/sharp-win32-arm64@0.34.5': - resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [arm64] - os: [win32] - '@img/sharp-win32-ia32@0.34.3': resolution: {integrity: sha512-xuCdhH44WxuXgOM714hn4amodJMZl3OEvf0GVTm0BEyMeA2to+8HEdRPShH0SLYptJY1uBw+SCFP9WVQi1Q/cw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [ia32] os: [win32] - '@img/sharp-win32-ia32@0.34.5': - resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [ia32] - os: [win32] - '@img/sharp-win32-x64@0.34.3': resolution: {integrity: sha512-OWwz05d++TxzLEv4VnsTz5CmZ6mI6S05sfQGEMrNrQcOEERbX46332IvE7pO/EUiw7jUrrS40z/M7kPyjfl04g==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [win32] - '@img/sharp-win32-x64@0.34.5': - resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - cpu: [x64] - os: [win32] - '@inquirer/checkbox@4.2.0': resolution: {integrity: sha512-fdSw07FLJEU5vbpOPzXo5c6xmMGDzbZE2+niuDHX5N6mc6V0Ebso/q3xiHra4D73+PMsC8MJmcaZKuAAoaQsSA==} engines: {node: '>=18'} @@ -2156,15 +1790,9 @@ packages: '@next/env@15.3.4': resolution: {integrity: sha512-ZkdYzBseS6UjYzz6ylVKPOK+//zLWvD6Ta+vpoye8cW11AjiQjGYVibF0xuvT4L0iJfAPfZLFidaEzAOywyOAQ==} - '@next/env@16.0.7': - resolution: {integrity: sha512-gpaNgUh5nftFKRkRQGnVi5dpcYSKGcZZkQffZ172OrG/XkrnS7UBTQ648YY+8ME92cC4IojpI2LqTC8sTDhAaw==} - '@next/eslint-plugin-next@15.1.4': resolution: {integrity: sha512-HwlEXwCK3sr6zmVGEvWBjW9tBFs1Oe6hTmTLoFQtpm4As5HCdu8jfSE0XJOp7uhfEGLniIx8yrGxEWwNnY0fmQ==} - '@next/eslint-plugin-next@15.3.1': - resolution: {integrity: sha512-oEs4dsfM6iyER3jTzMm4kDSbrQJq8wZw5fmT6fg2V3SMo+kgG+cShzLfEV20senZzv8VF+puNLheiGPlBGsv2A==} - '@next/eslint-plugin-next@15.3.4': resolution: {integrity: sha512-lBxYdj7TI8phbJcLSAqDt57nIcobEign5NYIKCiy0hXQhrUbTqLqOaSDi568U6vFg4hJfBdZYsG4iP/uKhCqgg==} @@ -2174,96 +1802,48 @@ packages: cpu: [arm64] os: [darwin] - '@next/swc-darwin-arm64@16.0.7': - resolution: {integrity: sha512-LlDtCYOEj/rfSnEn/Idi+j1QKHxY9BJFmxx7108A6D8K0SB+bNgfYQATPk/4LqOl4C0Wo3LACg2ie6s7xqMpJg==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - '@next/swc-darwin-x64@15.3.4': resolution: {integrity: sha512-Z0FYJM8lritw5Wq+vpHYuCIzIlEMjewG2aRkc3Hi2rcbULknYL/xqfpBL23jQnCSrDUGAo/AEv0Z+s2bff9Zkw==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@next/swc-darwin-x64@16.0.7': - resolution: {integrity: sha512-rtZ7BhnVvO1ICf3QzfW9H3aPz7GhBrnSIMZyr4Qy6boXF0b5E3QLs+cvJmg3PsTCG2M1PBoC+DANUi4wCOKXpA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - '@next/swc-linux-arm64-gnu@15.3.4': resolution: {integrity: sha512-l8ZQOCCg7adwmsnFm8m5q9eIPAHdaB2F3cxhufYtVo84pymwKuWfpYTKcUiFcutJdp9xGHC+F1Uq3xnFU1B/7g==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@next/swc-linux-arm64-gnu@16.0.7': - resolution: {integrity: sha512-mloD5WcPIeIeeZqAIP5c2kdaTa6StwP4/2EGy1mUw8HiexSHGK/jcM7lFuS3u3i2zn+xH9+wXJs6njO7VrAqww==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - '@next/swc-linux-arm64-musl@15.3.4': resolution: {integrity: sha512-wFyZ7X470YJQtpKot4xCY3gpdn8lE9nTlldG07/kJYexCUpX1piX+MBfZdvulo+t1yADFVEuzFfVHfklfEx8kw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@next/swc-linux-arm64-musl@16.0.7': - resolution: {integrity: sha512-+ksWNrZrthisXuo9gd1XnjHRowCbMtl/YgMpbRvFeDEqEBd523YHPWpBuDjomod88U8Xliw5DHhekBC3EOOd9g==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - '@next/swc-linux-x64-gnu@15.3.4': resolution: {integrity: sha512-gEbH9rv9o7I12qPyvZNVTyP/PWKqOp8clvnoYZQiX800KkqsaJZuOXkWgMa7ANCCh/oEN2ZQheh3yH8/kWPSEg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@next/swc-linux-x64-gnu@16.0.7': - resolution: {integrity: sha512-4WtJU5cRDxpEE44Ana2Xro1284hnyVpBb62lIpU5k85D8xXxatT+rXxBgPkc7C1XwkZMWpK5rXLXTh9PFipWsA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - '@next/swc-linux-x64-musl@15.3.4': resolution: {integrity: sha512-Cf8sr0ufuC/nu/yQ76AnarbSAXcwG/wj+1xFPNbyNo8ltA6kw5d5YqO8kQuwVIxk13SBdtgXrNyom3ZosHAy4A==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@next/swc-linux-x64-musl@16.0.7': - resolution: {integrity: sha512-HYlhqIP6kBPXalW2dbMTSuB4+8fe+j9juyxwfMwCe9kQPPeiyFn7NMjNfoFOfJ2eXkeQsoUGXg+O2SE3m4Qg2w==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - '@next/swc-win32-arm64-msvc@15.3.4': resolution: {integrity: sha512-ay5+qADDN3rwRbRpEhTOreOn1OyJIXS60tg9WMYTWCy3fB6rGoyjLVxc4dR9PYjEdR2iDYsaF5h03NA+XuYPQQ==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@next/swc-win32-arm64-msvc@16.0.7': - resolution: {integrity: sha512-EviG+43iOoBRZg9deGauXExjRphhuYmIOJ12b9sAPy0eQ6iwcPxfED2asb/s2/yiLYOdm37kPaiZu8uXSYPs0Q==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - '@next/swc-win32-x64-msvc@15.3.4': resolution: {integrity: sha512-4kDt31Bc9DGyYs41FTL1/kNpDeHyha2TC0j5sRRoKCyrhNcfZ/nRQkAUlF27mETwm8QyHqIjHJitfcza2Iykfg==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@next/swc-win32-x64-msvc@16.0.7': - resolution: {integrity: sha512-gniPjy55zp5Eg0896qSrf3yB1dw4F/3s8VK1ephdsZZ129j2n6e1WqCbE2YgcKhW9hPB9TVZENugquWJD5x0ug==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - '@noble/ciphers@0.6.0': resolution: {integrity: sha512-mIbq/R9QXk5/cTfESb1OKtyFnk7oc1Om/8onA1158K9/OZUQFDEVy55jVTato+xmp3XX6F6Qh0zz0Nc1AxAlRQ==} @@ -2482,19 +2062,6 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-checkbox@1.3.3': - resolution: {integrity: sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - '@radix-ui/react-collapsible@1.1.11': resolution: {integrity: sha512-2qrRsVGSCYasSz1RFOorXwl0H7g7J1frQtgpQgYrt+MOidtPAINHn9CPovQXb83r8ahapdx3Tu0fa/pdFFSdPg==} peerDependencies: @@ -2613,19 +2180,6 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-dropdown-menu@2.1.16': - resolution: {integrity: sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - '@radix-ui/react-focus-guards@1.1.2': resolution: {integrity: sha512-fyjAACV62oPV925xFCrH8DR5xWhg9KYtJT4s3u54jxp+L/hbpTY2kIeEFFbFe+a/HCE94zGQMZLIpVTPVZDhaA==} peerDependencies: @@ -2679,19 +2233,6 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-menu@2.1.16': - resolution: {integrity: sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - '@radix-ui/react-navigation-menu@1.2.13': resolution: {integrity: sha512-WG8wWfDiJlSF5hELjwfjSGOXcBR/ZMhBFCGYe8vERpC39CQYZeq1PQ2kaYHdye3V95d06H89KGMsVCIE4LWo3g==} peerDependencies: @@ -2822,19 +2363,6 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-roving-focus@1.1.11': - resolution: {integrity: sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - '@radix-ui/react-scroll-area@1.2.9': resolution: {integrity: sha512-YSjEfBXnhUELsO2VzjdtYYD4CfQjvao+lhhrX5XsHD7/cyUNzljF1FHEbgTPN7LH2MClfwRMIsYlqTYpKTTe2A==} peerDependencies: @@ -3455,11 +2983,6 @@ packages: peerDependencies: '@supabase/supabase-js': ^2.43.4 - '@supabase/ssr@0.8.0': - resolution: {integrity: sha512-/PKk8kNFSs8QvvJ2vOww1mF5/c5W8y42duYtXvkOSe+yZKRgTTZywYG2l41pjhNomqESZCpZtXuWmYjFRMV+dw==} - peerDependencies: - '@supabase/supabase-js': ^2.76.1 - '@supabase/storage-js@2.86.0': resolution: {integrity: sha512-PM47jX/Mfobdtx7NNpoj9EvlrkapAVTQBZgGGslEXD6NS70EcGjhgRPBItwHdxZPM5GwqQ0cGMN06uhjeY2mHQ==} engines: {node: '>=20.0.0'} @@ -3753,9 +3276,6 @@ packages: '@types/bun@1.3.1': resolution: {integrity: sha512-4jNMk2/K9YJtfqwoAa28c8wK+T7nvJFOjxI4h/7sORWcypRNxBpr+TPNaCfVWq70tLCJsqoFwcf0oI0JU/fvMQ==} - '@types/bun@1.3.3': - resolution: {integrity: sha512-ogrKbJ2X5N0kWLLFKeytG0eHDleBYtngtlbu9cyBKFtNL3cnpDZkNdQj8flVf6WTZUX5ulI9AY1oa7ljhSrp+g==} - '@types/chai@5.2.2': resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==} @@ -4776,9 +4296,6 @@ packages: peerDependencies: '@types/react': ^19 - bun-types@1.3.3: - resolution: {integrity: sha512-z3Xwlg7j2l9JY27x5Qn3Wlyos8YAp0kKRlrePAOjgjMGS5IG6E7Jnlx736vH9UVI4wUICwwhC9anYL++XeOgTQ==} - bundle-name@4.1.0: resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} engines: {node: '>=18'} @@ -5817,15 +5334,6 @@ packages: typescript: optional: true - eslint-config-next@15.3.1: - resolution: {integrity: sha512-GnmyVd9TE/Ihe3RrvcafFhXErErtr2jS0JDeCSp3vWvy86AXwHsRBt0E3MqP/m8ACS1ivcsi5uaqjbhsG18qKw==} - peerDependencies: - eslint: ^7.23.0 || ^8.0.0 || ^9.0.0 - typescript: '>=3.3.1' - peerDependenciesMeta: - typescript: - optional: true - eslint-config-next@15.3.4: resolution: {integrity: sha512-WqeumCq57QcTP2lYlV6BRUySfGiBYEXlQ1L0mQ+u4N4X4ZhUVSSQ52WtjqHv60pJ6dD7jn+YZc0d1/ZSsxccvg==} peerDependencies: @@ -7538,11 +7046,6 @@ packages: peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 - lucide-react@0.511.0: - resolution: {integrity: sha512-VK5a2ydJ7xm8GvBeKLS9mu1pVK6ucef9780JVUjw6bAjJL/QXnd4Y0p7SPeOUMC27YhzNCZvm5d/QX0Tp3rc0w==} - peerDependencies: - react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 - lucide-react@0.523.0: resolution: {integrity: sha512-rUjQoy7egZT9XYVXBK1je9ckBnNp7qzRZOhLQx5RcEp2dCGlXo+mv6vf7Am4LimEcFBJIIZzSGfgTqc9QCrPSw==} peerDependencies: @@ -7985,27 +7488,6 @@ packages: sass: optional: true - next@16.0.7: - resolution: {integrity: sha512-3mBRJyPxT4LOxAJI6IsXeFtKfiJUbjCLgvXO02fV8Wy/lIhPvP94Fe7dGhUgHXcQy4sSuYwQNcOLhIfOm0rL0A==} - engines: {node: '>=20.9.0'} - hasBin: true - peerDependencies: - '@opentelemetry/api': ^1.1.0 - '@playwright/test': ^1.51.1 - babel-plugin-react-compiler: '*' - react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 - react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 - sass: ^1.3.0 - peerDependenciesMeta: - '@opentelemetry/api': - optional: true - '@playwright/test': - optional: true - babel-plugin-react-compiler: - optional: true - sass: - optional: true - nitropack@2.12.4: resolution: {integrity: sha512-MPmPRJWTeH03f/NmpN4q3iI3Woik4uaaWIoX34W3gMJiW06Vm1te/lPzuu5EXpXOK7Q2m3FymGMPXcExqih96Q==} engines: {node: ^16.11.0 || >=17.0.0} @@ -9256,11 +8738,6 @@ packages: engines: {node: '>=10'} hasBin: true - semver@7.7.3: - resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} - engines: {node: '>=10'} - hasBin: true - send@1.2.0: resolution: {integrity: sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==} engines: {node: '>= 18'} @@ -9321,10 +8798,6 @@ packages: resolution: {integrity: sha512-eX2IQ6nFohW4DbvHIOLRB3MHFpYqaqvXd3Tp5e/T/dSH83fxaNJQRvDMhASmkNTsNTVF2/OOopzRCt7xokgPfg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - sharp@0.34.5: - resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==} - engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} - shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -11517,159 +10990,76 @@ snapshots: '@humanwhocodes/retry@0.4.3': {} - '@img/colour@1.0.0': - optional: true - '@img/sharp-darwin-arm64@0.34.3': optionalDependencies: '@img/sharp-libvips-darwin-arm64': 1.2.0 optional: true - '@img/sharp-darwin-arm64@0.34.5': - optionalDependencies: - '@img/sharp-libvips-darwin-arm64': 1.2.4 - optional: true - '@img/sharp-darwin-x64@0.34.3': optionalDependencies: '@img/sharp-libvips-darwin-x64': 1.2.0 optional: true - '@img/sharp-darwin-x64@0.34.5': - optionalDependencies: - '@img/sharp-libvips-darwin-x64': 1.2.4 - optional: true - '@img/sharp-libvips-darwin-arm64@1.2.0': optional: true - '@img/sharp-libvips-darwin-arm64@1.2.4': - optional: true - '@img/sharp-libvips-darwin-x64@1.2.0': optional: true - '@img/sharp-libvips-darwin-x64@1.2.4': - optional: true - '@img/sharp-libvips-linux-arm64@1.2.0': optional: true - '@img/sharp-libvips-linux-arm64@1.2.4': - optional: true - '@img/sharp-libvips-linux-arm@1.2.0': optional: true - '@img/sharp-libvips-linux-arm@1.2.4': - optional: true - '@img/sharp-libvips-linux-ppc64@1.2.0': optional: true - '@img/sharp-libvips-linux-ppc64@1.2.4': - optional: true - - '@img/sharp-libvips-linux-riscv64@1.2.4': - optional: true - '@img/sharp-libvips-linux-s390x@1.2.0': optional: true - '@img/sharp-libvips-linux-s390x@1.2.4': - optional: true - '@img/sharp-libvips-linux-x64@1.2.0': optional: true - '@img/sharp-libvips-linux-x64@1.2.4': - optional: true - '@img/sharp-libvips-linuxmusl-arm64@1.2.0': optional: true - '@img/sharp-libvips-linuxmusl-arm64@1.2.4': - optional: true - '@img/sharp-libvips-linuxmusl-x64@1.2.0': optional: true - '@img/sharp-libvips-linuxmusl-x64@1.2.4': - optional: true - '@img/sharp-linux-arm64@0.34.3': optionalDependencies: '@img/sharp-libvips-linux-arm64': 1.2.0 optional: true - '@img/sharp-linux-arm64@0.34.5': - optionalDependencies: - '@img/sharp-libvips-linux-arm64': 1.2.4 - optional: true - '@img/sharp-linux-arm@0.34.3': optionalDependencies: '@img/sharp-libvips-linux-arm': 1.2.0 optional: true - '@img/sharp-linux-arm@0.34.5': - optionalDependencies: - '@img/sharp-libvips-linux-arm': 1.2.4 - optional: true - '@img/sharp-linux-ppc64@0.34.3': optionalDependencies: '@img/sharp-libvips-linux-ppc64': 1.2.0 optional: true - '@img/sharp-linux-ppc64@0.34.5': - optionalDependencies: - '@img/sharp-libvips-linux-ppc64': 1.2.4 - optional: true - - '@img/sharp-linux-riscv64@0.34.5': - optionalDependencies: - '@img/sharp-libvips-linux-riscv64': 1.2.4 - optional: true - '@img/sharp-linux-s390x@0.34.3': optionalDependencies: '@img/sharp-libvips-linux-s390x': 1.2.0 optional: true - '@img/sharp-linux-s390x@0.34.5': - optionalDependencies: - '@img/sharp-libvips-linux-s390x': 1.2.4 - optional: true - '@img/sharp-linux-x64@0.34.3': optionalDependencies: '@img/sharp-libvips-linux-x64': 1.2.0 optional: true - '@img/sharp-linux-x64@0.34.5': - optionalDependencies: - '@img/sharp-libvips-linux-x64': 1.2.4 - optional: true - '@img/sharp-linuxmusl-arm64@0.34.3': optionalDependencies: '@img/sharp-libvips-linuxmusl-arm64': 1.2.0 optional: true - '@img/sharp-linuxmusl-arm64@0.34.5': - optionalDependencies: - '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 - optional: true - - '@img/sharp-linuxmusl-x64@0.34.3': - optionalDependencies: - '@img/sharp-libvips-linuxmusl-x64': 1.2.0 - optional: true - - '@img/sharp-linuxmusl-x64@0.34.5': + '@img/sharp-linuxmusl-x64@0.34.3': optionalDependencies: - '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + '@img/sharp-libvips-linuxmusl-x64': 1.2.0 optional: true '@img/sharp-wasm32@0.34.3': @@ -11677,29 +11067,15 @@ snapshots: '@emnapi/runtime': 1.4.5 optional: true - '@img/sharp-wasm32@0.34.5': - dependencies: - '@emnapi/runtime': 1.7.0 - optional: true - '@img/sharp-win32-arm64@0.34.3': optional: true - '@img/sharp-win32-arm64@0.34.5': - optional: true - '@img/sharp-win32-ia32@0.34.3': optional: true - '@img/sharp-win32-ia32@0.34.5': - optional: true - '@img/sharp-win32-x64@0.34.3': optional: true - '@img/sharp-win32-x64@0.34.5': - optional: true - '@inquirer/checkbox@4.2.0(@types/node@24.3.0)': dependencies: '@inquirer/core': 10.1.15(@types/node@24.3.0) @@ -12087,16 +11463,10 @@ snapshots: '@next/env@15.3.4': {} - '@next/env@16.0.7': {} - '@next/eslint-plugin-next@15.1.4': dependencies: fast-glob: 3.3.1 - '@next/eslint-plugin-next@15.3.1': - dependencies: - fast-glob: 3.3.1 - '@next/eslint-plugin-next@15.3.4': dependencies: fast-glob: 3.3.1 @@ -12104,51 +11474,27 @@ snapshots: '@next/swc-darwin-arm64@15.3.4': optional: true - '@next/swc-darwin-arm64@16.0.7': - optional: true - '@next/swc-darwin-x64@15.3.4': optional: true - '@next/swc-darwin-x64@16.0.7': - optional: true - '@next/swc-linux-arm64-gnu@15.3.4': optional: true - '@next/swc-linux-arm64-gnu@16.0.7': - optional: true - '@next/swc-linux-arm64-musl@15.3.4': optional: true - '@next/swc-linux-arm64-musl@16.0.7': - optional: true - '@next/swc-linux-x64-gnu@15.3.4': optional: true - '@next/swc-linux-x64-gnu@16.0.7': - optional: true - '@next/swc-linux-x64-musl@15.3.4': optional: true - '@next/swc-linux-x64-musl@16.0.7': - optional: true - '@next/swc-win32-arm64-msvc@15.3.4': optional: true - '@next/swc-win32-arm64-msvc@16.0.7': - optional: true - '@next/swc-win32-x64-msvc@15.3.4': optional: true - '@next/swc-win32-x64-msvc@16.0.7': - optional: true - '@noble/ciphers@0.6.0': {} '@noble/ciphers@2.0.1': {} @@ -12402,22 +11748,6 @@ snapshots: '@types/react': 19.1.10 '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-checkbox@1.3.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-context': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-previous': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-size': 1.1.1(@types/react@19.1.10)(react@19.1.1) - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-collapsible@1.1.11(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.2 @@ -12630,28 +11960,6 @@ snapshots: '@types/react': 18.3.23 '@types/react-dom': 18.3.7(@types/react@18.3.23) - '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-context': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-id': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-slot': 1.2.3(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.10)(react@19.1.1) - aria-hidden: 1.2.6 - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - react-remove-scroll: 2.7.1(@types/react@19.1.10)(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-direction@1.1.1(@types/react@18.3.23)(react@18.3.1)': dependencies: react: 18.3.1 @@ -12716,34 +12024,6 @@ snapshots: '@types/react': 18.3.23 '@types/react-dom': 18.3.7(@types/react@18.3.23) - '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.1.10)(react@19.1.1) - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - - '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-context': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-id': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.10)(react@19.1.1) - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-focus-guards@1.1.2(@types/react@18.3.23)(react@18.3.1)': dependencies: react: 18.3.1 @@ -12762,12 +12042,6 @@ snapshots: optionalDependencies: '@types/react': 18.3.23 - '@radix-ui/react-focus-guards@1.1.3(@types/react@19.1.10)(react@19.1.1)': - dependencies: - react: 19.1.1 - optionalDependencies: - '@types/react': 19.1.10 - '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.23)(react@18.3.1) @@ -12824,41 +12098,6 @@ snapshots: '@types/react': 18.3.23 '@types/react-dom': 18.3.7(@types/react@18.3.23) - '@radix-ui/react-label@2.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - - '@radix-ui/react-menu@2.1.16(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-context': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-direction': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-id': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-slot': 1.2.3(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.10)(react@19.1.1) - aria-hidden: 1.2.6 - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - react-remove-scroll: 2.7.1(@types/react@19.1.10)(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-navigation-menu@1.2.13(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.2 @@ -12973,29 +12212,6 @@ snapshots: '@types/react': 18.3.23 '@types/react-dom': 18.3.7(@types/react@18.3.23) - '@radix-ui/react-popover@1.1.15(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-context': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-id': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-slot': 1.2.3(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.10)(react@19.1.1) - aria-hidden: 1.2.6 - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - react-remove-scroll: 2.7.1(@types/react@19.1.10)(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-popper@1.2.7(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@floating-ui/react-dom': 2.1.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13068,24 +12284,6 @@ snapshots: '@types/react': 18.3.23 '@types/react-dom': 18.3.7(@types/react@18.3.23) - '@radix-ui/react-popper@1.2.8(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-context': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-rect': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-size': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/rect': 1.1.1 - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-portal@1.1.9(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13156,16 +12354,6 @@ snapshots: '@types/react': 18.3.23 '@types/react-dom': 18.3.7(@types/react@18.3.23) - '@radix-ui/react-presence@1.1.5(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.10)(react@19.1.1) - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-primitive@2.1.3(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-slot': 1.2.3(@types/react@18.3.23)(react@18.3.1) @@ -13210,23 +12398,6 @@ snapshots: '@types/react': 18.3.23 '@types/react-dom': 18.3.7(@types/react@18.3.23) - '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': - dependencies: - '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-context': 1.1.2(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-direction': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-id': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.1.9(@types/react@19.1.10))(@types/react@19.1.10)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.10)(react@19.1.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.10)(react@19.1.1) - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - optionalDependencies: - '@types/react': 19.1.10 - '@types/react-dom': 19.1.9(@types/react@19.1.10) - '@radix-ui/react-scroll-area@1.2.9(@types/react-dom@18.3.7(@types/react@18.3.23))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/number': 1.1.1 @@ -13838,11 +13009,6 @@ snapshots: '@supabase/supabase-js': 2.86.0 cookie: 1.0.2 - '@supabase/ssr@0.8.0(@supabase/supabase-js@2.86.0)': - dependencies: - '@supabase/supabase-js': 2.86.0 - cookie: 1.0.2 - '@supabase/storage-js@2.86.0': dependencies: iceberg-js: 0.8.0 @@ -14343,10 +13509,6 @@ snapshots: transitivePeerDependencies: - '@types/react' - '@types/bun@1.3.3': - dependencies: - bun-types: 1.3.3 - '@types/chai@5.2.2': dependencies: '@types/deep-eql': 4.0.2 @@ -14496,6 +13658,7 @@ snapshots: '@types/react-dom@19.1.9(@types/react@19.1.10)': dependencies: '@types/react': 19.1.10 + optional: true '@types/react@18.3.23': dependencies: @@ -15542,27 +14705,6 @@ snapshots: react: 19.1.1 react-dom: 19.1.1(react@19.1.1) - better-auth@1.3.34(next@15.3.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1))(react-dom@19.1.1(react@19.1.1))(react@19.1.1): - dependencies: - '@better-auth/core': 1.3.34(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.18)(better-call@1.0.19)(jose@6.1.0)(kysely@0.28.5)(nanostores@1.0.1) - '@better-auth/telemetry': 1.3.34(better-call@1.0.19)(jose@6.1.0)(kysely@0.28.5)(nanostores@1.0.1) - '@better-auth/utils': 0.3.0 - '@better-fetch/fetch': 1.1.18 - '@noble/ciphers': 2.0.1 - '@noble/hashes': 2.0.1 - '@simplewebauthn/browser': 13.1.2 - '@simplewebauthn/server': 13.1.2 - better-call: 1.0.19 - defu: 6.1.4 - jose: 6.1.0 - kysely: 0.28.5 - nanostores: 1.0.1 - zod: 4.1.5 - optionalDependencies: - next: 15.3.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - better-auth@1.3.7(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(zod@4.0.17): dependencies: '@better-auth/utils': 0.2.6 @@ -15696,10 +14838,6 @@ snapshots: '@types/node': 24.3.0 '@types/react': 19.1.10 - bun-types@1.3.3: - dependencies: - '@types/node': 24.3.0 - bundle-name@4.1.0: dependencies: run-applescript: 7.0.0 @@ -16785,26 +15923,6 @@ snapshots: - eslint-plugin-import-x - supports-color - eslint-config-next@15.3.1(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2): - dependencies: - '@next/eslint-plugin-next': 15.3.1 - '@rushstack/eslint-patch': 1.12.0 - '@typescript-eslint/eslint-plugin': 8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2) - '@typescript-eslint/parser': 8.34.1(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2) - eslint: 9.29.0(jiti@2.5.1) - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.29.0(jiti@2.5.1)) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.34.1(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@9.29.0(jiti@2.5.1)) - eslint-plugin-jsx-a11y: 6.10.2(eslint@9.29.0(jiti@2.5.1)) - eslint-plugin-react: 7.37.5(eslint@9.29.0(jiti@2.5.1)) - eslint-plugin-react-hooks: 5.2.0(eslint@9.29.0(jiti@2.5.1)) - optionalDependencies: - typescript: 5.9.2 - transitivePeerDependencies: - - eslint-import-resolver-webpack - - eslint-plugin-import-x - - supports-color - eslint-config-next@15.3.4(eslint@9.29.0(jiti@2.5.1))(typescript@5.9.2): dependencies: '@next/eslint-plugin-next': 15.3.4 @@ -18869,10 +17987,6 @@ snapshots: dependencies: react: 18.3.1 - lucide-react@0.511.0(react@19.1.1): - dependencies: - react: 19.1.1 - lucide-react@0.523.0(react@19.1.1): dependencies: react: 19.1.1 @@ -19573,11 +18687,6 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - next-themes@0.4.6(react-dom@19.1.1(react@19.1.1))(react@19.1.1): - dependencies: - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - next@15.3.4(@babel/core@7.28.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@next/env': 15.3.4 @@ -19653,29 +18762,6 @@ snapshots: - '@babel/core' - babel-plugin-macros - next@16.0.7(react-dom@19.1.1(react@19.1.1))(react@19.1.1): - dependencies: - '@next/env': 16.0.7 - '@swc/helpers': 0.5.15 - caniuse-lite: 1.0.30001736 - postcss: 8.4.31 - react: 19.1.1 - react-dom: 19.1.1(react@19.1.1) - styled-jsx: 5.1.6(@babel/core@7.28.3)(react@19.1.1) - optionalDependencies: - '@next/swc-darwin-arm64': 16.0.7 - '@next/swc-darwin-x64': 16.0.7 - '@next/swc-linux-arm64-gnu': 16.0.7 - '@next/swc-linux-arm64-musl': 16.0.7 - '@next/swc-linux-x64-gnu': 16.0.7 - '@next/swc-linux-x64-musl': 16.0.7 - '@next/swc-win32-arm64-msvc': 16.0.7 - '@next/swc-win32-x64-msvc': 16.0.7 - sharp: 0.34.5 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - nitropack@2.12.4(@netlify/blobs@9.1.2)(better-sqlite3@12.2.0)(rolldown@1.0.0-beta.34): dependencies: '@cloudflare/kv-asset-handler': 0.4.0 @@ -21203,9 +20289,6 @@ snapshots: semver@7.7.2: {} - semver@7.7.3: - optional: true - send@1.2.0: dependencies: debug: 4.4.1(supports-color@5.5.0) @@ -21341,38 +20424,6 @@ snapshots: '@img/sharp-win32-x64': 0.34.3 optional: true - sharp@0.34.5: - dependencies: - '@img/colour': 1.0.0 - detect-libc: 2.1.2 - semver: 7.7.3 - optionalDependencies: - '@img/sharp-darwin-arm64': 0.34.5 - '@img/sharp-darwin-x64': 0.34.5 - '@img/sharp-libvips-darwin-arm64': 1.2.4 - '@img/sharp-libvips-darwin-x64': 1.2.4 - '@img/sharp-libvips-linux-arm': 1.2.4 - '@img/sharp-libvips-linux-arm64': 1.2.4 - '@img/sharp-libvips-linux-ppc64': 1.2.4 - '@img/sharp-libvips-linux-riscv64': 1.2.4 - '@img/sharp-libvips-linux-s390x': 1.2.4 - '@img/sharp-libvips-linux-x64': 1.2.4 - '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 - '@img/sharp-libvips-linuxmusl-x64': 1.2.4 - '@img/sharp-linux-arm': 0.34.5 - '@img/sharp-linux-arm64': 0.34.5 - '@img/sharp-linux-ppc64': 0.34.5 - '@img/sharp-linux-riscv64': 0.34.5 - '@img/sharp-linux-s390x': 0.34.5 - '@img/sharp-linux-x64': 0.34.5 - '@img/sharp-linuxmusl-arm64': 0.34.5 - '@img/sharp-linuxmusl-x64': 0.34.5 - '@img/sharp-wasm32': 0.34.5 - '@img/sharp-win32-arm64': 0.34.5 - '@img/sharp-win32-ia32': 0.34.5 - '@img/sharp-win32-x64': 0.34.5 - optional: true - shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0