Merged in feat/support-for-all-page-links (pull request #1212)

Feat/support for all page links

* feat: added all page link connections to queries

* feat: updated output files


Approved-by: Fredrik Thorsson
Approved-by: Matilda Landström
This commit is contained in:
Erik Tiekstra
2025-01-27 11:21:37 +00:00
parent 527e691157
commit bf76c6277f
51 changed files with 1080 additions and 590 deletions

View File

@@ -8,7 +8,12 @@ import {
transformCardBlock,
transformCardBlockRefs,
} from "@/server/routers/contentstack/schemas/blocks/cardsGrid"
import * as pageLinks from "@/server/routers/contentstack/schemas/pageLinks"
import {
linkRefsUnionSchema,
linkUnionSchema,
transformPageLink,
transformPageLinkRef,
} from "@/server/routers/contentstack/schemas/pageLinks"
import { removeMultipleSlashes } from "@/utils/url"
@@ -455,14 +460,6 @@ export const validateFooterRefConfigSchema = z.object({
* New Header Validation
*/
const linkRefsUnionSchema = z.discriminatedUnion("__typename", [
pageLinks.contentPageRefSchema,
pageLinks.hotelPageRefSchema,
pageLinks.loyaltyPageRefSchema,
pageLinks.accountPageRefSchema,
pageLinks.collectionPageRefSchema,
])
const linkRefsSchema = z
.object({
linkConnection: z.object({
@@ -475,7 +472,7 @@ const linkRefsSchema = z
})
.transform((data) => {
if (data.linkConnection.edges.length) {
const link = pageLinks.transformRef(data.linkConnection.edges[0].node)
const link = transformPageLinkRef(data.linkConnection.edges[0].node)
if (link) {
return {
link,
@@ -554,14 +551,6 @@ export const headerRefsSchema = z
}
})
const linkUnionSchema = z.discriminatedUnion("__typename", [
pageLinks.accountPageSchema,
pageLinks.contentPageSchema,
pageLinks.hotelPageSchema,
pageLinks.loyaltyPageSchema,
pageLinks.collectionPageSchema,
])
const linkSchema = z
.object({
linkConnection: z.object({
@@ -576,7 +565,7 @@ const linkSchema = z
if (data.linkConnection.edges.length) {
const linkNode = data.linkConnection.edges[0].node
if (linkNode) {
const link = pageLinks.transform(linkNode)
const link = transformPageLink(linkNode)
if (link) {
return {
link,
@@ -729,21 +718,13 @@ export const alertSchema = z
embedded_itemsConnection: z.object({
edges: z.array(
z.object({
node: z
.discriminatedUnion("__typename", [
pageLinks.accountPageSchema,
pageLinks.contentPageSchema,
pageLinks.hotelPageSchema,
pageLinks.loyaltyPageSchema,
pageLinks.collectionPageSchema,
])
.transform((data) => {
const link = pageLinks.transform(data)
if (link) {
return link
}
return data
}),
node: linkUnionSchema.transform((data) => {
const link = transformPageLink(data)
if (link) {
return link
}
return data
}),
})
),
}),
@@ -834,13 +815,7 @@ const sidepeekContentRefSchema = z.object({
embedded_itemsConnection: z.object({
edges: z.array(
z.object({
node: z.discriminatedUnion("__typename", [
pageLinks.accountPageRefSchema,
pageLinks.contentPageRefSchema,
pageLinks.hotelPageRefSchema,
pageLinks.loyaltyPageRefSchema,
pageLinks.collectionPageRefSchema,
]),
node: linkRefsUnionSchema,
})
),
}),