"use client"; import { Check, Copy, FilePlus2, Trophy } from "lucide-react"; import { Markdown } from "@/components/markdown"; import { Badge, Spinner } from "@/components/ui/primitives"; import { cn } from "@/lib/utils"; import { ms, providerTone, usd, type ModelRow } from "@/components/ai/models/format"; import { uniqueSentences } from "./diff"; export interface CompareResult { model: string; provider?: string; text?: string; usage?: { inputTokens: number; outputTokens: number; cachedTokens?: number; reasoningTokens?: number }; costUsd?: number | null; latencyMs?: number; ttftMs?: number | null; refusal?: string | null; error?: string; pending?: boolean } export function ResultColumn({ r, meta, others, diff, best, canVote, onCopy, onSave, onBest }: { r: CompareResult; meta: ModelRow | undefined; others: string[]; diff: boolean; best: boolean; canVote: boolean; onCopy: () => void; onSave: () => void; onBest: () => void }) { const provider = r.provider ?? meta?.provider ?? ""; return (