Files
web/apps/scandic-web/components/Breadcrumbs/index.tsx
Erik Tiekstra 333636c81a Merged in feat/BOOK-61-refactor-hotel-page-css-variables (pull request #3014)
Feat/BOOK-61 refactor hotel page css variables

* feat(BOOK-61): Breadcrumbs

* feat(BOOK-61): intro section

* feat(BOOK-61): show more button

* feat(BOOK-61): rooms section

* feat(BOOK-61): sidepeeks

* feat(BOOK-61): deprecated old Link component

* feat(BOOK-61): added new TextLink component to the design-system

* feat(BOOK-61): replaced deprecated links with new TextLink component

* feat(BOOK-61): miscellaneous changes


Approved-by: Bianca Widstam
Approved-by: Christel Westerberg
2025-10-29 09:15:03 +00:00

37 lines
1018 B
TypeScript

import { serverClient } from "@/lib/trpc/server"
import BreadcrumbsComp from "@/components/TempDesignSystem/Breadcrumbs"
import { generateBreadcrumbsSchema } from "@/utils/jsonSchemas"
import type { BreadcrumbsProps } from "@/components/TempDesignSystem/Breadcrumbs/breadcrumbs"
interface Props extends Omit<BreadcrumbsProps, "breadcrumbs"> {
subpageTitle?: string
}
export default async function Breadcrumbs({ subpageTitle, ...props }: Props) {
const caller = await serverClient()
const breadcrumbs = await caller.contentstack.breadcrumbs.get()
if (!breadcrumbs?.length) {
return null
}
if (subpageTitle) {
breadcrumbs.push({ title: subpageTitle, uid: subpageTitle, href: "" })
}
const jsonSchema = generateBreadcrumbsSchema(breadcrumbs)
return (
<>
<script
type={jsonSchema.type}
dangerouslySetInnerHTML={{
__html: JSON.stringify(jsonSchema.jsonLd),
}}
/>
<BreadcrumbsComp breadcrumbs={breadcrumbs} {...props} />
</>
)
}