diff --git a/src/commands/Community/meta.js b/src/commands/Community/meta.js index 4f14af4..6e41184 100644 --- a/src/commands/Community/meta.js +++ b/src/commands/Community/meta.js @@ -2,7 +2,8 @@ const { SlashCommandBuilder, ActionRowBuilder, StringSelectMenuBuilder, - EmbedBuilder, // Adicionando o EmbedBuilder para usar no embed + ButtonBuilder, // Adicionando o ButtonBuilder para o botão + EmbedBuilder, // Para o embed de exibição de usuários } = require('discord.js'); const conn = require('../../../database/db'); @@ -42,14 +43,39 @@ const { .setPlaceholder('Escolhe o recurso...') .addOptions(options); - const row = new ActionRowBuilder().addComponents(select); + const rowSelect = new ActionRowBuilder().addComponents(select); + const rowButton = new ActionRowBuilder().addComponents( + new ButtonBuilder() + .setCustomId('mostrarDropdown') + .setLabel('Escolher Recurso') + .setStyle('PRIMARY') + ); await interaction.reply({ - content: '🛠️ Escolhe o recurso que queres editar:', - components: [row], + content: '🛠️ Clica no botão para escolher o recurso:', + components: [rowButton], ephemeral: true, }); + // Espera pelo clique no botão + const filter = (i) => i.customId === 'mostrarDropdown' && i.user.id === interaction.user.id; + const collector = interaction.channel.createMessageComponentCollector({ filter, time: 15000 }); + + collector.on('collect', async (i) => { + if (i.customId === 'mostrarDropdown') { + await i.update({ + content: '🛠️ Agora escolhe o recurso:', + components: [rowSelect], // Exibe o menu de seleção após clicar no botão + }); + } + }); + + collector.on('end', (collected) => { + if (collected.size === 0) { + interaction.editReply({ content: '❌ O tempo para escolher o recurso expirou.' }); + } + }); + // Parte adicional que recupera e exibe informações de usuários e suas metas try { const [usersRows] = await conn.execute('SELECT u.id, u.discord_id, u.discord_username, u.nig, u.meta, c.name AS nomedocargo FROM users u JOIN choices c ON u.cargo = c.value ORDER BY c.id DESC');