import React, { useState, useRef, useEffect } from 'react'; import { ChatInputFormProps } from '@/lib/types'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; const ChatInputForm: React.FC = ({ onSendMessage, isLoading }) => { const [input, setInput] = useState(''); const inputRef = useRef(null); // Focus input on component mount useEffect(() => { if (inputRef.current) { inputRef.current.focus(); } }, []); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); const message = input.trim(); if (!message || isLoading) return; onSendMessage(message); setInput(''); }; const handleClear = () => { setInput(''); if (inputRef.current) { inputRef.current.focus(); } }; return (
setInput(e.target.value)} placeholder="Type your message here..." className="w-full py-3 px-4 bg-gray-100 rounded-full focus:outline-none focus:ring-2 focus:ring-primary focus:bg-white" disabled={isLoading} /> {input && ( )}
); }; export default ChatInputForm;