@udus/notion-renderer
Version:

11 lines (10 loc) • 801 B
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { AnnotationItemProvider } from "../Mapper/Annotation.js";
import { LinkProvider } from "../Mapper/Link.js";
import { RichTextItemProvider } from "../Mapper/RichText.js";
import { RichTextItem } from "./RichTextItem.js";
export const RichText = ({ richText, richTextItemMapper, annotationMapper, LinkComponent, }) => {
if (!richText)
return null;
return (_jsx("span", { className: "notion-rich-text", children: _jsx(RichTextItemProvider, { mapper: richTextItemMapper, children: _jsx(AnnotationItemProvider, { mapper: annotationMapper, children: _jsx(LinkProvider, { link: LinkComponent, children: richText.map((item, index) => (_jsx(RichTextItem, { richText: item }, item?.id ?? `${index}-${item.plain_text}`))) }) }) }) }));
};