@lobehub/ui
Version:
Lobe UI is an open-source UI component library for building AIGC web apps
29 lines (26 loc) • 1.22 kB
JavaScript
'use client';
import { useMarkdownComponents } from "../../hooks/useMarkdown/useMarkdownComponents.mjs";
import { useMarkdownContent } from "../../hooks/useMarkdown/useMarkdownContent.mjs";
import { useMarkdownRehypePlugins } from "../../hooks/useMarkdown/useMarkdownRehypePlugins.mjs";
import { useMarkdownRemarkPlugins } from "../../hooks/useMarkdown/useMarkdownRemarkPlugins.mjs";
import { memo } from "react";
import { jsx } from "react/jsx-runtime";
import Markdown from "react-markdown";
//#region src/Markdown/SyntaxMarkdown/MarkdownRender.tsx
const MarkdownRenderer = memo(({ children, ...rest }) => {
const escapedContent = useMarkdownContent(children || "");
const components = useMarkdownComponents();
const rehypePluginsList = useMarkdownRehypePlugins();
const remarkPluginsList = useMarkdownRemarkPlugins();
return /* @__PURE__ */ jsx(Markdown, {
...rest,
components,
rehypePlugins: rehypePluginsList,
remarkPlugins: remarkPluginsList,
children: escapedContent
});
}, (prevProps, nextProps) => prevProps.children === nextProps.children);
var MarkdownRender_default = MarkdownRenderer;
//#endregion
export { MarkdownRender_default as default };
//# sourceMappingURL=MarkdownRender.mjs.map