github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/webui/src/pages/repositories/repository/fileRenderers/CustomMarkdownRenderer.jsx (about) 1 import React from "react"; 2 import SyntaxHighlighter from "react-syntax-highlighter"; 3 import { github as syntaxHighlightStyle } from "react-syntax-highlighter/dist/esm/styles/hljs"; 4 5 export const CustomMarkdownCodeComponent = ({ 6 inline, 7 className, 8 children, 9 ...props 10 }) => { 11 const hasLang = /language-(\w+)/.exec(className || ""); 12 13 return !inline && hasLang ? ( 14 <SyntaxHighlighter 15 style={syntaxHighlightStyle} 16 language={hasLang[1]} 17 PreTag="div" 18 className="codeStyle" 19 showLineNumbers={false} 20 useInlineStyles={true} 21 > 22 {String(children).replace(/\n$/, "")} 23 </SyntaxHighlighter> 24 ) : ( 25 <code className={className} {...props}> 26 {children} 27 </code> 28 ); 29 };