From 6e8d1118ec0c2e47e2ef7a1e694a37dc046e1fba Mon Sep 17 00:00:00 2001 From: Christopher F Date: Sat, 12 Nov 2016 23:04:08 -0500 Subject: [PATCH] Update API models to fully support rich embeds --- src/Discord.Net.Core/API/Common/Embed.cs | 8 ++++++++ src/Discord.Net.Core/API/Common/EmbedAuthor.cs | 16 ++++++++++++++++ src/Discord.Net.Core/API/Common/EmbedField.cs | 14 ++++++++++++++ src/Discord.Net.Core/API/Common/EmbedFooter.cs | 14 ++++++++++++++ 4 files changed, 52 insertions(+) create mode 100644 src/Discord.Net.Core/API/Common/EmbedAuthor.cs create mode 100644 src/Discord.Net.Core/API/Common/EmbedField.cs create mode 100644 src/Discord.Net.Core/API/Common/EmbedFooter.cs diff --git a/src/Discord.Net.Core/API/Common/Embed.cs b/src/Discord.Net.Core/API/Common/Embed.cs index 9cea24313..b19281d24 100644 --- a/src/Discord.Net.Core/API/Common/Embed.cs +++ b/src/Discord.Net.Core/API/Common/Embed.cs @@ -13,9 +13,17 @@ namespace Discord.API public string Description { get; set; } [JsonProperty("url")] public string Url { get; set; } + [JsonProperty("color")] + public uint Color { get; set; } + [JsonProperty("author")] + public Optional Author { get; set; } + [JsonProperty("footer")] + public Optional Footer { get; set; } [JsonProperty("thumbnail")] public Optional Thumbnail { get; set; } [JsonProperty("provider")] public Optional Provider { get; set; } + [JsonProperty("fields")] + public Optional Fields { get; set; } } } diff --git a/src/Discord.Net.Core/API/Common/EmbedAuthor.cs b/src/Discord.Net.Core/API/Common/EmbedAuthor.cs new file mode 100644 index 000000000..973f7d5ea --- /dev/null +++ b/src/Discord.Net.Core/API/Common/EmbedAuthor.cs @@ -0,0 +1,16 @@ +using Newtonsoft.Json; + +namespace Discord.API +{ + public class EmbedAuthor + { + [JsonProperty("name")] + public string Name { get; set; } + [JsonProperty("url")] + public string Url { get; set; } + [JsonProperty("icon_url")] + public string IconUrl { get; set; } + [JsonProperty("proxy_icon_url")] + public string ProxyIconUrl { get; set; } + } +} diff --git a/src/Discord.Net.Core/API/Common/EmbedField.cs b/src/Discord.Net.Core/API/Common/EmbedField.cs new file mode 100644 index 000000000..12aa0137a --- /dev/null +++ b/src/Discord.Net.Core/API/Common/EmbedField.cs @@ -0,0 +1,14 @@ +using Newtonsoft.Json; + +namespace Discord.API +{ + public class EmbedField + { + [JsonProperty("name")] + public string Name { get; set; } + [JsonProperty("value")] + public string Value { get; set; } + [JsonProperty("inline")] + public bool Inline { get; set; } + } +} diff --git a/src/Discord.Net.Core/API/Common/EmbedFooter.cs b/src/Discord.Net.Core/API/Common/EmbedFooter.cs new file mode 100644 index 000000000..2ad22cae7 --- /dev/null +++ b/src/Discord.Net.Core/API/Common/EmbedFooter.cs @@ -0,0 +1,14 @@ +using Newtonsoft.Json; + +namespace Discord.API +{ + public class EmbedFooter + { + [JsonProperty("text")] + public string Text { get; set; } + [JsonProperty("icon_url")] + public string IconUrl { get; set; } + [JsonProperty("proxy_icon_url")] + public string ProxyIconUrl { get; set; } + } +}