From 94233261938ca4c28649c6199814bd46ea647c51 Mon Sep 17 00:00:00 2001 From: Shantur Rathore Date: Sun, 30 Nov 2025 20:56:17 +0000 Subject: [PATCH] Make MessageBlock rerender via keyed Show --- .../ui/src/components/message-stream-v2.tsx | 197 +++++++++--------- 1 file changed, 99 insertions(+), 98 deletions(-) diff --git a/packages/ui/src/components/message-stream-v2.tsx b/packages/ui/src/components/message-stream-v2.tsx index 42e43b4a..4f56cc96 100644 --- a/packages/ui/src/components/message-stream-v2.tsx +++ b/packages/ui/src/components/message-stream-v2.tsx @@ -883,107 +883,108 @@ function MessageBlock(props: MessageBlockProps) { return resultBlock }) - const resolvedBlock = block() - if (!resolvedBlock) return null - return ( -
- - {(item) => ( - - - - - - {(() => { - const toolItem = item as ToolDisplayItem - const toolState = toolItem.toolPart.state as ToolState | undefined - const hasToolState = - Boolean(toolState) && (isToolStateRunning(toolState) || isToolStateCompleted(toolState) || isToolStateError(toolState)) - const taskSessionId = hasToolState ? extractTaskSessionId(toolState) : "" - const taskLocation = taskSessionId ? findTaskSessionLocation(taskSessionId) : null - const handleGoToTaskSession = (event: MouseEvent) => { - event.preventDefault() - event.stopPropagation() - if (!taskLocation) return - navigateToTaskSession(taskLocation) - } + + {(resolvedBlock) => ( +
+ + {(item) => ( + + + + + + {(() => { + const toolItem = item as ToolDisplayItem + const toolState = toolItem.toolPart.state as ToolState | undefined + const hasToolState = + Boolean(toolState) && (isToolStateRunning(toolState) || isToolStateCompleted(toolState) || isToolStateError(toolState)) + const taskSessionId = hasToolState ? extractTaskSessionId(toolState) : "" + const taskLocation = taskSessionId ? findTaskSessionLocation(taskSessionId) : null + const handleGoToTaskSession = (event: MouseEvent) => { + event.preventDefault() + event.stopPropagation() + if (!taskLocation) return + navigateToTaskSession(taskLocation) + } - return ( -
-
-
- {TOOL_ICON} - Tool Call - {toolItem.toolPart.tool || "unknown"} + return ( +
+
+
+ {TOOL_ICON} + Tool Call + {toolItem.toolPart.tool || "unknown"} +
+ + + +
+
- - - -
- -
- ) - })()} - - - - - - - - - - - - )} - -
+ ) + })()} +
+ + + + + + + + + +
+ )} +
+
+ )} +
) }