feat(SW-2278): Added hotel listing to campaign page

Approved-by: Matilda Landström
This commit is contained in:
Erik Tiekstra
2025-06-19 09:36:28 +00:00
parent 105c4d9cf3
commit af92f7183c
31 changed files with 703 additions and 57 deletions

View File

@@ -7,7 +7,8 @@ export namespace BlocksEnums {
Content = "Content",
DynamicContent = "DynamicContent",
FullWidthCampaign = "FullWidthCampaign",
HotelListing = "HotelListing",
CampaignPageHotelListing = "CampaignPageHotelListing",
ContentPageHotelListing = "ContentPageHotelListing",
JoinScandicFriends = "JoinScandicFriends",
Shortcuts = "Shortcuts",
Table = "Table",

View File

@@ -4,6 +4,7 @@ export namespace CampaignPageEnum {
Essentials = "CampaignPageBlocksEssentials",
CarouselCards = "CampaignPageBlocksCarouselCards",
Accordion = "CampaignPageBlocksAccordion",
HotelListing = "CampaignPageBlocksHotelListing",
}
}
}

View File

@@ -6,7 +6,7 @@ import type { cardsGridSchema } from "@/server/routers/contentstack/schemas/bloc
import type { carouselCardsSchema } from "@/server/routers/contentstack/schemas/blocks/carouselCards"
import type { contentSchema } from "@/server/routers/contentstack/schemas/blocks/content"
import type { dynamicContentSchema } from "@/server/routers/contentstack/schemas/blocks/dynamicContent"
import type { hotelListingSchema } from "@/server/routers/contentstack/schemas/blocks/hotelListing"
import type { contentPageHotelListingSchema } from "@/server/routers/contentstack/schemas/blocks/hotelListing"
import type { shortcutsSchema } from "@/server/routers/contentstack/schemas/blocks/shortcuts"
import type { tableSchema } from "@/server/routers/contentstack/schemas/blocks/table"
import type { textColsSchema } from "@/server/routers/contentstack/schemas/blocks/textCols"
@@ -22,7 +22,8 @@ export interface TableBlock extends z.output<typeof tableSchema> {}
export type TableData = TableBlock["table"]
export interface TextCols extends z.output<typeof textColsSchema> {}
export interface UspGrid extends z.output<typeof uspGridSchema> {}
interface GetHotelListing extends z.output<typeof hotelListingSchema> {}
interface GetHotelListing
extends z.output<typeof contentPageHotelListingSchema> {}
export type HotelListing = GetHotelListing["hotel_listing"]
export interface CarouselCards extends z.output<typeof carouselCardsSchema> {}
export interface CardGallery extends z.output<typeof cardGallerySchema> {}

View File

@@ -1,7 +1,6 @@
import type { z } from "zod"
import type {
blocksSchema,
campaignPageRefsSchema,
campaignPageSchema,
heroSchema,
@@ -19,7 +18,7 @@ export interface GetCampaignPageRefsData
export interface CampaignPageRefs
extends z.output<typeof campaignPageRefsSchema> {}
export type Block = z.output<typeof blocksSchema>
export type Block = CampaignPageData["blocks"][number]
export type EssentialsBlock = z.output<typeof essentialsSchema>["essentials"]