@openshift-console/dynamic-plugin-sdk-webpack
Version:
Provides webpack ConsoleRemotePlugin used to build all dynamic plugin assets.
22 lines (21 loc) • 794 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.SchemaValidator = void 0;
const Ajv = require("ajv");
const BaseValidator_1 = require("./BaseValidator");
class SchemaValidator extends BaseValidator_1.BaseValidator {
constructor(description, ajv = new Ajv({ allErrors: true })) {
super(description);
this.ajv = ajv;
}
validate(schema, data, dataVar = 'obj') {
if (!this.ajv.validate(schema, data)) {
this.ajv.errors.forEach((error) => {
// This format is consistent with ajv.errorsText() implementation
this.result.addError(`${dataVar}${error.dataPath} ${error.message}`);
});
}
return this.result;
}
}
exports.SchemaValidator = SchemaValidator;
;