const { SlashCommandBuilder } = require('@discordjs/builders'); const fn = require('../functions.js'); const strings = require('../strings.json'); module.exports = { data: new SlashCommandBuilder() .setName('member') .setDescription('Manage NodBot paid memberships.') // Add .addSubcommand(subcommand => subcommand .setName('add') .setDescription('Add an authorized paying member.') .addUserOption(option => option .setName('newmember') .setDescription('The member to add.') .setRequired(true) ) ) // Remove .addSubcommand(subcommand => subcommand .setName('remove') .setDescription('Remove an authorized paying member.') .addUserOption(option => option .setName('newmember') .setDescription('The member to remove.') .setRequired(true) ) ), async execute(interaction) { await interaction.deferReply(); try { // Code Here... const subcommand = interaction.options.getSubcommand(); const newmember = interaction.options.getUser('newmember'); switch (subcommand) { // Add case "add": //TODO fn.addMember(interaction.client, newmember.id, newmember.username); interaction.editReply(`Member Added: ${newmember.username} [${newmember.id}]`); break; // Remove case "remove": fn.removeMember(interaction.client, newmember.id); interaction.editReply(`Member Removed: ${newmember.username} [${newmember.id}]`); break; // Default default: interaction.editReply(`No Changes: ${newmember.username} [${newmember.id}]`); break; } } catch (err) { const errorId = fn.generateErrorId(); console.error(`${errorId}: err`); await interaction.editReply(`Sorry, an error has occured. Error ID: ${errorId}`); } } };