0.0.2 • Published 5 years ago

dataval v0.0.2

Weekly downloads
5
License
MIT
Repository
github
Last release
5 years ago

Dataval

Create rules, validate all the forms.

Dataval is a form validator following ideas from Laravel. The idea is that you can create a validator and validate every form data by just calling it. This allows you to add the validator as a Redux Form validator (it would just need a reduce call to create your error messages) or as an Express middleware.

Usage

First, you need to create an instance of the validator by calling the Dataval factory function.

const dataval = Dataval()

After you have your dataval instance, you can start validating your forms.

const form = {
  name: 'John',
  age: 25
}

await dataval.validate(form)

The validate function returns a promise and the result of that promise is an object:

{
  valid: boolean
  errors: { key: string; message: string[] }[]
}

The errors array will be empty if the form has no errors and will contain the invalid fields along the name of each rule that was broken.

The example above returns a valid result. That's because there are no rules. In order to validate your forms, you need to add the rules of validation.

const dataval = Dataval({
  rules: {
    name: 'required|isString|length:2:50',
    age: 'isNumber|min:18'
  }
})

Rules are the name of the validators that you want to run on each field. The | symbol delimits each validator. Each string coming after each : represent an argument. So the name field is required, should be string and should have a length of 2 to 50 characters and the age field should be a number more than 18.

Todo

  • Add support for nested data structures
  • Add support for arrays
0.0.2

5 years ago

0.0.1

5 years ago