New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

rattata

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rattata - npm Package Compare versions

Comparing version 0.2.0 to 0.3.0

2

index.js

@@ -116,3 +116,3 @@ const _ = require('lodash')

return Promise.reject(err)
} else if (_.isArray(err) || _.isString(err)) {
} else if ((_.isArray(err) || _.isString(err)) && !_.isEmpty(err)) {
return Promise.reject(err)

@@ -119,0 +119,0 @@ } else {

{
"name": "rattata",
"version": "0.2.0",
"version": "0.3.0",
"description": "Simple data validation for JavaScript",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -1,3 +0,56 @@

# Rattata
# Rattata (WIP)
> Simple data validation for JavaScript
### Example
```JavaScript
const rules = {
firstName: r.withMessage(r.string, 'should be a string'),
middleName: r.opt(r.string),
lastName: r.string,
age: r.xor(
r.undefined,
r.and(
r.withMessage(r.integer, 'should be an integer'),
r.withMessage(r.range(10, 99), 'should be between 10 and 99'),
),
),
pokedex: r.validate({
serialNumber: r.pattern(/\d\d\d\d-\d\d\d\d/),
pokemonIds: r.array(
withMessage(
r.and(
r.integer,
r.range(1, 151)
), 'should be an integer between 1 and 151')
),
}),
}
const props = {
firstName: 42,
// middleName is optional
lastName: [],
age: '100',
pokedex: {
serialNumber: '1234-5678',
pokemonIds: [23, 1, 56, '11'],
},
}
r
.validate(rules, props)
.then(() => {
// validation successful
})
.catch(err => {
// err {
// firstName: ['should be a string'],
// lastName: [],
// age: ['should be an integer', 'should be between 10 and 99'],
// pokedex: {
// 'pokemonIds[i]': ['should be an integer between 1 and 151'],
// }
// }
})
```
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc