feat(SW-1712): Preperation to accept multiple different icon identifiers for filters on startpage and destination overview page

Approved-by: Fredrik Thorsson
Approved-by: Matilda Landström
This commit is contained in:
Erik Tiekstra
2025-03-17 08:58:29 +00:00
parent c99060363c
commit aca3c7f398
3 changed files with 5 additions and 22 deletions

View File

@@ -9,10 +9,6 @@ import { buttonSchema } from "./utils/buttonLinkSchema"
import { linkConnectionRefsSchema } from "./utils/linkConnection"
import { BlocksEnums } from "@/types/enums/blocks"
import {
type CardGalleryFilter,
CardGalleryFilterEnum,
} from "@/types/enums/cardGallery"
export const cardGallerySchema = z.object({
typename: z
@@ -25,7 +21,7 @@ export const cardGallerySchema = z.object({
link: buttonSchema.optional(),
card_groups: z.array(
z.object({
filter_identifier: z.nativeEnum(CardGalleryFilterEnum),
filter_identifier: z.string(),
filter_label: z.string(),
cardsConnection: z.object({
edges: z.array(z.object({ node: contentCardSchema })),
@@ -35,10 +31,7 @@ export const cardGallerySchema = z.object({
})
.transform((data) => {
const filterCategories = data.card_groups.reduce<
Array<{
identifier: CardGalleryFilter
label: string
}>
Array<{ identifier: string; label: string }>
>((acc, group) => {
const identifier = group.filter_identifier
if (!acc.some((category) => category.identifier === identifier)) {