summary refs log tree commit diff
path: root/src/api
diff options
context:
space:
mode:
authorCyber <mateusz.hf18@gmail.com>2025-10-22 18:39:25 +0200
committerGitHub <noreply@github.com>2025-10-22 18:39:25 +0200
commit542c9c6e82775f7a79c4eeef5825694841f557c6 (patch)
tree39da07fec0eb994f9c2ba71668961554063dc3d5 /src/api
parentMerge pull request #1361 from CyberL1/fix/application-command-index (diff)
downloadserver-ts-542c9c6e82775f7a79c4eeef5825694841f557c6.tar.xz
Revert "fix: no sense it doing it twice when it could be done in one query"
Diffstat (limited to 'src/api')
-rw-r--r--src/api/routes/guilds/#guild_id/application-command-index.ts12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/api/routes/guilds/#guild_id/application-command-index.ts b/src/api/routes/guilds/#guild_id/application-command-index.ts

index 2162c1f4..006264ad 100644 --- a/src/api/routes/guilds/#guild_id/application-command-index.ts +++ b/src/api/routes/guilds/#guild_id/application-command-index.ts
@@ -19,6 +19,7 @@ import { route } from "@spacebar/api"; import { Request, Response, Router } from "express"; import { Application, ApplicationCommand, Member, Snowflake } from "@spacebar/util"; +import { IsNull } from "typeorm"; const router = Router({ mergeParams: true }); @@ -30,7 +31,6 @@ router.get("/", route({}), async (req: Request, res: Response) => { applications.push(await Application.findOneOrFail({ where: { id: member.id } })); } - const applicationCommands: ApplicationCommand[] = []; const applicationsSendable = []; for (const application of applications) { @@ -42,13 +42,19 @@ router.get("/", route({}), async (req: Request, res: Response) => { id: application.id, name: application.name, }); + } + + const globalApplicationCommands: ApplicationCommand[] = []; + const guildApplicationCommands: ApplicationCommand[] = []; - applicationCommands.push(await ApplicationCommand.findOneOrFail({ where: { application_id: application.id } })); + for (const application of applications) { + globalApplicationCommands.push(await ApplicationCommand.findOneOrFail({ where: { application_id: application.id, guild_id: IsNull() } })); + guildApplicationCommands.push(await ApplicationCommand.findOneOrFail({ where: { application_id: application.id, guild_id: req.params.guild_id } })); } const applicationCommandsSendable = []; - for (const command of applicationCommands) { + for (const command of [...globalApplicationCommands, ...guildApplicationCommands]) { applicationCommandsSendable.push({ application_id: command.application_id, description: command.description,