Files
web/components/Breadcrumbs/index.tsx
Erik Tiekstra 68f4a5b86d Merged in feat/SW-1199-subpage-breadcrumbs (pull request #1254)
feat(SW-1199): Added breadcrumbs to subpages

* feat(SW-1199): Added breadcrumbs to subpages


Approved-by: Fredrik Thorsson
Approved-by: Matilda Landström
2025-02-05 09:53:07 +00:00

35 lines
953 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"
export default async function Breadcrumbs({
variant,
subpageTitle,
}: Pick<BreadcrumbsProps, "variant" | "subpageTitle">) {
const breadcrumbs = await serverClient().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} variant={variant} />
</>
)
}