feat(SW-1269): added dynamic content to collection page

This commit is contained in:
Erik Tiekstra
2025-01-13 13:12:52 +01:00
parent 72301df4e7
commit 5018cba623
10 changed files with 83 additions and 48 deletions

View File

@@ -6,6 +6,10 @@ import {
cardGridRefsSchema,
cardsGridSchema,
} from "../schemas/blocks/cardsGrid"
import {
dynamicContentRefsSchema,
dynamicContentSchema as blockDynamicContentSchema,
} from "../schemas/blocks/dynamicContent"
import {
shortcutsRefsSchema,
shortcutsSchema,
@@ -39,8 +43,17 @@ export const collectionPageUspGrid = z
})
.merge(uspGridSchema)
export const collectionPageDynamicContent = z
.object({
__typename: z.literal(
CollectionPageEnum.ContentStack.blocks.DynamicContent
),
})
.merge(blockDynamicContentSchema)
export const blocksSchema = z.discriminatedUnion("__typename", [
collectionPageCards,
collectionPageDynamicContent,
collectionPageShortcuts,
collectionPageUspGrid,
])
@@ -103,8 +116,17 @@ const collectionPageUspGridRefs = z
})
.merge(uspGridRefsSchema)
const contentPageDynamicContentRefs = z
.object({
__typename: z.literal(
CollectionPageEnum.ContentStack.blocks.DynamicContent
),
})
.merge(dynamicContentRefsSchema)
const collectionPageBlockRefsItem = z.discriminatedUnion("__typename", [
collectionPageShortcutsRefs,
contentPageDynamicContentRefs,
collectionPageCardsRefs,
collectionPageUspGridRefs,
])