this object is fucked but at least its not missing props now (#2956)
This commit is contained in:
@@ -1,40 +1,59 @@
|
||||
namespace Discord
|
||||
namespace Discord;
|
||||
|
||||
/// <summary>
|
||||
/// Provides tags related to a discord role.
|
||||
/// </summary>
|
||||
public class RoleTags
|
||||
{
|
||||
/// <summary>
|
||||
/// Provides tags related to a discord role.
|
||||
/// Gets the identifier of the bot that this role belongs to, if it does.
|
||||
/// </summary>
|
||||
public class RoleTags
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets the identifier of the bot that this role belongs to, if it does.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// A <see langword="ulong"/> if this role belongs to a bot; otherwise
|
||||
/// <see langword="null"/>.
|
||||
/// </returns>
|
||||
public ulong? BotId { get; }
|
||||
/// <summary>
|
||||
/// Gets the identifier of the integration that this role belongs to, if it does.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// A <see langword="ulong"/> if this role belongs to an integration; otherwise
|
||||
/// <see langword="null"/>.
|
||||
/// </returns>
|
||||
public ulong? IntegrationId { get; }
|
||||
/// <summary>
|
||||
/// Gets if this role is the guild's premium subscriber (booster) role.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// <see langword="true"/> if this role is the guild's premium subscriber role;
|
||||
/// otherwise <see langword="false"/>.
|
||||
/// </returns>
|
||||
public bool IsPremiumSubscriberRole { get; }
|
||||
/// <returns>
|
||||
/// A <see langword="ulong"/> if this role belongs to a bot; otherwise
|
||||
/// <see langword="null"/>.
|
||||
/// </returns>
|
||||
public ulong? BotId { get; }
|
||||
|
||||
internal RoleTags(ulong? botId, ulong? integrationId, bool isPremiumSubscriber)
|
||||
{
|
||||
BotId = botId;
|
||||
IntegrationId = integrationId;
|
||||
IsPremiumSubscriberRole = isPremiumSubscriber;
|
||||
}
|
||||
/// <summary>
|
||||
/// Gets the identifier of the integration that this role belongs to, if it does.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// A <see langword="ulong"/> if this role belongs to an integration; otherwise
|
||||
/// <see langword="null"/>.
|
||||
/// </returns>
|
||||
public ulong? IntegrationId { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets if this role is the guild's premium subscriber (booster) role.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// <see langword="true"/> if this role is the guild's premium subscriber role;
|
||||
/// otherwise <see langword="false"/>.
|
||||
/// </returns>
|
||||
public bool IsPremiumSubscriberRole { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the identifier of the subscription listing that this role belongs to, if it does.
|
||||
/// </summary>
|
||||
public ulong? SubscriptionListingId { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets whether this role is available for purchase.
|
||||
/// </summary>
|
||||
public bool IsAvailableForPurchase { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets whether this role is a guild's linked role.
|
||||
/// </summary>
|
||||
public bool IsGuildConnection { get; }
|
||||
|
||||
internal RoleTags(ulong? botId, ulong? integrationId, bool isPremiumSubscriber, ulong? subscriptionListingId, bool isAvailableForPurchase, bool isGuildConnection)
|
||||
{
|
||||
BotId = botId;
|
||||
IntegrationId = integrationId;
|
||||
IsPremiumSubscriberRole = isPremiumSubscriber;
|
||||
SubscriptionListingId = subscriptionListingId;
|
||||
IsAvailableForPurchase = isAvailableForPurchase;
|
||||
IsGuildConnection = isGuildConnection;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +1,24 @@
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Discord.API
|
||||
namespace Discord.API;
|
||||
|
||||
internal class RoleTags
|
||||
{
|
||||
internal class RoleTags
|
||||
{
|
||||
[JsonProperty("bot_id")]
|
||||
public Optional<ulong> BotId { get; set; }
|
||||
[JsonProperty("integration_id")]
|
||||
public Optional<ulong> IntegrationId { get; set; }
|
||||
[JsonProperty("premium_subscriber")]
|
||||
public Optional<bool?> IsPremiumSubscriber { get; set; }
|
||||
}
|
||||
[JsonProperty("bot_id")]
|
||||
public Optional<ulong> BotId { get; set; }
|
||||
|
||||
[JsonProperty("integration_id")]
|
||||
public Optional<ulong> IntegrationId { get; set; }
|
||||
|
||||
[JsonProperty("premium_subscriber")]
|
||||
public Optional<bool?> IsPremiumSubscriber { get; set; }
|
||||
|
||||
[JsonProperty("subscription_listing_id")]
|
||||
public Optional<ulong> SubscriptionListingId { get; set; }
|
||||
|
||||
[JsonProperty("available_for_purchase")]
|
||||
public Optional<bool?> IsAvailableForPurchase { get; set; }
|
||||
|
||||
[JsonProperty("guild_connections")]
|
||||
public Optional<bool?> GuildConnections { get; set; }
|
||||
}
|
||||
|
||||
@@ -38,9 +38,12 @@ namespace Discord.Rest
|
||||
public static RoleTags ToEntity(this API.RoleTags model)
|
||||
{
|
||||
return new RoleTags(
|
||||
model.BotId.IsSpecified ? model.BotId.Value : null,
|
||||
model.IntegrationId.IsSpecified ? model.IntegrationId.Value : null,
|
||||
model.IsPremiumSubscriber.IsSpecified);
|
||||
model.BotId.ToNullable(),
|
||||
model.IntegrationId.ToNullable(),
|
||||
model.IsPremiumSubscriber.IsSpecified,
|
||||
model.SubscriptionListingId.ToNullable(),
|
||||
model.IsAvailableForPurchase.IsSpecified,
|
||||
model.GuildConnections.IsSpecified);
|
||||
}
|
||||
public static API.Embed ToModel(this Embed entity)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user