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  };