From 3998b063866f234e370ebd6cf14a85d50c7242ea Mon Sep 17 00:00:00 2001 From: Cory J Reid <11530109+coryjreid@users.noreply.github.com> Date: Sun, 23 Jul 2023 17:06:35 -0600 Subject: [PATCH] Autocomplete Suggestion Improvements for Favorites Use Command (#956) Co-authored-by: Max Isom --- CHANGELOG.md | 4 +++- src/commands/favorites.ts | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e1f484a..0edf82e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [2.4.0] - 2023-07-19 +### Fixed +- Autocomplete suggestion search for `favorites use` command is no longer case-sensitive +- Autocomplete suggestion results for `favorites use` could return >25 results which Discord's API does not support ## [2.4.0] - 2023-07-19 ### Added diff --git a/src/commands/favorites.ts b/src/commands/favorites.ts index 303dc22..d43a92c 100644 --- a/src/commands/favorites.ts +++ b/src/commands/favorites.ts @@ -89,14 +89,16 @@ export default class implements Command { }, }); - let results = query === '' ? favorites : favorites.filter(f => f.name.startsWith(query)); + let results = query === '' ? favorites : favorites.filter(f => f.name.toLowerCase().startsWith(query.toLowerCase())); if (subcommand === 'remove') { // Only show favorites that user is allowed to remove results = interaction.member?.user.id === interaction.guild?.ownerId ? results : results.filter(r => r.authorId === interaction.member!.user.id); } - await interaction.respond(results.map(r => ({ + // Limit results to 25 maximum per Discord limits + const trimmed = results.length > 25 ? results.slice(0, 25) : results; + await interaction.respond(trimmed.map(r => ({ name: r.name, value: r.name, })));