"use client"; import React from "react"; import ReactMarkdown from "react-markdown"; import remarkGfm from "remark-gfm"; import rehypeRaw from "rehype-raw"; import rehypeHighlight from "rehype-highlight"; import { Copy } from "lucide-react"; type MarkdownRendererProps = { content: string; }; export function MarkdownRenderer({ content }: MarkdownRendererProps) { // Normalizar quebras de linha e espaços const normalizedContent = content .replace(/\n{3,}/g, "\n\n") // Máximo 2 quebras consecutivas .replace(/[ \t]+$/gm, "") // Remover espaços no final das linhas .trim(); return ( {children} ); } const cleaned = text.replace(/^\n+|\n+$/g, ""); return (
                
                  {cleaned}
                
              
); }, h1: ({ children }: any) => (

{children}

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

{children}

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

{children}

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

{children}

), h5: ({ children }: any) => (
{children}
), h6: ({ children }: any) => (
{children}
), p: ({ children }: any) => (

{children}

), ul: ({ children }: any) => ( ), ol: ({ children }: any) => (
    {children}
), li: ({ children }: any) => (
  • {children}
  • ), blockquote: ({ children }: any) => (
    {children}
    ), hr: () =>
    , br: () =>
    , }} > {normalizedContent}
    ); }