"use client"; import type { CandidateFactCard, ConfirmedFactCard } from "../lib/domain/types"; interface FactCardEditorProps { factCard: CandidateFactCard | null; isSaving: boolean; onChange: (factCard: CandidateFactCard) => void; onConfirm: () => void; } const listFields = [ "company_short_names", "brand_names", "product_names", "core_claims", "forbidden_claims", "image_topics", "uncertain_items", ] as const; export function FactCardEditor({ factCard, isSaving, onChange, onConfirm, }: FactCardEditorProps) { if (!factCard) { return (
Fact Card
); } const currentFactCard = factCard; const canOptimize = currentFactCard.uncertain_items.length === 0; function update( key: K, value: CandidateFactCard[K], ) { onChange({ ...currentFactCard, [key]: value, is_ready_for_optimization: key === "uncertain_items" ? (value as string[]).length === 0 : currentFactCard.uncertain_items.length === 0, }); } return (
Fact Card
{listFields.map((field) => (