import type { ChatStatus } from "ai"; import { useCallback, type ComponentProps } from "react"; import { PromptInput, PromptInputBody, PromptInputFooter, PromptInputSubmit, PromptInputTextarea, type PromptInputMessage, } from "@/components/ai-elements/prompt-input"; import { cn } from "@/lib/utils"; export function InputBox({ className, autoFocus, status = "ready", onSubmit, onStop, ...props }: Omit, "onSubmit"> & { assistantId?: string | null; status?: ChatStatus; onSubmit?: (message: PromptInputMessage) => void; onStop?: () => void; }) { const handleSubmit = useCallback( async (message: PromptInputMessage) => { if (status === "streaming") { onStop?.(); return; } if (!message.text) { return; } onSubmit?.(message); }, [onSubmit, onStop, status], ); return (
); }