https://github.com/hungneox/object-map-validator
Object Map Validator
https://github.com/hungneox/object-map-validator
javascript object-mapper serverless validator
Last synced: 8 months ago
JSON representation
Object Map Validator
- Host: GitHub
- URL: https://github.com/hungneox/object-map-validator
- Owner: hungneox
- Created: 2018-02-02T14:01:05.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-10-22T17:35:16.000Z (over 7 years ago)
- Last Synced: 2025-08-09T12:43:55.198Z (8 months ago)
- Topics: javascript, object-mapper, serverless, validator
- Language: JavaScript
- Homepage:
- Size: 16.6 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Object Map Validator
[](https://travis-ci.org/hungneox/object-map-validator)
This object-map validator supports validating `event.body` against a list of expected parameters, and return default values for required fields if they are missing from the request. Under the hood it use [validator](https://www.npmjs.com/package/validator) module.
# Installation
```
npm install object-map-validator
```
# Usage
```javascript
let objectMapValidator = require('object-map-validator')
let validator = require('validator')
let resp = objectMapValidator.evaluateParameters(
{
'id': '100', 'username': 'johndoe'
}, [{
name: 'id',
mappedName: 'customerNo',
required: true,
validator: validator.isInt
},
{
name: 'username',
mappedName: 'customerName',
required: true,
validator: validator.isAlpha,
},
{
name: 'phone',
mappedName: 'phoneNo',
required: true,
default: '0441122334'
}
])
// resp = {
// error: '',
// object: {
// customerNo: '100',
// customerName: 'johndoe',
// phoneNo: '0441122334'
// },
// string: 'customerNo=100&customerName=johndoe&phoneNo=0441122334'
// }
```
Validation with options
```javascript
let objectMapValidator = require('object-map-validator')
let validator = require('validator')
let resp = objectMapValidator.evaluateParameters(
{
'age': 17
}, [{
name: 'age',
mappedName: 'iAge',
required: true,
validator: validator.isInt
options: {min: 18}
}
])
// resp = {
// error: 'Parameter age failed validation. Expected validator: isInt with options: {"min":18}',
// object: {},
// string: ''
// }
```
# Development
## Test
```
npm test
```