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>
|
/// <summary>
|
||||||
/// Provides tags related to a discord role.
|
/// Gets the identifier of the bot that this role belongs to, if it does.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class RoleTags
|
/// <returns>
|
||||||
{
|
/// A <see langword="ulong"/> if this role belongs to a bot; otherwise
|
||||||
/// <summary>
|
/// <see langword="null"/>.
|
||||||
/// Gets the identifier of the bot that this role belongs to, if it does.
|
/// </returns>
|
||||||
/// </summary>
|
public ulong? BotId { get; }
|
||||||
/// <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; }
|
|
||||||
|
|
||||||
internal RoleTags(ulong? botId, ulong? integrationId, bool isPremiumSubscriber)
|
/// <summary>
|
||||||
{
|
/// Gets the identifier of the integration that this role belongs to, if it does.
|
||||||
BotId = botId;
|
/// </summary>
|
||||||
IntegrationId = integrationId;
|
/// <returns>
|
||||||
IsPremiumSubscriberRole = isPremiumSubscriber;
|
/// 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;
|
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("bot_id")]
|
|
||||||
public Optional<ulong> BotId { get; set; }
|
[JsonProperty("integration_id")]
|
||||||
[JsonProperty("integration_id")]
|
public Optional<ulong> IntegrationId { get; set; }
|
||||||
public Optional<ulong> IntegrationId { get; set; }
|
|
||||||
[JsonProperty("premium_subscriber")]
|
[JsonProperty("premium_subscriber")]
|
||||||
public Optional<bool?> IsPremiumSubscriber { get; set; }
|
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)
|
public static RoleTags ToEntity(this API.RoleTags model)
|
||||||
{
|
{
|
||||||
return new RoleTags(
|
return new RoleTags(
|
||||||
model.BotId.IsSpecified ? model.BotId.Value : null,
|
model.BotId.ToNullable(),
|
||||||
model.IntegrationId.IsSpecified ? model.IntegrationId.Value : null,
|
model.IntegrationId.ToNullable(),
|
||||||
model.IsPremiumSubscriber.IsSpecified);
|
model.IsPremiumSubscriber.IsSpecified,
|
||||||
|
model.SubscriptionListingId.ToNullable(),
|
||||||
|
model.IsAvailableForPurchase.IsSpecified,
|
||||||
|
model.GuildConnections.IsSpecified);
|
||||||
}
|
}
|
||||||
public static API.Embed ToModel(this Embed entity)
|
public static API.Embed ToModel(this Embed entity)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user