From 7e3bfd5a0deb2d3a4892f64643a9b0b0f2fbbc01 Mon Sep 17 00:00:00 2001 From: Cynthia Foxwell Date: Tue, 9 Nov 2021 11:06:11 -0700 Subject: [PATCH] utils.selectionMessage: move to interactionCreate event now that it exists --- src/lib/utils.js | 35 +++++++++-------------------------- 1 file changed, 9 insertions(+), 26 deletions(-) diff --git a/src/lib/utils.js b/src/lib/utils.js index 8f374bf..ddc2a6a 100644 --- a/src/lib/utils.js +++ b/src/lib/utils.js @@ -205,46 +205,31 @@ async function selectionMessage(msg, heading, options, timeout = 30000) { const displayMessage = await msg.channel.createMessage(data); return await new Promise((resolve, reject) => { - function listener(packet) { - if (packet.t == "INTERACTION_CREATE") { - const interaction = packet.d; + function listener(interaction) { + if (interaction instanceof Eris.ComponentInteraction) { const user = interaction.member.user || interaction.user; if ( user.id == msg.author.id && - interaction.channel_id == msg.channel.id && + interaction.channel.id == msg.channel.id && interaction.message.components[0].components[0].custom_id == msg.id ) { if (interaction.data.custom_id == "cancel") { - hf.events.remove("unknown", `selection.${msg.id}`); + hf.events.remove("interactionCreate", `selection.${msg.id}`); clearTimeout(hf.selectionMessages.get(msg.id)); hf.selectionMessages.remove(msg.id); - hf.bot.requestHandler.request( - "POST", - `/interactions/${interaction.id}/${interaction.token}/callback`, - false, - { - type: 6, - } - ); + interaction.deferUpdate(); displayMessage.delete(); reject("Canceled"); } else { - hf.events.remove("unknown", `selection.${msg.id}`); + hf.events.remove("interactionCreate", `selection.${msg.id}`); clearTimeout(hf.selectionMessages.get(msg.id)); hf.selectionMessages.remove(msg.id); - hf.bot.requestHandler.request( - "POST", - `/interactions/${interaction.id}/${interaction.token}/callback`, - false, - { - type: 6, - } - ); + interaction.deferUpdate(); displayMessage.delete(); @@ -257,15 +242,13 @@ async function selectionMessage(msg, heading, options, timeout = 30000) { } } } - hf.events.add("unknown", `selection.${msg.id}`, listener); + hf.events.add("interactionCreate", `selection.${msg.id}`, listener); hf.selectionMessages.set( msg.id, setTimeout(() => { - hf.events.remove("messageCreate", `selection.${msg.id}`); + hf.events.remove("interactionCreate", `selection.${msg.id}`); hf.selectionMessages.remove(msg.id); - displayMessage.delete(); - reject("Request timed out"); }, timeout) );