CssCounterResetProperty
More information available at:
https://developer.mozilla.org/en-US/docs/Web/CSS/counter-reset
using AngleSharp.Css;
using AngleSharp.Extensions;
using System;
using System.Collections.Generic;
namespace AngleSharp.Dom.Css
{
internal sealed class CssCounterResetProperty : CssProperty
{
private static readonly IValueConverter<KeyValuePair<string, int>[]> Converter = Converters.WithOrder(Converters.WithOrder(Converters.IdentifierConverter.Required(), Converters.IntegerConverter.Option(0)).To((Tuple<string, int> m) => new KeyValuePair<string, int>(m.Item1, m.Item2)));
internal CssCounterResetProperty(CssStyleDeclaration rule)
: base(PropertyNames.CounterReset, rule, PropertyFlags.None)
{
}
protected override object GetDefault(IElement element)
{
return null;
}
protected override object Compute(IElement element)
{
KeyValuePair<string, int>[] array = Converter.Convert(base.Value);
if (array.Length == 0)
return null;
return array[0];
}
protected override bool IsValid(CssValue value)
{
return Converter.Validate(value);
}
}
}