feat(ui): Implement in-place message editing with re-response (#3798)
Co-authored-by: Zane Staggs <zane@squareup.com>
This commit is contained in:
@@ -37,6 +37,7 @@ interface ProgressiveMessageListProps {
|
||||
// Custom render function for messages
|
||||
renderMessage?: (message: Message, index: number) => React.ReactNode | null;
|
||||
isStreamingMessage?: boolean; // Whether messages are currently being streamed
|
||||
onMessageUpdate?: (messageId: string, newContent: string) => void;
|
||||
}
|
||||
|
||||
export default function ProgressiveMessageList({
|
||||
@@ -52,6 +53,7 @@ export default function ProgressiveMessageList({
|
||||
showLoadingThreshold = 50,
|
||||
renderMessage, // Custom render function
|
||||
isStreamingMessage = false, // Whether messages are currently being streamed
|
||||
onMessageUpdate,
|
||||
}: ProgressiveMessageListProps) {
|
||||
const [renderedCount, setRenderedCount] = useState(() => {
|
||||
// Initialize with either all messages (if small) or first batch (if large)
|
||||
@@ -206,7 +208,9 @@ export default function ProgressiveMessageList({
|
||||
}}
|
||||
/>
|
||||
) : (
|
||||
!hasOnlyToolResponses(message) && <UserMessage message={message} />
|
||||
!hasOnlyToolResponses(message) && (
|
||||
<UserMessage message={message} onMessageUpdate={onMessageUpdate} />
|
||||
)
|
||||
)}
|
||||
</>
|
||||
) : (
|
||||
@@ -258,6 +262,7 @@ export default function ProgressiveMessageList({
|
||||
appendMessage,
|
||||
toolCallNotifications,
|
||||
isStreamingMessage,
|
||||
onMessageUpdate,
|
||||
hasContextHandlerContent,
|
||||
getContextHandlerType,
|
||||
onScrollToBottom,
|
||||
|
||||
Reference in New Issue
Block a user