using FluentValidation;
using zero.Validation.Validators;
namespace zero.Validation;
public static class ValidatorExtensions
{
///
/// Validate a color input as HEX (#aabbccdd or #aabbcc or #abc)
///
public static IRuleBuilderOptions Hex(this IRuleBuilder ruleBuilder)
{
return ruleBuilder.SetValidator(new HexValidator());
}
///
/// Validate an email
///
public static IRuleBuilderOptions Url(this IRuleBuilder ruleBuilder)
{
return ruleBuilder.SetValidator(new UrlValidator());
}
///
/// Validate an email
///
public static IRuleBuilderOptions Email(this IRuleBuilder ruleBuilder)
{
return ruleBuilder.SetValidator(new EmailValidator());
}
///
/// Validate one or multiple emails
///
public static IRuleBuilderOptions Emails(this IRuleBuilder ruleBuilder)
{
return ruleBuilder.SetValidator(new EmailsValidator());
}
///
/// Validates a culture identifier
///
public static IRuleBuilderOptions Culture(this IRuleBuilder ruleBuilder)
{
return ruleBuilder.SetValidator(new CultureValidator());
}
}