"use client"; import { useCallback, useState } from "react"; interface Citation { index: number; document_id: string; chunk_id: string; document_uri: string; document_title: string | null; page_numbers: number[]; headings: string[] | null; content: string; } interface CitationBlockProps { citations: Citation[]; } interface VisualGroundingState { isOpen: boolean; chunkId: string | null; images: string[]; loading: boolean; error: string | null; } function CitationItem({ citation, onViewInDocument, }: { citation: Citation; onViewInDocument: (chunkId: string) => void; }) { const [expanded, setExpanded] = useState(false); const title = citation.document_title || citation.document_uri || "Unknown"; const pageInfo = citation.page_numbers.length > 0 ? `p. ${citation.page_numbers.join(", ")}` : null; return (