From ec5179cc4163704c43df5366e71b13029b66f9e0 Mon Sep 17 00:00:00 2001 From: Isaac Date: Wed, 26 Feb 2025 20:52:53 +0000 Subject: [PATCH] fix: panel emoji error handling --- src/routes/api/admin/guilds/[guild]/panels.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/routes/api/admin/guilds/[guild]/panels.js b/src/routes/api/admin/guilds/[guild]/panels.js index 68e094a..d9917e6 100644 --- a/src/routes/api/admin/guilds/[guild]/panels.js +++ b/src/routes/api/admin/guilds/[guild]/panels.js @@ -136,18 +136,17 @@ module.exports.post = fastify => ({ const human_errors = []; const action_row = error?.rawError?.errors?.components?.['0']; + const buttons_or_options = { + BUTTON: action_row?.components, + MENU: action_row?.components?.['0']?.options, + }[data.type]; - if (action_row) { - const buttons_or_options = { - BUTTON: action_row.components, - MENU: action_row.components['0'].options, - }[data.type]; - + if (buttons_or_options) { for (const [k, v] of Object.entries(buttons_or_options)) { // const category = categories.find(category => category.id === parseInt(k)); const category = categories[parseInt(k)]; // k is a string of the index, not ID // eslint-disable-next-line no-underscore-dangle - const emoji_errors = v.emoji?.id?._errors; + const emoji_errors = v?.emoji?.id?._errors; if (emoji_errors) { const invalid_name = emoji_errors[0]?.message?.match(/Value "(.*)" is not snowflake/)?.[1]; if (invalid_name) {