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
This commit is contained in:
Erik Tiekstra
2025-02-05 09:53:07 +00:00
parent b85a3a57ec
commit 68f4a5b86d
13 changed files with 24 additions and 6 deletions

View File

@@ -7,12 +7,17 @@ import type { BreadcrumbsProps } from "@/components/TempDesignSystem/Breadcrumbs
export default async function Breadcrumbs({
variant,
}: Pick<BreadcrumbsProps, "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 (

View File

@@ -48,7 +48,10 @@ export default async function HotelSubpage({
<section className={styles.hotelSubpage}>
<div className={styles.header}>
<Suspense fallback={<BreadcrumbsSkeleton />}>
<Breadcrumbs variant="hotelSubpage" />
<Breadcrumbs
variant="hotelSubpage"
subpageTitle={pageData.heading}
/>
</Suspense>
{pageData.heroImage && (
<div className={styles.heroWrapper}>

View File

@@ -10,5 +10,6 @@ type Breadcrumb = {
export interface BreadcrumbsProps
extends VariantProps<typeof breadcrumbsVariants> {
subpageTitle?: string
breadcrumbs: Breadcrumb[]
}

View File

@@ -40,8 +40,8 @@ export default function Breadcrumbs({
</li>
) : null}
{breadcrumbs.map((breadcrumb) => {
if (breadcrumb.href) {
{breadcrumbs.map((breadcrumb, index) => {
if (breadcrumb.href && index < breadcrumbs.length - 1) {
return (
<li key={breadcrumb.uid} className={styles.listItem}>
<Link