"use client"; import { useId, useState, type FormEvent, type KeyboardEvent } from "react"; import { Send } from "lucide-react"; import { Button } from "@/components/ui/button"; export function ChatComposer({ onSend, disabled = false, label = "Message", }: { onSend: (body: string) => void; disabled?: boolean; label?: string; }) { const [body, setBody] = useState(""); const id = useId(); const submit = (event?: FormEvent) => { event?.preventDefault(); const text = body.trim(); if (!text || disabled) return; onSend(text); setBody(""); }; const onKeyDown = (event: KeyboardEvent) => { if ( event.key === "Enter" && !event.shiftKey && !event.nativeEvent.isComposing ) { event.preventDefault(); submit(); } }; return (