mirror of
https://github.com/danbulant/discord.js
synced 2026-05-27 22:11:53 +00:00
* Add support for MessageReaction#remove and MESSAGE_REACTION_REMOVE_EMOJI * Remove reaction from cache Co-Authored-By: matthewfripp <50251454+matthewfripp@users.noreply.github.com> * fix: message may be partial * Clarify what the event entails * Document client in MessageReaction Co-Authored-By: SpaceEEC <spaceeec@yahoo.com> * await the REST call * Add MessageReaction#remove to typings Co-authored-by: matthewfripp <50251454+matthewfripp@users.noreply.github.com> Co-authored-by: SpaceEEC <spaceeec@yahoo.com>
28 lines
899 B
JavaScript
28 lines
899 B
JavaScript
'use strict';
|
|
|
|
const Action = require('./Action');
|
|
const { Events } = require('../../util/Constants');
|
|
|
|
class MessageReactionRemoveEmoji extends Action {
|
|
handle(data) {
|
|
const channel = this.getChannel(data);
|
|
if (!channel || channel.type === 'voice') return false;
|
|
|
|
const message = this.getMessage(data, channel);
|
|
if (!message) return false;
|
|
|
|
const reaction = this.getReaction(data, message);
|
|
if (!reaction) return false;
|
|
if (!message.partial) message.reactions.delete(reaction.emoji.id || reaction.emoji.name);
|
|
|
|
/**
|
|
* Emitted when a bot removes an emoji reaction from a cached message.
|
|
* @event Client#messageReactionRemoveEmoji
|
|
* @param {MessageReaction} reaction The reaction that was removed
|
|
*/
|
|
this.client.emit(Events.MESSAGE_REACTION_REMOVE_EMOJI, reaction);
|
|
return { reaction };
|
|
}
|
|
}
|
|
|
|
module.exports = MessageReactionRemoveEmoji;
|