import { cn } from '@/lib/utils'; import { renderMarkdown } from '@/lib/markdown'; import { RefreshCw, ArrowRight, Quote } from 'lucide-react'; import type { Message } from '@/types'; interface Props { message: Message; onRegenerate?: (msgId: string) => void; onContinue?: (msgId: string) => void; onQuote?: (content: string) => void; } export function ChatMessage({ message, onRegenerate, onContinue, onQuote }: Props) { const isUser = message.role === 'user'; const isEmpty = !message.content; return (
{isEmpty ? ( ... ) : isUser ? (

{message.content}

) : (
)}
{/* Action buttons - only for assistant messages */} {!isUser && !isEmpty && (
{onQuote && ( )} {onRegenerate && ( )} {onContinue && ( )}
)}
); }