blob: 81d55607c9e5ff7dd10bdb868f5795c119bfd0c1 (
plain)
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
|
'use strict'
var schemas = require('./schemas')
var ValidationError = require('./error')
var validator = require('is-my-json-valid')
var runner = function (schema, data, cb) {
var validate = validator(schema, {
greedy: true,
verbose: true,
schemas: schemas
})
var valid = false
if (data !== undefined) {
// execute is-my-json-valid
valid = validate(data)
}
// callback?
if (!cb) {
return valid
} else {
return cb(validate.errors ? new ValidationError(validate.errors) : null, valid)
}
return valid
}
module.exports = function (data, cb) {
return runner(schemas.har, data, cb)
}
Object.keys(schemas).map(function (name) {
module.exports[name] = function (data, cb) {
return runner(schemas[name], data, cb)
}
})
|