Spaces:
Sleeping
Sleeping
File size: 1,346 Bytes
4cadbaf |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
'use strict';
module.exports = function (ajv, options) {
if (!ajv._opts.allErrors) throw new Error('ajv-errors: Ajv option allErrors must be true');
if (!ajv._opts.jsonPointers) {
console.warn('ajv-errors: Ajv option jsonPointers changed to true');
ajv._opts.jsonPointers = true;
}
ajv.addKeyword('errorMessage', {
inline: require('./lib/dotjs/errorMessage'),
statements: true,
valid: true,
errors: 'full',
config: {
KEYWORD_PROPERTY_PARAMS: {
required: 'missingProperty',
dependencies: 'property'
},
options: options || {}
},
metaSchema: {
'type': ['string', 'object'],
properties: {
properties: {$ref: '#/definitions/stringMap'},
items: {$ref: '#/definitions/stringList'},
required: {$ref: '#/definitions/stringOrMap'},
dependencies: {$ref: '#/definitions/stringOrMap'}
},
additionalProperties: {'type': 'string'},
definitions: {
stringMap: {
'type': ['object'],
additionalProperties: {'type': 'string'}
},
stringOrMap: {
'type': ['string', 'object'],
additionalProperties: {'type': 'string'}
},
stringList: {
'type': ['array'],
items: {'type': 'string'}
}
}
}
});
return ajv;
};
|