Implement streaming

This commit is contained in:
2026-02-14 21:15:54 -08:00
parent 0c892d0ffa
commit 642d0ba460
3 changed files with 184 additions and 11 deletions

View File

@@ -9,7 +9,7 @@ type Props = {
};
export function ChatMessagesPanel({ messages, isLoading, isSending }: Props) {
const hasPendingAssistant = messages.some((message) => message.id.startsWith("temp-assistant-"));
const hasPendingAssistant = messages.some((message) => message.id.startsWith("temp-assistant-") && message.content.trim().length === 0);
return (
<>
@@ -17,7 +17,7 @@ export function ChatMessagesPanel({ messages, isLoading, isSending }: Props) {
<div className="mx-auto max-w-3xl space-y-6">
{messages.map((message) => {
const isUser = message.role === "user";
const isPendingAssistant = message.id.startsWith("temp-assistant-") && isSending;
const isPendingAssistant = message.id.startsWith("temp-assistant-") && isSending && message.content.trim().length === 0;
return (
<div key={message.id} className={cn("flex", isUser ? "justify-end" : "justify-start")}>
<div