UNPKG

fluent-ts-validator

Version:
26 lines 1.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const _1 = require("./"); const RuleApplicationOutcome_1 = require("./RuleApplicationOutcome"); class CollectionValidationRule extends _1.ValidationRule { apply(input) { const outcome = new RuleApplicationOutcome_1.RuleApplicationOutcome(); const collection = this.lambdaExpressionResultWith(input); if (this.isNoValidationRequired(input) || collection == null) { return outcome; } for (let element of collection) { this.processElementValidation(input, element, outcome); } return outcome; } processElementValidation(input, element, outcome) { if (this.validators.some(validator => validator.isValid(element) === false)) { const failure = this.createValidationFailure(input, element); this.invokeCallbackWith(failure); outcome.addValidationFailure(failure); } } } exports.CollectionValidationRule = CollectionValidationRule; //# sourceMappingURL=CollectionValidationRule.js.map