debug: catch & trace interaction reply errors

This commit is contained in:
Dragory 2022-06-01 18:58:54 +03:00
parent 016330366e
commit 6df67da3cb
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
4 changed files with 27 additions and 15 deletions

View file

@ -205,7 +205,9 @@ export const MutesCmd = mutesCmd({
collector.on("collect", async (interaction: MessageComponentInteraction) => {
if (msg.author.id !== interaction.user.id) {
interaction.reply({ content: `You are not permitted to use these buttons.`, ephemeral: true });
interaction
.reply({ content: `You are not permitted to use these buttons.`, ephemeral: true })
.catch((err) => console.trace(err.message));
} else {
collector.resetTimer();
await interaction.deferUpdate();

View file

@ -23,10 +23,12 @@ export const onButtonInteraction = typedGuildEventListener<RoleButtonsPluginType
const buttons = config.buttons[name];
const option: TRoleButtonOption | undefined = buttons?.options[optionIndex];
if (!buttons || !option) {
args.interaction.reply({
ephemeral: true,
content: "Invalid option selected",
});
args.interaction
.reply({
ephemeral: true,
content: "Invalid option selected",
})
.catch((err) => console.trace(err.message));
return;
}
@ -39,10 +41,12 @@ export const onButtonInteraction = typedGuildEventListener<RoleButtonsPluginType
if (member.roles.cache.has(option.role_id)) {
rolesToRemove.push(option.role_id);
args.interaction.reply({
ephemeral: true,
content: `The role **${roleName}** will be removed shortly!`,
});
args.interaction
.reply({
ephemeral: true,
content: `The role **${roleName}** will be removed shortly!`,
})
.catch((err) => console.trace(err.message));
} else {
rolesToAdd.push(option.role_id);
@ -54,10 +58,12 @@ export const onButtonInteraction = typedGuildEventListener<RoleButtonsPluginType
}
}
args.interaction.reply({
ephemeral: true,
content: `You will receive the **${roleName}** role shortly!`,
});
args.interaction
.reply({
ephemeral: true,
content: `You will receive the **${roleName}** role shortly!`,
})
.catch((err) => console.trace(err.message));
}
for (const roleId of rolesToAdd) {

View file

@ -192,7 +192,9 @@ export async function displaySearch(
collector.on("collect", async (interaction: MessageComponentInteraction) => {
if (msg.author.id !== interaction.user.id) {
interaction.reply({ content: `You are not permitted to use these buttons.`, ephemeral: true });
interaction
.reply({ content: `You are not permitted to use these buttons.`, ephemeral: true })
.catch((err) => console.trace(err.message));
} else {
if (interaction.customId === `previousButton:${idMod}` && currentPage > 1) {
collector.stop();

View file

@ -27,7 +27,9 @@ export async function waitForButtonConfirm(
collector.on("collect", (interaction: MessageComponentInteraction) => {
if (options?.restrictToId && options.restrictToId !== interaction.user.id) {
interaction.reply({ content: `You are not permitted to use these buttons.`, ephemeral: true });
interaction
.reply({ content: `You are not permitted to use these buttons.`, ephemeral: true })
.catch((err) => console.trace(err.message));
} else {
if (interaction.customId.startsWith(`confirmButton:${idMod}:`)) {
message.delete();