validate-it
Version:
declarative validator
76 lines (51 loc) • 1.8 kB
Markdown
validate-it
===========
Decalarative validator for JS
[](http://badge.fury.io/js/validate-it) [](https://travis-ci.org/vlkosinov/validate-it) [](https://coveralls.io/r/vlkosinov/validate-it?branch=master) [](https://david-dm.org/vlkosinov/validate-it) [](https://david-dm.org/vlkosinov/validate-it#info=devDependencies)
## Installation
$ npm install validate-it
## Usage
```js
var validateIt = require('validate-it');
```
**At least you must specify the *name* of the object to validate**
It's check that data's property *password* is not undefined:
```js
var rule = {name: 'password'};
var data = {password: 'qwerty'};
validateIt(data, rule); // => {}
```
Rules can be an array:
```js
var rules = [
{name: 'password'},
{name: 'login'}
];
var data = {password: 'qwerty'};
validateIt(data, rules); // => { login: 'Is required' }
```
**Built-in validators**
Will be used only if it is declared in the rule!
***empty***
```js
var data = {login: ''};
var rule = {name: 'login', empty: false};
validateIt(data, rule); // => { login: 'Is empty' }
```
***len***
```js
var data = {login: 'short'};
var rule = {
name: 'login',
len: [9, 20]
};
validateIt(data, rule); // => { login: 'Expected [9,20] symbols. Given: 5' }
```
```js
var data = {login: 'short'};
var rule = {name: 'login', len: 6};
validateIt(data, rule); // => { login: 'Expected min 6 symbols. Given: 5' }
```
License
----
MIT