From db9c05c2e96d35ae6ab4b01822a3da1086148878 Mon Sep 17 00:00:00 2001 From: Vermium Sifell Date: Fri, 21 Oct 2022 16:35:18 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Moderation=20Command=20is=20now?= =?UTF-8?q?=20using=20guard=20classes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/commands/moderation/index.ts | 9 +++++---- src/commands/moderation/modules/index.ts | 3 --- src/commands/moderation/modules/prune/index.ts | 15 +++++++++------ 3 files changed, 14 insertions(+), 13 deletions(-) delete mode 100644 src/commands/moderation/modules/index.ts diff --git a/src/commands/moderation/index.ts b/src/commands/moderation/index.ts index e74193e..cfc9e20 100644 --- a/src/commands/moderation/index.ts +++ b/src/commands/moderation/index.ts @@ -1,20 +1,21 @@ import { SlashCommandBuilder } from "@discordjs/builders"; import { ChatInputCommandInteraction } from "discord.js"; -import modules from "./modules"; -export const moduleData = modules; +// Modules +import modulePrune from "./modules/prune"; export const builder = new SlashCommandBuilder() .setName("moderation") .setDescription("Moderation.") + .setDMPermission(false) - .addSubcommand(modules.prune.builder); + .addSubcommand(modulePrune.builder); // Execute the command export const execute = async (interaction: ChatInputCommandInteraction) => { switch (interaction.options.getSubcommand()) { case "prune": { - await modules.prune.execute(interaction); + await modulePrune.execute(interaction); break; } default: { diff --git a/src/commands/moderation/modules/index.ts b/src/commands/moderation/modules/index.ts deleted file mode 100644 index e7dd532..0000000 --- a/src/commands/moderation/modules/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import prune from "./prune"; - -export default { prune }; diff --git a/src/commands/moderation/modules/prune/index.ts b/src/commands/moderation/modules/prune/index.ts index 80251b9..0245a33 100644 --- a/src/commands/moderation/modules/prune/index.ts +++ b/src/commands/moderation/modules/prune/index.ts @@ -6,17 +6,13 @@ import { EmbedBuilder, PermissionsBitField, } from "discord.js"; +import deferReply from "../../../../handlers/deferReply"; +import checkPermission from "../../../../helpers/checkPermission"; // Configurations import getEmbedConfig from "../../../../helpers/getEmbedData"; // Function export default { - metadata: { - guildOnly: true, - ephemeral: false, - permissions: [PermissionsBitField.Flags.ManageMessages], - }, - builder: (command: SlashCommandSubcommandBuilder) => { return command .setName("prune") @@ -32,6 +28,13 @@ export default { ); }, execute: async (interaction: ChatInputCommandInteraction) => { + await deferReply(interaction, false); + + await checkPermission( + interaction, + PermissionsBitField.Flags.ManageMessages + ); + const { errorColor, footerText, footerIcon } = await getEmbedConfig( interaction.guild );