@udus/notion-renderer
Version:

14 lines (13 loc) • 1.01 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { Fragment } from "react";
import { extractTitle } from "../../utils/index.js";
import { Icon } from "../Common/Icon.js";
import { useMapper } from "../hooks.js";
import { RichText } from "../RichText/RichText.js";
export const Breadcrumb = ({ block }) => {
const { Link } = useMapper();
return (_jsx("div", { id: block.id, className: "notion-block notion-breadcrumb", children: block.breadcrumb.parents.map((pageOrDatabase, index, array) => {
const titleRichText = extractTitle(pageOrDatabase);
return (_jsxs(Fragment, { children: [_jsx(Link, { prefix: "/", link: pageOrDatabase.id, children: _jsxs("span", { className: "notion-breadcrumb-title", children: [_jsx(Icon, { icon: pageOrDatabase.icon }), " ", _jsx(RichText, { richText: titleRichText })] }) }), index !== array.length - 1 && (_jsx("span", { className: "notion-breadcrumb-separator", children: "/" }))] }, pageOrDatabase.id));
}) }));
};