zappyzep/backend/src/plugins/ReactionRoles/commands/ClearReactionRolesCmd.ts
2020-10-01 01:43:38 +03:00

28 lines
998 B
TypeScript

import { reactionRolesCmd } from "../types";
import { commandTypeHelpers as ct } from "../../../commandTypes";
import { sendErrorMessage, sendSuccessMessage } from "../../../pluginUtils";
import { TextChannel } from "eris";
export const ClearReactionRolesCmd = reactionRolesCmd({
trigger: "reaction_roles clear",
permission: "can_manage",
signature: {
message: ct.messageTarget(),
},
async run({ message: msg, args, pluginData }) {
const existingReactionRoles = pluginData.state.reactionRoles.getForMessage(args.message.messageId);
if (!existingReactionRoles) {
sendErrorMessage(pluginData, msg.channel, "Message doesn't have reaction roles on it");
return;
}
pluginData.state.reactionRoles.removeFromMessage(args.message.messageId);
const targetMessage = await args.message.channel.getMessage(args.message.messageId);
await targetMessage.removeReactions();
sendSuccessMessage(pluginData, msg.channel, "Reaction roles cleared");
},
});