import { useEffect, useRef, useState } from "react"; export interface Msg { id: number; role: "user" | "bot" | "sys"; text: string } /** Chat popup. Typed messages go to the model via /api/chat; position/size/colours come from the theme. */ export function Chat({ open, setOpen, mode, msgs, onSend }: { open: boolean; setOpen: (o: boolean) => void; mode: string; msgs: Msg[]; onSend: (text: string) => void; }) { const [value, setValue] = useState(""); const logRef = useRef(null); useEffect(() => { if (logRef.current) logRef.current.scrollTop = logRef.current.scrollHeight; }, [msgs, open]); return ( <> ); }