import React, { useState, useRef, KeyboardEvent } from 'react'; import { Send } from 'lucide-react'; interface ChatInputProps { onSendMessage: (message: string) => void; disabled?: boolean; } const ChatInput: React.FC = ({ onSendMessage, disabled = false }) => { const [message, setMessage] = useState(''); const inputRef = useRef(null); const handleSend = () => { if (message.trim() && !disabled) { onSendMessage(message.trim()); setMessage(''); setTimeout(() => { if (inputRef.current) { inputRef.current.focus(); } }, 0); } }; const handleKeyDown = (e: KeyboardEvent) => { if (e.key === 'Enter') { e.preventDefault(); handleSend(); } }; return (
setMessage(e.target.value)} onKeyDown={handleKeyDown} placeholder="Type a message..." className="flex-1 px-3 py-2 border rounded-lg text-sm" disabled={disabled} autoFocus />
); }; export default ChatInput;