diff --git a/lib/selectors/chat-selectors.js b/lib/selectors/chat-selectors.js --- a/lib/selectors/chat-selectors.js +++ b/lib/selectors/chat-selectors.js @@ -342,6 +342,7 @@ +reactions: ReactionInfo, +hasBeenEdited: boolean, +isPinned: boolean, + +deleted: boolean, }; export type ChatMessageInfoItem = | RobotextChatMessageInfoItem @@ -450,6 +451,15 @@ ); } + const targetMessageDeleteStatusMap = new Map(); + for (let i = messages.length - 1; i >= 0; i--) { + const messageInfo = messages[i]; + if (messageInfo.type !== messageTypes.DELETE_MESSAGE) { + continue; + } + targetMessageDeleteStatusMap.set(messageInfo.targetMessageID, true); + } + const chatMessageItems: ChatMessageItem[] = []; let lastMessageInfo = null; for (let i = messages.length - 1; i >= 0; i--) { @@ -487,6 +497,11 @@ } } + const deleted = !!( + originalMessageInfo.id && + targetMessageDeleteStatusMap.get(originalMessageInfo.id) + ); + let startsConversation = true; let startsCluster = true; if ( @@ -611,6 +626,7 @@ reactions: renderedReactions, hasBeenEdited, isPinned, + deleted, }); } else { invariant( diff --git a/native/chat/chat-item-height-measurer.react.js b/native/chat/chat-item-height-measurer.react.js --- a/native/chat/chat-item-height-measurer.react.js +++ b/native/chat/chat-item-height-measurer.react.js @@ -172,6 +172,7 @@ hasBeenEdited: item.hasBeenEdited, isPinned: item.isPinned, inlineEngagementHeight: height, + deleted: item.deleted, ...sizes, }; } @@ -199,6 +200,7 @@ reactions: item.reactions, hasBeenEdited: item.hasBeenEdited, isPinned: item.isPinned, + deleted: item.deleted, }; } diff --git a/native/types/chat-types.js b/native/types/chat-types.js --- a/native/types/chat-types.js +++ b/native/types/chat-types.js @@ -40,6 +40,7 @@ +reactions: ReactionInfo, +hasBeenEdited: ?boolean, +isPinned: ?boolean, + +deleted: boolean, }; // We "measure" the contentHeight of a multimedia message using the media @@ -66,6 +67,7 @@ +hasBeenEdited: ?boolean, +isPinned: ?boolean, +inlineEngagementHeight: ?number, + +deleted: boolean, }; export type ChatComposedMessageInfoItemWithHeight =