CssFontVariantProperty
Information:
https://developer.mozilla.org/en-US/docs/Web/CSS/font-variant
using AngleSharp.Css;
using AngleSharp.Extensions;
namespace AngleSharp.Dom.Css
{
internal sealed class CssFontVariantProperty : CssProperty, ICssFontVariantProperty, ICssProperty
{
internal static readonly FontVariant Default = FontVariant.Normal;
internal static readonly IValueConverter<FontVariant> Converter = Converters.Assign(Keywords.Normal, FontVariant.Normal).Or(Keywords.SmallCaps, FontVariant.SmallCaps);
private FontVariant _variant;
public FontVariant Variant => _variant;
internal CssFontVariantProperty(CssStyleDeclaration rule)
: base(PropertyNames.FontVariant, rule, PropertyFlags.Inherited)
{
Reset();
}
private void SetVariant(FontVariant variant)
{
_variant = variant;
}
internal override void Reset()
{
_variant = Default;
}
protected override bool IsValid(ICssValue value)
{
return Converter.TryConvert(value, SetVariant);
}
}
}