seroxdesignRelease v0.4.4caa77419 months agoHistory
61 lines · 1.3 KB · TypeScript
RawDownload
// CRITICAL"use client"; import { Prism as SyntaxHighlighter } from "react-syntax-highlighter";import { vscDarkPlus } from "react-syntax-highlighter/dist/esm/styles/prism"; interface CodePreviewProps {  code: string;  language?: string;  showLineNumbers?: boolean;  className?: string;  maxHeight?: number;} export function CodePreview({  code,  language = "text",  showLineNumbers = true,  className,  maxHeight,}: CodePreviewProps) {  const trimmed = String(code ?? "").replace(/\n$/, "");   return (    <div      className={className}      style={        maxHeight          ? {              maxHeight: `${maxHeight}px`,              overflow: "auto",            }          : undefined      }    >      <SyntaxHighlighter        language={language}        style={vscDarkPlus}        customStyle={{          margin: 0,          padding: "1rem",          background: "transparent",          fontSize: "0.875rem",          lineHeight: "1.6",        }}        showLineNumbers={showLineNumbers}        lineNumberStyle={{          color: "var(--muted)",          fontSize: "0.75rem",          paddingRight: "1rem",          minWidth: "2.5rem",          textAlign: "right",          userSelect: "none",        }}        wrapLongLines      >        {trimmed}      </SyntaxHighlighter>    </div>  );}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t