using System.ComponentModel; namespace Kavita.Common.Extensions; public static class EnumExtensions { public static string ToDescription(this TEnum value) where TEnum : struct { var fi = value.GetType().GetField(value.ToString() ?? string.Empty); if (fi == null) { return value.ToString(); } var attributes = (DescriptionAttribute[])fi.GetCustomAttributes(typeof(DescriptionAttribute), false); return attributes is {Length: > 0} ? attributes[0].Description : value.ToString(); } }