Files
web/packages/trpc/lib/graphql/Query/HotelPage/HotelPage.graphql
Erik Tiekstra 2064732e56 Feat/SW-3028 hotel page campaigns
* feat(SW-3028): Added query and typings to fetch campaigns by hotelUid
* feat(SW-3028): Added components for campaigns to the hotel page
* feat(SW-3028): Implemented prioritized campaigns list
* chore(SW-3028): Refactor how campaigns are fetched on hotel pages
* feat(SW-3028): Added offers/campaigns to tab navigation

Approved-by: Matilda Landström
2025-08-21 13:00:34 +00:00

173 lines
3.5 KiB
GraphQL

#import "../../Fragments/PageLink/CollectionPageLink.graphql"
#import "../../Fragments/PageLink/ContentPageLink.graphql"
#import "../../Fragments/AccountPage/Ref.graphql"
#import "../../Fragments/CollectionPage/Ref.graphql"
#import "../../Fragments/ContentPage/Ref.graphql"
#import "../../Fragments/Blocks/Accordion.graphql"
#import "../../Fragments/Blocks/Refs/Accordion.graphql"
query GetHotelPage($locale: String!, $uid: String!) {
hotel_page(locale: $locale, uid: $uid) {
hotel_page_id
title
url
hotel_navigation {
overview
rooms
restaurant_bar
conferences_meetings
health_wellness
activities
offers
faq
}
campaigns {
heading
preamble
prioritized_campaignsConnection {
edges {
node {
... on CampaignPage {
system {
uid
}
}
}
}
}
}
faq {
__typename
title
global_faqConnection {
__typename
edges {
node {
...AccordionBlock
}
}
}
specific_faq {
__typename
...GlobalAccordionBlock
}
}
content {
__typename
... on HotelPageContentUpcomingActivitiesCard {
upcoming_activities_card {
background_image
cta_text
sidepeek_cta_text
heading
body_text
scripted_title
sidepeek_slug
hotel_page_activities_content_pageConnection {
edges {
node {
__typename
... on ContentPage {
...ContentPageLink
header {
preamble
}
}
... on CollectionPage {
...CollectionPageLink
header {
preamble
}
}
}
}
}
}
}
... on HotelPageContentSpaPage {
spa_page {
button_cta
pageConnection {
edges {
node {
...CollectionPageLink
...ContentPageLink
}
}
}
}
}
}
system {
...System
created_at
updated_at
}
}
}
query GetHotelPageRefs($locale: String!, $uid: String!) {
hotel_page(locale: $locale, uid: $uid) {
faq {
global_faqConnection {
edges {
node {
...AccordionBlockRefs
}
}
}
specific_faq {
...GlobalAccordionBlockRefs
}
}
content {
__typename
... on HotelPageContentUpcomingActivitiesCard {
upcoming_activities_card {
hotel_page_activities_content_pageConnection {
edges {
node {
__typename
...CollectionPageRef
...ContentPageRef
}
}
}
}
}
}
system {
...System
}
}
trackingProps: hotel_page(locale: "en", uid: $uid) {
url
}
}
query GetDaDeEnUrlsHotelPage($uid: String!) {
de: hotel_page(locale: "de", uid: $uid) {
url
}
en: hotel_page(locale: "en", uid: $uid) {
url
}
da: hotel_page(locale: "da", uid: $uid) {
url
}
}
query GetFiNoSvUrlsHotelPage($uid: String!) {
fi: hotel_page(locale: "fi", uid: $uid) {
url
}
no: hotel_page(locale: "no", uid: $uid) {
url
}
sv: hotel_page(locale: "sv", uid: $uid) {
url
}
}