// Module ID: 7106 // Function ID: 7107 // Name: ConversationMessageCacheUtils // Dependencies: [502, 4519, 5112, 4521, 2] // Exports: applyHydratedMessages, applyReaction, applyRelationshipFlags, removeHydratedMessage, replaceHydratedMessage // Module 7106 (ConversationMessageCacheUtils) import ReactionUtils from "ReactionUtils" /* 4521 */; import MessageRecordUtils from "MessageRecordUtils" /* 5112 */; import AuthenticationStore from "AuthenticationStore" /* 502 */; import RelationshipStore from "RelationshipStore" /* 4519 */; import size from "module_2" /* 2 */; let result = size.fileFinishedImporting("modules/conversations/ConversationMessageCacheUtils.tsx"); export const applyHydratedMessages = function applyHydratedMessages(arg0) { let fullyHydrated; let messageReferences; let messages; let meta; let upsertMessage; let upsertReference; ({ meta, messages, fullyHydrated, messageReferences } = arg0); if (messageReferences === undefined) { messageReferences = []; } ({ upsertMessage, upsertReference } = arg0); if (!fullyHydrated) { if (meta.fullyHydrated) { return false; } } const items = []; for (const item10014 of messages) { let obj = MessageRecordUtils; let messageRecord = obj.createMessageRecord(item10014); let arr = items.push(messageRecord); let upsertMessageResult = upsertMessage(messageRecord); continue; } meta.hydratedMessages = items; meta.fullyHydrated = fullyHydrated; for (const item10029 of messageReferences) { let obj2 = MessageRecordUtils; let upsertReferenceResult = upsertReference(obj2.createMessageRecord(item10029)); continue; } return true; }; export const replaceHydratedMessage = function replaceHydratedMessage(peekResult, messageId, addReactionBatchResult) { let closure_0 = messageId; let hydratedMessages1; if (peekResult != null) { hydratedMessages1 = peekResult.hydratedMessages; } if (null != hydratedMessages1) { const hydratedMessages = peekResult.hydratedMessages; const findIndexResult = hydratedMessages.findIndex((id) => id.id === messageId); if (-1 !== findIndexResult) { const hydratedMessages2 = peekResult.hydratedMessages; const substr = hydratedMessages2.slice(); substr[findIndexResult] = addReactionBatchResult; peekResult.hydratedMessages = substr; } } }; export const removeHydratedMessage = function removeHydratedMessage(peekResult, id) { let closure_0 = id; let hydratedMessages; if (peekResult != null) { hydratedMessages = peekResult.hydratedMessages; } if (null != hydratedMessages) { const hydratedMessages1 = peekResult.hydratedMessages; peekResult.hydratedMessages = hydratedMessages1.filter((id) => id.id !== id); } }; export const applyRelationshipFlags = function applyRelationshipFlags(message) { let result1; const isBlockedForMessageResult = RelationshipStore.isBlockedForMessage(message); const isIgnoredForMessageResult = RelationshipStore.isIgnoredForMessage(message); if (message.blocked !== isBlockedForMessageResult) { const result = message.set("blocked", isBlockedForMessageResult); result1 = result.set("ignored", isIgnoredForMessageResult); } else { result1 = null; } return result1; }; export const applyReaction = function applyReaction(userId, message) { const obj = ReactionUtils; if (obj.shouldApplyReaction(userId)) { let addReactionResult; const tmp4 = AuthenticationStore.getId() === userId.userId; if ("MESSAGE_REACTION_ADD" === userId.type) { const obj3 = { colors: null, reactionType: null }; ({ colors: obj2.colors, reactionType: obj2.reactionType } = userId); addReactionResult = message.addReaction(userId.emoji, tmp4, obj3); } else { addReactionResult = message.removeReaction(userId.emoji, tmp4, userId.reactionType); } return addReactionResult; } else { return null; } };