diff options
Diffstat (limited to 'src/commands/moderation/kick.ts')
-rw-r--r-- | src/commands/moderation/kick.ts | 40 |
1 files changed, 17 insertions, 23 deletions
diff --git a/src/commands/moderation/kick.ts b/src/commands/moderation/kick.ts index d70bbfb..ccf35a9 100644 --- a/src/commands/moderation/kick.ts +++ b/src/commands/moderation/kick.ts @@ -1,4 +1,4 @@ -import { BushCommand, BushGuildMember, BushMessage, BushSlashMessage, BushUser } from '@lib'; +import { AllowedMentions, BushCommand, BushGuildMember, BushMessage, BushSlashMessage, BushUser } from '@lib'; export default class KickCommand extends BushCommand { public constructor() { @@ -53,36 +53,30 @@ export default class KickCommand extends BushCommand { async exec(message: BushMessage | BushSlashMessage, { user, reason }: { user: BushUser; reason?: string }): Promise<unknown> { const member = message.guild.members.cache.get(user.id) as BushGuildMember; const canModerateResponse = this.client.util.moderationPermissionCheck(message.member, member, 'kick'); - // const victimBoldTag = `**${member.user.tag}**`; if (canModerateResponse !== true) { return message.util.reply(canModerateResponse); } - const response = await member.bushKick({ + const responseCode = await member.bushKick({ reason, moderator: message.author }); - switch (response) { - case 'missing permissions': - return message.util.reply( - `${this.client.util.emojis.error} Could not kick **${member.user.tag}** because I am missing the \`Kick Members\` permission.` - ); - case 'error kicking': - return message.util.reply( - `${this.client.util.emojis.error} An error occurred while trying to kick **${member.user.tag}**.` - ); - case 'error creating modlog entry': - return message.util.reply( - `${this.client.util.emojis.error} While muting **${member.user.tag}**, there was an error creating a modlog entry, please report this to my developers.` - ); - case 'failed to dm': - return message.util.reply( - `${this.client.util.emojis.warn} Kicked **${member.user.tag}** however I could not send them a dm.` - ); - case 'success': - return message.util.reply(`${this.client.util.emojis.success} Successfully kicked **${member.user.tag}**.`); - } + const responseMessage = () => { + switch (responseCode) { + case 'missing permissions': + return `${this.client.util.emojis.error} Could not kick **${member.user.tag}** because I am missing the \`Kick Members\` permission.`; + case 'error kicking': + return `${this.client.util.emojis.error} An error occurred while trying to kick **${member.user.tag}**.`; + case 'error creating modlog entry': + return `${this.client.util.emojis.error} While muting **${member.user.tag}**, there was an error creating a modlog entry, please report this to my developers.`; + case 'failed to dm': + return `${this.client.util.emojis.warn} Kicked **${member.user.tag}** however I could not send them a dm.`; + case 'success': + return `${this.client.util.emojis.success} Successfully kicked **${member.user.tag}**.`; + } + }; + return await message.util.reply({ content: responseMessage(), allowedMentions: AllowedMentions.none() }); } } |