mirror of
				https://gitlab.com/Kwoth/nadekobot.git
				synced 2025-11-04 08:34:27 -05:00 
			
		
		
		
	Fixed plaintext-only embeds. closes #360
This commit is contained in:
		@@ -1,6 +1,6 @@
 | 
			
		||||
using SixLabors.ImageSharp.PixelFormats;
 | 
			
		||||
#nullable disable warnings
 | 
			
		||||
using SixLabors.ImageSharp.PixelFormats;
 | 
			
		||||
 | 
			
		||||
#nullable disable
 | 
			
		||||
namespace NadekoBot;
 | 
			
		||||
 | 
			
		||||
public sealed record SmartEmbedArrayElementText : SmartEmbedTextBase
 | 
			
		||||
@@ -37,11 +37,11 @@ public sealed record SmartEmbedText : SmartEmbedTextBase
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private SmartEmbedText(IEmbed eb, string plainText = null)
 | 
			
		||||
    private SmartEmbedText(IEmbed eb, string? plainText = null)
 | 
			
		||||
        : base(eb)
 | 
			
		||||
        => (PlainText, Color) = (plainText, eb.Color?.RawValue ?? 0);
 | 
			
		||||
 | 
			
		||||
    public static SmartEmbedText FromEmbed(IEmbed eb, string plainText = null)
 | 
			
		||||
    public static SmartEmbedText FromEmbed(IEmbed eb, string? plainText = null)
 | 
			
		||||
        => new(eb, plainText);
 | 
			
		||||
 | 
			
		||||
    protected override EmbedBuilder GetEmbedInternal()
 | 
			
		||||
 
 | 
			
		||||
@@ -14,7 +14,10 @@ public sealed record SmartEmbedTextArray : SmartText
 | 
			
		||||
        if (Embeds is null)
 | 
			
		||||
            return Array.Empty<EmbedBuilder>();
 | 
			
		||||
 | 
			
		||||
        return Embeds.Map(em => em.GetEmbed());
 | 
			
		||||
        return Embeds
 | 
			
		||||
            .Where(x => x.IsValid)
 | 
			
		||||
            .Select(em => em.GetEmbed())
 | 
			
		||||
            .ToArray();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void NormalizeFields()
 | 
			
		||||
 
 | 
			
		||||
@@ -68,7 +68,7 @@ public abstract record SmartText
 | 
			
		||||
 | 
			
		||||
                var obj = root.ToObject<SmartEmbedText>();
 | 
			
		||||
 | 
			
		||||
                if (obj is null)
 | 
			
		||||
                if (obj is null || !(obj.IsValid || !string.IsNullOrWhiteSpace(obj.PlainText)))
 | 
			
		||||
                    return new SmartPlainText(input);
 | 
			
		||||
 | 
			
		||||
                obj.NormalizeFields();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user