From 222f62fdc07cc239014e70700fe48a23dbc42104 Mon Sep 17 00:00:00 2001 From: ITOH Date: Thu, 30 Sep 2021 20:35:59 +0200 Subject: [PATCH 1/5] feat(types): add DiscordInteractionTypes.ApplicationCommandAutocomplete --- src/types/interactions/interaction_types.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/types/interactions/interaction_types.ts b/src/types/interactions/interaction_types.ts index 561b6ee53..d5f280921 100644 --- a/src/types/interactions/interaction_types.ts +++ b/src/types/interactions/interaction_types.ts @@ -3,6 +3,7 @@ export enum DiscordInteractionTypes { Ping = 1, ApplicationCommand, MessageComponent, + ApplicationCommandAutocomplete, } export type InteractionTypes = DiscordInteractionTypes; From 1c8c9a11ffc0e3344ef48d442b40d869a46d28ac Mon Sep 17 00:00:00 2001 From: ITOH Date: Thu, 30 Sep 2021 20:36:14 +0200 Subject: [PATCH 2/5] feat(types): add DiscordInteractionResponseTypes.ApplicationCommandAutocompleteResult --- src/types/interactions/interaction_response_types.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/types/interactions/interaction_response_types.ts b/src/types/interactions/interaction_response_types.ts index 47c38e2d4..6332c6648 100644 --- a/src/types/interactions/interaction_response_types.ts +++ b/src/types/interactions/interaction_response_types.ts @@ -10,6 +10,8 @@ export enum DiscordInteractionResponseTypes { DeferredUpdateMessage, /** For components, edit the message the component was attached to */ UpdateMessage, + /** For Application Command Options, send an autocomplete result */ + ApplicationCommandAutocompleteResult, } export type InteractionResponseTypes = DiscordInteractionResponseTypes; From 60a424d83b06c2a7e6a41de5ec91dc4afca162ce Mon Sep 17 00:00:00 2001 From: ITOH Date: Thu, 30 Sep 2021 20:36:28 +0200 Subject: [PATCH 3/5] feat(types): add ApplicationCommandOption.autocomplete --- src/types/interactions/commands/application_command_option.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/types/interactions/commands/application_command_option.ts b/src/types/interactions/commands/application_command_option.ts index 2d5a3c90a..8de146b15 100644 --- a/src/types/interactions/commands/application_command_option.ts +++ b/src/types/interactions/commands/application_command_option.ts @@ -15,4 +15,6 @@ export interface ApplicationCommandOption { choices?: ApplicationCommandOptionChoice[]; /** If the option is a subcommand or subcommand group type, this nested options will be the parameters */ options?: ApplicationCommandOption[]; + /** Whether this option should make autocomplete interactions. */ + autocomplete?: boolean; } From f23b2149a4d5e02b11302c211ea821b41b06aa47 Mon Sep 17 00:00:00 2001 From: ITOH Date: Thu, 30 Sep 2021 20:36:34 +0200 Subject: [PATCH 4/5] Update application_command_interaction_data_option.ts --- .../commands/application_command_interaction_data_option.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/types/interactions/commands/application_command_interaction_data_option.ts b/src/types/interactions/commands/application_command_interaction_data_option.ts index ed53eff94..ce4a7c141 100644 --- a/src/types/interactions/commands/application_command_interaction_data_option.ts +++ b/src/types/interactions/commands/application_command_interaction_data_option.ts @@ -23,6 +23,8 @@ interface ApplicationCommandInteractionDataOptionBase Date: Thu, 30 Sep 2021 20:38:29 +0200 Subject: [PATCH 5/5] todo --- src/util/utils.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/util/utils.ts b/src/util/utils.ts index 94592c25a..f541e0998 100644 --- a/src/util/utils.ts +++ b/src/util/utils.ts @@ -125,6 +125,7 @@ function validateSlashOptionChoices( } } +// TODO: add checks for autocomplete options when discord provides more info about them. /** @private */ function validateSlashOptions(options: ApplicationCommandOption[]) { const requiredOptions: ApplicationCommandOption[] = [];