summary refs log tree commit diff
path: root/extra/admin-api/Models/Spacebar.Models.Generic
diff options
context:
space:
mode:
Diffstat (limited to 'extra/admin-api/Models/Spacebar.Models.Generic')
-rw-r--r--extra/admin-api/Models/Spacebar.Models.Generic/Member.cs4
-rw-r--r--extra/admin-api/Models/Spacebar.Models.Generic/User.cs47
2 files changed, 46 insertions, 5 deletions
diff --git a/extra/admin-api/Models/Spacebar.Models.Generic/Member.cs b/extra/admin-api/Models/Spacebar.Models.Generic/Member.cs

index fa217a37..b11a041b 100644 --- a/extra/admin-api/Models/Spacebar.Models.Generic/Member.cs +++ b/extra/admin-api/Models/Spacebar.Models.Generic/Member.cs
@@ -23,8 +23,8 @@ public class Member { [JsonPropertyName("collectibles")] public object? Collectibles { get; set; } - [JsonPropertyName("display_name_styles")] - public object? DisplayNameStyles { get; set; } + [JsonPropertyName("display_name_styles"), JsonIgnore(Condition = JsonIgnoreCondition.Never)] + public DisplayNameStyle? DisplayNameStyles { get; set; } [JsonPropertyName("banner")] public string? Banner { get; set; } diff --git a/extra/admin-api/Models/Spacebar.Models.Generic/User.cs b/extra/admin-api/Models/Spacebar.Models.Generic/User.cs
index 428794af..ad0028d8 100644 --- a/extra/admin-api/Models/Spacebar.Models.Generic/User.cs +++ b/extra/admin-api/Models/Spacebar.Models.Generic/User.cs
@@ -1,10 +1,12 @@ +using System.ComponentModel.DataAnnotations; using System.Diagnostics; using System.Text.Json.Serialization; namespace Spacebar.Models.Generic; [DebuggerDisplay("{Id} ({Username}#{Discriminator})")] -public class PartialUser { +public class PartialUser +{ [JsonPropertyName("id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)] public required long Id { get; set; } @@ -26,8 +28,8 @@ public class PartialUser { [JsonPropertyName("collectibles")] public object? Collectibles { get; set; } - [JsonPropertyName("display_name_styles")] - public object? DisplayNameStyles { get; set; } + [JsonPropertyName("display_name_styles"), JsonIgnore(Condition = JsonIgnoreCondition.Never)] + public DisplayNameStyle? DisplayNameStyles { get; set; } [JsonPropertyName("primary_guild")] public object? PrimaryGuild { get; set; } @@ -46,4 +48,43 @@ public class PartialUser { [JsonPropertyName("public_flags")] public ulong? PublicFlags { get; set; } +} + +public class DisplayNameStyle +{ + [JsonPropertyName("font_id")] + public Font FontId { get; set; } = Font.Default; + + [JsonPropertyName("effect_id")] + public Effect EffectId { get; set; } = Effect.Solid; + + [JsonPropertyName("colors"), MaxLength(2)] + public List<int> Colors { get; set; } = []; + + // https://docs.discord.food/resources/user#display-name-font - unsure if these are just really close or directly used by discord while being renamed... + public enum Font + { + Bangers = 1, + BioRhyme = 2, + CherryBomb = 3, + Chicle = 4, + Compagnon = 5, + MuseoModerno = 6, + NeoCastel = 7, + Pixelify = 8, + Ribes = 9, + Sinistre = 10, + Default = 11, + ZillaSlab = 12 + } + + public enum Effect + { + Solid = 1, + Gradient = 2, + Neon = 3, + Toon = 4, + Pop = 5, + Glow = 6 + } } \ No newline at end of file