diff --git a/apps/api/src/guild/leaderboards/guild-leaderboard.service.ts b/apps/api/src/guild/leaderboards/guild-leaderboard.service.ts index 430f00294..21863b5a2 100644 --- a/apps/api/src/guild/leaderboards/guild-leaderboard.service.ts +++ b/apps/api/src/guild/leaderboards/guild-leaderboard.service.ts @@ -41,7 +41,7 @@ export class GuildLeaderboardService extends LeaderboardService { const ranking = await this.getLeaderboardRankings(Guild, [field], input); - if (!ranking || !ranking[0].rank) throw new GuildNotFoundException(); + if (!ranking || !ranking[0] || !ranking[0].rank) throw new GuildNotFoundException(); return ranking[0].rank; } diff --git a/apps/discord-bot/src/commands/leaderboards/base.leaderboard-command.tsx b/apps/discord-bot/src/commands/leaderboards/base.leaderboard-command.tsx index b9305dfab..9a6ac343d 100644 --- a/apps/discord-bot/src/commands/leaderboards/base.leaderboard-command.tsx +++ b/apps/discord-bot/src/commands/leaderboards/base.leaderboard-command.tsx @@ -117,7 +117,7 @@ export class BaseLeaderboardCommand { if (interaction.getUserId() === userId && !message.ephemeral) { up.disable(page === 0); - currentPage = page || currentPage; + currentPage = page ?? currentPage; const row = new ActionRowBuilder([up, down, searchDocument, searchPosition]); context.reply({ diff --git a/apps/discord-bot/src/commands/leaderboards/guild-leaderboard.argument.ts b/apps/discord-bot/src/commands/leaderboards/guild-leaderboard.argument.ts index bdcf57ed7..dc04cbe17 100644 --- a/apps/discord-bot/src/commands/leaderboards/guild-leaderboard.argument.ts +++ b/apps/discord-bot/src/commands/leaderboards/guild-leaderboard.argument.ts @@ -23,7 +23,7 @@ const list = getLeaderboardFields(Guild).map( ); const fuse = new Fuse(list, { - keys: ["name", "key"], + keys: ["name", "value"], includeScore: false, shouldSort: true, isCaseSensitive: false, diff --git a/apps/discord-bot/src/commands/leaderboards/player-leaderboard.argument.ts b/apps/discord-bot/src/commands/leaderboards/player-leaderboard.argument.ts index 7839fa91c..3e7bd1106 100644 --- a/apps/discord-bot/src/commands/leaderboards/player-leaderboard.argument.ts +++ b/apps/discord-bot/src/commands/leaderboards/player-leaderboard.argument.ts @@ -25,7 +25,7 @@ const entries = Object.entries( ); const FUSE_OPTIONS = { - keys: ["name", "key"], + keys: ["name", "value"], includeScore: false, shouldSort: true, isCaseSensitive: false, diff --git a/packages/discord/src/services/api.service.ts b/packages/discord/src/services/api.service.ts index a51d79bd1..2e2ec01ae 100644 --- a/packages/discord/src/services/api.service.ts +++ b/packages/discord/src/services/api.service.ts @@ -190,7 +190,8 @@ export class ApiService extends StatsifyApiService { type: LeaderboardQuery ) { return super.getPlayerLeaderboard(field, input, type).catch((err: AxiosError) => { - if ((err.response?.data as PlayerNotFoundException).statusCode === 404) return null; + if (!err.response || !err.response.data) throw this.unknownError(); + if ((err.response.data as PlayerNotFoundException).statusCode === 404) return null; throw new ErrorMessage("errors.leaderboardNotFound"); }); } @@ -201,7 +202,8 @@ export class ApiService extends StatsifyApiService { type: LeaderboardQuery ) { return super.getGuildLeaderboard(field, input, type).catch((err: AxiosError) => { - if ((err.response?.data as GuildNotFoundException).statusCode === 404) return null; + if (!err.response || !err.response.data) throw this.unknownError(); + if ((err.response.data as GuildNotFoundException).statusCode === 404) return null; throw new ErrorMessage("errors.leaderboardNotFound"); }); }