import { memo } from 'react' import ReactMarkdown, { type Components } from 'react-markdown' import remarkGfm from 'remark-gfm' import { cn } from '@/lib/utils' const components: Components = { p: ({ children }) => (

{children}

), a: ({ children, href }) => ( {children} ), h1: ({ children }) => (

{children}

), h2: ({ children }) => (

{children}

), h3: ({ children }) => (

{children}

), h4: ({ children }) => (

{children}

), ul: ({ children }) => ( ), ol: ({ children }) => (
    {children}
), li: ({ children }) =>
  • {children}
  • , blockquote: ({ children }) => (
    {children}
    ), hr: () =>
    , strong: ({ children }) => {children}, em: ({ children }) => {children}, del: ({ children }) => {children}, table: ({ children }) => (
    {children}
    ), thead: ({ children }) => {children}, th: ({ children, style }) => ( {children} ), td: ({ children, style }) => ( {children} ), code: ({ className, children, ...props }) => { const isBlock = /language-/.test(className ?? '') if (isBlock) { return ( {children} ) } return ( {children} ) }, pre: ({ children }) => (
          {children}
        
    ), } interface MarkdownProps { children: string className?: string } function MarkdownInner({ children, className }: MarkdownProps) { return (
    {children}
    ) } export const Markdown = memo(MarkdownInner)