diff --git a/packages/react/src/store/messageStore.js b/packages/react/src/store/messageStore.js index 4f84f8c1f..9ad240719 100644 --- a/packages/react/src/store/messageStore.js +++ b/packages/react/src/store/messageStore.js @@ -59,9 +59,17 @@ const useMessageStore = create((set, get) => ({ })); } if (message) { + const isThreadMainMessage = get().threadMainMessage?._id === messageId; return set((state) => ({ deletedMessage: message, messages: cloneArray(state.messages).filter((m) => m._id !== messageId), + // If the deleted message is the parent of the open thread, close the + // thread so it doesn't keep showing a message that no longer exists. + ...(isThreadMainMessage && { + isThreadOpen: false, + threadMainMessage: null, + threadMessages: [], + }), })); } },