db-schema-validator
Object model validation
Install
$ npm install --save db-schema-validator
Usage
; const validate = ; ;//=> true ;// => throw "Expected 'aString' to be a string"
API
dbSchemaValidator(schemaDefinition)(itemToValidate)
schemaDefinition
Type: object
required
the schema used to validate the object, see schema definition for more details
itemToValidate
Type: object
required
the object to validate
Schema definition
Types
string
number
int
: non-floatingnumber
date
bool
any
: anything butundefined
ornull
Nullable types
Just append ?
at the end of the above
ei: number?
will validate undefined
, null
, or a number
Complex types
Object
Nested object are supported
ei:
{
l1: {
l2: {
aString: 'string'
},
aNumber: 2
}
}
Array
Just wrap your types in []
ei: ['string']
will validate an array of string
Array of objects are also supported
ei:
[{
aString: 'string',
aNumber: 'number'
}]
Inspirations
The schema definition is highly inspired by ottoman
License
MIT © Thomas Sileghem