guilded.ts
Version:
A powerful NPM module that allows you to easily interact with the Guilded API.
35 lines • 1.25 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MessageReactionCollector = void 0;
const Collector_1 = require("./Collector");
/**
* The reaction collector for a message.
* @example new MessageReactionCollector(message);
*/
class MessageReactionCollector extends Collector_1.Collector {
message;
/**
* @param message The message the reaction collector belongs to.
* @param options The options of the reaction collector.
*/
constructor(message, options) {
super(message.client, options);
this.message = message;
this.options.dispose =
options?.dispose ?? this.client.options.disposeCollectedMessageReactions;
this.client.on('messageReactionAdd', this.collectReaction.bind(this));
this.client.on('messageReactionRemove', this.disposeReaction.bind(this));
}
/** @ignore */
collectReaction(reaction) {
if (reaction.messageId !== this.message.id)
return;
this.collect(reaction);
}
/** @ignore */
disposeReaction(reaction) {
this.dispose(reaction.id);
}
}
exports.MessageReactionCollector = MessageReactionCollector;
//# sourceMappingURL=MessageReactionCollector.js.map