"use client"; import { Avatar } from "@/components/primitives/avatar"; import { renderMessageContent } from "@/lib/format"; import type { AiSeverity, MessageRecord } from "@/lib/types"; import { cn } from "@/lib/utils"; import { AiStatusBadge, SeverityTick } from "./ai-status-badge"; function fmtTime(ts?: number): string { if (!ts) return ""; return new Date(ts * 1000).toLocaleTimeString([], { hour: "2-digit", minute: "2-digit", hour12: false, }); } const severityColor: Record, string> = { none: "text-[var(--color-ink-soft)]", low: "text-[var(--color-amber)]", medium: "text-[var(--color-amber)]", high: "text-orange-500", critical: "text-[var(--color-vermilion)]", }; export interface MessageEntryProps { message: MessageRecord; selected: boolean; onSelect: () => void; onAvatarClick?: () => void; } export function MessageEntry({ message: msg, selected, onSelect, }: MessageEntryProps) { const severity = (msg.ai_severity ?? "none") as AiSeverity; const status = msg.ai_status ?? null; return ( ); }