3 module.exports = function defFunc(ajv) {
6 macro: function (schema) {
7 if (schema.length == 0) return true;
8 if (schema.length == 1) return {required: schema};
9 var schemas = schema.map(function (prop) {
10 return {required: [prop]};
12 return {oneOf: schemas};
22 ajv.addKeyword('oneRequired', defFunc.definition);