Removed use server in NavigationMenu

This commit is contained in:
Linus Flood
2024-09-19 09:59:25 +02:00
parent 01aafc347d
commit 4649799f2b
4 changed files with 15 additions and 9 deletions

View File

@@ -11,14 +11,17 @@ import LanguageSwitcher from "@/components/LanguageSwitcher"
import { useHandleKeyUp } from "@/hooks/useHandleKeyUp" import { useHandleKeyUp } from "@/hooks/useHandleKeyUp"
import HeaderLink from "../../HeaderLink" import HeaderLink from "../../HeaderLink"
import NavigationMenu from "../NavigationMenu"
import styles from "./mobileMenu.module.css" import styles from "./mobileMenu.module.css"
import { DropdownTypeEnum } from "@/types/components/dropdown/dropdown" import { DropdownTypeEnum } from "@/types/components/dropdown/dropdown"
import type { MobileMenuProps } from "@/types/components/header/mobileMenu" import type { MobileMenuProps } from "@/types/components/header/mobileMenu"
export default function MobileMenu({ languageUrls, topLink }: MobileMenuProps) { export default function MobileMenu({
children,
languageUrls,
topLink,
}: React.PropsWithChildren<MobileMenuProps>) {
const intl = useIntl() const intl = useIntl()
const { const {
handleHamburgerClick, handleHamburgerClick,
@@ -62,9 +65,7 @@ export default function MobileMenu({ languageUrls, topLink }: MobileMenuProps) {
className={styles.dialog} className={styles.dialog}
aria-label={intl.formatMessage({ id: "Menu" })} aria-label={intl.formatMessage({ id: "Menu" })}
> >
<Suspense fallback={"Loading nav"}> <Suspense fallback={"Loading nav"}>{children}</Suspense>
<NavigationMenu isMobile={true} />
</Suspense>
<footer className={styles.footer}> <footer className={styles.footer}>
<HeaderLink href="#"> <HeaderLink href="#">
<SearchIcon width={20} height={20} color="burgundy" /> <SearchIcon width={20} height={20} color="burgundy" />

View File

@@ -2,7 +2,9 @@ import { serverClient } from "@/lib/trpc/server"
import MobileMenu from "../MobileMenu" import MobileMenu from "../MobileMenu"
export default async function MobileMenuWrapper() { export default async function MobileMenuWrapper({
children,
}: React.PropsWithChildren) {
const [languages, headerData] = await Promise.all([ const [languages, headerData] = await Promise.all([
serverClient().contentstack.languageSwitcher.get(), serverClient().contentstack.languageSwitcher.get(),
serverClient().contentstack.base.header(), serverClient().contentstack.base.header(),
@@ -13,6 +15,8 @@ export default async function MobileMenuWrapper() {
} }
return ( return (
<MobileMenu languageUrls={languages.urls} topLink={headerData?.topLink} /> <MobileMenu languageUrls={languages.urls} topLink={headerData?.topLink}>
{children}
</MobileMenu>
) )
} }

View File

@@ -1,4 +1,3 @@
"use server"
import { serverClient } from "@/lib/trpc/server" import { serverClient } from "@/lib/trpc/server"
import NavigationMenuList from "./NavigationMenuList" import NavigationMenuList from "./NavigationMenuList"

View File

@@ -39,7 +39,9 @@ export default async function MainMenu() {
<MyPagesMenuWrapper /> <MyPagesMenuWrapper />
</Suspense> </Suspense>
<Suspense fallback={"Loading menu"}> <Suspense fallback={"Loading menu"}>
<MobileMenuWrapper /> <MobileMenuWrapper>
<NavigationMenu isMobile={true} />
</MobileMenuWrapper>
</Suspense> </Suspense>
</div> </div>
</nav> </nav>