UNPKG

@lobehub/ui

Version:

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

1 lines 2.59 kB
{"version":3,"file":"index.mjs","names":["StreamRenderer","StaticRenderer"],"sources":["../../../src/Highlighter/SyntaxHighlighter/index.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { memo } from 'react';\n\nimport type { SyntaxHighlighterProps } from '../type';\nimport StaticRenderer from './StaticRenderer';\nimport StreamRenderer from './StreamRenderer';\nimport { variants } from './style';\n\nconst SyntaxHighlighter = memo<SyntaxHighlighterProps>(\n ({\n animated,\n children,\n className,\n enableTransformer,\n language,\n style,\n theme,\n variant = 'borderless',\n }) => {\n const isDefaultTheme = theme === 'lobe-theme' || !theme;\n const showBackground = !isDefaultTheme && variant === 'filled';\n const resolvedTheme = isDefaultTheme ? undefined : theme;\n\n const shikiClassName = cx(\n variants({ animated, shiki: true, showBackground, variant }),\n className,\n );\n const fallbackClassName = cx(\n variants({ animated, shiki: false, showBackground, variant }),\n className,\n );\n\n if (animated) {\n return (\n <StreamRenderer\n className={shikiClassName}\n enableTransformer={enableTransformer}\n fallbackClassName={fallbackClassName}\n language={language}\n style={style}\n theme={resolvedTheme}\n >\n {children}\n </StreamRenderer>\n );\n }\n\n return (\n <StaticRenderer\n className={shikiClassName}\n enableTransformer={enableTransformer}\n fallbackClassName={fallbackClassName}\n language={language}\n style={style}\n theme={resolvedTheme}\n >\n {children}\n </StaticRenderer>\n );\n },\n (prevProps, nextProps) =>\n prevProps.children === nextProps.children && prevProps.language === nextProps.language,\n);\n\nSyntaxHighlighter.displayName = 'SyntaxHighlighter';\n\nexport default SyntaxHighlighter;\n"],"mappings":";;;;;;;;;;AAUA,MAAM,oBAAoB,MACvB,EACC,UACA,UACA,WACA,mBACA,UACA,OACA,OACA,UAAU,mBACN;CACJ,MAAM,iBAAiB,UAAU,gBAAgB,CAAC;CAClD,MAAM,iBAAiB,CAAC,kBAAkB,YAAY;CACtD,MAAM,gBAAgB,iBAAiB,SAAY;CAEnD,MAAM,iBAAiB,GACrB,SAAS;EAAE;EAAU,OAAO;EAAM;EAAgB;EAAS,CAAC,EAC5D,UACD;CACD,MAAM,oBAAoB,GACxB,SAAS;EAAE;EAAU,OAAO;EAAO;EAAgB;EAAS,CAAC,EAC7D,UACD;AAED,KAAI,SACF,QACE,oBAACA;EACC,WAAW;EACQ;EACA;EACT;EACH;EACP,OAAO;EAEN;GACc;AAIrB,QACE,oBAACC;EACC,WAAW;EACQ;EACA;EACT;EACH;EACP,OAAO;EAEN;GACc;IAGpB,WAAW,cACV,UAAU,aAAa,UAAU,YAAY,UAAU,aAAa,UAAU,SACjF;AAED,kBAAkB,cAAc;AAEhC,gCAAe"}