import { z } from "zod" import { systemSchema } from "../schemas/system" export const getBreadcrumbsSchema = z.array( z.object({ href: z.string().optional(), title: z.string(), uid: z.string(), }) ) const breadcrumbsRefs = z.object({ web: z .object({ breadcrumbs: z .object({ title: z.string(), parentsConnection: z.object({ edges: z.array( z.object({ node: z.object({ system: systemSchema, }), }) ), }), }) .optional(), }) .optional(), system: systemSchema, }) export type BreadcrumbsRefs = z.infer export const validateMyPagesBreadcrumbsRefsContentstackSchema = z.object({ account_page: breadcrumbsRefs, }) export type GetMyPagesBreadcrumbsRefsData = z.infer< typeof validateMyPagesBreadcrumbsRefsContentstackSchema > export const validateLoyaltyPageBreadcrumbsRefsContentstackSchema = z.object({ loyalty_page: breadcrumbsRefs, }) export type GetLoyaltyPageBreadcrumbsRefsData = z.infer< typeof validateLoyaltyPageBreadcrumbsRefsContentstackSchema > export const validateContentPageBreadcrumbsRefsContentstackSchema = z.object({ content_page: breadcrumbsRefs, }) export type GetContentPageBreadcrumbsRefsData = z.infer< typeof validateContentPageBreadcrumbsRefsContentstackSchema > const page = z.object({ web: z.object({ breadcrumbs: z.object({ title: z.string(), parentsConnection: z.object({ edges: z.array( z.object({ node: z.object({ web: z.object({ breadcrumbs: z.object({ title: z.string(), }), }), system: systemSchema, url: z.string(), }), }) ), }), }), }), system: systemSchema, }) export type Page = z.infer export const validateMyPagesBreadcrumbsContentstackSchema = z.object({ account_page: page, }) export type GetMyPagesBreadcrumbsData = z.infer< typeof validateMyPagesBreadcrumbsContentstackSchema > export const validateLoyaltyPageBreadcrumbsContentstackSchema = z.object({ loyalty_page: page, }) export type GetLoyaltyPageBreadcrumbsData = z.infer< typeof validateLoyaltyPageBreadcrumbsContentstackSchema > export const validateContentPageBreadcrumbsContentstackSchema = z.object({ content_page: page, }) export type GetContentPageBreadcrumbsData = z.infer< typeof validateContentPageBreadcrumbsContentstackSchema >