mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-07-14 22:52:15 +02:00
feat: enhance message handling in NewChatPage by updating message IDs upon saving, ensuring consistent state management and improved user experience
This commit is contained in:
parent
232618f995
commit
f431f43191
1 changed files with 11 additions and 1 deletions
|
|
@ -557,7 +557,17 @@ export default function NewChatPage() {
|
||||||
role: "user",
|
role: "user",
|
||||||
content: persistContent,
|
content: persistContent,
|
||||||
})
|
})
|
||||||
.then(() => {
|
.then((savedMessage) => {
|
||||||
|
const newUserMsgId = `msg-${savedMessage.id}`;
|
||||||
|
setMessages((prev) =>
|
||||||
|
prev.map((m) => (m.id === userMsgId ? { ...m, id: newUserMsgId } : m))
|
||||||
|
);
|
||||||
|
setMessageDocumentsMap((prev) => {
|
||||||
|
const docs = prev[userMsgId];
|
||||||
|
if (!docs) return prev;
|
||||||
|
const { [userMsgId]: _, ...rest } = prev;
|
||||||
|
return { ...rest, [newUserMsgId]: docs };
|
||||||
|
});
|
||||||
if (isNewThread) {
|
if (isNewThread) {
|
||||||
queryClient.invalidateQueries({ queryKey: ["threads", String(searchSpaceId)] });
|
queryClient.invalidateQueries({ queryKey: ["threads", String(searchSpaceId)] });
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue