Spaces:
Running
Running
Commit ·
f326566
1
Parent(s): 80e61b9
commit 013
Browse files- src/App.js +7 -4
- src/components/ChatBox.jsx +2 -1
src/App.js
CHANGED
|
@@ -15,17 +15,20 @@ export default function App() {
|
|
| 15 |
setMessages(newHistory);
|
| 16 |
setLoading(true);
|
| 17 |
|
| 18 |
-
|
| 19 |
-
setMessages((prev) => [...prev, botMsg]);
|
| 20 |
|
| 21 |
if (msg.includes("```")) setLastCode(msg);
|
| 22 |
|
|
|
|
|
|
|
| 23 |
await streamChat({
|
| 24 |
message: msg,
|
| 25 |
history: messages,
|
| 26 |
onChunk: (chunk) => {
|
| 27 |
-
|
| 28 |
-
|
|
|
|
| 29 |
},
|
| 30 |
onDone: () => {
|
| 31 |
setLoading(false);
|
|
|
|
| 15 |
setMessages(newHistory);
|
| 16 |
setLoading(true);
|
| 17 |
|
| 18 |
+
// let botMsg = { role: "assistant", content: "" };
|
| 19 |
+
//setMessages((prev) => [...prev, botMsg]);
|
| 20 |
|
| 21 |
if (msg.includes("```")) setLastCode(msg);
|
| 22 |
|
| 23 |
+
let fullContent = "Thinking...";
|
| 24 |
+
|
| 25 |
await streamChat({
|
| 26 |
message: msg,
|
| 27 |
history: messages,
|
| 28 |
onChunk: (chunk) => {
|
| 29 |
+
fullContent += chunk;
|
| 30 |
+
// setMessages((prev) => [...prev.slice(0, -1), { ...botMsg }]);
|
| 31 |
+
setMessages([...newHistory, { role: "assistant", content: fullContent }]);
|
| 32 |
},
|
| 33 |
onDone: () => {
|
| 34 |
setLoading(false);
|
src/components/ChatBox.jsx
CHANGED
|
@@ -6,11 +6,12 @@ export default function ChatBox({ messages, loading }) {
|
|
| 6 |
return (
|
| 7 |
<div className="chat-box">
|
| 8 |
{messages.map((msg, i) => (
|
| 9 |
-
|
| 10 |
<div className="bubble">
|
| 11 |
<Message content={msg.content} />
|
| 12 |
</div>
|
| 13 |
</div>
|
|
|
|
| 14 |
))}
|
| 15 |
|
| 16 |
{/* ✅ Typing indicator when loading */}
|
|
|
|
| 6 |
return (
|
| 7 |
<div className="chat-box">
|
| 8 |
{messages.map((msg, i) => (
|
| 9 |
+
msg.content?.trim() && ( <div key={i} className={`message ${msg.role}`}>
|
| 10 |
<div className="bubble">
|
| 11 |
<Message content={msg.content} />
|
| 12 |
</div>
|
| 13 |
</div>
|
| 14 |
+
)
|
| 15 |
))}
|
| 16 |
|
| 17 |
{/* ✅ Typing indicator when loading */}
|