"use client";
import ReactMarkdown from "react-markdown";
import remarkGfm from "remark-gfm";
interface GeminiMarkdownProps {
content: string;
}
const GeminiMarkdown = ({ content }: GeminiMarkdownProps) => {
if (!content.trim()) {
return <p className="text-sm">...</p>;
}
return (
<div className="text-sm leading-relaxed space-y-2">
<ReactMarkdown
remarkPlugins={[remarkGfm]}
components={{
h1: ({ node: _node, ...props }) => (
<h3 className="text-base font-semibold" {...props} />
),
h2: ({ node: _node, ...props }) => (
<h3 className="text-base font-semibold" {...props} />
),
p: ({ node: _node, ...props }) => (
<p className="mb-2 text-[var(--textLight)] leading-8" {...props} />
),
strong: ({ node: _node, ...props }) => (
<strong className="font-semibold text-[var(--foreground)]" {...props} />
),
ul: ({ node: _node, ...props }) => (
<ul className="list-decimal pl-6 space-y-1" {...props} />
),
ol: ({ node: _node, ...props }) => (
<ol className="list-decimal pl-6 space-y-1" {...props} />
),
li: ({ node: _node, ...props }) => (
<li className="" {...props} />
),
}}>
{content}
</ReactMarkdown>
</div>
);
};
export default GeminiMarkdown;