// Ancestor trail. The last item is the current page: rendered as text, never a // link, and marked `aria-current="page"`. Separators are decorative CSS. import type { JSX } from 'solid-js'; import { cx } from '../cx'; import { UI_KEYS } from '../i18n-keys'; import { useUi } from '../theme/context'; import styles from './Breadcrumb.module.scss'; import { linkTarget } from './link-target'; export interface BreadcrumbItem { /** Already-translated label. */ label: string; /** Omit on the final item — the current page is not a link. */ href?: string | undefined; } export interface BreadcrumbProps { items: readonly BreadcrumbItem[]; /** Overrides the translated `ui.breadcrumb` landmark name. */ label?: string | undefined; class?: string | undefined; } export function Breadcrumb(props: BreadcrumbProps): JSX.Element { const ui = useUi(); return ( ); }