diff --git a/src/Discord.Net.Core/Entities/Interactions/IApplicationCommandOption.cs b/src/Discord.Net.Core/Entities/Interactions/IApplicationCommandOption.cs index 440c4bd6b..72554fc98 100644 --- a/src/Discord.Net.Core/Entities/Interactions/IApplicationCommandOption.cs +++ b/src/Discord.Net.Core/Entities/Interactions/IApplicationCommandOption.cs @@ -32,6 +32,11 @@ namespace Discord /// bool? IsRequired { get; } + /// + /// Gets whether or not the option has autocomplete enabled. + /// + bool? IsAutocomplete { get; } + /// /// Gets the smallest number value the user can input. /// diff --git a/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs b/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs index 1207df282..d703bd46b 100644 --- a/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs +++ b/src/Discord.Net.Rest/API/Common/ApplicationCommandOption.cs @@ -56,6 +56,7 @@ namespace Discord.API Default = cmd.IsDefault ?? Optional.Unspecified; MinValue = cmd.MinValue ?? Optional.Unspecified; MaxValue = cmd.MaxValue ?? Optional.Unspecified; + Autocomplete = cmd.IsAutocomplete ?? Optional.Unspecified; Name = cmd.Name; Type = cmd.Type; diff --git a/src/Discord.Net.Rest/Entities/Interactions/RestApplicationCommandOption.cs b/src/Discord.Net.Rest/Entities/Interactions/RestApplicationCommandOption.cs index d5c261e0b..1273b9a1e 100644 --- a/src/Discord.Net.Rest/Entities/Interactions/RestApplicationCommandOption.cs +++ b/src/Discord.Net.Rest/Entities/Interactions/RestApplicationCommandOption.cs @@ -26,6 +26,9 @@ namespace Discord.Rest /// public bool? IsRequired { get; private set; } + /// + public bool? IsAutocomplete { get; private set; } + /// public double? MinValue { get; private set; } @@ -74,6 +77,9 @@ namespace Discord.Rest if (model.MaxValue.IsSpecified) MaxValue = model.MaxValue.Value; + if (model.Autocomplete.IsSpecified) + IsAutocomplete = model.Autocomplete.Value; + Options = model.Options.IsSpecified ? model.Options.Value.Select(Create).ToImmutableArray() : ImmutableArray.Create(); diff --git a/src/Discord.Net.WebSocket/Entities/Interaction/SocketBaseCommand/SocketApplicationCommandOption.cs b/src/Discord.Net.WebSocket/Entities/Interaction/SocketBaseCommand/SocketApplicationCommandOption.cs index a19068d48..bdb03c8b0 100644 --- a/src/Discord.Net.WebSocket/Entities/Interaction/SocketBaseCommand/SocketApplicationCommandOption.cs +++ b/src/Discord.Net.WebSocket/Entities/Interaction/SocketBaseCommand/SocketApplicationCommandOption.cs @@ -25,6 +25,8 @@ namespace Discord.WebSocket /// public bool? IsRequired { get; private set; } + public bool? IsAutocomplete { get; private set; } + /// public double? MinValue { get; private set; } @@ -68,6 +70,8 @@ namespace Discord.WebSocket MaxValue = model.MaxValue.ToNullable(); + IsAutocomplete = model.Autocomplete.ToNullable(); + Choices = model.Choices.IsSpecified ? model.Choices.Value.Select(SocketApplicationCommandChoice.Create).ToImmutableArray() : ImmutableArray.Create();