@canard/schema-form-ajv8-plugin
Version:
AJV 8.x validator plugin for @canard/schema-form providing JSON Schema validation with latest Draft 2020-12 and Draft 2019-09 support
23 lines (19 loc) • 665 B
JavaScript
;
var Ajv = require('ajv');
var createValidatorFactory = require('../validator/createValidatorFactory.cjs');
const defaultSettings = {
allErrors: true,
strictSchema: false,
validateFormats: false,
};
let ajvInstance = null;
const ajvValidatorPlugin = {
bind: (instance) => (ajvInstance = instance),
compile: (jsonSchema) => {
if (!ajvInstance)
ajvInstance = new Ajv(defaultSettings);
return createValidatorFactory.createValidatorFactory(ajvInstance)(jsonSchema);
},
};
exports.createValidatorFactory = createValidatorFactory.createValidatorFactory;
exports.ajvValidatorPlugin = ajvValidatorPlugin;