"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const discord_js_commando_1 = require("discord.js-commando"); const emoji_random_1 = __importDefault(require("emoji-random")); module.exports = class ClearModeration extends discord_js_commando_1.Command { constructor(client) { super(client, { name: 'clear', aliases: ['delete', 'del', 'c'], group: 'moderation', memberName: 'clear', description: 'Clears a specified amount of messages.', guildOnly: true, args: [ { key: 'deleteAmount', prompt: 'How many messages would you like to delete?', type: 'integer' } ], examples: [ 'uwu!clear 23', 'uwu!delete 75', 'uwu!del 32', 'uwu!c 45', 'uwu!d 84' ], throttling: { usages: 5, duration: 30 }, userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY', 'MANAGE_MESSAGES'], clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY', 'MANAGE_MESSAGES'] }); } run(msg, { deleteAmount }) { return __awaiter(this, void 0, void 0, function* () { if (msg.member.hasPermission('MANAGE_MESSAGES')) { if (!deleteAmount) { msg.reply('You haven\'t specified an amount of messages which should be deleted. ' + emoji_random_1.default.random()).then(deleteNotificationMessage => { deleteNotificationMessage.delete({ timeout: 2000 }); msg.delete({ timeout: 2000 }); }); } else if (isNaN(deleteAmount)) { msg.reply('The amount parameter isn\'t a number. ' + emoji_random_1.default.random()).then(deleteNotificationMessage => { deleteNotificationMessage.delete({ timeout: 2000 }); msg.delete({ timeout: 2000 }); }); } else if (deleteAmount > 100) { msg.reply('You can\'t delete more than 100 messages at once. ' + emoji_random_1.default.random()).then(deleteNotificationMessage => { deleteNotificationMessage.delete({ timeout: 2000 }); msg.delete({ timeout: 2000 }); }); } else if (deleteAmount < 1) { msg.reply('You have to delete at least 1 message. ' + emoji_random_1.default.random()).then(deleteNotificationMessage => { deleteNotificationMessage.delete({ timeout: 2000 }); msg.delete({ timeout: 2000 }); }); } else { var clearAmount = deleteAmount + 1; yield msg.channel.messages.fetch({ limit: clearAmount }).then(messages => { msg.channel.bulkDelete(messages); }); msg.reply('It\'s been deleted ~uwu ' + emoji_random_1.default.random()).then(deleteNotificationMessage => { deleteNotificationMessage.delete({ timeout: 2000 }); msg.delete({ timeout: 2000 }); }); } } else { msg.reply('Insufficent permsissions. ' + emoji_random_1.default.random()); } }); } }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvbW9kZXJhdGlvbi9jbGVhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLDZEQUErRDtBQUMvRCxnRUFBaUM7QUFFakMsTUFBTSxDQUFDLE9BQU8sR0FBRyxNQUFNLGVBQWdCLFNBQVEsNkJBQU87SUFDbEQsWUFBWSxNQUFNO1FBQ2QsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNWLElBQUksRUFBRSxPQUFPO1lBQ2IsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUM7WUFDL0IsS0FBSyxFQUFFLFlBQVk7WUFDbkIsVUFBVSxFQUFFLE9BQU87WUFDbkIsV0FBVyxFQUFFLHdDQUF3QztZQUNyRCxTQUFTLEVBQUUsSUFBSTtZQUNmLElBQUksRUFBRTtnQkFDRjtvQkFDSSxHQUFHLEVBQUUsY0FBYztvQkFDbkIsTUFBTSxFQUFFLDZDQUE2QztvQkFDckQsSUFBSSxFQUFFLFNBQVM7aUJBQ2xCO2FBQ0o7WUFDRCxRQUFRLEVBQUU7Z0JBQ04sY0FBYztnQkFDZCxlQUFlO2dCQUNmLFlBQVk7Z0JBQ1osVUFBVTtnQkFDVixVQUFVO2FBQ2I7WUFDRCxVQUFVLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDZjtZQUNELGVBQWUsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxpQkFBaUIsQ0FBQztZQUN0RixpQkFBaUIsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxpQkFBaUIsQ0FBQztTQUN6RSxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0ssR0FBRyxDQUFDLEdBQW9CLEVBQUUsRUFBRSxZQUFZLEVBQUU7O1lBQzVDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsRUFBRTtnQkFDN0MsSUFBSSxDQUFD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