import ReactMarkdown from 'react-markdown'; import remarkGfm from 'remark-gfm'; import { Clock, Server } from 'lucide-react'; export default function ResponseBlock({ response, isNeonEmphasis = false, isComparisonEmphasis = false, showBadge = false, showModelName = true, showPersona = false, showFooterParams = true, showPrePromptIndicator = false, }) { const personaText = response.persona_name && response.is_neon ? response.persona_name : null; const hasHeader = showModelName || showBadge; const emphasisClass = isNeonEmphasis ? 'neon-emphasis' : (isComparisonEmphasis ? 'comp-emphasis' : ''); return (
{hasHeader && (
{showModelName && ( {response.model_name} {showPersona && personaText && ( ยท {personaText} )} )}
)}
{response.error ? (
{response.response}
) : ( {response.response} )}
{response.elapsed_seconds}s
{showPrePromptIndicator ? (
{response.has_persona ? 'With pre-prompt' : 'No pre-prompt'}
) : showFooterParams ? (
{response.params ? `Params: ${response.params}` : 'Model size: TBD'}
) : null}
); }