UNPKG

@allgemein/schema-api

Version:
40 lines 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Validator = void 0; const lodash_1 = require("lodash"); const DefaultValidator_1 = require("./DefaultValidator"); /** * Abstraction for defualt validator functions */ class Validator { static add(fn, fnInfo) { this.fn.push(fn); this.info.push(fnInfo); } static reset() { this.fn = []; this.info = []; } static async getValidationEntries(fn) { if ((0, lodash_1.isEmpty)(this.info)) { return []; } const data = await Promise.all(this.info.map(x => x(fn))); return [].concat(...data); } static async validate(instance, ref) { if ((0, lodash_1.isEmpty)(this.fn)) { return []; } const data = await Promise.all(this.fn.map(x => x(instance, ref))); return [].concat(...data); } } exports.Validator = Validator; Validator.fn = [ DefaultValidator_1.DefaultValidator.validate.bind(DefaultValidator_1.DefaultValidator) ]; Validator.info = [ DefaultValidator_1.DefaultValidator.validationInfo.bind(DefaultValidator_1.DefaultValidator) ]; //# sourceMappingURL=Validator.js.map