@superbright/indexeddb-orm 1.0.42 → 1.0.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/api/response-schemas.generated.cjs +2 -0
  2. package/dist/api/response-schemas.generated.cjs.map +1 -0
  3. package/dist/api/response-schemas.generated.d.ts +4511 -0
  4. package/dist/api/response-schemas.generated.mjs +270 -0
  5. package/dist/api/response-schemas.generated.mjs.map +1 -0
  6. package/dist/api/schemas.generated.cjs +2 -0
  7. package/dist/api/schemas.generated.cjs.map +1 -0
  8. package/dist/api/schemas.generated.d.ts +1818 -0
  9. package/dist/api/schemas.generated.mjs +287 -0
  10. package/dist/api/schemas.generated.mjs.map +1 -0
  11. package/dist/features/analytics/analytics.cjs +1 -1
  12. package/dist/features/analytics/analytics.cjs.map +1 -1
  13. package/dist/features/analytics/analytics.d.ts +46 -2
  14. package/dist/features/analytics/analytics.mjs +197 -189
  15. package/dist/features/analytics/analytics.mjs.map +1 -1
  16. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.cjs +1 -1
  17. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.cjs.map +1 -1
  18. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.mjs +104 -103
  19. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.mjs.map +1 -1
  20. package/dist/response-schemas.cjs +2 -0
  21. package/dist/response-schemas.cjs.map +1 -0
  22. package/dist/response-schemas.d.ts +1 -0
  23. package/dist/response-schemas.mjs +36 -0
  24. package/dist/response-schemas.mjs.map +1 -0
  25. package/dist/schemas.cjs +2 -0
  26. package/dist/schemas.cjs.map +1 -0
  27. package/dist/schemas.d.ts +1 -0
  28. package/dist/schemas.mjs +37 -0
  29. package/dist/schemas.mjs.map +1 -0
  30. package/dist/types/api.generated.d.ts +8691 -0
  31. package/dist/types/types.generated.d.ts +8576 -0
  32. package/package.json +42 -21
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.mjs","sources":["../../../src/features/analytics/analytics.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport {\n convertKeysToCamelCase,\n convertKeysToSnakeCase,\n} from \"../../utils/casing\";\nimport { normalizeToStringArray } from \"../../utils/collections\";\nimport { useAnalytics } from \"./AnalyticsProvider\";\n\ntype AnalyticsPayload<Schema extends z.ZodTypeAny> = z.input<Schema>;\n\ntype AnalyticsPayloadWithout<\n Schema extends z.ZodTypeAny,\n Keys extends PropertyKey,\n> = Omit<AnalyticsPayload<Schema>, Keys>;\n\nexport const QuestionEnumValues = [\"location\", \"budget\", \"size\", \"other\"] as const;\nexport type QuestionEnum = (typeof QuestionEnumValues)[number];\nexport type FilterEnum = string;\nexport const SortEnumValues = [\n \"cost_low_to_high\",\n \"cost_high_to_low\",\n \"newest\",\n \"relevance\",\n] as const;\nexport type SortEnum = (typeof SortEnumValues)[number];\nexport const QuestionnaireInteractionValues = [\n \"Skip\",\n \"Continue\",\n \"Back\",\n] as const;\nexport type QuestionnaireInteraction =\n (typeof QuestionnaireInteractionValues)[number];\n\nconst propertyContextSchema = z.object({\n propertyId: z.string().min(1, \"propertyId is required\"),\n propertySlug: z.string().min(1, \"propertySlug is required\"),\n propertyName: z.string().min(1, \"propertyName is required\"),\n});\n\nconst propertyWithNameSchema = propertyContextSchema.extend({\n propertyName: z.string().min(1, \"propertyName is required\"),\n});\n\nconst viewAllUnitsSchema = propertyWithNameSchema.extend({\n totalUnitsAvailable: z.number().int().nonnegative(),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n});\n\nconst loadMoreSchema = propertyWithNameSchema.extend({\n totalUnitsAvailable: z.number().int().nonnegative(),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n});\n\nconst scheduleTourFormSchema = propertyWithNameSchema.extend({\n totalUnitsAvailable: z.number().int().nonnegative(),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n lifestylePreferences: z.unknown().optional(),\n});\n\nconst questionnaireEventSchema = propertyWithNameSchema.extend({\n funnelStep: z.number().int().nonnegative(),\n profileQuestion: z.string().min(1, \"profileQuestion is required\"),\n interactedElement: z.enum(QuestionnaireInteractionValues),\n questionEnum: z.string().optional(),\n});\n\nconst continueQuestionnaireEventSchema = questionnaireEventSchema.extend({\n selectedAnswersEnumArray: z\n .any()\n .transform((value) => normalizeToStringArray(value))\n .refine((value): value is string[] => Array.isArray(value), {\n message: \"selectedAnswersEnumArray must resolve to an array\",\n }),\n});\n\nconst unitEventSchema = propertyContextSchema.extend({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().min(1, \"unitName is required\"),\n unitSlug: z.string().min(1, \"unitSlug is required\"),\n});\nconst unitWithPropertyNameSchema = propertyWithNameSchema.extend({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().min(1, \"unitName is required\"),\n unitSlug: z.string().min(1, \"unitSlug is required\"),\n});\nconst getInTouchFormSchema = unitWithPropertyNameSchema.extend({\n buttonName: z.string().min(1, \"buttonName is required\"),\n formName: z.string().min(1, \"formName is required\"),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n favoritedUnit: z.boolean(),\n});\nconst styleDrawerSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n favoritedUnit: z.boolean(),\n});\nconst furnitureInteractionSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n type: z.enum([\"click\", \"hover_on\", \"hover_off\"]),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureExternalUrlSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n link: z.string().min(1, \"link is required\"),\n type: z.string().min(1, \"type is required\"),\n favoritedUnit: z.boolean(),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureSavedSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureModalOpenedSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureCarouselSchema = unitWithPropertyNameSchema.extend({\n method: z.enum([\"Prev\", \"Next\"]),\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\n\nconst roomEnteredSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n method: z.enum([\"Navigation\", \"Map\"]),\n})\nconst roomLeftSchema = roomEnteredSchema.extend({\n timeInRoom: z.number().int().nonnegative(),\n})\n\nconst videoStartedSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n method: z.enum([\"On Click Play\"]),\n videoCurrentTime: z.number().int().nonnegative(),\n videoDuration: z.number().int().nonnegative(),\n videoPercent: z.number().int().nonnegative(),\n videoFilename: z.string().min(1, \"videoFilename is required\"),\n})\nconst emailTrackedSchema = unitWithPropertyNameSchema.extend({\n utmSource: z.string().min(1, \"utm_source is required\"),\n utmMedium: z.string().min(1, \"utm_medium is required\"),\n utmName: z.string().min(1, \"utm_name is required\"),\n\n unitBedrooms: z.number().int().nonnegative(),\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n favoritedUnit: z.boolean(),\n})\nconst webPageViewedBaseSchema = unitWithPropertyNameSchema.extend({\n fullUrl: z.string().min(1, \"fullUrl is required\"),\n datestamp: z.string().min(1, \"datestamp is required\"),\n})\n// 360 app only\nconst webPageViewedSchema = webPageViewedBaseSchema.extend({\n pageName: z.string().min(1, \"pageName is required\"),\n})\nconst webPageRoomViewedSchema = webPageViewedBaseSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n})\nconst embedPageViewedSchema = unitWithPropertyNameSchema.extend({\n unitBedrooms: z.number().int().nonnegative(),\n})\nconst embedPageViewSchemaWithUTM = unitWithPropertyNameSchema.extend({\n utmSource: z.string().min(1, \"utm_source is required\"),\n utmMedium: z.string().min(1, \"utm_medium is required\"),\n utmName: z.string().min(1, \"utm_name is required\"),\n})\n\n// property_slug, property_id, property_name, unit_id, unit_slug, unit_title, unit_bedrooms\n\nconst toastSchema = unitWithPropertyNameSchema.extend({\n toastCopy: z.string().min(1, \"toastCopy is required\"),\n})\nconst contentModalOpenedSchema = unitWithPropertyNameSchema.extend({\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n})\n\nconst buildingDetailsModalSchema = propertyWithNameSchema;\n\nconst subscriptionImpressionSchema = propertyWithNameSchema.extend({\n name: z.string().min(1, \"name is required\"),\n\n})\n\nconst subscriptionInteractedSchema = z.object({\n name: z.string().min(1, \"name is required\"),\n properties: z.object({\n propertyContextSchema,\n buttonName: z.string().min(1, \"buttonName is required\"),\n formName: z.string().min(1, \"formName is required\"),\n pageName: z.string().min(1, \"pageName is required\"),\n fieldName: z.string().min(1, \"fieldName is required\"),\n }),\n});\n\nconst subscriptionSubmittedSchema = z.object({\n name: z.string().min(1, \"name is required\"),\n properties: z.object({\n propertyContextSchema,\n buttonName: z.string().min(1, \"buttonName is required\"),\n formName: z.string().min(1, \"formName is required\"),\n pageName: z.string().min(1, \"pageName is required\"),\n bedrooms: z.array(z.union([z.string(), z.number()])).optional(),\n price: z.number().nullable().optional(),\n }),\n});\n\nconst subscriptionRemovedSchema = propertyWithNameSchema.extend({\n\n bedrooms: z.array(z.number()).optional(),\n price_min: z.number().optional(),\n price_max: z.number().optional(),\n highlights: z.array(z.string()).optional(),\n\n\n page_name: z.string().optional(),\n});\n\nconst hoverUnitSchema = unitWithPropertyNameSchema.extend({\n favoritedUnit: z.boolean(),\n unitIndex: z.number().int().nonnegative(),\n});\n\nconst selectionSchema = z\n .any()\n .transform((value) => normalizeToStringArray(value))\n .refine((value): value is string[] => Array.isArray(value), {\n message: \"Selection must resolve to an array\",\n });\n\nconst filterOpenSchema = propertyWithNameSchema.extend({\n filterIndex: z.number().int().nonnegative(),\n filterLabel: z.string().min(1, \"filterLabel is required\"),\n selectedFiltersEnum: selectionSchema,\n filterName: z.string().optional(),\n});\n\nconst filterMutationSchema = propertyWithNameSchema.extend({\n filterIndex: z.number().int().nonnegative(),\n filterLabel: z.string().min(1, \"filterLabel is required\"),\n selectedFiltersEnum: selectionSchema,\n});\n\nconst sortEventSchema = propertyContextSchema.extend({\n sortIndex: z.number().int().nonnegative(),\n sortEnum: z.enum(SortEnumValues),\n});\n\nconst sortOpenSchema = propertyWithNameSchema.extend({\n sortIndex: z.number().int().nonnegative(),\n sortEnum: z.enum(SortEnumValues),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n});\n\nconst questionnaireResultSchema = propertyContextSchema.extend({\n fullQuestionnaireSchemaJson: z.unknown().optional(),\n resultsJson: z\n .object({\n type: z.string().optional(),\n total: z.number().int().nonnegative().optional(),\n units: z\n .array(\n z.object({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().optional(),\n })\n )\n .optional(),\n })\n .optional(),\n});\n\nconst clickUnitSchema = unitWithPropertyNameSchema.extend({\n favoritedUnit: z.boolean(),\n unitIndex: z.number().int().nonnegative(),\n});\n\nconst clickUnitFavoritesSchema = unitWithPropertyNameSchema.extend({\n favoritedUnit: z.boolean(),\n unitIndex: z.number().int().nonnegative(),\n\n});\n\nconst unitUnfavoritedSchema = propertyWithNameSchema.extend({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().min(1, \"unitName is required\"),\n unitSlug: z.string().min(1, \"unitSlug is required\"),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n unitIndex: z.number().int().nonnegative(),\n});\n\nexport type BaseEvent = z.infer<typeof propertyContextSchema>;\nexport type ViewAllUnitsEvent = z.infer<typeof viewAllUnitsSchema>;\nexport type LoadMoreEvent = z.infer<typeof loadMoreSchema>;\nexport type QuestionnaireEvent = z.infer<typeof questionnaireEventSchema>;\nexport type ContinueQuestionnaireEvent = z.infer<\n typeof continueQuestionnaireEventSchema\n>;\nexport type ClickUnitEvent = z.infer<typeof clickUnitSchema>;\nexport type UnitEvent = z.infer<typeof unitEventSchema>;\nexport type HoverUnitEvent = z.infer<typeof hoverUnitSchema>;\nexport type FilterEvent = z.infer<typeof filterMutationSchema>;\nexport type FilterOpenEvent = z.infer<typeof filterOpenSchema>;\nexport type SortEvent = z.infer<typeof sortEventSchema>;\nexport type SortOpenEvent = z.infer<typeof sortOpenSchema>;\nexport type QuestionnaireResultEvent = z.infer<\n typeof questionnaireResultSchema\n>;\nexport type ClickUnitFavoritesEvent = z.infer<typeof clickUnitFavoritesSchema>;\nexport type ScheduleTourFormEvent = z.infer<typeof scheduleTourFormSchema>;\nexport type UnitUnfavoritedEvent = z.infer<typeof unitUnfavoritedSchema>;\n\nexport type GetInTouchFormEvent = z.infer<typeof getInTouchFormSchema>;\nexport type StyleDrawerEvent = z.infer<typeof styleDrawerSchema>;\nexport type FurnitureInteractionEvent = z.infer<typeof furnitureInteractionSchema>;\nexport type FurnitureExternalUrlClickedEvent = z.infer<typeof furnitureExternalUrlSchema>;\nexport type FurnitureSavedEvent = z.infer<typeof furnitureSavedSchema>;\nexport type FurnitureModalOpenedEvent = z.infer<typeof furnitureModalOpenedSchema>;\nexport type FurnitureCarouselEvent = z.infer<typeof furnitureCarouselSchema>;\nexport type RoomEnteredEvent = z.infer<typeof roomEnteredSchema>;\nexport type RoomLeftEvent = z.infer<typeof roomLeftSchema>;\nexport type VideoStartedEvent = z.infer<typeof videoStartedSchema>;\nexport type EmailTrackedEvent = z.infer<typeof emailTrackedSchema>;\nexport type ToastEvent = z.infer<typeof toastSchema>;\nexport type ContentModalOpenedEvent = z.infer<typeof contentModalOpenedSchema>;\nexport type BuildingDetailsModalEvent = z.infer<typeof buildingDetailsModalSchema>;\nexport type SubscriptionImpressionEvent = z.infer<typeof subscriptionImpressionSchema>;\nexport type SubscriptionInteractedEvent = z.infer<typeof subscriptionInteractedSchema>;\nexport type SubscriptionSubmittedEvent = z.infer<typeof subscriptionSubmittedSchema>;\nexport type SubscriptionRemovedEvent = z.infer<typeof subscriptionRemovedSchema>;\nexport type WebPageViewedEvent = z.infer<typeof webPageViewedSchema>;\nexport type WebPageRoomViewedEvent = z.infer<typeof webPageRoomViewedSchema>;\n\n\nexport type TrackingEventWithUnits = FilterEvent & {\n trackingEvent: (payload: FilterEvent) => void;\n [metadata: string]: unknown;\n};\n\nexport type TrackEventFn = (eventName: string, data?: Record<string, any>) => void;\n\nexport function useTrackEvent() {\n const analytics = useAnalytics();\n return (eventName: string, data?: Record<string, any>) => {\n const payload =\n data == null ? data : (convertKeysToSnakeCase(data) as Record<string, any>);\n analytics.track(eventName, payload);\n };\n}\n\nconst createStrictTrackerInternal =\n <Schema extends z.ZodTypeAny>(\n eventName: string,\n schema: Schema,\n dispatch: (eventName: string, payload: unknown) => void,\n options?: { isDev?: boolean },\n ) =>\n (payload: AnalyticsPayload<Schema>) => {\n const payloadToValidate = convertKeysToCamelCase(payload) as z.input<Schema>;\n const result = schema.safeParse(payloadToValidate);\n if (!result.success) {\n if (options?.isDev) {\n // eslint-disable-next-line no-console\n console.warn(`[Analytics] Invalid payload for \"${eventName}\":`, result.error.issues);\n }\n return;\n }\n dispatch(eventName, payload);\n };\n\nexport function buildTrackingEvents(trackEvent: TrackEventFn, isDev = false) {\n const dispatch = (eventName: string, payload: unknown) => {\n const finalPayload = convertKeysToSnakeCase(payload) as Record<string, any>;\n trackEvent(eventName, finalPayload);\n };\n\n const createStrictTracker = <Schema extends z.ZodTypeAny>(\n eventName: string,\n schema: Schema,\n ) =>\n createStrictTrackerInternal(eventName, schema, dispatch, { isDev });\n\n return {\n trackViewAllUnits: (\n payload: AnalyticsPayload<typeof viewAllUnitsSchema>,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as z.input<typeof viewAllUnitsSchema>;\n const result = viewAllUnitsSchema.safeParse({\n unitCountDate: new Date().toISOString(),\n ...normalizedPayload,\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"View All Units\\\":\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"View All Units\", result.data);\n },\n trackQuestionnaireSkip: (\n payload: AnalyticsPayloadWithout<\n typeof questionnaireEventSchema,\n \"interactedElement\"\n >,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as Omit<\n z.input<typeof questionnaireEventSchema>,\n \"interactedElement\"\n >;\n const result = questionnaireEventSchema.safeParse({\n ...normalizedPayload,\n interactedElement: \"Skip\",\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Questionnaire Navigated\\\" (Skip):\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Questionnaire Navigated\", result.data);\n },\n trackQuestionnaireContinue: (\n payload: AnalyticsPayloadWithout<\n typeof continueQuestionnaireEventSchema,\n \"interactedElement\"\n >,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as Omit<\n z.input<typeof continueQuestionnaireEventSchema>,\n \"interactedElement\"\n >;\n const result = continueQuestionnaireEventSchema.safeParse({\n ...normalizedPayload,\n interactedElement: \"Continue\",\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Questionnaire Navigated\\\" (Continue):\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Questionnaire Navigated\", result.data);\n },\n trackQuestionnaireBack: (\n payload: AnalyticsPayloadWithout<\n typeof questionnaireEventSchema,\n \"interactedElement\"\n >,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as Omit<\n z.input<typeof questionnaireEventSchema>,\n \"interactedElement\"\n >;\n const result = questionnaireEventSchema.safeParse({\n ...normalizedPayload,\n interactedElement: \"Back\",\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Questionnaire Navigated\\\" (Back):\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Questionnaire Navigated\", result.data);\n },\n trackClickUnit: createStrictTracker(\"Unit Card Clicked\", clickUnitSchema),\n trackHoverUnit: createStrictTracker(\"Unit Hovered\", hoverUnitSchema, ),\n trackLoadMore: (\n payload: AnalyticsPayload<typeof loadMoreSchema>,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as z.input<typeof loadMoreSchema>;\n const result = loadMoreSchema.safeParse({\n unitCountDate: new Date().toISOString(),\n ...normalizedPayload,\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"More Units Loaded\\\":\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"More Units Loaded\", result.data);\n },\n trackFilterOpened: createStrictTracker(\"Filter Opened\", filterOpenSchema),\n trackFilterCanceled: createStrictTracker(\n \"Filter Cleared\",\n filterMutationSchema,\n ),\n trackFilterApplied: createStrictTracker(\n \"Filter Applied\",\n filterMutationSchema,\n ),\n trackOpenSort: (\n payload: AnalyticsPayload<typeof sortOpenSchema>,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as z.input<typeof sortOpenSchema>;\n const result = sortOpenSchema.safeParse({\n unitCountDate: new Date().toISOString(),\n ...normalizedPayload,\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Sort Opened\\\":\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Sort Opened\", result.data);\n },\n trackSelectSort: createStrictTracker(\"Sort Applied\", sortEventSchema),\n trackCancelSort: createStrictTracker(\"Sort Canceled\", sortEventSchema),\n trackClickUnitFavorites: createStrictTracker(\n \"Unit Favorited\",\n clickUnitFavoritesSchema,\n ),\n trackUnitUnfavorited: createStrictTracker(\n \"Unit Unfavorited\",\n unitUnfavoritedSchema,\n ),\n trackQuestionnaireResult: createStrictTracker(\n \"Questionnaire Submitted\",\n questionnaireResultSchema,\n ),\n trackScheduleTourFormInteracted: createStrictTracker(\n \"Schedule Tour Form Interacted\",\n scheduleTourFormSchema,\n ),\n trackScheduleTourFormSubmitted: createStrictTracker(\n \"Schedule Tour Form Submitted\",\n scheduleTourFormSchema,\n ),\n trackScheduleTourUrlClicked: createStrictTracker(\n \"Schedule Tour URL Clicked\",\n scheduleTourFormSchema,\n ),\n trackGetInTouchFormOpened: createStrictTracker(\n \"Form Opened\",\n getInTouchFormSchema,\n ),\n trackGetInTouchFormSubmitted: createStrictTracker(\n \"Form Submitted\",\n getInTouchFormSchema,\n ),\n trackStyleDrawerOpened: createStrictTracker(\n \"Style Menu Opened\",\n styleDrawerSchema,\n ),\n trackStyleDrawerChanged: createStrictTracker(\n \"Style Changed\",\n styleDrawerSchema,\n ),\n trackOpeningStyleImpression: createStrictTracker(\n \"Opening Style Modal Impression\",\n styleDrawerSchema,\n ),\n trackOpeningStyleSlected: createStrictTracker(\n \"Opening Style Selected\",\n styleDrawerSchema,\n ),\n trackFurnitureViewed: createStrictTracker(\n \"Furniture Viewed\",\n furnitureInteractionSchema,\n ),\n trackFurnitureExternalUrlClicked: createStrictTracker(\n \"Purchase Link Clicked\",\n furnitureExternalUrlSchema,\n ),\n trackFurnitureSaved: createStrictTracker(\n \"Furniture Saved\",\n furnitureSavedSchema,\n ),\n trackFurnitureModalOpened: createStrictTracker(\n \"Furniture Modal Opened\",\n furnitureModalOpenedSchema,\n ),\n trackFurnitureCarouselToggled: createStrictTracker(\n \"Furniture Carousel Toggled\",\n furnitureCarouselSchema,\n ),\n trackRoomEntered: createStrictTracker(\n \"Room Entered\",\n roomEnteredSchema,\n ),\n trackRoomLeft: createStrictTracker(\n \"Room Left\",\n roomLeftSchema,\n ),\n trackVideoStarted: createStrictTracker(\n \"Video Started\",\n videoStartedSchema,\n ),\n trackEmailRedirect: createStrictTracker(\n \"Email Tracked\",\n emailTrackedSchema,\n ),\n trackToastImpression: createStrictTracker(\n \"Toast Impression\",\n toastSchema,\n ),\n trackToastClicked: createStrictTracker(\n \"Toast Clicked\",\n toastSchema,\n ),\n trackToastClosed: createStrictTracker(\n \"Toast Closed\",\n toastSchema,\n ),\n trackContentModalOpened: createStrictTracker(\n \"Content Modal Opened\",\n contentModalOpenedSchema,\n ),\n trackBuildingDetailsModalOpened: createStrictTracker(\n \"Building Details Modal\",\n buildingDetailsModalSchema,\n ),\n trackSubscriptionImpression: createStrictTracker(\n \"Subscription Impression\",\n subscriptionImpressionSchema,\n ),\n trackSubscriptionInteracted: createStrictTracker(\n \"Subscription Interacted\",\n subscriptionInteractedSchema,\n ),\n trackSubscriptionSubmitted: createStrictTracker(\n \"Subscription Submitted\",\n subscriptionSubmittedSchema,\n ),\n trackSubscriptionRemoved: createStrictTracker(\n \"Subscription Removed\",\n subscriptionRemovedSchema,\n ),\n trackWebPageViewed: createStrictTracker(\n \"Page Viewed\",\n webPageViewedSchema,\n ),\n trackWebPageRoomViewed: createStrictTracker(\n \"Page Viewed\",\n webPageRoomViewedSchema,\n ),\n trackEmbedPageViewed: createStrictTracker(\n \"Embed Impression\",\n embedPageViewedSchema,\n ),\n trackEmailClick: (data: { event_name: string }) => createStrictTracker(\n `Email Interaction - ${data.event_name}`,\n embedPageViewSchemaWithUTM,\n ),\n };\n}\n\nexport function useTrackingEvents() {\n const { isDev } = useAnalytics();\n const trackEvent = useTrackEvent();\n return buildTrackingEvents(trackEvent, isDev);\n}\n"],"names":["QuestionEnumValues","SortEnumValues","QuestionnaireInteractionValues","propertyContextSchema","z.object","z.string","propertyWithNameSchema","viewAllUnitsSchema","z.number","loadMoreSchema","scheduleTourFormSchema","z.unknown","questionnaireEventSchema","z.enum","continueQuestionnaireEventSchema","z.any","value","normalizeToStringArray","unitWithPropertyNameSchema","getInTouchFormSchema","z.boolean","styleDrawerSchema","furnitureInteractionSchema","furnitureExternalUrlSchema","furnitureSavedSchema","furnitureModalOpenedSchema","furnitureCarouselSchema","roomEnteredSchema","roomLeftSchema","videoStartedSchema","emailTrackedSchema","webPageViewedBaseSchema","webPageViewedSchema","webPageRoomViewedSchema","embedPageViewedSchema","embedPageViewSchemaWithUTM","toastSchema","contentModalOpenedSchema","buildingDetailsModalSchema","subscriptionImpressionSchema","subscriptionInteractedSchema","subscriptionSubmittedSchema","z.array","z.union","subscriptionRemovedSchema","hoverUnitSchema","selectionSchema","filterOpenSchema","filterMutationSchema","sortEventSchema","sortOpenSchema","questionnaireResultSchema","clickUnitSchema","clickUnitFavoritesSchema","unitUnfavoritedSchema","useTrackEvent","analytics","useAnalytics","eventName","data","payload","convertKeysToSnakeCase","createStrictTrackerInternal","schema","dispatch","options","payloadToValidate","convertKeysToCamelCase","result","buildTrackingEvents","trackEvent","isDev","finalPayload","createStrictTracker","normalizedPayload","useTrackingEvents"],"mappings":"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"}
1
+ {"version":3,"file":"analytics.mjs","sources":["../../../src/features/analytics/analytics.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport {\n convertKeysToCamelCase,\n convertKeysToSnakeCase,\n} from \"../../utils/casing\";\nimport { normalizeToStringArray } from \"../../utils/collections\";\nimport { useAnalytics } from \"./AnalyticsProvider\";\n\ntype AnalyticsPayload<Schema extends z.ZodTypeAny> = z.input<Schema>;\n\ntype AnalyticsPayloadWithout<\n Schema extends z.ZodTypeAny,\n Keys extends PropertyKey,\n> = Omit<AnalyticsPayload<Schema>, Keys>;\n\nexport const QuestionEnumValues = [\"location\", \"budget\", \"size\", \"other\"] as const;\nexport type QuestionEnum = (typeof QuestionEnumValues)[number];\nexport type FilterEnum = string;\nexport const SortEnumValues = [\n \"cost_low_to_high\",\n \"cost_high_to_low\",\n \"newest\",\n \"relevance\",\n] as const;\nexport type SortEnum = (typeof SortEnumValues)[number];\nexport const QuestionnaireInteractionValues = [\n \"Skip\",\n \"Continue\",\n \"Back\",\n] as const;\nexport type QuestionnaireInteraction =\n (typeof QuestionnaireInteractionValues)[number];\n\nconst propertyContextSchema = z.object({\n propertyId: z.string().min(1, \"propertyId is required\"),\n propertySlug: z.string().min(1, \"propertySlug is required\"),\n propertyName: z.string().min(1, \"propertyName is required\"),\n});\n\nconst propertyWithNameSchema = propertyContextSchema.extend({\n propertyName: z.string().min(1, \"propertyName is required\"),\n});\n\nconst viewAllUnitsSchema = propertyWithNameSchema.extend({\n totalUnitsAvailable: z.number().int().nonnegative(),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n});\n\nconst loadMoreSchema = propertyWithNameSchema.extend({\n totalUnitsAvailable: z.number().int().nonnegative(),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n});\n\nconst scheduleTourFormSchema = propertyWithNameSchema.extend({\n totalUnitsAvailable: z.number().int().nonnegative(),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n lifestylePreferences: z.unknown().optional(),\n});\n\nconst questionnaireEventSchema = propertyWithNameSchema.extend({\n funnelStep: z.number().int().nonnegative(),\n profileQuestion: z.string().min(1, \"profileQuestion is required\"),\n interactedElement: z.enum(QuestionnaireInteractionValues),\n questionEnum: z.string().optional(),\n});\n\nconst continueQuestionnaireEventSchema = questionnaireEventSchema.extend({\n selectedAnswersEnumArray: z\n .any()\n .transform((value) => normalizeToStringArray(value))\n .refine((value): value is string[] => Array.isArray(value), {\n message: \"selectedAnswersEnumArray must resolve to an array\",\n }),\n});\n\nconst unitEventSchema = propertyContextSchema.extend({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().min(1, \"unitName is required\"),\n unitSlug: z.string().min(1, \"unitSlug is required\"),\n});\nconst unitWithPropertyNameSchema = propertyWithNameSchema.extend({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().min(1, \"unitName is required\"),\n unitSlug: z.string().min(1, \"unitSlug is required\"),\n});\nconst getInTouchFormSchema = unitWithPropertyNameSchema.extend({\n buttonName: z.string().min(1, \"buttonName is required\"),\n formName: z.string().min(1, \"formName is required\"),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n favoritedUnit: z.boolean(),\n});\nconst styleDrawerSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n favoritedUnit: z.boolean(),\n});\nconst furnitureInteractionSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n type: z.enum([\"click\", \"hover_on\", \"hover_off\"]),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureExternalUrlSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n link: z.string().min(1, \"link is required\"),\n type: z.string().min(1, \"type is required\"),\n favoritedUnit: z.boolean(),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureSavedSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureModalOpenedSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\nconst furnitureCarouselSchema = unitWithPropertyNameSchema.extend({\n method: z.enum([\"Prev\", \"Next\"]),\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n furnitureId: z.string().min(1, \"furnitureId is required\"),\n furnitureName: z.string().min(1, \"furnitureName is required\"),\n brandName: z.string().min(1, \"brandName is required\"),\n category: z.string().min(1, \"category is required\"),\n})\n\nconst roomEnteredSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n method: z.enum([\"Navigation\", \"Map\"]),\n})\nconst roomLeftSchema = roomEnteredSchema.extend({\n timeInRoom: z.number().int().nonnegative(),\n})\n\nconst videoStartedSchema = unitWithPropertyNameSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n unitBedrooms: z.number().int().nonnegative(),\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n method: z.enum([\"On Click Play\"]),\n videoCurrentTime: z.number().int().nonnegative(),\n videoDuration: z.number().int().nonnegative(),\n videoPercent: z.number().int().nonnegative(),\n videoFilename: z.string().min(1, \"videoFilename is required\"),\n})\nconst emailTrackedSchema = unitWithPropertyNameSchema.extend({\n utmSource: z.string().min(1, \"utm_source is required\"),\n utmMedium: z.string().min(1, \"utm_medium is required\"),\n utmName: z.string().min(1, \"utm_name is required\"),\n\n unitBedrooms: z.number().int().nonnegative(),\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n\n favoritedUnit: z.boolean(),\n})\nconst webPageViewedBaseSchema = unitWithPropertyNameSchema.extend({\n fullUrl: z.string().min(1, \"fullUrl is required\"),\n datestamp: z.string().min(1, \"datestamp is required\"),\n})\n// 360 app only\nconst webPageViewedSchema = webPageViewedBaseSchema.extend({\n pageName: z.string().min(1, \"pageName is required\"),\n})\nconst webPageRoomViewedSchema = webPageViewedBaseSchema.extend({\n roomName: z.string().min(1, \"roomName is required\"),\n})\nconst embedPageViewedSchema = unitWithPropertyNameSchema.extend({\n unitBedrooms: z.number().int().nonnegative(),\n})\nconst embedPageViewSchemaWithUTM = unitWithPropertyNameSchema.extend({\n utmSource: z.string().min(1, \"utm_source is required\"),\n utmMedium: z.string().min(1, \"utm_medium is required\"),\n utmName: z.string().min(1, \"utm_name is required\"),\n})\n\n// property_slug, property_id, property_name, unit_id, unit_slug, unit_title, unit_bedrooms\n\nconst toastSchema = unitWithPropertyNameSchema.extend({\n toastCopy: z.string().min(1, \"toastCopy is required\"),\n})\nconst contentModalOpenedSchema = unitWithPropertyNameSchema.extend({\n unitBedrooms: z.number().int().nonnegative(),\n\n styleId: z.string().min(1, \"styleId is required\"),\n styleName: z.string().min(1, \"styleName is required\"),\n})\n\nconst buildingDetailsModalSchema = propertyWithNameSchema;\n\nconst subscriptionImpressionSchema = propertyWithNameSchema.extend({\n name: z.string().min(1, \"name is required\"),\n\n})\n\nconst subscriptionInteractedSchema = z.object({\n name: z.string().min(1, \"name is required\"),\n properties: z.object({\n propertyContextSchema,\n buttonName: z.string().min(1, \"buttonName is required\"),\n formName: z.string().min(1, \"formName is required\"),\n pageName: z.string().min(1, \"pageName is required\"),\n fieldName: z.string().min(1, \"fieldName is required\"),\n }),\n});\n\nconst subscriptionSubmittedSchema = z.object({\n name: z.string().min(1, \"name is required\"),\n properties: z.object({\n propertyContextSchema,\n buttonName: z.string().min(1, \"buttonName is required\"),\n formName: z.string().min(1, \"formName is required\"),\n pageName: z.string().min(1, \"pageName is required\"),\n bedrooms: z.array(z.union([z.string(), z.number()])).optional(),\n price: z.number().nullable().optional(),\n }),\n});\n\nconst subscriptionRemovedSchema = propertyWithNameSchema.extend({\n\n bedrooms: z.array(z.number()).optional(),\n price_min: z.number().optional(),\n price_max: z.number().optional(),\n highlights: z.array(z.string()).optional(),\n\n\n page_name: z.string().optional(),\n});\n\nconst hoverUnitSchema = unitWithPropertyNameSchema.extend({\n favoritedUnit: z.boolean(),\n unitIndex: z.number().int().nonnegative(),\n});\n\nconst selectionSchema = z\n .any()\n .transform((value) => normalizeToStringArray(value))\n .refine((value): value is string[] => Array.isArray(value), {\n message: \"Selection must resolve to an array\",\n });\n\nconst filterOpenSchema = propertyWithNameSchema.extend({\n filterIndex: z.number().int().nonnegative(),\n filterLabel: z.string().min(1, \"filterLabel is required\"),\n selectedFiltersEnum: selectionSchema,\n filterName: z.string().optional(),\n});\n\nconst filterMutationSchema = propertyWithNameSchema.extend({\n filterIndex: z.number().int().nonnegative(),\n filterLabel: z.string().min(1, \"filterLabel is required\"),\n selectedFiltersEnum: selectionSchema,\n});\n\nconst sortEventSchema = propertyContextSchema.extend({\n sortIndex: z.number().int().nonnegative(),\n sortEnum: z.enum(SortEnumValues),\n});\n\nconst sortOpenSchema = propertyWithNameSchema.extend({\n sortIndex: z.number().int().nonnegative(),\n sortEnum: z.enum(SortEnumValues),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n});\n\nconst questionnaireResultSchema = propertyContextSchema.extend({\n fullQuestionnaireSchemaJson: z.unknown().optional(),\n resultsJson: z\n .object({\n type: z.string().optional(),\n total: z.number().int().nonnegative().optional(),\n units: z\n .array(\n z.object({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().optional(),\n })\n )\n .optional(),\n })\n .optional(),\n});\n\nconst clickUnitSchema = unitWithPropertyNameSchema.extend({\n favoritedUnit: z.boolean(),\n unitIndex: z.number().int().nonnegative(),\n});\n\nconst clickUnitFavoritesSchema = unitWithPropertyNameSchema.extend({\n favoritedUnit: z.boolean(),\n unitIndex: z.number().int().nonnegative(),\n\n});\n\nconst unitUnfavoritedSchema = propertyWithNameSchema.extend({\n unitId: z.string().min(1, \"unitId is required\"),\n unitName: z.string().min(1, \"unitName is required\"),\n unitSlug: z.string().min(1, \"unitSlug is required\"),\n resultsUnitCount: z.number().int().nonnegative(),\n unitCountDate: z.string().optional(),\n unitIndex: z.number().int().nonnegative(),\n});\n\nexport type BaseEvent = z.infer<typeof propertyContextSchema>;\nexport type ViewAllUnitsEvent = z.infer<typeof viewAllUnitsSchema>;\nexport type LoadMoreEvent = z.infer<typeof loadMoreSchema>;\nexport type QuestionnaireEvent = z.infer<typeof questionnaireEventSchema>;\nexport type ContinueQuestionnaireEvent = z.infer<\n typeof continueQuestionnaireEventSchema\n>;\nexport type ClickUnitEvent = z.infer<typeof clickUnitSchema>;\nexport type UnitEvent = z.infer<typeof unitEventSchema>;\nexport type HoverUnitEvent = z.infer<typeof hoverUnitSchema>;\nexport type FilterEvent = z.infer<typeof filterMutationSchema>;\nexport type FilterOpenEvent = z.infer<typeof filterOpenSchema>;\nexport type SortEvent = z.infer<typeof sortEventSchema>;\nexport type SortOpenEvent = z.infer<typeof sortOpenSchema>;\nexport type QuestionnaireResultEvent = z.infer<\n typeof questionnaireResultSchema\n>;\nexport type ClickUnitFavoritesEvent = z.infer<typeof clickUnitFavoritesSchema>;\nexport type ScheduleTourFormEvent = z.infer<typeof scheduleTourFormSchema>;\nexport type UnitUnfavoritedEvent = z.infer<typeof unitUnfavoritedSchema>;\n\nexport type GetInTouchFormEvent = z.infer<typeof getInTouchFormSchema>;\nexport type StyleDrawerEvent = z.infer<typeof styleDrawerSchema>;\nexport type FurnitureInteractionEvent = z.infer<typeof furnitureInteractionSchema>;\nexport type FurnitureExternalUrlClickedEvent = z.infer<typeof furnitureExternalUrlSchema>;\nexport type FurnitureSavedEvent = z.infer<typeof furnitureSavedSchema>;\nexport type FurnitureModalOpenedEvent = z.infer<typeof furnitureModalOpenedSchema>;\nexport type FurnitureCarouselEvent = z.infer<typeof furnitureCarouselSchema>;\nexport type RoomEnteredEvent = z.infer<typeof roomEnteredSchema>;\nexport type RoomLeftEvent = z.infer<typeof roomLeftSchema>;\nexport type VideoStartedEvent = z.infer<typeof videoStartedSchema>;\nexport type EmailTrackedEvent = z.infer<typeof emailTrackedSchema>;\nexport type ToastEvent = z.infer<typeof toastSchema>;\nexport type ContentModalOpenedEvent = z.infer<typeof contentModalOpenedSchema>;\nexport type BuildingDetailsModalEvent = z.infer<typeof buildingDetailsModalSchema>;\nexport type SubscriptionImpressionEvent = z.infer<typeof subscriptionImpressionSchema>;\nexport type SubscriptionInteractedEvent = z.infer<typeof subscriptionInteractedSchema>;\nexport type SubscriptionSubmittedEvent = z.infer<typeof subscriptionSubmittedSchema>;\nexport type SubscriptionRemovedEvent = z.infer<typeof subscriptionRemovedSchema>;\nexport type WebPageViewedEvent = z.infer<typeof webPageViewedSchema>;\nexport type WebPageRoomViewedEvent = z.infer<typeof webPageRoomViewedSchema>;\n\n\nexport type TrackingEventWithUnits = FilterEvent & {\n trackingEvent: (payload: FilterEvent) => void;\n [metadata: string]: unknown;\n};\n\nexport type TrackEventFn = (eventName: string, data?: Record<string, any>) => void;\n\nexport function useTrackEvent() {\n const analytics = useAnalytics();\n return (eventName: string, data?: Record<string, any>) => {\n const payload =\n data == null ? data : (convertKeysToSnakeCase(data) as Record<string, any>);\n analytics.track(eventName, payload);\n };\n}\n\nconst createStrictTrackerInternal =\n <Schema extends z.ZodTypeAny>(\n eventName: string,\n schema: Schema,\n dispatch: (eventName: string, payload: unknown) => void,\n options?: { isDev?: boolean },\n ) =>\n (payload: AnalyticsPayload<Schema>) => {\n const payloadToValidate = convertKeysToCamelCase(payload) as z.input<Schema>;\n const result = schema.safeParse(payloadToValidate);\n if (!result.success) {\n if (options?.isDev) {\n // eslint-disable-next-line no-console\n console.warn(`[Analytics] Invalid payload for \"${eventName}\":`, result.error.issues);\n }\n return;\n }\n dispatch(eventName, payload);\n };\n\nexport function buildTrackingEvents(trackEvent: TrackEventFn, isDev = false) {\n const dispatch = (eventName: string, payload: unknown) => {\n const finalPayload = convertKeysToSnakeCase(payload) as Record<string, any>;\n trackEvent(eventName, finalPayload);\n };\n\n const createStrictTracker = <Schema extends z.ZodTypeAny>(\n eventName: string,\n schema: Schema,\n ) =>\n createStrictTrackerInternal(eventName, schema, dispatch, { isDev });\n\n return {\n trackViewAllUnits: (\n payload: AnalyticsPayload<typeof viewAllUnitsSchema>,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as z.input<typeof viewAllUnitsSchema>;\n const result = viewAllUnitsSchema.safeParse({\n unitCountDate: new Date().toISOString(),\n ...normalizedPayload,\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"View All Units\\\":\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"View All Units\", result.data);\n },\n trackQuestionnaireSkip: (\n payload: AnalyticsPayloadWithout<\n typeof questionnaireEventSchema,\n \"interactedElement\"\n >,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as Omit<\n z.input<typeof questionnaireEventSchema>,\n \"interactedElement\"\n >;\n const result = questionnaireEventSchema.safeParse({\n ...normalizedPayload,\n interactedElement: \"Skip\",\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Questionnaire Navigated\\\" (Skip):\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Questionnaire Navigated\", result.data);\n },\n trackQuestionnaireContinue: (\n payload: AnalyticsPayloadWithout<\n typeof continueQuestionnaireEventSchema,\n \"interactedElement\"\n >,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as Omit<\n z.input<typeof continueQuestionnaireEventSchema>,\n \"interactedElement\"\n >;\n const result = continueQuestionnaireEventSchema.safeParse({\n ...normalizedPayload,\n interactedElement: \"Continue\",\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Questionnaire Navigated\\\" (Continue):\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Questionnaire Navigated\", result.data);\n },\n trackQuestionnaireBack: (\n payload: AnalyticsPayloadWithout<\n typeof questionnaireEventSchema,\n \"interactedElement\"\n >,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as Omit<\n z.input<typeof questionnaireEventSchema>,\n \"interactedElement\"\n >;\n const result = questionnaireEventSchema.safeParse({\n ...normalizedPayload,\n interactedElement: \"Back\",\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Questionnaire Navigated\\\" (Back):\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Questionnaire Navigated\", result.data);\n },\n trackClickUnit: createStrictTracker(\"Unit Card Clicked\", clickUnitSchema),\n trackHoverUnit: createStrictTracker(\"Unit Hovered\", hoverUnitSchema, ),\n trackLoadMore: (\n payload: AnalyticsPayload<typeof loadMoreSchema>,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as z.input<typeof loadMoreSchema>;\n const result = loadMoreSchema.safeParse({\n unitCountDate: new Date().toISOString(),\n ...normalizedPayload,\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"More Units Loaded\\\":\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"More Units Loaded\", result.data);\n },\n trackFilterOpened: createStrictTracker(\"Filter Opened\", filterOpenSchema),\n trackFilterCanceled: createStrictTracker(\n \"Filter Cleared\",\n filterMutationSchema,\n ),\n trackFilterApplied: createStrictTracker(\n \"Filter Applied\",\n filterMutationSchema,\n ),\n trackOpenSort: (\n payload: AnalyticsPayload<typeof sortOpenSchema>,\n ) => {\n const normalizedPayload = convertKeysToCamelCase(\n payload,\n ) as z.input<typeof sortOpenSchema>;\n const result = sortOpenSchema.safeParse({\n unitCountDate: new Date().toISOString(),\n ...normalizedPayload,\n });\n if (!result.success) {\n if (isDev) console.warn(\"[Analytics] Invalid payload for \\\"Sort Opened\\\":\", result.error.flatten()); // eslint-disable-line no-console\n return;\n }\n dispatch(\"Sort Opened\", result.data);\n },\n trackSelectSort: createStrictTracker(\"Sort Applied\", sortEventSchema),\n trackCancelSort: createStrictTracker(\"Sort Canceled\", sortEventSchema),\n trackClickUnitFavorites: createStrictTracker(\n \"Unit Favorited\",\n clickUnitFavoritesSchema,\n ),\n trackUnitUnfavorited: createStrictTracker(\n \"Unit Unfavorited\",\n unitUnfavoritedSchema,\n ),\n trackQuestionnaireResult: createStrictTracker(\n \"Questionnaire Submitted\",\n questionnaireResultSchema,\n ),\n trackScheduleTourFormInteracted: createStrictTracker(\n \"Schedule Tour Form Interacted\",\n scheduleTourFormSchema,\n ),\n trackScheduleTourFormSubmitted: createStrictTracker(\n \"Schedule Tour Form Submitted\",\n scheduleTourFormSchema,\n ),\n trackScheduleTourUrlClicked: createStrictTracker(\n \"Schedule Tour URL Clicked\",\n scheduleTourFormSchema,\n ),\n trackGetInTouchFormOpened: createStrictTracker(\n \"Form Opened\",\n getInTouchFormSchema,\n ),\n trackGetInTouchFormSubmitted: createStrictTracker(\n \"Form Submitted\",\n getInTouchFormSchema,\n ),\n trackStyleDrawerOpened: createStrictTracker(\n \"Style Menu Opened\",\n styleDrawerSchema,\n ),\n trackStyleDrawerChanged: createStrictTracker(\n \"Style Changed\",\n styleDrawerSchema,\n ),\n trackOpeningStyleImpression: createStrictTracker(\n \"Opening Style Modal Impression\",\n styleDrawerSchema,\n ),\n trackOpeningStyleSlected: createStrictTracker(\n \"Opening Style Selected\",\n styleDrawerSchema,\n ),\n trackFurnitureViewed: createStrictTracker(\n \"Furniture Viewed\",\n furnitureInteractionSchema,\n ),\n trackFurnitureExternalUrlClicked: createStrictTracker(\n \"Purchase Link Clicked\",\n furnitureExternalUrlSchema,\n ),\n trackFurnitureSaved: createStrictTracker(\n \"Furniture Saved\",\n furnitureSavedSchema,\n ),\n trackFurnitureModalOpened: createStrictTracker(\n \"Furniture Modal Opened\",\n furnitureModalOpenedSchema,\n ),\n trackFurnitureCarouselToggled: createStrictTracker(\n \"Furniture Carousel Toggled\",\n furnitureCarouselSchema,\n ),\n trackRoomEntered: createStrictTracker(\n \"Room Entered\",\n roomEnteredSchema,\n ),\n trackRoomLeft: createStrictTracker(\n \"Room Left\",\n roomLeftSchema,\n ),\n trackVideoStarted: createStrictTracker(\n \"Video Started\",\n videoStartedSchema,\n ),\n trackEmailRedirect: createStrictTracker(\n \"Email Tracked\",\n emailTrackedSchema,\n ),\n trackToastImpression: createStrictTracker(\n \"Toast Impression\",\n toastSchema,\n ),\n trackToastClicked: createStrictTracker(\n \"Toast Clicked\",\n toastSchema,\n ),\n trackToastClosed: createStrictTracker(\n \"Toast Closed\",\n toastSchema,\n ),\n trackContentModalOpened: createStrictTracker(\n \"Content Modal Opened\",\n contentModalOpenedSchema,\n ),\n trackBuildingDetailsModalOpened: createStrictTracker(\n \"Building Details Modal\",\n buildingDetailsModalSchema,\n ),\n trackSubscriptionImpression: createStrictTracker(\n \"Subscription Impression\",\n subscriptionImpressionSchema,\n ),\n trackSubscriptionInteracted: createStrictTracker(\n \"Subscription Interacted\",\n subscriptionInteractedSchema,\n ),\n trackSubscriptionSubmitted: createStrictTracker(\n \"Subscription Submitted\",\n subscriptionSubmittedSchema,\n ),\n trackSubscriptionRemoved: createStrictTracker(\n \"Subscription Removed\",\n subscriptionRemovedSchema,\n ),\n trackWebPageViewed: createStrictTracker(\n \"Page Viewed\",\n webPageViewedSchema,\n ),\n trackWebPageRoomViewed: createStrictTracker(\n \"Page Viewed\",\n webPageRoomViewedSchema,\n ),\n trackEmbedPageViewed: createStrictTracker(\n \"Embed Impression\",\n embedPageViewedSchema,\n ),\n trackEmailClickGeneric: (data: { event_name: string }) => createStrictTracker(\n `Email Interaction - ${data.event_name}`,\n embedPageViewSchemaWithUTM,\n ),\n trackEmailClickConfirmation: () => createStrictTracker(\n \"Notify Me Email Confirmation\",\n embedPageViewSchemaWithUTM,\n ),\n trackEmailClickNotification: () => createStrictTracker(\n \"Notify Me Email Notification\",\n embedPageViewSchemaWithUTM,\n ),\n };\n}\n\nexport function useTrackingEvents() {\n const { isDev } = useAnalytics();\n const trackEvent = useTrackEvent();\n return buildTrackingEvents(trackEvent, isDev);\n}\n"],"names":["QuestionEnumValues","SortEnumValues","QuestionnaireInteractionValues","propertyContextSchema","z.object","z.string","propertyWithNameSchema","viewAllUnitsSchema","z.number","loadMoreSchema","scheduleTourFormSchema","z.unknown","questionnaireEventSchema","z.enum","continueQuestionnaireEventSchema","z.any","value","normalizeToStringArray","unitWithPropertyNameSchema","getInTouchFormSchema","z.boolean","styleDrawerSchema","furnitureInteractionSchema","furnitureExternalUrlSchema","furnitureSavedSchema","furnitureModalOpenedSchema","furnitureCarouselSchema","roomEnteredSchema","roomLeftSchema","videoStartedSchema","emailTrackedSchema","webPageViewedBaseSchema","webPageViewedSchema","webPageRoomViewedSchema","embedPageViewedSchema","embedPageViewSchemaWithUTM","toastSchema","contentModalOpenedSchema","buildingDetailsModalSchema","subscriptionImpressionSchema","subscriptionInteractedSchema","subscriptionSubmittedSchema","z.array","z.union","subscriptionRemovedSchema","hoverUnitSchema","selectionSchema","filterOpenSchema","filterMutationSchema","sortEventSchema","sortOpenSchema","questionnaireResultSchema","clickUnitSchema","clickUnitFavoritesSchema","unitUnfavoritedSchema","useTrackEvent","analytics","useAnalytics","eventName","data","payload","convertKeysToSnakeCase","createStrictTrackerInternal","schema","dispatch","options","payloadToValidate","convertKeysToCamelCase","result","buildTrackingEvents","trackEvent","isDev","finalPayload","createStrictTracker","normalizedPayload","useTrackingEvents"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./ZodError.cjs"),l=require("./helpers/errorUtil.cjs"),i=require("./helpers/parseUtil.cjs"),c=require("./helpers/util.cjs");class x{constructor(e,t,s,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=s,this._key=r}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const te=(n,e)=>{if(i.isValid(e))return{success:!0,data:e.value};if(!n.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new u.ZodError(n.common.issues);return this._error=t,this._error}}};function p(n){if(!n)return{};const{errorMap:e,invalid_type_error:t,required_error:s,description:r}=n;if(e&&(t||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:r}:{errorMap:(o,d)=>{const{message:h}=n;return o.code==="invalid_enum_value"?{message:h??d.defaultError}:typeof d.data>"u"?{message:h??s??d.defaultError}:o.code!=="invalid_type"?{message:d.defaultError}:{message:h??t??d.defaultError}},description:r}}class y{get description(){return this._def.description}_getType(e){return c.getParsedType(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:c.getParsedType(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new i.ParseStatus,ctx:{common:e.parent.common,data:e.data,parsedType:c.getParsedType(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(i.isAsync(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const s=this.safeParse(e,t);if(s.success)return s.data;throw s.error}safeParse(e,t){const s={common:{issues:[],async:(t==null?void 0:t.async)??!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:c.getParsedType(e)},r=this._parseSync({data:e,path:s.path,parent:s});return te(s,r)}"~validate"(e){var s,r;const t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:c.getParsedType(e)};if(!this["~standard"].async)try{const a=this._parseSync({data:e,path:[],parent:t});return i.isValid(a)?{value:a.value}:{issues:t.common.issues}}catch(a){(r=(s=a==null?void 0:a.message)==null?void 0:s.toLowerCase())!=null&&r.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(a=>i.isValid(a)?{value:a.value}:{issues:t.common.issues})}async parseAsync(e,t){const s=await this.safeParseAsync(e,t);if(s.success)return s.data;throw s.error}async safeParseAsync(e,t){const s={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:c.getParsedType(e)},r=this._parse({data:e,path:s.path,parent:s}),a=await(i.isAsync(r)?r:Promise.resolve(r));return te(s,a)}refine(e,t){const s=r=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(r):t;return this._refinement((r,a)=>{const o=e(r),d=()=>a.addIssue({code:u.ZodIssueCode.custom,...s(r)});return typeof Promise<"u"&&o instanceof Promise?o.then(h=>h?!0:(d(),!1)):o?!0:(d(),!1)})}refinement(e,t){return this._refinement((s,r)=>e(s)?!0:(r.addIssue(typeof t=="function"?t(s,r):t),!1))}_refinement(e){return new w({schema:this,typeName:exports.ZodFirstPartyTypeKind.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:t=>this["~validate"](t)}}optional(){return T.create(this,this._def)}nullable(){return P.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return v.create(this)}promise(){return D.create(this,this._def)}or(e){return V.create([this,e],this._def)}and(e){return L.create(this,e,this._def)}transform(e){return new w({...p(this._def),schema:this,typeName:exports.ZodFirstPartyTypeKind.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new z({...p(this._def),innerType:this,defaultValue:t,typeName:exports.ZodFirstPartyTypeKind.ZodDefault})}brand(){return new ie({typeName:exports.ZodFirstPartyTypeKind.ZodBranded,type:this,...p(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new M({...p(this._def),innerType:this,catchValue:t,typeName:exports.ZodFirstPartyTypeKind.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return B.create(this,e)}readonly(){return $.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const oe=/^c[^\s-]{8,}$/i,ue=/^[0-9a-z]+$/,ce=/^[0-9A-HJKMNP-TV-Z]{26}$/i,le=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,he=/^[a-z0-9_-]{21}$/i,fe=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,pe=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ye=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,me="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let W;const _e=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ge=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ve=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,xe=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Te=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ze=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,se="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Ie=new RegExp(`^${se}$`);function re(n){let e="[0-5]\\d";n.precision?e=`${e}\\.\\d{${n.precision}}`:n.precision==null&&(e=`${e}(\\.\\d+)?`);const t=n.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function ke(n){return new RegExp(`^${re(n)}$`)}function ae(n){let e=`${se}T${re(n)}`;const t=[];return t.push(n.local?"Z?":"Z"),n.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function Ce(n,e){return!!((e==="v4"||!e)&&_e.test(n)||(e==="v6"||!e)&&ve.test(n))}function we(n,e){if(!fe.test(n))return!1;try{const[t]=n.split(".");if(!t)return!1;const s=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),r=JSON.parse(atob(s));return!(typeof r!="object"||r===null||"typ"in r&&(r==null?void 0:r.typ)!=="JWT"||!r.alg||e&&r.alg!==e)}catch{return!1}}function be(n,e){return!!((e==="v4"||!e)&&ge.test(n)||(e==="v6"||!e)&&xe.test(n))}class g extends y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==c.ZodParsedType.string){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.string,received:a.parsedType}),i.INVALID}const s=new i.ParseStatus;let r;for(const a of this._def.checks)if(a.kind==="min")e.data.length<a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),s.dirty());else if(a.kind==="max")e.data.length>a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),s.dirty());else if(a.kind==="length"){const o=e.data.length>a.value,d=e.data.length<a.value;(o||d)&&(r=this._getOrReturnCtx(e,r),o?i.addIssueToContext(r,{code:u.ZodIssueCode.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):d&&i.addIssueToContext(r,{code:u.ZodIssueCode.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),s.dirty())}else if(a.kind==="email")ye.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"email",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="emoji")W||(W=new RegExp(me,"u")),W.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"emoji",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="uuid")le.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"uuid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="nanoid")he.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"nanoid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="cuid")oe.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"cuid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="cuid2")ue.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"cuid2",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="ulid")ce.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"ulid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"url",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"regex",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),s.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:{startsWith:a.value},message:a.message}),s.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:{endsWith:a.value},message:a.message}),s.dirty()):a.kind==="datetime"?ae(a).test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:"datetime",message:a.message}),s.dirty()):a.kind==="date"?Ie.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:"date",message:a.message}),s.dirty()):a.kind==="time"?ke(a).test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:"time",message:a.message}),s.dirty()):a.kind==="duration"?pe.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"duration",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="ip"?Ce(e.data,a.version)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"ip",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="jwt"?we(e.data,a.alg)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"jwt",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="cidr"?be(e.data,a.version)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"cidr",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="base64"?Te.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"base64",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="base64url"?Ze.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"base64url",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):c.util.assertNever(a);return{status:s.value,value:e.data}}_regex(e,t,s){return this.refinement(r=>e.test(r),{validation:t,code:u.ZodIssueCode.invalid_string,...l.errorUtil.errToObj(s)})}_addCheck(e){return new g({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...l.errorUtil.errToObj(e)})}url(e){return this._addCheck({kind:"url",...l.errorUtil.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...l.errorUtil.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...l.errorUtil.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...l.errorUtil.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...l.errorUtil.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...l.errorUtil.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...l.errorUtil.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...l.errorUtil.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...l.errorUtil.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...l.errorUtil.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...l.errorUtil.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...l.errorUtil.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(e==null?void 0:e.offset)??!1,local:(e==null?void 0:e.local)??!1,...l.errorUtil.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...l.errorUtil.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...l.errorUtil.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...l.errorUtil.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...l.errorUtil.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...l.errorUtil.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...l.errorUtil.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...l.errorUtil.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...l.errorUtil.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...l.errorUtil.errToObj(t)})}nonempty(e){return this.min(1,l.errorUtil.errToObj(e))}trim(){return new g({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new g({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new g({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}g.create=n=>new g({checks:[],typeName:exports.ZodFirstPartyTypeKind.ZodString,coerce:(n==null?void 0:n.coerce)??!1,...p(n)});function Ae(n,e){const t=(n.toString().split(".")[1]||"").length,s=(e.toString().split(".")[1]||"").length,r=t>s?t:s,a=Number.parseInt(n.toFixed(r).replace(".","")),o=Number.parseInt(e.toFixed(r).replace(".",""));return a%o/10**r}class I extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==c.ZodParsedType.number){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.number,received:a.parsedType}),i.INVALID}let s;const r=new i.ParseStatus;for(const a of this._def.checks)a.kind==="int"?c.util.isInteger(e.data)||(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:"integer",received:"float",message:a.message}),r.dirty()):a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),r.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),r.dirty()):a.kind==="multipleOf"?Ae(e.data,a.value)!==0&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):a.kind==="finite"?Number.isFinite(e.data)||(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.not_finite,message:a.message}),r.dirty()):c.util.assertNever(a);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,l.errorUtil.toString(t))}gt(e,t){return this.setLimit("min",e,!1,l.errorUtil.toString(t))}lte(e,t){return this.setLimit("max",e,!0,l.errorUtil.toString(t))}lt(e,t){return this.setLimit("max",e,!1,l.errorUtil.toString(t))}setLimit(e,t,s,r){return new I({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:l.errorUtil.toString(r)}]})}_addCheck(e){return new I({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:l.errorUtil.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:l.errorUtil.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:l.errorUtil.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:l.errorUtil.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:l.errorUtil.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:l.errorUtil.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:l.errorUtil.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:l.errorUtil.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:l.errorUtil.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&c.util.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(t===null||s.value>t)&&(t=s.value):s.kind==="max"&&(e===null||s.value<e)&&(e=s.value)}return Number.isFinite(t)&&Number.isFinite(e)}}I.create=n=>new I({checks:[],typeName:exports.ZodFirstPartyTypeKind.ZodNumber,coerce:(n==null?void 0:n.coerce)||!1,...p(n)});class k extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==c.ZodParsedType.bigint)return this._getInvalidInput(e);let s;const r=new i.ParseStatus;for(const a of this._def.checks)a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty()):a.kind==="multipleOf"?e.data%a.value!==BigInt(0)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):c.util.assertNever(a);return{status:r.value,value:e.data}}_getInvalidInput(e){const t=this._getOrReturnCtx(e);return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.bigint,received:t.parsedType}),i.INVALID}gte(e,t){return this.setLimit("min",e,!0,l.errorUtil.toString(t))}gt(e,t){return this.setLimit("min",e,!1,l.errorUtil.toString(t))}lte(e,t){return this.setLimit("max",e,!0,l.errorUtil.toString(t))}lt(e,t){return this.setLimit("max",e,!1,l.errorUtil.toString(t))}setLimit(e,t,s,r){return new k({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:l.errorUtil.toString(r)}]})}_addCheck(e){return new k({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:l.errorUtil.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:l.errorUtil.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:l.errorUtil.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:l.errorUtil.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:l.errorUtil.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}k.create=n=>new k({checks:[],typeName:exports.ZodFirstPartyTypeKind.ZodBigInt,coerce:(n==null?void 0:n.coerce)??!1,...p(n)});class R extends y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==c.ZodParsedType.boolean){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.boolean,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}R.create=n=>new R({typeName:exports.ZodFirstPartyTypeKind.ZodBoolean,coerce:(n==null?void 0:n.coerce)||!1,...p(n)});class b extends y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==c.ZodParsedType.date){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.date,received:a.parsedType}),i.INVALID}if(Number.isNaN(e.data.getTime())){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_date}),i.INVALID}const s=new i.ParseStatus;let r;for(const a of this._def.checks)a.kind==="min"?e.data.getTime()<a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),s.dirty()):a.kind==="max"?e.data.getTime()>a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),s.dirty()):c.util.assertNever(a);return{status:s.value,value:new Date(e.data.getTime())}}_addCheck(e){return new b({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:l.errorUtil.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:l.errorUtil.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}b.create=n=>new b({checks:[],coerce:(n==null?void 0:n.coerce)||!1,typeName:exports.ZodFirstPartyTypeKind.ZodDate,...p(n)});class Y extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.symbol){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.symbol,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}Y.create=n=>new Y({typeName:exports.ZodFirstPartyTypeKind.ZodSymbol,...p(n)});class q extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.undefined){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.undefined,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}q.create=n=>new q({typeName:exports.ZodFirstPartyTypeKind.ZodUndefined,...p(n)});class j extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.null){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.null,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}j.create=n=>new j({typeName:exports.ZodFirstPartyTypeKind.ZodNull,...p(n)});class E extends y{constructor(){super(...arguments),this._any=!0}_parse(e){return i.OK(e.data)}}E.create=n=>new E({typeName:exports.ZodFirstPartyTypeKind.ZodAny,...p(n)});class F extends y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return i.OK(e.data)}}F.create=n=>new F({typeName:exports.ZodFirstPartyTypeKind.ZodUnknown,...p(n)});class Z extends y{_parse(e){const t=this._getOrReturnCtx(e);return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.never,received:t.parsedType}),i.INVALID}}Z.create=n=>new Z({typeName:exports.ZodFirstPartyTypeKind.ZodNever,...p(n)});class J extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.undefined){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.void,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}J.create=n=>new J({typeName:exports.ZodFirstPartyTypeKind.ZodVoid,...p(n)});class v extends y{_parse(e){const{ctx:t,status:s}=this._processInputParams(e),r=this._def;if(t.parsedType!==c.ZodParsedType.array)return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.array,received:t.parsedType}),i.INVALID;if(r.exactLength!==null){const o=t.data.length>r.exactLength.value,d=t.data.length<r.exactLength.value;(o||d)&&(i.addIssueToContext(t,{code:o?u.ZodIssueCode.too_big:u.ZodIssueCode.too_small,minimum:d?r.exactLength.value:void 0,maximum:o?r.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:r.exactLength.message}),s.dirty())}if(r.minLength!==null&&t.data.length<r.minLength.value&&(i.addIssueToContext(t,{code:u.ZodIssueCode.too_small,minimum:r.minLength.value,type:"array",inclusive:!0,exact:!1,message:r.minLength.message}),s.dirty()),r.maxLength!==null&&t.data.length>r.maxLength.value&&(i.addIssueToContext(t,{code:u.ZodIssueCode.too_big,maximum:r.maxLength.value,type:"array",inclusive:!0,exact:!1,message:r.maxLength.message}),s.dirty()),t.common.async)return Promise.all([...t.data].map((o,d)=>r.type._parseAsync(new x(t,o,t.path,d)))).then(o=>i.ParseStatus.mergeArray(s,o));const a=[...t.data].map((o,d)=>r.type._parseSync(new x(t,o,t.path,d)));return i.ParseStatus.mergeArray(s,a)}get element(){return this._def.type}min(e,t){return new v({...this._def,minLength:{value:e,message:l.errorUtil.toString(t)}})}max(e,t){return new v({...this._def,maxLength:{value:e,message:l.errorUtil.toString(t)}})}length(e,t){return new v({...this._def,exactLength:{value:e,message:l.errorUtil.toString(t)}})}nonempty(e){return this.min(1,e)}}v.create=(n,e)=>new v({type:n,minLength:null,maxLength:null,exactLength:null,typeName:exports.ZodFirstPartyTypeKind.ZodArray,...p(e)});function N(n){if(n instanceof _){const e={};for(const t in n.shape){const s=n.shape[t];e[t]=T.create(N(s))}return new _({...n._def,shape:()=>e})}else return n instanceof v?new v({...n._def,type:N(n.element)}):n instanceof T?T.create(N(n.unwrap())):n instanceof P?P.create(N(n.unwrap())):n instanceof C?C.create(n.items.map(e=>N(e))):n}class _ extends y{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=c.util.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==c.ZodParsedType.object){const f=this._getOrReturnCtx(e);return i.addIssueToContext(f,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.object,received:f.parsedType}),i.INVALID}const{status:s,ctx:r}=this._processInputParams(e),{shape:a,keys:o}=this._getCached(),d=[];if(!(this._def.catchall instanceof Z&&this._def.unknownKeys==="strip"))for(const f in r.data)o.includes(f)||d.push(f);const h=[];for(const f of o){const m=a[f],O=r.data[f];h.push({key:{status:"valid",value:f},value:m._parse(new x(r,O,r.path,f)),alwaysSet:f in r.data})}if(this._def.catchall instanceof Z){const f=this._def.unknownKeys;if(f==="passthrough")for(const m of d)h.push({key:{status:"valid",value:m},value:{status:"valid",value:r.data[m]}});else if(f==="strict")d.length>0&&(i.addIssueToContext(r,{code:u.ZodIssueCode.unrecognized_keys,keys:d}),s.dirty());else if(f!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const f=this._def.catchall;for(const m of d){const O=r.data[m];h.push({key:{status:"valid",value:m},value:f._parse(new x(r,O,r.path,m)),alwaysSet:m in r.data})}}return r.common.async?Promise.resolve().then(async()=>{const f=[];for(const m of h){const O=await m.key,de=await m.value;f.push({key:O,value:de,alwaysSet:m.alwaysSet})}return f}).then(f=>i.ParseStatus.mergeObjectSync(s,f)):i.ParseStatus.mergeObjectSync(s,h)}get shape(){return this._def.shape()}strict(e){return l.errorUtil.errToObj,new _({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,s)=>{var a,o;const r=((o=(a=this._def).errorMap)==null?void 0:o.call(a,t,s).message)??s.defaultError;return t.code==="unrecognized_keys"?{message:l.errorUtil.errToObj(e).message??r}:{message:r}}}:{}})}strip(){return new _({...this._def,unknownKeys:"strip"})}passthrough(){return new _({...this._def,unknownKeys:"passthrough"})}extend(e){return new _({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new _({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:exports.ZodFirstPartyTypeKind.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new _({...this._def,catchall:e})}pick(e){const t={};for(const s of c.util.objectKeys(e))e[s]&&this.shape[s]&&(t[s]=this.shape[s]);return new _({...this._def,shape:()=>t})}omit(e){const t={};for(const s of c.util.objectKeys(this.shape))e[s]||(t[s]=this.shape[s]);return new _({...this._def,shape:()=>t})}deepPartial(){return N(this)}partial(e){const t={};for(const s of c.util.objectKeys(this.shape)){const r=this.shape[s];e&&!e[s]?t[s]=r:t[s]=r.optional()}return new _({...this._def,shape:()=>t})}required(e){const t={};for(const s of c.util.objectKeys(this.shape))if(e&&!e[s])t[s]=this.shape[s];else{let a=this.shape[s];for(;a instanceof T;)a=a._def.innerType;t[s]=a}return new _({...this._def,shape:()=>t})}keyof(){return ne(c.util.objectKeys(this.shape))}}_.create=(n,e)=>new _({shape:()=>n,unknownKeys:"strip",catchall:Z.create(),typeName:exports.ZodFirstPartyTypeKind.ZodObject,...p(e)});_.strictCreate=(n,e)=>new _({shape:()=>n,unknownKeys:"strict",catchall:Z.create(),typeName:exports.ZodFirstPartyTypeKind.ZodObject,...p(e)});_.lazycreate=(n,e)=>new _({shape:n,unknownKeys:"strip",catchall:Z.create(),typeName:exports.ZodFirstPartyTypeKind.ZodObject,...p(e)});class V extends y{_parse(e){const{ctx:t}=this._processInputParams(e),s=this._def.options;function r(a){for(const d of a)if(d.result.status==="valid")return d.result;for(const d of a)if(d.result.status==="dirty")return t.common.issues.push(...d.ctx.common.issues),d.result;const o=a.map(d=>new u.ZodError(d.ctx.common.issues));return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_union,unionErrors:o}),i.INVALID}if(t.common.async)return Promise.all(s.map(async a=>{const o={...t,common:{...t.common,issues:[]},parent:null};return{result:await a._parseAsync({data:t.data,path:t.path,parent:o}),ctx:o}})).then(r);{let a;const o=[];for(const h of s){const f={...t,common:{...t.common,issues:[]},parent:null},m=h._parseSync({data:t.data,path:t.path,parent:f});if(m.status==="valid")return m;m.status==="dirty"&&!a&&(a={result:m,ctx:f}),f.common.issues.length&&o.push(f.common.issues)}if(a)return t.common.issues.push(...a.ctx.common.issues),a.result;const d=o.map(h=>new u.ZodError(h));return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_union,unionErrors:d}),i.INVALID}}get options(){return this._def.options}}V.create=(n,e)=>new V({options:n,typeName:exports.ZodFirstPartyTypeKind.ZodUnion,...p(e)});function H(n,e){const t=c.getParsedType(n),s=c.getParsedType(e);if(n===e)return{valid:!0,data:n};if(t===c.ZodParsedType.object&&s===c.ZodParsedType.object){const r=c.util.objectKeys(e),a=c.util.objectKeys(n).filter(d=>r.indexOf(d)!==-1),o={...n,...e};for(const d of a){const h=H(n[d],e[d]);if(!h.valid)return{valid:!1};o[d]=h.data}return{valid:!0,data:o}}else if(t===c.ZodParsedType.array&&s===c.ZodParsedType.array){if(n.length!==e.length)return{valid:!1};const r=[];for(let a=0;a<n.length;a++){const o=n[a],d=e[a],h=H(o,d);if(!h.valid)return{valid:!1};r.push(h.data)}return{valid:!0,data:r}}else return t===c.ZodParsedType.date&&s===c.ZodParsedType.date&&+n==+e?{valid:!0,data:n}:{valid:!1}}class L extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e),r=(a,o)=>{if(i.isAborted(a)||i.isAborted(o))return i.INVALID;const d=H(a.value,o.value);return d.valid?((i.isDirty(a)||i.isDirty(o))&&t.dirty(),{status:t.value,value:d.data}):(i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_intersection_types}),i.INVALID)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([a,o])=>r(a,o)):r(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}}L.create=(n,e,t)=>new L({left:n,right:e,typeName:exports.ZodFirstPartyTypeKind.ZodIntersection,...p(t)});class C extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.array)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.array,received:s.parsedType}),i.INVALID;if(s.data.length<this._def.items.length)return i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),i.INVALID;!this._def.rest&&s.data.length>this._def.items.length&&(i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const a=[...s.data].map((o,d)=>{const h=this._def.items[d]||this._def.rest;return h?h._parse(new x(s,o,s.path,d)):null}).filter(o=>!!o);return s.common.async?Promise.all(a).then(o=>i.ParseStatus.mergeArray(t,o)):i.ParseStatus.mergeArray(t,a)}get items(){return this._def.items}rest(e){return new C({...this._def,rest:e})}}C.create=(n,e)=>{if(!Array.isArray(n))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new C({items:n,typeName:exports.ZodFirstPartyTypeKind.ZodTuple,rest:null,...p(e)})};class U extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.object)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.object,received:s.parsedType}),i.INVALID;const r=[],a=this._def.keyType,o=this._def.valueType;for(const d in s.data)r.push({key:a._parse(new x(s,d,s.path,d)),value:o._parse(new x(s,s.data[d],s.path,d)),alwaysSet:d in s.data});return s.common.async?i.ParseStatus.mergeObjectAsync(t,r):i.ParseStatus.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(e,t,s){return t instanceof y?new U({keyType:e,valueType:t,typeName:exports.ZodFirstPartyTypeKind.ZodRecord,...p(s)}):new U({keyType:g.create(),valueType:e,typeName:exports.ZodFirstPartyTypeKind.ZodRecord,...p(t)})}}class G extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.map)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.map,received:s.parsedType}),i.INVALID;const r=this._def.keyType,a=this._def.valueType,o=[...s.data.entries()].map(([d,h],f)=>({key:r._parse(new x(s,d,s.path,[f,"key"])),value:a._parse(new x(s,h,s.path,[f,"value"]))}));if(s.common.async){const d=new Map;return Promise.resolve().then(async()=>{for(const h of o){const f=await h.key,m=await h.value;if(f.status==="aborted"||m.status==="aborted")return i.INVALID;(f.status==="dirty"||m.status==="dirty")&&t.dirty(),d.set(f.value,m.value)}return{status:t.value,value:d}})}else{const d=new Map;for(const h of o){const f=h.key,m=h.value;if(f.status==="aborted"||m.status==="aborted")return i.INVALID;(f.status==="dirty"||m.status==="dirty")&&t.dirty(),d.set(f.value,m.value)}return{status:t.value,value:d}}}}G.create=(n,e,t)=>new G({valueType:e,keyType:n,typeName:exports.ZodFirstPartyTypeKind.ZodMap,...p(t)});class S extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.set)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.set,received:s.parsedType}),i.INVALID;const r=this._def;r.minSize!==null&&s.data.size<r.minSize.value&&(i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,minimum:r.minSize.value,type:"set",inclusive:!0,exact:!1,message:r.minSize.message}),t.dirty()),r.maxSize!==null&&s.data.size>r.maxSize.value&&(i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,maximum:r.maxSize.value,type:"set",inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());const a=this._def.valueType;function o(h){const f=new Set;for(const m of h){if(m.status==="aborted")return i.INVALID;m.status==="dirty"&&t.dirty(),f.add(m.value)}return{status:t.value,value:f}}const d=[...s.data.values()].map((h,f)=>a._parse(new x(s,h,s.path,f)));return s.common.async?Promise.all(d).then(h=>o(h)):o(d)}min(e,t){return new S({...this._def,minSize:{value:e,message:l.errorUtil.toString(t)}})}max(e,t){return new S({...this._def,maxSize:{value:e,message:l.errorUtil.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}S.create=(n,e)=>new S({valueType:n,minSize:null,maxSize:null,typeName:exports.ZodFirstPartyTypeKind.ZodSet,...p(e)});class Q extends y{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}Q.create=(n,e)=>new Q({getter:n,typeName:exports.ZodFirstPartyTypeKind.ZodLazy,...p(e)});class X extends y{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return i.addIssueToContext(t,{received:t.data,code:u.ZodIssueCode.invalid_literal,expected:this._def.value}),i.INVALID}return{status:"valid",value:e.data}}get value(){return this._def.value}}X.create=(n,e)=>new X({value:n,typeName:exports.ZodFirstPartyTypeKind.ZodLiteral,...p(e)});function ne(n,e){return new A({values:n,typeName:exports.ZodFirstPartyTypeKind.ZodEnum,...p(e)})}class A extends y{_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),s=this._def.values;return i.addIssueToContext(t,{expected:c.util.joinValues(s),received:t.parsedType,code:u.ZodIssueCode.invalid_type}),i.INVALID}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const t=this._getOrReturnCtx(e),s=this._def.values;return i.addIssueToContext(t,{received:t.data,code:u.ZodIssueCode.invalid_enum_value,options:s}),i.INVALID}return i.OK(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return A.create(e,{...this._def,...t})}exclude(e,t=this._def){return A.create(this.options.filter(s=>!e.includes(s)),{...this._def,...t})}}A.create=ne;class K extends y{_parse(e){const t=c.util.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(e);if(s.parsedType!==c.ZodParsedType.string&&s.parsedType!==c.ZodParsedType.number){const r=c.util.objectValues(t);return i.addIssueToContext(s,{expected:c.util.joinValues(r),received:s.parsedType,code:u.ZodIssueCode.invalid_type}),i.INVALID}if(this._cache||(this._cache=new Set(c.util.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const r=c.util.objectValues(t);return i.addIssueToContext(s,{received:s.data,code:u.ZodIssueCode.invalid_enum_value,options:r}),i.INVALID}return i.OK(e.data)}get enum(){return this._def.values}}K.create=(n,e)=>new K({values:n,typeName:exports.ZodFirstPartyTypeKind.ZodNativeEnum,...p(e)});class D extends y{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==c.ZodParsedType.promise&&t.common.async===!1)return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.promise,received:t.parsedType}),i.INVALID;const s=t.parsedType===c.ZodParsedType.promise?t.data:Promise.resolve(t.data);return i.OK(s.then(r=>this._def.type.parseAsync(r,{path:t.path,errorMap:t.common.contextualErrorMap})))}}D.create=(n,e)=>new D({type:n,typeName:exports.ZodFirstPartyTypeKind.ZodPromise,...p(e)});class w extends y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===exports.ZodFirstPartyTypeKind.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:s}=this._processInputParams(e),r=this._def.effect||null,a={addIssue:o=>{i.addIssueToContext(s,o),o.fatal?t.abort():t.dirty()},get path(){return s.path}};if(a.addIssue=a.addIssue.bind(a),r.type==="preprocess"){const o=r.transform(s.data,a);if(s.common.async)return Promise.resolve(o).then(async d=>{if(t.value==="aborted")return i.INVALID;const h=await this._def.schema._parseAsync({data:d,path:s.path,parent:s});return h.status==="aborted"?i.INVALID:h.status==="dirty"||t.value==="dirty"?i.DIRTY(h.value):h});{if(t.value==="aborted")return i.INVALID;const d=this._def.schema._parseSync({data:o,path:s.path,parent:s});return d.status==="aborted"?i.INVALID:d.status==="dirty"||t.value==="dirty"?i.DIRTY(d.value):d}}if(r.type==="refinement"){const o=d=>{const h=r.refinement(d,a);if(s.common.async)return Promise.resolve(h);if(h instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return d};if(s.common.async===!1){const d=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return d.status==="aborted"?i.INVALID:(d.status==="dirty"&&t.dirty(),o(d.value),{status:t.value,value:d.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(d=>d.status==="aborted"?i.INVALID:(d.status==="dirty"&&t.dirty(),o(d.value).then(()=>({status:t.value,value:d.value}))))}if(r.type==="transform")if(s.common.async===!1){const o=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!i.isValid(o))return i.INVALID;const d=r.transform(o.value,a);if(d instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:d}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(o=>i.isValid(o)?Promise.resolve(r.transform(o.value,a)).then(d=>({status:t.value,value:d})):i.INVALID);c.util.assertNever(r)}}w.create=(n,e,t)=>new w({schema:n,typeName:exports.ZodFirstPartyTypeKind.ZodEffects,effect:e,...p(t)});w.createWithPreprocess=(n,e,t)=>new w({schema:e,effect:{type:"preprocess",transform:n},typeName:exports.ZodFirstPartyTypeKind.ZodEffects,...p(t)});class T extends y{_parse(e){return this._getType(e)===c.ZodParsedType.undefined?i.OK(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}T.create=(n,e)=>new T({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodOptional,...p(e)});class P extends y{_parse(e){return this._getType(e)===c.ZodParsedType.null?i.OK(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}P.create=(n,e)=>new P({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodNullable,...p(e)});class z extends y{_parse(e){const{ctx:t}=this._processInputParams(e);let s=t.data;return t.parsedType===c.ZodParsedType.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}z.create=(n,e)=>new z({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...p(e)});class M extends y{_parse(e){const{ctx:t}=this._processInputParams(e),s={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return i.isAsync(r)?r.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new u.ZodError(s.common.issues)},input:s.data})})):{status:"valid",value:r.status==="valid"?r.value:this._def.catchValue({get error(){return new u.ZodError(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}}M.create=(n,e)=>new M({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...p(e)});class ee extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.nan){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.nan,received:s.parsedType}),i.INVALID}return{status:"valid",value:e.data}}}ee.create=n=>new ee({typeName:exports.ZodFirstPartyTypeKind.ZodNaN,...p(n)});class ie extends y{_parse(e){const{ctx:t}=this._processInputParams(e),s=t.data;return this._def.type._parse({data:s,path:t.path,parent:t})}unwrap(){return this._def.type}}class B extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.common.async)return(async()=>{const a=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return a.status==="aborted"?i.INVALID:a.status==="dirty"?(t.dirty(),i.DIRTY(a.value)):this._def.out._parseAsync({data:a.value,path:s.path,parent:s})})();{const r=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return r.status==="aborted"?i.INVALID:r.status==="dirty"?(t.dirty(),{status:"dirty",value:r.value}):this._def.out._parseSync({data:r.value,path:s.path,parent:s})}}static create(e,t){return new B({in:e,out:t,typeName:exports.ZodFirstPartyTypeKind.ZodPipeline})}}class $ extends y{_parse(e){const t=this._def.innerType._parse(e),s=r=>(i.isValid(r)&&(r.value=Object.freeze(r.value)),r);return i.isAsync(t)?t.then(r=>s(r)):s(t)}unwrap(){return this._def.innerType}}$.create=(n,e)=>new $({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodReadonly,...p(e)});exports.ZodFirstPartyTypeKind=void 0;(function(n){n.ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly"})(exports.ZodFirstPartyTypeKind||(exports.ZodFirstPartyTypeKind={}));const Pe=g.create,Ne=I.create;k.create;const Se=R.create,Oe=b.create,Re=j.create,Ve=E.create,Le=F.create;Z.create;const Ue=v.create,De=_.create,je=V.create;L.create;C.create;const Ee=U.create,Fe=A.create,Ke=K.create;D.create;T.create;P.create;const ze={string:n=>g.create({...n,coerce:!0}),number:n=>I.create({...n,coerce:!0}),boolean:n=>R.create({...n,coerce:!0}),bigint:n=>k.create({...n,coerce:!0}),date:n=>b.create({...n,coerce:!0})};exports.Schema=y;exports.ZodAny=E;exports.ZodArray=v;exports.ZodBigInt=k;exports.ZodBoolean=R;exports.ZodBranded=ie;exports.ZodCatch=M;exports.ZodDate=b;exports.ZodDefault=z;exports.ZodEffects=w;exports.ZodEnum=A;exports.ZodIntersection=L;exports.ZodLazy=Q;exports.ZodLiteral=X;exports.ZodMap=G;exports.ZodNaN=ee;exports.ZodNativeEnum=K;exports.ZodNever=Z;exports.ZodNull=j;exports.ZodNullable=P;exports.ZodNumber=I;exports.ZodObject=_;exports.ZodOptional=T;exports.ZodPipeline=B;exports.ZodPromise=D;exports.ZodReadonly=$;exports.ZodRecord=U;exports.ZodSchema=y;exports.ZodSet=S;exports.ZodString=g;exports.ZodSymbol=Y;exports.ZodTransformer=w;exports.ZodTuple=C;exports.ZodType=y;exports.ZodUndefined=q;exports.ZodUnion=V;exports.ZodUnknown=F;exports.ZodVoid=J;exports.any=Ve;exports.array=Ue;exports.boolean=Se;exports.coerce=ze;exports.date=Oe;exports.datetimeRegex=ae;exports.enum=Fe;exports.nativeEnum=Ke;exports.null=Re;exports.number=Ne;exports.object=De;exports.record=Ee;exports.string=Pe;exports.union=je;exports.unknown=Le;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./ZodError.cjs"),l=require("./helpers/errorUtil.cjs"),i=require("./helpers/parseUtil.cjs"),c=require("./helpers/util.cjs");class x{constructor(e,t,s,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=s,this._key=r}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const te=(n,e)=>{if(i.isValid(e))return{success:!0,data:e.value};if(!n.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new u.ZodError(n.common.issues);return this._error=t,this._error}}};function p(n){if(!n)return{};const{errorMap:e,invalid_type_error:t,required_error:s,description:r}=n;if(e&&(t||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:r}:{errorMap:(o,d)=>{const{message:h}=n;return o.code==="invalid_enum_value"?{message:h??d.defaultError}:typeof d.data>"u"?{message:h??s??d.defaultError}:o.code!=="invalid_type"?{message:d.defaultError}:{message:h??t??d.defaultError}},description:r}}class y{get description(){return this._def.description}_getType(e){return c.getParsedType(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:c.getParsedType(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new i.ParseStatus,ctx:{common:e.parent.common,data:e.data,parsedType:c.getParsedType(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(i.isAsync(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const s=this.safeParse(e,t);if(s.success)return s.data;throw s.error}safeParse(e,t){const s={common:{issues:[],async:(t==null?void 0:t.async)??!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:c.getParsedType(e)},r=this._parseSync({data:e,path:s.path,parent:s});return te(s,r)}"~validate"(e){var s,r;const t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:c.getParsedType(e)};if(!this["~standard"].async)try{const a=this._parseSync({data:e,path:[],parent:t});return i.isValid(a)?{value:a.value}:{issues:t.common.issues}}catch(a){(r=(s=a==null?void 0:a.message)==null?void 0:s.toLowerCase())!=null&&r.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(a=>i.isValid(a)?{value:a.value}:{issues:t.common.issues})}async parseAsync(e,t){const s=await this.safeParseAsync(e,t);if(s.success)return s.data;throw s.error}async safeParseAsync(e,t){const s={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:c.getParsedType(e)},r=this._parse({data:e,path:s.path,parent:s}),a=await(i.isAsync(r)?r:Promise.resolve(r));return te(s,a)}refine(e,t){const s=r=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(r):t;return this._refinement((r,a)=>{const o=e(r),d=()=>a.addIssue({code:u.ZodIssueCode.custom,...s(r)});return typeof Promise<"u"&&o instanceof Promise?o.then(h=>h?!0:(d(),!1)):o?!0:(d(),!1)})}refinement(e,t){return this._refinement((s,r)=>e(s)?!0:(r.addIssue(typeof t=="function"?t(s,r):t),!1))}_refinement(e){return new w({schema:this,typeName:exports.ZodFirstPartyTypeKind.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:t=>this["~validate"](t)}}optional(){return T.create(this,this._def)}nullable(){return P.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return v.create(this)}promise(){return D.create(this,this._def)}or(e){return V.create([this,e],this._def)}and(e){return L.create(this,e,this._def)}transform(e){return new w({...p(this._def),schema:this,typeName:exports.ZodFirstPartyTypeKind.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new M({...p(this._def),innerType:this,defaultValue:t,typeName:exports.ZodFirstPartyTypeKind.ZodDefault})}brand(){return new ie({typeName:exports.ZodFirstPartyTypeKind.ZodBranded,type:this,...p(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new $({...p(this._def),innerType:this,catchValue:t,typeName:exports.ZodFirstPartyTypeKind.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return W.create(this,e)}readonly(){return B.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const oe=/^c[^\s-]{8,}$/i,ue=/^[0-9a-z]+$/,ce=/^[0-9A-HJKMNP-TV-Z]{26}$/i,le=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,he=/^[a-z0-9_-]{21}$/i,fe=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,pe=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ye=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,me="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Y;const _e=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ge=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ve=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,xe=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Te=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ze=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,se="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Ie=new RegExp(`^${se}$`);function re(n){let e="[0-5]\\d";n.precision?e=`${e}\\.\\d{${n.precision}}`:n.precision==null&&(e=`${e}(\\.\\d+)?`);const t=n.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function ke(n){return new RegExp(`^${re(n)}$`)}function ae(n){let e=`${se}T${re(n)}`;const t=[];return t.push(n.local?"Z?":"Z"),n.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function Ce(n,e){return!!((e==="v4"||!e)&&_e.test(n)||(e==="v6"||!e)&&ve.test(n))}function we(n,e){if(!fe.test(n))return!1;try{const[t]=n.split(".");if(!t)return!1;const s=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),r=JSON.parse(atob(s));return!(typeof r!="object"||r===null||"typ"in r&&(r==null?void 0:r.typ)!=="JWT"||!r.alg||e&&r.alg!==e)}catch{return!1}}function be(n,e){return!!((e==="v4"||!e)&&ge.test(n)||(e==="v6"||!e)&&xe.test(n))}class g extends y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==c.ZodParsedType.string){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.string,received:a.parsedType}),i.INVALID}const s=new i.ParseStatus;let r;for(const a of this._def.checks)if(a.kind==="min")e.data.length<a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),s.dirty());else if(a.kind==="max")e.data.length>a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),s.dirty());else if(a.kind==="length"){const o=e.data.length>a.value,d=e.data.length<a.value;(o||d)&&(r=this._getOrReturnCtx(e,r),o?i.addIssueToContext(r,{code:u.ZodIssueCode.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):d&&i.addIssueToContext(r,{code:u.ZodIssueCode.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),s.dirty())}else if(a.kind==="email")ye.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"email",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="emoji")Y||(Y=new RegExp(me,"u")),Y.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"emoji",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="uuid")le.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"uuid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="nanoid")he.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"nanoid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="cuid")oe.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"cuid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="cuid2")ue.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"cuid2",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="ulid")ce.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"ulid",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"url",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"regex",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),s.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:{startsWith:a.value},message:a.message}),s.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:{endsWith:a.value},message:a.message}),s.dirty()):a.kind==="datetime"?ae(a).test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:"datetime",message:a.message}),s.dirty()):a.kind==="date"?Ie.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:"date",message:a.message}),s.dirty()):a.kind==="time"?ke(a).test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.invalid_string,validation:"time",message:a.message}),s.dirty()):a.kind==="duration"?pe.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"duration",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="ip"?Ce(e.data,a.version)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"ip",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="jwt"?we(e.data,a.alg)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"jwt",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="cidr"?be(e.data,a.version)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"cidr",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="base64"?Te.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"base64",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):a.kind==="base64url"?Ze.test(e.data)||(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{validation:"base64url",code:u.ZodIssueCode.invalid_string,message:a.message}),s.dirty()):c.util.assertNever(a);return{status:s.value,value:e.data}}_regex(e,t,s){return this.refinement(r=>e.test(r),{validation:t,code:u.ZodIssueCode.invalid_string,...l.errorUtil.errToObj(s)})}_addCheck(e){return new g({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...l.errorUtil.errToObj(e)})}url(e){return this._addCheck({kind:"url",...l.errorUtil.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...l.errorUtil.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...l.errorUtil.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...l.errorUtil.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...l.errorUtil.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...l.errorUtil.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...l.errorUtil.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...l.errorUtil.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...l.errorUtil.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...l.errorUtil.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...l.errorUtil.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...l.errorUtil.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(e==null?void 0:e.offset)??!1,local:(e==null?void 0:e.local)??!1,...l.errorUtil.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...l.errorUtil.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...l.errorUtil.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...l.errorUtil.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...l.errorUtil.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...l.errorUtil.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...l.errorUtil.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...l.errorUtil.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...l.errorUtil.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...l.errorUtil.errToObj(t)})}nonempty(e){return this.min(1,l.errorUtil.errToObj(e))}trim(){return new g({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new g({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new g({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}g.create=n=>new g({checks:[],typeName:exports.ZodFirstPartyTypeKind.ZodString,coerce:(n==null?void 0:n.coerce)??!1,...p(n)});function Ae(n,e){const t=(n.toString().split(".")[1]||"").length,s=(e.toString().split(".")[1]||"").length,r=t>s?t:s,a=Number.parseInt(n.toFixed(r).replace(".","")),o=Number.parseInt(e.toFixed(r).replace(".",""));return a%o/10**r}class I extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==c.ZodParsedType.number){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.number,received:a.parsedType}),i.INVALID}let s;const r=new i.ParseStatus;for(const a of this._def.checks)a.kind==="int"?c.util.isInteger(e.data)||(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:"integer",received:"float",message:a.message}),r.dirty()):a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),r.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),r.dirty()):a.kind==="multipleOf"?Ae(e.data,a.value)!==0&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):a.kind==="finite"?Number.isFinite(e.data)||(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.not_finite,message:a.message}),r.dirty()):c.util.assertNever(a);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,l.errorUtil.toString(t))}gt(e,t){return this.setLimit("min",e,!1,l.errorUtil.toString(t))}lte(e,t){return this.setLimit("max",e,!0,l.errorUtil.toString(t))}lt(e,t){return this.setLimit("max",e,!1,l.errorUtil.toString(t))}setLimit(e,t,s,r){return new I({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:l.errorUtil.toString(r)}]})}_addCheck(e){return new I({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:l.errorUtil.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:l.errorUtil.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:l.errorUtil.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:l.errorUtil.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:l.errorUtil.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:l.errorUtil.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:l.errorUtil.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:l.errorUtil.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:l.errorUtil.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&c.util.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(t===null||s.value>t)&&(t=s.value):s.kind==="max"&&(e===null||s.value<e)&&(e=s.value)}return Number.isFinite(t)&&Number.isFinite(e)}}I.create=n=>new I({checks:[],typeName:exports.ZodFirstPartyTypeKind.ZodNumber,coerce:(n==null?void 0:n.coerce)||!1,...p(n)});class k extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==c.ZodParsedType.bigint)return this._getInvalidInput(e);let s;const r=new i.ParseStatus;for(const a of this._def.checks)a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty()):a.kind==="multipleOf"?e.data%a.value!==BigInt(0)&&(s=this._getOrReturnCtx(e,s),i.addIssueToContext(s,{code:u.ZodIssueCode.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):c.util.assertNever(a);return{status:r.value,value:e.data}}_getInvalidInput(e){const t=this._getOrReturnCtx(e);return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.bigint,received:t.parsedType}),i.INVALID}gte(e,t){return this.setLimit("min",e,!0,l.errorUtil.toString(t))}gt(e,t){return this.setLimit("min",e,!1,l.errorUtil.toString(t))}lte(e,t){return this.setLimit("max",e,!0,l.errorUtil.toString(t))}lt(e,t){return this.setLimit("max",e,!1,l.errorUtil.toString(t))}setLimit(e,t,s,r){return new k({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:s,message:l.errorUtil.toString(r)}]})}_addCheck(e){return new k({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:l.errorUtil.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:l.errorUtil.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:l.errorUtil.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:l.errorUtil.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:l.errorUtil.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}k.create=n=>new k({checks:[],typeName:exports.ZodFirstPartyTypeKind.ZodBigInt,coerce:(n==null?void 0:n.coerce)??!1,...p(n)});class R extends y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==c.ZodParsedType.boolean){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.boolean,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}R.create=n=>new R({typeName:exports.ZodFirstPartyTypeKind.ZodBoolean,coerce:(n==null?void 0:n.coerce)||!1,...p(n)});class b extends y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==c.ZodParsedType.date){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.date,received:a.parsedType}),i.INVALID}if(Number.isNaN(e.data.getTime())){const a=this._getOrReturnCtx(e);return i.addIssueToContext(a,{code:u.ZodIssueCode.invalid_date}),i.INVALID}const s=new i.ParseStatus;let r;for(const a of this._def.checks)a.kind==="min"?e.data.getTime()<a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),s.dirty()):a.kind==="max"?e.data.getTime()>a.value&&(r=this._getOrReturnCtx(e,r),i.addIssueToContext(r,{code:u.ZodIssueCode.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),s.dirty()):c.util.assertNever(a);return{status:s.value,value:new Date(e.data.getTime())}}_addCheck(e){return new b({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:l.errorUtil.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:l.errorUtil.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}b.create=n=>new b({checks:[],coerce:(n==null?void 0:n.coerce)||!1,typeName:exports.ZodFirstPartyTypeKind.ZodDate,...p(n)});class q extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.symbol){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.symbol,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}q.create=n=>new q({typeName:exports.ZodFirstPartyTypeKind.ZodSymbol,...p(n)});class J extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.undefined){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.undefined,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}J.create=n=>new J({typeName:exports.ZodFirstPartyTypeKind.ZodUndefined,...p(n)});class j extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.null){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.null,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}j.create=n=>new j({typeName:exports.ZodFirstPartyTypeKind.ZodNull,...p(n)});class E extends y{constructor(){super(...arguments),this._any=!0}_parse(e){return i.OK(e.data)}}E.create=n=>new E({typeName:exports.ZodFirstPartyTypeKind.ZodAny,...p(n)});class F extends y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return i.OK(e.data)}}F.create=n=>new F({typeName:exports.ZodFirstPartyTypeKind.ZodUnknown,...p(n)});class Z extends y{_parse(e){const t=this._getOrReturnCtx(e);return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.never,received:t.parsedType}),i.INVALID}}Z.create=n=>new Z({typeName:exports.ZodFirstPartyTypeKind.ZodNever,...p(n)});class H extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.undefined){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.void,received:s.parsedType}),i.INVALID}return i.OK(e.data)}}H.create=n=>new H({typeName:exports.ZodFirstPartyTypeKind.ZodVoid,...p(n)});class v extends y{_parse(e){const{ctx:t,status:s}=this._processInputParams(e),r=this._def;if(t.parsedType!==c.ZodParsedType.array)return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.array,received:t.parsedType}),i.INVALID;if(r.exactLength!==null){const o=t.data.length>r.exactLength.value,d=t.data.length<r.exactLength.value;(o||d)&&(i.addIssueToContext(t,{code:o?u.ZodIssueCode.too_big:u.ZodIssueCode.too_small,minimum:d?r.exactLength.value:void 0,maximum:o?r.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:r.exactLength.message}),s.dirty())}if(r.minLength!==null&&t.data.length<r.minLength.value&&(i.addIssueToContext(t,{code:u.ZodIssueCode.too_small,minimum:r.minLength.value,type:"array",inclusive:!0,exact:!1,message:r.minLength.message}),s.dirty()),r.maxLength!==null&&t.data.length>r.maxLength.value&&(i.addIssueToContext(t,{code:u.ZodIssueCode.too_big,maximum:r.maxLength.value,type:"array",inclusive:!0,exact:!1,message:r.maxLength.message}),s.dirty()),t.common.async)return Promise.all([...t.data].map((o,d)=>r.type._parseAsync(new x(t,o,t.path,d)))).then(o=>i.ParseStatus.mergeArray(s,o));const a=[...t.data].map((o,d)=>r.type._parseSync(new x(t,o,t.path,d)));return i.ParseStatus.mergeArray(s,a)}get element(){return this._def.type}min(e,t){return new v({...this._def,minLength:{value:e,message:l.errorUtil.toString(t)}})}max(e,t){return new v({...this._def,maxLength:{value:e,message:l.errorUtil.toString(t)}})}length(e,t){return new v({...this._def,exactLength:{value:e,message:l.errorUtil.toString(t)}})}nonempty(e){return this.min(1,e)}}v.create=(n,e)=>new v({type:n,minLength:null,maxLength:null,exactLength:null,typeName:exports.ZodFirstPartyTypeKind.ZodArray,...p(e)});function N(n){if(n instanceof _){const e={};for(const t in n.shape){const s=n.shape[t];e[t]=T.create(N(s))}return new _({...n._def,shape:()=>e})}else return n instanceof v?new v({...n._def,type:N(n.element)}):n instanceof T?T.create(N(n.unwrap())):n instanceof P?P.create(N(n.unwrap())):n instanceof C?C.create(n.items.map(e=>N(e))):n}class _ extends y{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=c.util.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==c.ZodParsedType.object){const f=this._getOrReturnCtx(e);return i.addIssueToContext(f,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.object,received:f.parsedType}),i.INVALID}const{status:s,ctx:r}=this._processInputParams(e),{shape:a,keys:o}=this._getCached(),d=[];if(!(this._def.catchall instanceof Z&&this._def.unknownKeys==="strip"))for(const f in r.data)o.includes(f)||d.push(f);const h=[];for(const f of o){const m=a[f],O=r.data[f];h.push({key:{status:"valid",value:f},value:m._parse(new x(r,O,r.path,f)),alwaysSet:f in r.data})}if(this._def.catchall instanceof Z){const f=this._def.unknownKeys;if(f==="passthrough")for(const m of d)h.push({key:{status:"valid",value:m},value:{status:"valid",value:r.data[m]}});else if(f==="strict")d.length>0&&(i.addIssueToContext(r,{code:u.ZodIssueCode.unrecognized_keys,keys:d}),s.dirty());else if(f!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const f=this._def.catchall;for(const m of d){const O=r.data[m];h.push({key:{status:"valid",value:m},value:f._parse(new x(r,O,r.path,m)),alwaysSet:m in r.data})}}return r.common.async?Promise.resolve().then(async()=>{const f=[];for(const m of h){const O=await m.key,de=await m.value;f.push({key:O,value:de,alwaysSet:m.alwaysSet})}return f}).then(f=>i.ParseStatus.mergeObjectSync(s,f)):i.ParseStatus.mergeObjectSync(s,h)}get shape(){return this._def.shape()}strict(e){return l.errorUtil.errToObj,new _({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,s)=>{var a,o;const r=((o=(a=this._def).errorMap)==null?void 0:o.call(a,t,s).message)??s.defaultError;return t.code==="unrecognized_keys"?{message:l.errorUtil.errToObj(e).message??r}:{message:r}}}:{}})}strip(){return new _({...this._def,unknownKeys:"strip"})}passthrough(){return new _({...this._def,unknownKeys:"passthrough"})}extend(e){return new _({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new _({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:exports.ZodFirstPartyTypeKind.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new _({...this._def,catchall:e})}pick(e){const t={};for(const s of c.util.objectKeys(e))e[s]&&this.shape[s]&&(t[s]=this.shape[s]);return new _({...this._def,shape:()=>t})}omit(e){const t={};for(const s of c.util.objectKeys(this.shape))e[s]||(t[s]=this.shape[s]);return new _({...this._def,shape:()=>t})}deepPartial(){return N(this)}partial(e){const t={};for(const s of c.util.objectKeys(this.shape)){const r=this.shape[s];e&&!e[s]?t[s]=r:t[s]=r.optional()}return new _({...this._def,shape:()=>t})}required(e){const t={};for(const s of c.util.objectKeys(this.shape))if(e&&!e[s])t[s]=this.shape[s];else{let a=this.shape[s];for(;a instanceof T;)a=a._def.innerType;t[s]=a}return new _({...this._def,shape:()=>t})}keyof(){return ne(c.util.objectKeys(this.shape))}}_.create=(n,e)=>new _({shape:()=>n,unknownKeys:"strip",catchall:Z.create(),typeName:exports.ZodFirstPartyTypeKind.ZodObject,...p(e)});_.strictCreate=(n,e)=>new _({shape:()=>n,unknownKeys:"strict",catchall:Z.create(),typeName:exports.ZodFirstPartyTypeKind.ZodObject,...p(e)});_.lazycreate=(n,e)=>new _({shape:n,unknownKeys:"strip",catchall:Z.create(),typeName:exports.ZodFirstPartyTypeKind.ZodObject,...p(e)});class V extends y{_parse(e){const{ctx:t}=this._processInputParams(e),s=this._def.options;function r(a){for(const d of a)if(d.result.status==="valid")return d.result;for(const d of a)if(d.result.status==="dirty")return t.common.issues.push(...d.ctx.common.issues),d.result;const o=a.map(d=>new u.ZodError(d.ctx.common.issues));return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_union,unionErrors:o}),i.INVALID}if(t.common.async)return Promise.all(s.map(async a=>{const o={...t,common:{...t.common,issues:[]},parent:null};return{result:await a._parseAsync({data:t.data,path:t.path,parent:o}),ctx:o}})).then(r);{let a;const o=[];for(const h of s){const f={...t,common:{...t.common,issues:[]},parent:null},m=h._parseSync({data:t.data,path:t.path,parent:f});if(m.status==="valid")return m;m.status==="dirty"&&!a&&(a={result:m,ctx:f}),f.common.issues.length&&o.push(f.common.issues)}if(a)return t.common.issues.push(...a.ctx.common.issues),a.result;const d=o.map(h=>new u.ZodError(h));return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_union,unionErrors:d}),i.INVALID}}get options(){return this._def.options}}V.create=(n,e)=>new V({options:n,typeName:exports.ZodFirstPartyTypeKind.ZodUnion,...p(e)});function G(n,e){const t=c.getParsedType(n),s=c.getParsedType(e);if(n===e)return{valid:!0,data:n};if(t===c.ZodParsedType.object&&s===c.ZodParsedType.object){const r=c.util.objectKeys(e),a=c.util.objectKeys(n).filter(d=>r.indexOf(d)!==-1),o={...n,...e};for(const d of a){const h=G(n[d],e[d]);if(!h.valid)return{valid:!1};o[d]=h.data}return{valid:!0,data:o}}else if(t===c.ZodParsedType.array&&s===c.ZodParsedType.array){if(n.length!==e.length)return{valid:!1};const r=[];for(let a=0;a<n.length;a++){const o=n[a],d=e[a],h=G(o,d);if(!h.valid)return{valid:!1};r.push(h.data)}return{valid:!0,data:r}}else return t===c.ZodParsedType.date&&s===c.ZodParsedType.date&&+n==+e?{valid:!0,data:n}:{valid:!1}}class L extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e),r=(a,o)=>{if(i.isAborted(a)||i.isAborted(o))return i.INVALID;const d=G(a.value,o.value);return d.valid?((i.isDirty(a)||i.isDirty(o))&&t.dirty(),{status:t.value,value:d.data}):(i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_intersection_types}),i.INVALID)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([a,o])=>r(a,o)):r(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}}L.create=(n,e,t)=>new L({left:n,right:e,typeName:exports.ZodFirstPartyTypeKind.ZodIntersection,...p(t)});class C extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.array)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.array,received:s.parsedType}),i.INVALID;if(s.data.length<this._def.items.length)return i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),i.INVALID;!this._def.rest&&s.data.length>this._def.items.length&&(i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const a=[...s.data].map((o,d)=>{const h=this._def.items[d]||this._def.rest;return h?h._parse(new x(s,o,s.path,d)):null}).filter(o=>!!o);return s.common.async?Promise.all(a).then(o=>i.ParseStatus.mergeArray(t,o)):i.ParseStatus.mergeArray(t,a)}get items(){return this._def.items}rest(e){return new C({...this._def,rest:e})}}C.create=(n,e)=>{if(!Array.isArray(n))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new C({items:n,typeName:exports.ZodFirstPartyTypeKind.ZodTuple,rest:null,...p(e)})};class U extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.object)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.object,received:s.parsedType}),i.INVALID;const r=[],a=this._def.keyType,o=this._def.valueType;for(const d in s.data)r.push({key:a._parse(new x(s,d,s.path,d)),value:o._parse(new x(s,s.data[d],s.path,d)),alwaysSet:d in s.data});return s.common.async?i.ParseStatus.mergeObjectAsync(t,r):i.ParseStatus.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(e,t,s){return t instanceof y?new U({keyType:e,valueType:t,typeName:exports.ZodFirstPartyTypeKind.ZodRecord,...p(s)}):new U({keyType:g.create(),valueType:e,typeName:exports.ZodFirstPartyTypeKind.ZodRecord,...p(t)})}}class Q extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.map)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.map,received:s.parsedType}),i.INVALID;const r=this._def.keyType,a=this._def.valueType,o=[...s.data.entries()].map(([d,h],f)=>({key:r._parse(new x(s,d,s.path,[f,"key"])),value:a._parse(new x(s,h,s.path,[f,"value"]))}));if(s.common.async){const d=new Map;return Promise.resolve().then(async()=>{for(const h of o){const f=await h.key,m=await h.value;if(f.status==="aborted"||m.status==="aborted")return i.INVALID;(f.status==="dirty"||m.status==="dirty")&&t.dirty(),d.set(f.value,m.value)}return{status:t.value,value:d}})}else{const d=new Map;for(const h of o){const f=h.key,m=h.value;if(f.status==="aborted"||m.status==="aborted")return i.INVALID;(f.status==="dirty"||m.status==="dirty")&&t.dirty(),d.set(f.value,m.value)}return{status:t.value,value:d}}}}Q.create=(n,e,t)=>new Q({valueType:e,keyType:n,typeName:exports.ZodFirstPartyTypeKind.ZodMap,...p(t)});class S extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.parsedType!==c.ZodParsedType.set)return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.set,received:s.parsedType}),i.INVALID;const r=this._def;r.minSize!==null&&s.data.size<r.minSize.value&&(i.addIssueToContext(s,{code:u.ZodIssueCode.too_small,minimum:r.minSize.value,type:"set",inclusive:!0,exact:!1,message:r.minSize.message}),t.dirty()),r.maxSize!==null&&s.data.size>r.maxSize.value&&(i.addIssueToContext(s,{code:u.ZodIssueCode.too_big,maximum:r.maxSize.value,type:"set",inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());const a=this._def.valueType;function o(h){const f=new Set;for(const m of h){if(m.status==="aborted")return i.INVALID;m.status==="dirty"&&t.dirty(),f.add(m.value)}return{status:t.value,value:f}}const d=[...s.data.values()].map((h,f)=>a._parse(new x(s,h,s.path,f)));return s.common.async?Promise.all(d).then(h=>o(h)):o(d)}min(e,t){return new S({...this._def,minSize:{value:e,message:l.errorUtil.toString(t)}})}max(e,t){return new S({...this._def,maxSize:{value:e,message:l.errorUtil.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}S.create=(n,e)=>new S({valueType:n,minSize:null,maxSize:null,typeName:exports.ZodFirstPartyTypeKind.ZodSet,...p(e)});class K extends y{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}K.create=(n,e)=>new K({getter:n,typeName:exports.ZodFirstPartyTypeKind.ZodLazy,...p(e)});class X extends y{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return i.addIssueToContext(t,{received:t.data,code:u.ZodIssueCode.invalid_literal,expected:this._def.value}),i.INVALID}return{status:"valid",value:e.data}}get value(){return this._def.value}}X.create=(n,e)=>new X({value:n,typeName:exports.ZodFirstPartyTypeKind.ZodLiteral,...p(e)});function ne(n,e){return new A({values:n,typeName:exports.ZodFirstPartyTypeKind.ZodEnum,...p(e)})}class A extends y{_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),s=this._def.values;return i.addIssueToContext(t,{expected:c.util.joinValues(s),received:t.parsedType,code:u.ZodIssueCode.invalid_type}),i.INVALID}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const t=this._getOrReturnCtx(e),s=this._def.values;return i.addIssueToContext(t,{received:t.data,code:u.ZodIssueCode.invalid_enum_value,options:s}),i.INVALID}return i.OK(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return A.create(e,{...this._def,...t})}exclude(e,t=this._def){return A.create(this.options.filter(s=>!e.includes(s)),{...this._def,...t})}}A.create=ne;class z extends y{_parse(e){const t=c.util.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(e);if(s.parsedType!==c.ZodParsedType.string&&s.parsedType!==c.ZodParsedType.number){const r=c.util.objectValues(t);return i.addIssueToContext(s,{expected:c.util.joinValues(r),received:s.parsedType,code:u.ZodIssueCode.invalid_type}),i.INVALID}if(this._cache||(this._cache=new Set(c.util.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const r=c.util.objectValues(t);return i.addIssueToContext(s,{received:s.data,code:u.ZodIssueCode.invalid_enum_value,options:r}),i.INVALID}return i.OK(e.data)}get enum(){return this._def.values}}z.create=(n,e)=>new z({values:n,typeName:exports.ZodFirstPartyTypeKind.ZodNativeEnum,...p(e)});class D extends y{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==c.ZodParsedType.promise&&t.common.async===!1)return i.addIssueToContext(t,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.promise,received:t.parsedType}),i.INVALID;const s=t.parsedType===c.ZodParsedType.promise?t.data:Promise.resolve(t.data);return i.OK(s.then(r=>this._def.type.parseAsync(r,{path:t.path,errorMap:t.common.contextualErrorMap})))}}D.create=(n,e)=>new D({type:n,typeName:exports.ZodFirstPartyTypeKind.ZodPromise,...p(e)});class w extends y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===exports.ZodFirstPartyTypeKind.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:s}=this._processInputParams(e),r=this._def.effect||null,a={addIssue:o=>{i.addIssueToContext(s,o),o.fatal?t.abort():t.dirty()},get path(){return s.path}};if(a.addIssue=a.addIssue.bind(a),r.type==="preprocess"){const o=r.transform(s.data,a);if(s.common.async)return Promise.resolve(o).then(async d=>{if(t.value==="aborted")return i.INVALID;const h=await this._def.schema._parseAsync({data:d,path:s.path,parent:s});return h.status==="aborted"?i.INVALID:h.status==="dirty"||t.value==="dirty"?i.DIRTY(h.value):h});{if(t.value==="aborted")return i.INVALID;const d=this._def.schema._parseSync({data:o,path:s.path,parent:s});return d.status==="aborted"?i.INVALID:d.status==="dirty"||t.value==="dirty"?i.DIRTY(d.value):d}}if(r.type==="refinement"){const o=d=>{const h=r.refinement(d,a);if(s.common.async)return Promise.resolve(h);if(h instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return d};if(s.common.async===!1){const d=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return d.status==="aborted"?i.INVALID:(d.status==="dirty"&&t.dirty(),o(d.value),{status:t.value,value:d.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(d=>d.status==="aborted"?i.INVALID:(d.status==="dirty"&&t.dirty(),o(d.value).then(()=>({status:t.value,value:d.value}))))}if(r.type==="transform")if(s.common.async===!1){const o=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!i.isValid(o))return i.INVALID;const d=r.transform(o.value,a);if(d instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:d}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(o=>i.isValid(o)?Promise.resolve(r.transform(o.value,a)).then(d=>({status:t.value,value:d})):i.INVALID);c.util.assertNever(r)}}w.create=(n,e,t)=>new w({schema:n,typeName:exports.ZodFirstPartyTypeKind.ZodEffects,effect:e,...p(t)});w.createWithPreprocess=(n,e,t)=>new w({schema:e,effect:{type:"preprocess",transform:n},typeName:exports.ZodFirstPartyTypeKind.ZodEffects,...p(t)});class T extends y{_parse(e){return this._getType(e)===c.ZodParsedType.undefined?i.OK(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}T.create=(n,e)=>new T({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodOptional,...p(e)});class P extends y{_parse(e){return this._getType(e)===c.ZodParsedType.null?i.OK(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}P.create=(n,e)=>new P({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodNullable,...p(e)});class M extends y{_parse(e){const{ctx:t}=this._processInputParams(e);let s=t.data;return t.parsedType===c.ZodParsedType.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}M.create=(n,e)=>new M({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...p(e)});class $ extends y{_parse(e){const{ctx:t}=this._processInputParams(e),s={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return i.isAsync(r)?r.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new u.ZodError(s.common.issues)},input:s.data})})):{status:"valid",value:r.status==="valid"?r.value:this._def.catchValue({get error(){return new u.ZodError(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}}$.create=(n,e)=>new $({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...p(e)});class ee extends y{_parse(e){if(this._getType(e)!==c.ZodParsedType.nan){const s=this._getOrReturnCtx(e);return i.addIssueToContext(s,{code:u.ZodIssueCode.invalid_type,expected:c.ZodParsedType.nan,received:s.parsedType}),i.INVALID}return{status:"valid",value:e.data}}}ee.create=n=>new ee({typeName:exports.ZodFirstPartyTypeKind.ZodNaN,...p(n)});class ie extends y{_parse(e){const{ctx:t}=this._processInputParams(e),s=t.data;return this._def.type._parse({data:s,path:t.path,parent:t})}unwrap(){return this._def.type}}class W extends y{_parse(e){const{status:t,ctx:s}=this._processInputParams(e);if(s.common.async)return(async()=>{const a=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return a.status==="aborted"?i.INVALID:a.status==="dirty"?(t.dirty(),i.DIRTY(a.value)):this._def.out._parseAsync({data:a.value,path:s.path,parent:s})})();{const r=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return r.status==="aborted"?i.INVALID:r.status==="dirty"?(t.dirty(),{status:"dirty",value:r.value}):this._def.out._parseSync({data:r.value,path:s.path,parent:s})}}static create(e,t){return new W({in:e,out:t,typeName:exports.ZodFirstPartyTypeKind.ZodPipeline})}}class B extends y{_parse(e){const t=this._def.innerType._parse(e),s=r=>(i.isValid(r)&&(r.value=Object.freeze(r.value)),r);return i.isAsync(t)?t.then(r=>s(r)):s(t)}unwrap(){return this._def.innerType}}B.create=(n,e)=>new B({innerType:n,typeName:exports.ZodFirstPartyTypeKind.ZodReadonly,...p(e)});exports.ZodFirstPartyTypeKind=void 0;(function(n){n.ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly"})(exports.ZodFirstPartyTypeKind||(exports.ZodFirstPartyTypeKind={}));const Pe=g.create,Ne=I.create;k.create;const Se=R.create,Oe=b.create,Re=j.create,Ve=E.create,Le=F.create;Z.create;const Ue=v.create,De=_.create,je=V.create;L.create;C.create;const Ee=U.create,Fe=K.create,Ke=A.create,ze=z.create;D.create;T.create;P.create;const Me={string:n=>g.create({...n,coerce:!0}),number:n=>I.create({...n,coerce:!0}),boolean:n=>R.create({...n,coerce:!0}),bigint:n=>k.create({...n,coerce:!0}),date:n=>b.create({...n,coerce:!0})};exports.Schema=y;exports.ZodAny=E;exports.ZodArray=v;exports.ZodBigInt=k;exports.ZodBoolean=R;exports.ZodBranded=ie;exports.ZodCatch=$;exports.ZodDate=b;exports.ZodDefault=M;exports.ZodEffects=w;exports.ZodEnum=A;exports.ZodIntersection=L;exports.ZodLazy=K;exports.ZodLiteral=X;exports.ZodMap=Q;exports.ZodNaN=ee;exports.ZodNativeEnum=z;exports.ZodNever=Z;exports.ZodNull=j;exports.ZodNullable=P;exports.ZodNumber=I;exports.ZodObject=_;exports.ZodOptional=T;exports.ZodPipeline=W;exports.ZodPromise=D;exports.ZodReadonly=B;exports.ZodRecord=U;exports.ZodSchema=y;exports.ZodSet=S;exports.ZodString=g;exports.ZodSymbol=q;exports.ZodTransformer=w;exports.ZodTuple=C;exports.ZodType=y;exports.ZodUndefined=J;exports.ZodUnion=V;exports.ZodUnknown=F;exports.ZodVoid=H;exports.any=Ve;exports.array=Ue;exports.boolean=Se;exports.coerce=Me;exports.date=Oe;exports.datetimeRegex=ae;exports.enum=Ke;exports.lazy=Fe;exports.nativeEnum=ze;exports.null=Re;exports.number=Ne;exports.object=De;exports.record=Ee;exports.string=Pe;exports.union=je;exports.unknown=Le;
2
2
  //# sourceMappingURL=types.cjs.map