diff --git a/src/components/chat/MessagesList.tsx b/src/components/chat/MessagesList.tsx index e44edda..c1bf7f8 100644 --- a/src/components/chat/MessagesList.tsx +++ b/src/components/chat/MessagesList.tsx @@ -11,7 +11,7 @@ import { Loader2, RefreshCw, Undo } from "lucide-react"; import { Button } from "@/components/ui/button"; import { useVersions } from "@/hooks/useVersions"; import { selectedAppIdAtom } from "@/atoms/appAtoms"; -import { showError } from "@/lib/toast"; +import { showError, showSuccess } from "@/lib/toast"; import { IpcClient } from "@/ipc/ipc_client"; import { chatMessagesAtom } from "@/atoms/chatAtoms"; @@ -26,10 +26,11 @@ export const MessagesList = forwardRef( const { versions, revertVersion } = useVersions(appId); const { streamMessage, isStreaming, error, setError } = useStreamChat(); const { isAnyProviderSetup } = useSettings(); - const selectedChatId = useAtomValue(selectedChatIdAtom); + const setMessages = useSetAtom(chatMessagesAtom); const [isUndoLoading, setIsUndoLoading] = useState(false); const [isRetryLoading, setIsRetryLoading] = useState(false); + const [selectedChatId, setSelectedChatId] = useAtom(selectedChatIdAtom); return (
@@ -45,63 +46,61 @@ export const MessagesList = forwardRef( {!isAnyProviderSetup() && }
)} - {messages.length > 0 && !isStreaming && ( + {messages.length > 3 && !isStreaming && (
- {messages[messages.length - 1].role === "assistant" && ( - - )} + }} + > + {isUndoLoading ? ( + + ) : ( + + )} + Undo + + )}