"use client"; import { useCallback, useEffect, useRef, useState } from "react"; import type { Citation } from "../lib/sessionStorage"; 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 (