UNPKG

class-validator

Version:

Decorator-based property validation for classes.

24 lines 1.11 kB
import { buildMessage, ValidateBy } from '../common/ValidateBy'; import matchesValidator from 'validator/lib/matches'; export var MATCHES = 'matches'; export function matches(value, pattern, modifiers) { return typeof value === 'string' && matchesValidator(value, pattern, modifiers); } export function Matches(pattern, modifiersOrAnnotationOptions, validationOptions) { var modifiers; if (modifiersOrAnnotationOptions && modifiersOrAnnotationOptions instanceof Object && !validationOptions) { validationOptions = modifiersOrAnnotationOptions; } else { modifiers = modifiersOrAnnotationOptions; } return ValidateBy({ name: MATCHES, constraints: [pattern, modifiers], validator: { validate: function (value, args) { return matches(value, args.constraints[0], args.constraints[1]); }, defaultMessage: buildMessage(function (eachPrefix, args) { return eachPrefix + '$property must match $constraint1 regular expression'; }, validationOptions), }, }, validationOptions); } //# sourceMappingURL=Matches.js.map