30 lines
983 B
C#
30 lines
983 B
C#
namespace HellionChat.Branding;
|
|
|
|
// Lazy-loaded ASCII art that ships embedded with the DLL.
|
|
//
|
|
// - FoxMini: the four-line fox-head + curly-tail that gets stitched
|
|
// into the DI-logger bootstrap line so an xllog reader sees the
|
|
// same signature on every plugin load.
|
|
//
|
|
// The file lives as an embedded resource under HellionChat.Branding.* so
|
|
// the plugin DLL is self-contained; no on-disk asset lookup that could
|
|
// silently miss after a partial deploy.
|
|
internal static class HellionForgeAscii
|
|
{
|
|
private static string? _foxMini;
|
|
|
|
public static string FoxMini => _foxMini ??= Load("HellionChat.Branding.fox-mini.txt");
|
|
|
|
private static string Load(string resourceName)
|
|
{
|
|
using var stream = typeof(HellionForgeAscii).Assembly.GetManifestResourceStream(
|
|
resourceName
|
|
);
|
|
if (stream is null)
|
|
return string.Empty;
|
|
|
|
using var reader = new StreamReader(stream);
|
|
return reader.ReadToEnd();
|
|
}
|
|
}
|