The jsonschema validator property included is.js functions
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
src
test
.babelrc
.eslintrc
.gitignore
.travis.yml
LICENSE
README.md
index.js
package.json

README.md

jsonschema-is-js Build Status NPM version

The jsonschema validator property included is.js functions for JavaScript.

Install

$ npm i --save jsonschema jsonschema-is-js

Usage

var Validator = require('jsonschema').Validator;
var isPlugin = require('jsonschema-is-js');
var v = new Validator();

v.attributes.is = isPlugin();

var schema = {
  type: 'object',
  properties: {
    emails: { type: 'array', is: 'all.email' },  // <- use attribute
    text: { type: 'string', is: 'include:some' } // <- method:value, result: is.include(text, 'some')
  }
};

var result1 = v.validate({
  emails: [ 'a@test.cc', 'b@test.cc', 123, 'test' ]
}, schema);
var result2 = v.validate({
  emails: [ 'a@test.cc', 'b@test.cc', 'test@ggg.gg' ],
  text: 'some text...'
}, schema);

console.log(result1.errors);  // error
console.log(result2.errors);  // not error

Or use is.js of override regex:

var is = require('is_js')
is.setRegexp(/quack/, 'url');
v.attributes.is = isPlugin(is);

License

MIT