UNPKG

@lobehub/ui

Version:

Lobe UI is an open-source UI component library for building AIGC web apps

36 lines (35 loc) 1.19 kB
'use client'; import { memo } from 'react'; import { useHighlight } from "../../hooks/useHighlight"; import { jsx as _jsx } from "react/jsx-runtime"; /** * Static renderer for syntax highlighting without animation * Uses useHighlight hook to generate HTML and renders it directly */ var StaticRenderer = /*#__PURE__*/memo(function (_ref) { var children = _ref.children, className = _ref.className, enableTransformer = _ref.enableTransformer, fallbackClassName = _ref.fallbackClassName, language = _ref.language, style = _ref.style, theme = _ref.theme; var _useHighlight = useHighlight(children, { enableTransformer: enableTransformer, language: language, theme: theme }), data = _useHighlight.data; var hasData = typeof data === 'string' && data.length > 0; var containerClassName = hasData ? className : fallbackClassName; return /*#__PURE__*/_jsx("div", { className: containerClassName, dangerouslySetInnerHTML: { __html: data || "<pre><code>".concat(children, "</code></pre>") }, dir: "ltr", style: style }); }); StaticRenderer.displayName = 'StaticRenderer'; export default StaticRenderer;