mirror of
https://github.com/Tyrrrz/DiscordChatExporter.git
synced 2026-04-28 16:57:02 +00:00
@@ -37,7 +37,7 @@ public partial record Embed
|
|||||||
var title = json.GetPropertyOrNull("title")?.GetStringOrNull();
|
var title = json.GetPropertyOrNull("title")?.GetStringOrNull();
|
||||||
|
|
||||||
var kind =
|
var kind =
|
||||||
json.GetPropertyOrNull("type")?.GetStringOrNull()?.Pipe(s => Enum.Parse<EmbedKind>(s, true)) ??
|
json.GetPropertyOrNull("type")?.GetStringOrNull()?.ParseEnumOrNull<EmbedKind>() ??
|
||||||
EmbedKind.Rich;
|
EmbedKind.Rich;
|
||||||
|
|
||||||
var url = json.GetPropertyOrNull("url")?.GetNonWhiteSpaceStringOrNull();
|
var url = json.GetPropertyOrNull("url")?.GetNonWhiteSpaceStringOrNull();
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using System.Collections.Generic;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
|
|
||||||
@@ -29,6 +30,11 @@ public static class StringExtensions
|
|||||||
public static string ToDashCase(this string str) =>
|
public static string ToDashCase(this string str) =>
|
||||||
Regex.Replace(str, @"(\p{Ll})(\p{Lu})", "$1-$2");
|
Regex.Replace(str, @"(\p{Ll})(\p{Lu})", "$1-$2");
|
||||||
|
|
||||||
|
public static T? ParseEnumOrNull<T>(this string str, bool ignoreCase = true) where T : struct, Enum =>
|
||||||
|
Enum.TryParse<T>(str, ignoreCase, out var result)
|
||||||
|
? result
|
||||||
|
: null;
|
||||||
|
|
||||||
public static StringBuilder AppendIfNotEmpty(this StringBuilder builder, char value) =>
|
public static StringBuilder AppendIfNotEmpty(this StringBuilder builder, char value) =>
|
||||||
builder.Length > 0
|
builder.Length > 0
|
||||||
? builder.Append(value)
|
? builder.Append(value)
|
||||||
|
|||||||
Reference in New Issue
Block a user