text: const Discord = require("discord.js");
  const { stripIndents } = require("common-tags");
  const { promptMessage } = require("../../functions.js");
  
  module.exports = {
      name: "ban",
      category: "moderation",
      description: "bans the member",
      usage: "<id | mention>",
      run: async (client, message, args) => {
          const logChannel = message.guild.channels.cache.find(c => c.name === "logs") || message.channel;
  
          if (message.deletable) message.delete();
  
          // No args
          if (!args[0]) {
              return message.reply("Por favor, marque alguém para banir")
                  .then(m => m.delete(5000));
          }
  
          // No author permissions
          if (!message.member.hasPermission("BAN_MEMBERS")) {
              return message.reply("❌ Você não tem permissão de banir membros")
                  .then(m => m.delete(5000));
          
          }
          // No bot permissions
          if (!message.guild.me.hasPermission("BAN_MEMBERS")) {
              return message.reply("❌ não tenho permissão de banir membros")
                  .then(m => m.delete(5000));
          }
  
          const toBan = message.mentions.members.first() || message.guild.members.get(args[0]);
  
          // No member found
          if (!toBan) {
              return message.reply("membro não encontrado")
                  .then(m => m.delete(5000));
          }
  
          // Can't ban urself
          if (toBan.id === message.author.id) {
              return message.reply("Ei, não consigo te banir")
                  .then(m => m.delete(5000));
          }
  
          // Check if the user's banable
          if (!toBan.bannable) {
              return message.reply("Eu não consigo bani-lo por ter o cargo maior")
                  .then(m => m.delete(5000));
          }
          
          const embed = new Discord.MessageEmbed()
              .setColor("RANDOM")
              .setThumbnail(toBan.user.displayAvatarURL)
              .setFooter(message.member.displayName, message.author.displayAvatarURL)
              .setTimestamp()
              .setDescription(stripIndents`**membro banido** ${toBan} (${toBan.id})
              **- banido por:** ${message.member} (${message.member.id})
              **- Motivo:** ${args.slice(1).join(" ")}`);
  
          const promptEmbed = new Discord.MessageEmbed()
              .setColor("GREEN")
              .setAuthor(`Essa verificação é necessária para efetuação do banimento`)
              .setDescription(`Você quer banir ${toBan}?`)
  
          // Send the message
          await message.channel.send(promptEmbed).then(async msg => {
              // Await the reactions and the reactioncollector
              const emoji = await promptMessage(msg, message.author, 30, ["✅", "❌"]);
  
              // Verification stuffs
              if (emoji === "✅") {
                  msg.delete();
  
                  toBan.ban()
                      .catch(err => {
                          if (err) return message.channel.send(`Não foi possivel banir erro de banimento`) && console.log(err)
                      });
  
                  logChannel.send(embed);
              } else if (emoji === "❌") {
                  msg.delete();
  
                  message.reply(`ban cancelado`)
                      .then(m => m.delete(10000));
              }
          });
      }
  };
  