Skip to content

Commit 45164ff

Browse files
Fix unset role colors oversight from #133 (#134)
1 parent d7db8fc commit 45164ff

2 files changed

Lines changed: 16 additions & 12 deletions

File tree

src/Disqord.Rest/ActionProperties/Conversion/ActionPropertiesConversion.Guild.cs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,14 @@ public static ModifyRoleJsonRestRequestContent ToContent(this Action<ModifyRoleA
1919
Name = properties.Name,
2020
Permissions = properties.Permissions,
2121
Color = Optional.Convert(properties.Color, color => color?.RawValue ?? 0),
22-
Colors = Optional.Conditional(properties.Colors.HasValue, new RoleColorsJsonModel
23-
{
24-
PrimaryColor = properties.Colors.Value.GetValueOrDefault().PrimaryColor,
25-
SecondaryColor = properties.Colors.Value.GetValueOrDefault().SecondaryColor,
26-
TertiaryColor = properties.Colors.Value.GetValueOrDefault().TertiaryColor
27-
}),
22+
Colors = Optional.FromNullable(properties.Colors.HasValue && properties.Colors.Value is var colors
23+
? new RoleColorsJsonModel
24+
{
25+
PrimaryColor = colors?.PrimaryColor ?? 0,
26+
SecondaryColor = colors?.SecondaryColor,
27+
TertiaryColor = colors?.TertiaryColor
28+
}
29+
: null),
2830
Hoist = properties.IsHoisted,
2931
Icon = properties.Icon,
3032
Mentionable = properties.IsMentionable

src/Disqord.Rest/Extensions/RestClientExtensions.Guild.cs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -494,12 +494,14 @@ public static async Task<IRole> CreateRoleAsync(this IRestClient client,
494494
Name = properties.Name,
495495
Permissions = properties.Permissions,
496496
Color = Optional.Convert(properties.Color, color => color?.RawValue ?? 0),
497-
Colors = Optional.Conditional(properties.Colors.HasValue, new RoleColorsJsonModel
498-
{
499-
PrimaryColor = properties.Colors.Value.GetValueOrDefault().PrimaryColor,
500-
SecondaryColor = properties.Colors.Value.GetValueOrDefault().SecondaryColor,
501-
TertiaryColor = properties.Colors.Value.GetValueOrDefault().TertiaryColor
502-
}),
497+
Colors = Optional.FromNullable(properties.Colors.HasValue && properties.Colors.Value is var colors
498+
? new RoleColorsJsonModel
499+
{
500+
PrimaryColor = colors?.PrimaryColor ?? 0,
501+
SecondaryColor = colors?.SecondaryColor,
502+
TertiaryColor = colors?.TertiaryColor
503+
}
504+
: null),
503505
Hoist = properties.IsHoisted,
504506
Icon = properties.Icon,
505507
Mentionable = properties.IsMentionable

0 commit comments

Comments
 (0)