Merged in feat/sw-2863-move-contentstack-router-to-trpc-package (pull request #2389)

feat(SW-2863): Move contentstack router to trpc package

* Add exports to packages and lint rule to prevent relative imports

* Add env to trpc package

* Add eslint to trpc package

* Apply lint rules

* Use direct imports from trpc package

* Add lint-staged config to trpc

* Move lang enum to common

* Restructure trpc package folder structure

* WIP first step

* update internal imports in trpc

* Fix most errors in scandic-web

Just 100 left...

* Move Props type out of trpc

* Fix CategorizedFilters types

* Move more schemas in hotel router

* Fix deps

* fix getNonContentstackUrls

* Fix import error

* Fix entry error handling

* Fix generateMetadata metrics

* Fix alertType enum

* Fix duplicated types

* lint:fix

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package

* Fix broken imports

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package


Approved-by: Linus Flood
This commit is contained in:
Anton Gunnarsson
2025-06-26 07:53:01 +00:00
parent 0263ab8c87
commit 002d093af4
921 changed files with 3112 additions and 3008 deletions
@@ -0,0 +1,41 @@
#import "../../Fragments/System.graphql"
query GetDestinationCityListData($locale: String!, $cityIdentifier: String!) {
all_destination_city_page(
where: {
OR: [
{ destination_settings: { city_denmark: $cityIdentifier } }
{ destination_settings: { city_finland: $cityIdentifier } }
{ destination_settings: { city_germany: $cityIdentifier } }
{ destination_settings: { city_norway: $cityIdentifier } }
{ destination_settings: { city_poland: $cityIdentifier } }
{ destination_settings: { city_sweden: $cityIdentifier } }
]
}
locale: $locale
) {
items {
heading
destination_settings {
city_denmark
city_finland
city_germany
city_norway
city_poland
city_sweden
}
sort_order
preamble
images {
image
}
experiences {
destination_experiences
}
url
system {
...System
}
}
}
}
@@ -0,0 +1,162 @@
#import "../../Fragments/System.graphql"
#import "../../Fragments/Blocks/Accordion.graphql"
#import "../../Fragments/Blocks/Content.graphql"
#import "../../Fragments/PageLink/AccountPageLink.graphql"
#import "../../Fragments/PageLink/CampaignPageLink.graphql"
#import "../../Fragments/PageLink/CollectionPageLink.graphql"
#import "../../Fragments/PageLink/ContentPageLink.graphql"
#import "../../Fragments/PageLink/DestinationCityPageLink.graphql"
#import "../../Fragments/PageLink/DestinationCountryPageLink.graphql"
#import "../../Fragments/PageLink/DestinationOverviewPageLink.graphql"
#import "../../Fragments/PageLink/HotelPageLink.graphql"
#import "../../Fragments/PageLink/LoyaltyPageLink.graphql"
#import "../../Fragments/PageLink/StartPageLink.graphql"
#import "../../Fragments/AccountPage/Ref.graphql"
#import "../../Fragments/CampaignPage/Ref.graphql"
#import "../../Fragments/CollectionPage/Ref.graphql"
#import "../../Fragments/ContentPage/Ref.graphql"
#import "../../Fragments/DestinationCityPage/Ref.graphql"
#import "../../Fragments/DestinationCountryPage/Ref.graphql"
#import "../../Fragments/DestinationOverviewPage/Ref.graphql"
#import "../../Fragments/HotelPage/Ref.graphql"
#import "../../Fragments/LoyaltyPage/Ref.graphql"
#import "../../Fragments/StartPage/Ref.graphql"
query GetDestinationCityPage($locale: String!, $uid: String!) {
destination_city_page(uid: $uid, locale: $locale) {
title
destination_settings {
city_denmark
city_finland
city_germany
city_norway
city_poland
city_sweden
location {
longitude
latitude
default_zoom
}
}
heading
preamble
experiences {
destination_experiences
}
images {
image
}
has_sidepeek
sidepeek_button_text
sidepeek_content {
heading
content {
embedded_itemsConnection {
edges {
node {
__typename
...AccountPageLink
...CampaignPageLink
...CollectionPageLink
...ContentPageLink
...DestinationCityPageLink
...DestinationCountryPageLink
...DestinationOverviewPageLink
...HotelPageLink
...LoyaltyPageLink
...StartPageLink
}
}
}
json
}
}
blocks {
__typename
...Accordion_DestinationCityPage
...Content_DestinationCityPage
}
system {
...System
created_at
updated_at
}
}
trackingProps: destination_city_page(locale: "en", uid: $uid) {
url
}
}
query GetDestinationCityPageRefs($locale: String!, $uid: String!) {
destination_city_page(locale: $locale, uid: $uid) {
destination_settings {
city_denmark
city_finland
city_germany
city_norway
city_poland
city_sweden
location {
longitude
latitude
default_zoom
}
}
sidepeek_content {
content {
embedded_itemsConnection {
edges {
node {
__typename
...AccountPageRef
...CampaignPageRef
...CollectionPageRef
...ContentPageRef
...DestinationCityPageRef
...DestinationCountryPageRef
...DestinationOverviewPageRef
...HotelPageRef
...LoyaltyPageRef
...StartPageRef
}
}
}
}
}
blocks {
__typename
...Accordion_DestinationCityPageRefs
...Content_DestinationCityPageRefs
}
system {
...System
}
}
}
query GetDaDeEnUrlsDestinationCityPage($uid: String!) {
de: destination_city_page(locale: "de", uid: $uid) {
url
}
en: destination_city_page(locale: "en", uid: $uid) {
url
}
da: destination_city_page(locale: "da", uid: $uid) {
url
}
}
query GetFiNoSvUrlsDestinationCityPage($uid: String!) {
fi: destination_city_page(locale: "fi", uid: $uid) {
url
}
no: destination_city_page(locale: "no", uid: $uid) {
url
}
sv: destination_city_page(locale: "sv", uid: $uid) {
url
}
}
@@ -0,0 +1,7 @@
#import "../../Fragments/System.graphql"
query GetCityPageCount($locale: String!) {
all_destination_city_page(locale: $locale) {
total
}
}
@@ -0,0 +1,20 @@
#import "../../Fragments/System.graphql"
query GetCityPageUrls($locale: String!, $skip: Int) {
all_destination_city_page(locale: $locale, limit: 100, skip: $skip) {
items {
url
destination_settings {
city_denmark
city_finland
city_germany
city_norway
city_poland
city_sweden
}
system {
...System
}
}
}
}
@@ -0,0 +1,29 @@
#import "../../Fragments/Metadata.graphql"
#import "../../Fragments/System.graphql"
query GetDestinationCityPageMetadata($locale: String!, $uid: String!) {
destination_city_page(locale: $locale, uid: $uid) {
web {
breadcrumbs {
title
}
seo_metadata {
...Metadata
}
}
destination_settings {
city_denmark
city_finland
city_germany
city_norway
city_poland
city_sweden
}
images {
image
}
system {
...System
}
}
}