import { cn } from '@/lib/utils'; import { renderMarkdown } from '@/lib/markdown'; import { RefreshCw, ArrowRight, Quote, Bot, User } 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 (
{/* Avatar */}
{isUser ? : }
{/* Content */}
{/* Role label */}
{isUser ? '你' : '美图 Agent'}
{/* Bubble */}
{isEmpty ? (
) : isUser ? (

{message.content}

) : (
)}
{/* Actions - only for assistant messages */} {!isUser && !isEmpty && (
)}
); }