VabuJS is a validation libray that allows you to build complex validations in an easy and clear way
Use your favourite package manager
npm install --save vabu-js
import { ValidatorBuilder } from 'vabu-js'
const nameValidation = new ValidatorBuilder()
.setValue('My awesome name')
.notNull()
.notEmpty()
.validate()
if (nameValidation.isValid()) {
console.log(nameValidation.getErrorMessage())
}
import { ModelValidator, validators } from '../src/index'
const obj = new ModelValidator()
.setValue({
name: 'M'
})
.setValidations({
name: {
validators.notNull,
minLenght: validators.minLength(2)
}
})
.validate()
const arrayValidation = new ValidatorBuilder()
.setValue([1, 2, 3])
.isArray()
.each((val) => val > 2)
.validate()
if (!arrayValidation.isValid()) {
alert(arrayValidation.getErrorMessage())
}
const userValidation = new ValidatorBuilder()
.setValue({ name: 'Jonh', age: 21 })
.notNull()
.customValidation(user => user.age >= 18)
.validate()
if (!userValidation.isValid()) {
alert(userValidation.getErrorMessage())
}