Merged develop into feature/sw-352-page-loading

This commit is contained in:
Linus Flood
2024-09-04 07:26:17 +00:00
126 changed files with 2318 additions and 273 deletions

View File

@@ -5,9 +5,9 @@ import styles from "./layout.module.css"
export default async function MyPagesLayout({
breadcrumbs,
children,
}: React.PropsWithChildren & {
}: React.PropsWithChildren<{
breadcrumbs: React.ReactNode
}) {
}>) {
return (
<section className={styles.layout}>
{breadcrumbs}

View File

@@ -23,7 +23,7 @@ export default async function CreditCardSlot({ params }: PageArgs<LangParams>) {
<section className={styles.container}>
<article className={styles.content}>
<Subtitle type="two" color="black">
{formatMessage({ id: "My credit cards" })}
{formatMessage({ id: "My payment cards" })}
</Subtitle>
<Body color="black">
{formatMessage({

View File

@@ -0,0 +1 @@
export { default } from "../page"

View File

@@ -0,0 +1 @@
export { default } from "../../page"

View File

@@ -0,0 +1 @@
export { default } from "./page"

View File

@@ -0,0 +1 @@
export { default } from "../../page"

View File

@@ -0,0 +1,18 @@
import { serverClient } from "@/lib/trpc/server"
import BookingWidget from "@/components/BookingWidget"
import { getLang } from "@/i18n/serverContext"
export default async function BookingWidgetPage() {
// Get the booking widget show/hide status based on page specific settings
const bookingWidgetToggle =
await serverClient().contentstack.bookingwidget.getToggle()
return (
<>
{bookingWidgetToggle && bookingWidgetToggle.hideBookingWidget ? null : (
<BookingWidget />
)}
</>
)
}

View File

@@ -1,9 +0,0 @@
"use client"
import { baseUrls } from "@/constants/routes/baseUrls"
import LanguageSwitcher from "@/components/Current/Header/LanguageSwitcher"
export default function Error() {
return <LanguageSwitcher urls={baseUrls} />
}

View File

@@ -1,18 +0,0 @@
import { serverClient } from "@/lib/trpc/server"
import LanguageSwitcher from "@/components/Current/Header/LanguageSwitcher"
import { setLang } from "@/i18n/serverContext"
import { LangParams, PageArgs } from "@/types/params"
export default async function LanguageSwitcherRoute({
params,
}: PageArgs<LangParams>) {
setLang(params.lang)
const data = await serverClient().contentstack.languageSwitcher.get()
if (!data) {
return null
}
return <LanguageSwitcher urls={data.urls} />
}

View File

@@ -1,15 +0,0 @@
import { serverClient } from "@/lib/trpc/server"
import MyPagesMobileDropdown from "@/components/Current/Header/MyPagesMobileDropdown"
import { setLang } from "@/i18n/serverContext"
import { LangParams, PageArgs } from "@/types/params"
export default async function MyPagesMobileDropdownPage({
params,
}: PageArgs<LangParams>) {
setLang(params.lang)
const navigation = await serverClient().contentstack.myPages.navigation.get()
if (!navigation) return null
return <MyPagesMobileDropdown navigation={navigation} />
}

View File

@@ -1,21 +0,0 @@
import Header from "@/components/Current/Header"
import { setLang } from "@/i18n/serverContext"
import type { LangParams, LayoutArgs } from "@/types/params"
export default function HeaderLayout({
languageSwitcher,
myPagesMobileDropdown,
params,
}: LayoutArgs<LangParams> & {
languageSwitcher: React.ReactNode
myPagesMobileDropdown: React.ReactNode
}) {
setLang(params.lang)
return (
<Header
myPagesMobileDropdown={myPagesMobileDropdown}
languageSwitcher={languageSwitcher}
/>
)
}

View File

@@ -1,8 +1 @@
import { setLang } from "@/i18n/serverContext"
import type { LangParams, PageArgs } from "@/types/params"
export default function EmptyHeaderPage({ params }: PageArgs<LangParams>) {
setLang(params.lang)
return null
}
export { default } from "../page"

View File

@@ -1,9 +1,4 @@
import { baseUrls } from "@/constants/routes/baseUrls"
import { serverClient } from "@/lib/trpc/server"
import Header from "@/components/Current/Header"
import LanguageSwitcher from "@/components/Current/Header/LanguageSwitcher"
import MyPagesMobileDropdown from "@/components/Current/Header/MyPagesMobileDropdown"
import Header from "@/components/Header"
import { setLang } from "@/i18n/serverContext"
import { LangParams, PageArgs } from "@/types/params"
@@ -11,11 +6,5 @@ import { LangParams, PageArgs } from "@/types/params"
export default async function HeaderPage({ params }: PageArgs<LangParams>) {
setLang(params.lang)
const navigation = await serverClient().contentstack.myPages.navigation.get()
return (
<Header
myPagesMobileDropdown={<MyPagesMobileDropdown navigation={navigation} />}
languageSwitcher={<LanguageSwitcher urls={baseUrls} />}
/>
)
return <Header />
}

View File

@@ -21,9 +21,11 @@ export default async function RootLayout({
children,
params,
header,
bookingwidget,
}: React.PropsWithChildren<
LayoutArgs<LangParams> & {
header: React.ReactNode
bookingwidget: React.ReactNode
}
>) {
setLang(params.lang)
@@ -52,6 +54,7 @@ export default async function RootLayout({
<ServerIntlProvider intl={{ defaultLocale, locale, messages }}>
<TrpcProvider>
{header}
{bookingwidget}
{children}
<ToastHandler />
<Footer />

View File

@@ -4,6 +4,7 @@ import "@scandic-hotels/design-system/style.css"
import Script from "next/script"
import TokenRefresher from "@/components/Auth/TokenRefresher"
import BookingWidget from "@/components/BookingWidget"
import AdobeScript from "@/components/Current/AdobeScript"
import Footer from "@/components/Current/Footer"
import Header from "@/components/Current/Header"
@@ -71,6 +72,7 @@ export default async function RootLayout({
myPagesMobileDropdown={myPagesMobileDropdown}
languageSwitcher={languageSwitcher}
/>
<BookingWidget />
{children}
<Footer />
<TokenRefresher />