UNPKG

@plteam/chat-ui

Version:

CUI Kit is a free and open-source library for creating AI assistant chat interfaces, built with React, Material UI, and TypeScript

25 lines (24 loc) 1.27 kB
import * as React from 'react'; import { useChatContext } from '../../core/ChatGlobalContext'; import { useChatCoreSlots } from '../../core/ChatSlotsContext'; import { ReplayIcon } from '../../../icons'; const MessageActionReload = ({ message }) => { const { model, apiRef, onAssistantMessageTypingFinish } = useChatContext(); const coreSlots = useChatCoreSlots(); const handleClick = async () => { const thread = model.currentThread.value; const userMessage = thread?.messages.currentMessages.value.find(v => v.id === message.parentId); if (!userMessage || !thread) { console.error('reload error: user message not found', [message.parentId, model.currentThread.value?.messages.currentMessages.value.length]); return; } const content = userMessage.content; const newMessage = await apiRef.current?.onEditMessage(content, userMessage); if (newMessage) { onAssistantMessageTypingFinish?.({ message: userMessage.data, thread: thread.data }); } }; return (React.createElement(coreSlots.iconButton, { size: "small", onClick: handleClick }, React.createElement(ReplayIcon, null))); }; export default MessageActionReload;