diff --git a/Jellyfin.Api/Helpers/RequestHelpers.cs b/Jellyfin.Api/Helpers/RequestHelpers.cs index dec8fd95eb..a632cbead0 100644 --- a/Jellyfin.Api/Helpers/RequestHelpers.cs +++ b/Jellyfin.Api/Helpers/RequestHelpers.cs @@ -144,5 +144,31 @@ namespace Jellyfin.Api.Helpers : Split(filters, ',', true) .Select(v => Enum.Parse(v, true)).ToArray(); } + + /// + /// Gets the item fields. + /// + /// The fields string. + /// IEnumerable{ItemFields}. + internal static ItemFields[] GetItemFields(string? fields) + { + if (string.IsNullOrEmpty(fields)) + { + return Array.Empty(); + } + + return Split(fields, ',', true) + .Select(v => + { + if (Enum.TryParse(v, true, out ItemFields value)) + { + return (ItemFields?)value; + } + + return null; + }).Where(i => i.HasValue) + .Select(i => i!.Value) + .ToArray(); + } } }