UNPKG

stream-chat-react-native-core

Version:

The official React Native and Expo components for Stream Chat, a service for building chat applications

33 lines 1.69 kB
Object.defineProperty(exports, "__esModule", { value: true }); exports.removeReactionFromLocalState = void 0; var removeReactionFromLocalState = ({ channel, messageId, reactionType, user }) => { var _message$own_reaction, _message$latest_react, _message$reaction_gro; var message = channel.state.messages.find(({ id }) => id === messageId); if (!message || !(channel != null && channel.id) || !(user != null && user.id)) { return; } message.own_reactions = (_message$own_reaction = message.own_reactions) == null ? void 0 : _message$own_reaction.filter(reaction => reaction.type !== reactionType); message.latest_reactions = (_message$latest_react = message.latest_reactions) == null ? void 0 : _message$latest_react.filter(r => !(r.user_id === (user == null ? void 0 : user.id) && r.type === reactionType)); if ((_message$reaction_gro = message.reaction_groups) != null && _message$reaction_gro[reactionType]) { if (message.reaction_groups[reactionType].count > 0 || message.reaction_groups[reactionType].sum_scores > 0) { message.reaction_groups[reactionType].count = Math.max(0, message.reaction_groups[reactionType].count - 1); message.reaction_groups[reactionType].sum_scores = Math.max(0, message.reaction_groups[reactionType].sum_scores - 1); if (message.reaction_groups[reactionType].count === 0 || message.reaction_groups[reactionType].sum_scores === 0) { delete message.reaction_groups[reactionType]; } } else { delete message.reaction_groups[reactionType]; } } }; exports.removeReactionFromLocalState = removeReactionFromLocalState; //# sourceMappingURL=removeReactionFromLocalState.js.map