* 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
173 lines
3.5 KiB
GraphQL
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
|
|
}
|
|
}
|