import { useRef, useState } from "react"; import { Brain, ChevronDown } from "lucide-react"; interface ReasoningBlockProps { reasoning: string; isThinking: boolean; thinkingSeconds: number; } export function ReasoningBlock({ reasoning, isThinking, thinkingSeconds, }: ReasoningBlockProps) { const [open, setOpen] = useState(true); const prevIsThinkingRef = useRef(isThinking); // Synchronously collapse when thinking ends (no effect delay). if (prevIsThinkingRef.current !== isThinking) { prevIsThinkingRef.current = isThinking; if (open !== isThinking) { setOpen(isThinking); } } return (