Merged in feat/rework-contentstack (pull request #3493)

Feat(SW-3708): refactor contentstack fetching (removing all refs) and cache invalidation

* Remove all REFS

* Revalidate correct language

* PR fixes

* PR fixes

* Throw when errors from contentstack api


Approved-by: Joakim Jäderberg
This commit is contained in:
Linus Flood
2026-01-27 12:38:36 +00:00
parent a5e214f783
commit 5fc93472f4
193 changed files with 489 additions and 9018 deletions

View File

@@ -1,78 +1,27 @@
import { gql } from "graphql-tag"
import {
Accordion_ContentPage,
Accordion_ContentPageRefs,
} from "../../Fragments/Blocks/Accordion.graphql"
import {
CardsGrid_ContentPage,
CardsGrid_ContentPageRefs,
} from "../../Fragments/Blocks/CardsGrid.graphql"
import {
Content_ContentPage,
Content_ContentPageRefs,
} from "../../Fragments/Blocks/Content.graphql"
import {
DynamicContent_ContentPage,
DynamicContent_ContentPageRefs,
} from "../../Fragments/Blocks/DynamicContent.graphql"
import { Accordion_ContentPage } from "../../Fragments/Blocks/Accordion.graphql"
import { CardsGrid_ContentPage } from "../../Fragments/Blocks/CardsGrid.graphql"
import { Content_ContentPage } from "../../Fragments/Blocks/Content.graphql"
import { DynamicContent_ContentPage } from "../../Fragments/Blocks/DynamicContent.graphql"
import { HotelListing_ContentPage } from "../../Fragments/Blocks/HotelListing.graphql"
import {
Jotform_ContentPage,
Jotform_ContentPageRefs,
} from "../../Fragments/Blocks/Jotform.graphql"
import {
Shortcuts_ContentPage,
Shortcuts_ContentPageRefs,
} from "../../Fragments/Blocks/Shortcuts.graphql"
import { Jotform_ContentPage } from "../../Fragments/Blocks/Jotform.graphql"
import { Shortcuts_ContentPage } from "../../Fragments/Blocks/Shortcuts.graphql"
import { Table_ContentPage } from "../../Fragments/Blocks/Table.graphql"
import {
TextCols_ContentPage,
TextCols_ContentPageRef,
} from "../../Fragments/Blocks/TextCols.graphql"
import {
UspGrid_ContentPage,
UspGrid_ContentPageRefs,
} from "../../Fragments/Blocks/UspGrid.graphql"
import {
Video_ContentPage,
Video_ContentPageRefs,
} from "../../Fragments/Blocks/Video.graphql"
import {
VideoCard_ContentPage,
VideoCard_ContentPageRefs,
} from "../../Fragments/Blocks/VideoCard.graphql"
import {
NavigationLinks_ContentPage,
NavigationLinksRef_ContentPage,
} from "../../Fragments/ContentPage/NavigationLinks.graphql"
import {
TopPrimaryButton_ContentPage,
TopPrimaryButtonRef_ContentPage,
} from "../../Fragments/ContentPage/TopPrimaryButton.graphql"
import {
ContentSidebar_ContentPage,
ContentSidebar_ContentPageRefs,
} from "../../Fragments/Sidebar/Content.graphql"
import { TextCols_ContentPage } from "../../Fragments/Blocks/TextCols.graphql"
import { UspGrid_ContentPage } from "../../Fragments/Blocks/UspGrid.graphql"
import { Video_ContentPage } from "../../Fragments/Blocks/Video.graphql"
import { VideoCard_ContentPage } from "../../Fragments/Blocks/VideoCard.graphql"
import { NavigationLinks_ContentPage } from "../../Fragments/ContentPage/NavigationLinks.graphql"
import { TopPrimaryButton_ContentPage } from "../../Fragments/ContentPage/TopPrimaryButton.graphql"
import { ContentSidebar_ContentPage } from "../../Fragments/Sidebar/Content.graphql"
import { DynamicContentSidebar_ContentPage } from "../../Fragments/Sidebar/DynamicContent.graphql"
import {
JoinLoyaltyContactSidebar_ContentPage,
JoinLoyaltyContactSidebar_ContentPageRefs,
} from "../../Fragments/Sidebar/JoinLoyaltyContact.graphql"
import {
QuickLinksSidebar_ContentPage,
QuickLinksSidebar_ContentPageRefs,
} from "../../Fragments/Sidebar/QuickLinks.graphql"
import {
ScriptedCardSidebar_ContentPage,
ScriptedCardSidebar_ContentPageRefs,
} from "../../Fragments/Sidebar/ScriptedCard.graphql"
import {
TeaserCardSidebar_ContentPage,
TeaserCardSidebar_ContentPageRefs,
} from "../../Fragments/Sidebar/TeaserCard.graphql"
import { JoinLoyaltyContactSidebar_ContentPage } from "../../Fragments/Sidebar/JoinLoyaltyContact.graphql"
import { QuickLinksSidebar_ContentPage } from "../../Fragments/Sidebar/QuickLinks.graphql"
import { ScriptedCardSidebar_ContentPage } from "../../Fragments/Sidebar/ScriptedCard.graphql"
import { TeaserCardSidebar_ContentPage } from "../../Fragments/Sidebar/TeaserCard.graphql"
import { System } from "../../Fragments/System.graphql"
import { Video, VideoRef } from "../../Fragments/Video.graphql"
import { Video } from "../../Fragments/Video.graphql"
export const GetContentPage = gql`
query GetContentPage($locale: String!, $uid: String!) {
@@ -173,73 +122,6 @@ export const GetContentPageBlocksBatch2 = gql`
${UspGrid_ContentPage}
`
export const GetContentPageRefs = gql`
query GetContentPageRefs($locale: String!, $uid: String!) {
content_page(locale: $locale, uid: $uid) {
hero_video {
...VideoRef
}
header {
dynamic_content {
component
}
...NavigationLinksRef_ContentPage
...TopPrimaryButtonRef_ContentPage
}
sidebar {
__typename
...ContentSidebar_ContentPageRefs
...JoinLoyaltyContactSidebar_ContentPageRefs
...ScriptedCardSidebar_ContentPageRefs
...TeaserCardSidebar_ContentPageRefs
...QuickLinksSidebar_ContentPageRefs
}
system {
...System
}
}
}
${System}
${NavigationLinksRef_ContentPage}
${TopPrimaryButtonRef_ContentPage}
${ContentSidebar_ContentPageRefs}
${JoinLoyaltyContactSidebar_ContentPageRefs}
${ScriptedCardSidebar_ContentPageRefs}
${TeaserCardSidebar_ContentPageRefs}
${QuickLinksSidebar_ContentPageRefs}
${VideoRef}
`
export const GetContentPageBlocksRefs = gql`
query GetContentPageBlocksRefs($locale: String!, $uid: String!) {
content_page(locale: $locale, uid: $uid) {
blocks {
__typename
...Accordion_ContentPageRefs
...CardsGrid_ContentPageRefs
...Content_ContentPageRefs
...DynamicContent_ContentPageRefs
...Shortcuts_ContentPageRefs
...TextCols_ContentPageRef
...UspGrid_ContentPageRefs
...Jotform_ContentPageRefs
...VideoCard_ContentPageRefs
...Video_ContentPageRefs
}
}
}
${Accordion_ContentPageRefs}
${CardsGrid_ContentPageRefs}
${Content_ContentPageRefs}
${DynamicContent_ContentPageRefs}
${Shortcuts_ContentPageRefs}
${TextCols_ContentPageRef}
${UspGrid_ContentPageRefs}
${Jotform_ContentPageRefs}
${VideoCard_ContentPageRefs}
${Video_ContentPageRefs}
`
export const GetDaDeEnUrlsContentPage = gql`
query GetDaDeEnUrlsContentPage($uid: String!) {
de: content_page(locale: "de", uid: $uid) {