diff --git a/DiscordChatExporter.Core/Discord/Data/Embeds/Embed.cs b/DiscordChatExporter.Core/Discord/Data/Embeds/Embed.cs index a7e33c9..104632f 100644 --- a/DiscordChatExporter.Core/Discord/Data/Embeds/Embed.cs +++ b/DiscordChatExporter.Core/Discord/Data/Embeds/Embed.cs @@ -45,7 +45,7 @@ public partial record Embed EmbedKind.Rich; var url = json.GetPropertyOrNull("url")?.GetNonWhiteSpaceStringOrNull(); - var timestamp = json.GetPropertyOrNull("timestamp")?.GetDateTimeOffset(); + var timestamp = json.GetPropertyOrNull("timestamp")?.GetDateTimeOffsetOrNull(); var color = json .GetPropertyOrNull("color")? diff --git a/DiscordChatExporter.Core/Discord/Data/Message.cs b/DiscordChatExporter.Core/Discord/Data/Message.cs index a8b004c..3a131bf 100644 --- a/DiscordChatExporter.Core/Discord/Data/Message.cs +++ b/DiscordChatExporter.Core/Discord/Data/Message.cs @@ -108,15 +108,16 @@ public partial record Message { var id = json.GetProperty("id").GetNonWhiteSpaceString().Pipe(Snowflake.Parse); var kind = (MessageKind)json.GetProperty("type").GetInt32(); - var flags = (MessageFlags?)json.GetPropertyOrNull("flags")?.GetInt32() ?? MessageFlags.None; + var flags = (MessageFlags?)json.GetPropertyOrNull("flags")?.GetInt32OrNull() ?? MessageFlags.None; var author = json.GetProperty("author").Pipe(User.Parse); var timestamp = json.GetProperty("timestamp").GetDateTimeOffset(); - var editedTimestamp = json.GetPropertyOrNull("edited_timestamp")?.GetDateTimeOffset(); + var editedTimestamp = json.GetPropertyOrNull("edited_timestamp")?.GetDateTimeOffsetOrNull(); + var callEndedTimestamp = json .GetPropertyOrNull("call")? .GetPropertyOrNull("ended_timestamp")? - .GetDateTimeOffset(); + .GetDateTimeOffsetOrNull(); var isPinned = json.GetPropertyOrNull("pinned")?.GetBooleanOrNull() ?? false; var content = json.GetPropertyOrNull("content")?.GetStringOrNull() ?? ""; diff --git a/DiscordChatExporter.Core/Discord/Data/Role.cs b/DiscordChatExporter.Core/Discord/Data/Role.cs index c9dca21..76737d2 100644 --- a/DiscordChatExporter.Core/Discord/Data/Role.cs +++ b/DiscordChatExporter.Core/Discord/Data/Role.cs @@ -17,7 +17,7 @@ public record Role(Snowflake Id, string Name, int Position, Color? Color) : IHas var color = json .GetPropertyOrNull("color")? - .GetInt32() + .GetInt32OrNull()? .Pipe(System.Drawing.Color.FromArgb) .ResetAlpha() .NullIf(c => c.ToRgb() <= 0);