25 lines
607 B
TypeScript
25 lines
607 B
TypeScript
import { z } from "zod"
|
|
|
|
import { BlocksEnums } from "../../../../types/blocksEnum"
|
|
import { sysAssetSchema } from "./sysAsset"
|
|
|
|
export const textContentSchema = z.object({
|
|
typename: z
|
|
.literal(BlocksEnums.block.TextContent)
|
|
.optional()
|
|
.default(BlocksEnums.block.TextContent),
|
|
text_content: z.object({
|
|
content: z.object({
|
|
json: z.any(),
|
|
embedded_itemsConnection: z.object({
|
|
edges: z.array(
|
|
z.object({
|
|
node: z.discriminatedUnion("__typename", [sysAssetSchema]),
|
|
})
|
|
),
|
|
totalCount: z.number(),
|
|
}),
|
|
}),
|
|
}),
|
|
})
|