Persist first message to local history in case of failure or cancellation (#3744)
This commit is contained in:
@@ -264,6 +264,11 @@ export const useChatEngine = ({
|
|||||||
// Set the text back to the input field
|
// Set the text back to the input field
|
||||||
_setInput(textValue);
|
_setInput(textValue);
|
||||||
|
|
||||||
|
// Also add to local storage history as a backup so cmd+up can retrieve it
|
||||||
|
if (enableLocalStorage && textValue.trim()) {
|
||||||
|
LocalMessageStorage.addMessage(textValue.trim());
|
||||||
|
}
|
||||||
|
|
||||||
// Remove the last user message if it's the most recent one
|
// Remove the last user message if it's the most recent one
|
||||||
if (messages.length > 1) {
|
if (messages.length > 1) {
|
||||||
setMessages(messages.slice(0, -1));
|
setMessages(messages.slice(0, -1));
|
||||||
@@ -325,7 +330,7 @@ export const useChatEngine = ({
|
|||||||
setMessages([...messages, responseMessage]);
|
setMessages([...messages, responseMessage]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, [stop, messages, _setInput, setMessages]);
|
}, [stop, messages, _setInput, setMessages, enableLocalStorage]);
|
||||||
|
|
||||||
const filteredMessages = useMemo(() => {
|
const filteredMessages = useMemo(() => {
|
||||||
return [...ancestorMessages, ...messages].filter((message) => message.display ?? true);
|
return [...ancestorMessages, ...messages].filter((message) => message.display ?? true);
|
||||||
|
|||||||
Reference in New Issue
Block a user