diff --git a/DiscordChatExporter.Domain/Discord/DiscordClient.cs b/DiscordChatExporter.Domain/Discord/DiscordClient.cs index 5484a6e..19f9e69 100644 --- a/DiscordChatExporter.Domain/Discord/DiscordClient.cs +++ b/DiscordChatExporter.Domain/Discord/DiscordClient.cs @@ -9,6 +9,8 @@ using DiscordChatExporter.Domain.Discord.Models; using DiscordChatExporter.Domain.Exceptions; using DiscordChatExporter.Domain.Internal; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Http; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord { @@ -52,7 +54,7 @@ namespace DiscordChatExporter.Domain.Discord }; } - return await response.Content.ReadAsJsonAsync(); + return await response.Content.ReadAsJsonAsync(default); } private async ValueTask TryGetJsonResponseAsync(string url) @@ -60,7 +62,7 @@ namespace DiscordChatExporter.Domain.Discord using var response = await GetResponseAsync(url); return response.IsSuccessStatusCode - ? await response.Content.ReadAsJsonAsync() + ? await response.Content.ReadAsJsonAsync(default) : (JsonElement?) null; } diff --git a/DiscordChatExporter.Domain/Discord/Models/Attachment.cs b/DiscordChatExporter.Domain/Discord/Models/Attachment.cs index 4c9d267..7f882fa 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Attachment.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Attachment.cs @@ -4,6 +4,7 @@ using System.IO; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Channel.cs b/DiscordChatExporter.Domain/Discord/Models/Channel.cs index d670c5d..01d8708 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Channel.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Channel.cs @@ -1,7 +1,7 @@ using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; using Tyrrrz.Extensions; namespace DiscordChatExporter.Domain.Discord.Models diff --git a/DiscordChatExporter.Domain/Discord/Models/Embed.cs b/DiscordChatExporter.Domain/Discord/Models/Embed.cs index 147db27..635d662 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Embed.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Embed.cs @@ -4,6 +4,7 @@ using System.Drawing; using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs index c667bf3..e18b031 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs index e6d498e..bb07a1f 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs index 2f6c92a..5a729d0 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs index 7cf744d..b89e154 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Emoji.cs b/DiscordChatExporter.Domain/Discord/Models/Emoji.cs index c43c8e2..976ba36 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Emoji.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Emoji.cs @@ -2,7 +2,7 @@ using System.Linq; using System.Text; using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; using Tyrrrz.Extensions; namespace DiscordChatExporter.Domain.Discord.Models diff --git a/DiscordChatExporter.Domain/Discord/Models/Member.cs b/DiscordChatExporter.Domain/Discord/Models/Member.cs index 67c054d..fbd6a58 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Member.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Member.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Message.cs b/DiscordChatExporter.Domain/Discord/Models/Message.cs index 7c9c045..b30f67b 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Message.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Message.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Role.cs b/DiscordChatExporter.Domain/Discord/Models/Role.cs index 39e35ba..b7a6a73 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Role.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Role.cs @@ -1,6 +1,7 @@ using System.Drawing; using System.Text.Json; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/User.cs b/DiscordChatExporter.Domain/Discord/Models/User.cs index fed11d3..1bc189c 100644 --- a/DiscordChatExporter.Domain/Discord/Models/User.cs +++ b/DiscordChatExporter.Domain/Discord/Models/User.cs @@ -2,6 +2,7 @@ using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj b/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj index 406418d..21cbedd 100644 --- a/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj +++ b/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj @@ -2,6 +2,7 @@ + diff --git a/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs b/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs index 6e61180..2b92732 100644 --- a/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs +++ b/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs @@ -4,7 +4,7 @@ using System.Threading.Tasks; using DiscordChatExporter.Domain.Discord.Models; using DiscordChatExporter.Domain.Exporting.Writers.MarkdownVisitors; using DiscordChatExporter.Domain.Internal.Extensions; -using DiscordChatExporter.Domain.Markdown.Ast; +using JsonExtensions.Writing; namespace DiscordChatExporter.Domain.Exporting.Writers { diff --git a/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs b/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs index 3c88633..789fd00 100644 --- a/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs +++ b/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs @@ -1,6 +1,5 @@ using System.IO; using System.Net.Http; -using System.Text.Json; using System.Threading.Tasks; namespace DiscordChatExporter.Domain.Internal.Extensions @@ -15,13 +14,5 @@ namespace DiscordChatExporter.Domain.Internal.Extensions await input.CopyToAsync(output); await output.DisposeAsync(); } - - public static async ValueTask ReadAsJsonAsync(this HttpContent content) - { - await using var stream = await content.ReadAsStreamAsync(); - using var doc = await JsonDocument.ParseAsync(stream); - - return doc.RootElement.Clone(); - } } } \ No newline at end of file diff --git a/DiscordChatExporter.Domain/Internal/Extensions/JsonElementExtensions.cs b/DiscordChatExporter.Domain/Internal/Extensions/JsonElementExtensions.cs deleted file mode 100644 index 304c8c3..0000000 --- a/DiscordChatExporter.Domain/Internal/Extensions/JsonElementExtensions.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Text.Json; - -namespace DiscordChatExporter.Domain.Internal.Extensions -{ - internal static class JsonElementExtensions - { - public static JsonElement? GetPropertyOrNull(this JsonElement element, string propertyName) => - element.TryGetProperty(propertyName, out var result) && result.ValueKind != JsonValueKind.Null - ? result - : (JsonElement?) null; - } -} \ No newline at end of file diff --git a/DiscordChatExporter.Domain/Internal/Extensions/Utf8JsonWriterExtensions.cs b/DiscordChatExporter.Domain/Internal/Extensions/Utf8JsonWriterExtensions.cs deleted file mode 100644 index 0bf25bd..0000000 --- a/DiscordChatExporter.Domain/Internal/Extensions/Utf8JsonWriterExtensions.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -using System.Text.Json; - -namespace DiscordChatExporter.Domain.Internal.Extensions -{ - internal static class Utf8JsonWriterExtensions - { - public static void WriteString(this Utf8JsonWriter writer, string propertyName, DateTimeOffset? value) - { - writer.WritePropertyName(propertyName); - - if (value != null) - writer.WriteStringValue(value.Value); - else - writer.WriteNullValue(); - } - - public static void WriteNumber(this Utf8JsonWriter writer, string propertyName, int? value) - { - writer.WritePropertyName(propertyName); - - if (value != null) - writer.WriteNumberValue(value.Value); - else - writer.WriteNullValue(); - } - } -} \ No newline at end of file