UNPKG

1.58 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.processorValidationPackage = void 0;
4var validate = require('validate.js');
5var Package_1 = require("../Package");
6exports.processorValidationPackage = new Package_1.Package('processorValidation')
7 .config(function (dgeni) {
8 dgeni.stopOnValidationError = true;
9})
10 .eventHandler('generationStart', function validateProcessors(log, dgeni) {
11 return function validateProcessorsImpl() {
12 var validationErrors = [];
13 var validationPromise = Promise.resolve();
14 // Apply the validations on each processor
15 dgeni.processors.forEach(function (processor) {
16 validationPromise = validationPromise.then(function () {
17 return validate.async(processor, processor.$validate).catch(function (errors) {
18 validationErrors.push({
19 processor: processor.name,
20 package: processor.$package,
21 errors: errors
22 });
23 log.error('Invalid property in "' + processor.name + '" (in "' + processor.$package + '" package)');
24 log.error(errors);
25 });
26 });
27 });
28 validationPromise = validationPromise.then(function () {
29 if (validationErrors.length > 0 && dgeni.stopOnValidationError) {
30 return Promise.reject(validationErrors);
31 }
32 });
33 return validationPromise;
34 };
35});
36//# sourceMappingURL=processorValidation.js.map
\No newline at end of file