diff --git a/app/[lang]/(live)/@header/page.tsx b/app/[lang]/(live)/@header/page.tsx index 9d777ffef..51e91035d 100644 --- a/app/[lang]/(live)/@header/page.tsx +++ b/app/[lang]/(live)/@header/page.tsx @@ -1,6 +1,9 @@ +import { Suspense } from "react" + import { env } from "@/env/server" import CurrentHeader from "@/components/Current/Header" +import HeaderFallback from "@/components/Current/Header/HeaderFallback" import Header from "@/components/Header" import { setLang } from "@/i18n/serverContext" @@ -10,7 +13,11 @@ export default function HeaderPage({ params }: PageArgs) { setLang(params.lang) if (env.HIDE_FOR_NEXT_RELEASE) { - return + return ( + }> + + + ) } return
diff --git a/components/Current/Header/HeaderFallback/index.tsx b/components/Current/Header/HeaderFallback/index.tsx new file mode 100644 index 000000000..fa730718d --- /dev/null +++ b/components/Current/Header/HeaderFallback/index.tsx @@ -0,0 +1,53 @@ +import { homeHrefs } from "@/constants/homeHrefs" +import { env } from "@/env/server" +import { serverClient } from "@/lib/trpc/server" + +import { getLang } from "@/i18n/serverContext" + +import { MainMenu } from "../MainMenu" +import OfflineBanner from "../OfflineBanner" +import TopMenu from "../TopMenu" + +import styles from "../header.module.css" + +export default async function HeaderFallback() { + const [data] = await Promise.all([ + serverClient().contentstack.base.currentHeader({ + lang: getLang(), + }), + ]) + + if (!data) { + return null + } + + const homeHref = homeHrefs[env.NODE_ENV][getLang()] + const { frontpage_link_text, logo, menu, top_menu } = data + + const topMenuMobileLinks = top_menu.links + .filter((link) => link.show_on_mobile) + .sort((a, b) => (a.sort_order_mobile < b.sort_order_mobile ? 1 : -1)) + + return ( +
+ + + +
+ ) +}