removeReaction method
Remove reaction from message.
Implementation
Future<void> removeReaction(
String messageId, String reactionIdOrEmoji) async {
_ensureInitialized();
var reactionId = reactionIdOrEmoji;
final reactions = await _database.getReactionsForMessage(messageId);
final match = reactions
.where(
(r) =>
r.id == reactionIdOrEmoji ||
(r.emoji == reactionIdOrEmoji && r.userId == _userId),
)
.firstOrNull;
if (match != null) {
reactionId = match.id;
}
await _database.removeReaction(messageId, reactionId);
unawaited(
_outboundQueue.enqueue(
OutboundOperation.removeReaction(messageId, reactionId),
),
);
}