From 4c3e4ef9a5882c022ff3e766dbe40b788cbbb585 Mon Sep 17 00:00:00 2001 From: DJj123dj <80536295+DJj123dj@users.noreply.github.com> Date: Sun, 27 Apr 2025 18:17:38 +0200 Subject: [PATCH] Fixed bug due to discord.js new components --- package.json | 4 ++-- src/core/api/modules/responder.ts | 2 ++ src/core/api/openticket/transcript.ts | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index eb3610f..8e39cfd 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "@discordjs/rest": "^2.4.2", "@types/node": "^22.5.0", "ansis": "^2.3.0", - "discord.js": "^14.17.2", + "discord.js": "^14.19.1", "formatted-json-stringify": "^1.1.0", "typescript": "^5.5.4" }, @@ -42,7 +42,7 @@ "#opendiscord": "./dist/src/index.js", "#opendiscord-types": "./dist/src/core/api/api.js" }, - "funding":{ + "funding": { "type": "individual", "url": "https://github.com/sponsors/DJj123dj" } diff --git a/src/core/api/modules/responder.ts b/src/core/api/modules/responder.ts index d09e13d..a732d2a 100644 --- a/src/core/api/modules/responder.ts +++ b/src/core/api/modules/responder.ts @@ -611,6 +611,7 @@ export class ODButtonResponderInstance { getMessageComponent(type:"button"|"string-dropdown"|"user-dropdown"|"channel-dropdown"|"role-dropdown"|"mentionable-dropdown", id:string|RegExp): discord.ButtonComponent|discord.StringSelectMenuComponent|discord.RoleSelectMenuComponent|discord.ChannelSelectMenuComponent|discord.MentionableSelectMenuComponent|discord.UserSelectMenuComponent|null { let result: discord.ButtonComponent|discord.StringSelectMenuComponent|discord.RoleSelectMenuComponent|discord.ChannelSelectMenuComponent|discord.MentionableSelectMenuComponent|discord.UserSelectMenuComponent|null = null this.message.components.forEach((row) => { + if (row.type != discord.ComponentType.ActionRow) return row.components.forEach((component) => { if (type == "button" && component.type == discord.ComponentType.Button && component.customId && ((typeof id == "string") ? component.customId == id : id.test(component.customId))) result = component else if (type == "string-dropdown" && component.type == discord.ComponentType.StringSelect && component.customId && ((typeof id == "string") ? component.customId == id : id.test(component.customId))) result = component @@ -898,6 +899,7 @@ export class ODDropdownResponderInstance { getMessageComponent(type:"button"|"string-dropdown"|"user-dropdown"|"channel-dropdown"|"role-dropdown"|"mentionable-dropdown", id:string|RegExp): discord.ButtonComponent|discord.StringSelectMenuComponent|discord.RoleSelectMenuComponent|discord.ChannelSelectMenuComponent|discord.MentionableSelectMenuComponent|discord.UserSelectMenuComponent|null { let result: discord.ButtonComponent|discord.StringSelectMenuComponent|discord.RoleSelectMenuComponent|discord.ChannelSelectMenuComponent|discord.MentionableSelectMenuComponent|discord.UserSelectMenuComponent|null = null this.message.components.forEach((row) => { + if (row.type != discord.ComponentType.ActionRow) return row.components.forEach((component) => { if (type == "button" && component.type == discord.ComponentType.Button && component.customId && ((typeof id == "string") ? component.customId == id : id.test(component.customId))) result = component else if (type == "string-dropdown" && component.type == discord.ComponentType.StringSelect && component.customId && ((typeof id == "string") ? component.customId == id : id.test(component.customId))) result = component diff --git a/src/core/api/openticket/transcript.ts b/src/core/api/openticket/transcript.ts index 49e5ca9..9e86382 100644 --- a/src/core/api/openticket/transcript.ts +++ b/src/core/api/openticket/transcript.ts @@ -257,6 +257,7 @@ export class ODTranscriptCollector { const rows: ODTranscriptComponentRowData[] = [] msg.components.forEach((row) => { const components: ODTranscriptComponentRowData["components"] = [] + if (row.type != discord.ComponentType.ActionRow) return row.components.forEach((component) => { if (component.type == discord.ComponentType.Button){ components.push({