File size: 925 Bytes
8be02a3
ce7e38e
c55d755
ce7e38e
 
 
c70ad0c
ce7e38e
 
 
 
8be02a3
 
 
 
 
9ea3b5e
 
ce7e38e
 
7db2a6d
ce7e38e
 
 
8be02a3
 
ce7e38e
c70ad0c
ce7e38e
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import { useEffect,useState } from "react";

export default function ChatInput({ onSend, fileUploaded }) {
  const [input, setInput] = useState("");

  const handleSubmit = () => {
   if (!input.trim() || fileUploaded) return;
    onSend(input);
    setInput("");
  };

  useEffect(() => {
  if (!fileUploaded) setInput("");
}, [fileUploaded]);

     // Disable input if no file uploaded
  const isInputDisabled = fileUploaded;
  const isButtonDisabled = fileUploaded || !input.trim();
  return (
    <div className="chat-input">
      <textarea
        placeholder="Paste error, ask DevMate..."
        value={input}
        onChange={(e) => setInput(e.target.value)}
         disabled={isInputDisabled} // disable typing if no file
         onKeyDown={(e) => e.key === "Enter" && !isButtonDisabled && handleSubmit()}
      />
      <button onClick={handleSubmit} disabled={isButtonDisabled}>Send</button>
    </div>
  );
}