feat: pass in navigation from server components
This commit is contained in:
committed by
Michael Zetterberg
parent
da1f142b57
commit
e92b6cc27d
@@ -5,6 +5,9 @@ import MyPagesMobileDropdown from "@/components/Current/Header/MyPagesMobileDrop
|
||||
|
||||
export default async function MyPagesMobileDropdownPage() {
|
||||
// TODO: Figure out how to pass down props at the paralell route level.
|
||||
// - POssibly by parsing [...paths]
|
||||
return <MyPagesMobileDropdown lang={null} />
|
||||
// - Possibly by parsing [...paths]
|
||||
|
||||
const navigation = await serverClient().contentstack.myPages.navigation.get()
|
||||
if (!navigation) return null
|
||||
return <MyPagesMobileDropdown navigation={navigation} lang={null} />
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
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"
|
||||
@@ -7,10 +8,13 @@ import MyPagesMobileDropdown from "@/components/Current/Header/MyPagesMobileDrop
|
||||
import { LangParams, PageArgs } from "@/types/params"
|
||||
|
||||
export default async function HeaderPage({ params }: PageArgs<LangParams>) {
|
||||
const navigation = await serverClient().contentstack.myPages.navigation.get()
|
||||
return (
|
||||
<Header
|
||||
lang={params.lang}
|
||||
myPagesMobileDropdown={<MyPagesMobileDropdown lang={params.lang} />}
|
||||
myPagesMobileDropdown={
|
||||
<MyPagesMobileDropdown navigation={navigation} lang={params.lang} />
|
||||
}
|
||||
languageSwitcher={<LanguageSwitcher urls={baseUrls} lang={params.lang} />}
|
||||
/>
|
||||
)
|
||||
|
||||
@@ -3,10 +3,13 @@ import { serverClient } from "@/lib/trpc/server"
|
||||
import MyPagesMobileDropdown from "@/components/Current/Header/MyPagesMobileDropdown"
|
||||
|
||||
export default async function MyPagesMobileDropdownPage() {
|
||||
// TODO: Dirty way to get lang value. Figure out a proper way.
|
||||
const data = await serverClient().contentstack.languageSwitcher.get()
|
||||
if (!data) {
|
||||
// TODO: Remove data call and pass down props at the paralell route level.
|
||||
const [data, navigation] = await Promise.all([
|
||||
serverClient().contentstack.languageSwitcher.get(),
|
||||
serverClient().contentstack.myPages.navigation.get(),
|
||||
])
|
||||
if (!data || !navigation) {
|
||||
return null
|
||||
}
|
||||
return <MyPagesMobileDropdown lang={data.lang} />
|
||||
return <MyPagesMobileDropdown navigation={navigation} lang={null} />
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user