const { SlashCommandBuilder, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle, StringSelectMenuBuilder, TextInputStyle, TextInputBuilder, ModalBuilder, ComponentType } = require('discord.js'); const zagel = new EmbedBuilder() .setTitle('owly') .setColor('White') .setDescription('click here to send an anonymous message to someone') .setThumbnail('https://i.imgur.com/FpOdnpX.png') .setImage('https://media.discordapp.net/attachments/970479822482583592/1075960677958697041/20E5C522-37E8-473A-91A2-CC978366E6A6.png?width=1097&height=701'); const stylist = new EmbedBuilder() .setDescription('**__test__**'); const led = new ActionRowBuilder() .addComponents( new ButtonBuilder() .setCustomId('fly') .setLabel('click to send') .setEmoji('<:real:1079104068888318052>') .setStyle(ButtonStyle.Secondary), ); const styles = new ActionRowBuilder() .addComponents( new StringSelectMenuBuilder() .setCustomId('stilts') .setPlaceholder('Choose') .setMinValues(0) .setMaxValues(1) .addOptions( { label: 'green', description: 'a message with green color', value: 'small', }, { label: 'blue', description: 'a message with blue color', value: 'salam', }, { label: 'darker blue', description: 'a message with a darker blue', value: 'dhoomy', }, ), ); module.exports = { data: new SlashCommandBuilder() .setName('zajjel') .setDescription('click here to send an anonymous message to someone') .addUserOption(option => option.setName('username') .setDescription('choose the user') .setRequired(true)), async execute(interaction) { const message = await interaction.reply({ embeds: [zagel], components: [led], ephemeral: true, fetchReply: true }); const username = interaction.options.getUser('username'); const collectorha = message.createMessageComponentCollector({ componentType: ComponentType.Button }); collectorha.on('collect', async i => { if (i.customId === 'fly') { i.update({ embeds: [stylist], components: [styles], ephemeral: true }); } }); const collectorh = message.createMessageComponentCollector(); collectorh.on('collect', async i => { if (i.isStringSelectMenu()) { let modal const selected = i.values[0]; if (selected === 'small') { const capp = new ModalBuilder() .setCustomId('smalle') .setTitle("message's content"); const first = new TextInputBuilder() .setCustomId('content') .setLabel("input your message's content") .setStyle(TextInputStyle.Paragraph) .setRequired(true); const content = new ActionRowBuilder().addComponents(first); capp.addComponents(content); modal = capp } if (selected === 'salam') { const hilal = new ModalBuilder() .setCustomId('dosri') .setTitle("message's content"); const slm = new TextInputBuilder() .setCustomId('content2') .setLabel("input your message's content") .setStyle(TextInputStyle.Paragraph) .setRequired(true); const ring = new ActionRowBuilder().addComponents(slm); hilal.addComponents(ring); modal = hilal } if (selected === 'dhoomy') { const nines = new ModalBuilder() .setCustomId('999') .setTitle("message's content"); const own = new TextInputBuilder() .setCustomId('content3') .setLabel("input your message's content") .setStyle(TextInputStyle.Paragraph) .setRequired(true); const fer = new ActionRowBuilder().addComponents(own); nines.addComponents(fer); modal = nines } i.showModal(modal) // eslint-disable-next-line no-shadow global.client.on('interactionCreate', async i => { if (!i.isModalSubmit()) { return; } await interaction.deleteReply() await i.reply({ content: '**__message sent!__**', embeds: [], components: [], ephemeral: true }); if (i.customId === 'smalle') { const smallcontent = i.fields.getTextInputValue('content'); const saad = new EmbedBuilder() .setTitle('a message arrived..') .setAuthor({ name: 'david', iconURL: 'https://i.imgur.com/yaQtiKd.png' }) .setColor('#3e8d60') .setDescription(`${smallcontent}`) .setThumbnail('https://i.imgur.com/AMj5pCp.png') .setImage('https://i.imgur.com/Nb83TMG.png'); const log1 = new EmbedBuilder() .setTitle('a message was sent') .setDescription(`from ${i.user.tag} to ${username.tag}`) .setColor('#3e8d60') .addFields( { name: 'message content:', value: `${smallcontent}` }); const smallbye = global.client.users.cache.get(`${username.id}`); await smallbye.send({ embeds: [saad] }); const log = global.client.channels.cache.get('1079092162513354812'); await log.send({ embeds: [log1] }); } if (i.customId === 'dosri') { const salemcontent = i.fields.getTextInputValue('content2'); const salem = new EmbedBuilder() .setTitle('a message arrived..') .setAuthor({ name: 'mike', iconURL: 'https://i.imgur.com/WqP3CsH.png' }) .setColor('#2357c8') .setDescription(`${salemcontent}`) .setThumbnail('https://i.imgur.com/d69ywEZ.png') .setImage('https://i.imgur.com/cyN4PeN.png'); const log2 = new EmbedBuilder() .setTitle('a message was sent') .setDescription(`from ${i.user.tag} to ${username.tag}`) .setColor('#2357c8') .addFields( { name: 'message content:', value: `${salemcontent}` }); const salembye = global.client.users.cache.get(`${username.id}`); await salembye.send({ embeds: [salem] }); const log = global.client.channels.cache.get('1079092162513354812'); await log.send({ embeds: [log2] }); } if (i.customId === '999') { const dhomcontent = i.fields.getTextInputValue('content3'); const dhom = new EmbedBuilder() .setTitle('a message arrived..') .setAuthor({ name: 'philips', iconURL: 'https://i.imgur.com/ADa9Pnu.png' }) .setColor('Blue') .setDescription(`${dhomcontent}`) .setThumbnail('https://i.imgur.com/pNBObzV.png') .setImage('https://i.imgur.com/gDHkR6B.png'); const log3 = new EmbedBuilder() .setTitle('a message was sent') .setDescription(`from ${i.user.tag} to ${username.tag}`) .setColor('Blue') .addFields( { name: 'message content:', value: `${dhomcontent}` }); const ownerbye = global.client.users.cache.get(`${username.id}`); await ownerbye.send({ embeds: [dhom] }); const log = global.client.channels.cache.get('1079092162513354812'); await log.send({ embeds: [log3] }); } }); } }); }, };