AngleSharp by Florian Rappl

<PackageReference Include="AngleSharp" Version="0.8.1" />

.NET API 1,172,480 bytes

 CssAnimationNameProperty

More information available at: https://developer.mozilla.org/en-US/docs/CSS/animation-name
using AngleSharp.Css; using AngleSharp.Extensions; using System.Collections.Generic; namespace AngleSharp.Dom.Css { internal sealed class CssAnimationNameProperty : CssProperty, ICssAnimationNameProperty, ICssProperty { internal static readonly IValueConverter<string> SingleConverter = Converters.IdentifierConverter; internal static readonly IValueConverter<string[]> Converter = Converters.Assign(Keywords.None, new string[0]).Or(SingleConverter.FromList()); internal static readonly string Default = string.Empty; private readonly List<string> _names; public IEnumerable<string> Names => _names; internal CssAnimationNameProperty(CssStyleDeclaration rule) : base(PropertyNames.AnimationName, rule, PropertyFlags.None) { _names = new List<string>(); } public void SetNames(IEnumerable<string> names) { _names.Clear(); _names.AddRange(names); } internal override void Reset() { _names.Clear(); } protected override bool IsValid(ICssValue value) { return Converter.TryConvert(value, SetNames); } } }