Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

correct

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

correct

Simple JavaScript validation module

  • 0.1.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
6
increased by500%
Maintainers
1
Weekly downloads
 
Created
Source

correct

Simple JavaScript validation module

Install

npm install correct

Usage

var correct = require('correct')
var fn = correct.string.min(1).max(12)

fn('abc') === true
fn('') === false

At any time, if you want to understand why you have a failing validation, you can use

var fn = correct.string.min(1).max(12)

fn.validate('')
// will return an object with {valid: false, errors: [...]} and the array of validations that did not pass

fn.validate('abc') //will return {valid: true}

Types

For now there are only 3 base validation types available

  • string - correct.string
  • number - correct.number
  • int - correct.int

Example:

var isInt = correct.int

isInt('5') == false
isInt(5.1) == false
isInt(5) == true

You can chain validation functions for all types (detailed below).

var intMax10 = correct.int.max(10)

intMax10(4) == true
intMax10(40) == false

NOTE: types are specified with simple dot access, while all other chained validations should be chained as function calls:

var validate = correct.string.max(10).not('hello word').required()

validate('my string') == true

string

var stringMin5 = correct.string.min(5)

stringMin5('abc') == false
stringMin5('abcde') == true

Available string tests:

  • min(n: Number) - validates the value to have at least n characters in length
  • max(n: Number) - validates the value to have at most n characters in length
  • re(r: RegExp) - validates the value against the given regular expression
  • email() - validates the value to be a valid email address (npm module isemail is used)
  • fn(f: Function) - validates the value if the specified function returns truthy
  • not(v: String) - validates the value if it is not strict equal to v
  • numeric() - validates the value if it is a numeric string: eg - '1.34'
  • required() - validates the value if it is different from empty string

Number

Validates numbers.

var between10And100 = correct.number.min(10).max(100)
between10And100(40) == true
between10And100(4) == false

var even = correct.number.fn(function(v){
    return v % 2 == 0
})

even(2) == true

var x = 67
even(x) == false

var isNumber = correct.number

isNumber(4.5) == true
isNumber('4.5') == false

Available number tests:

  • min(n: Number) - validates the value if it is >= n
  • max(n: Number) - validates the value if it is <= n
  • fn(f: Function) - validates the value if the specified function returns truthy
  • not(v: String) - validates the value if it is not strict equal to v

Int

Inherits all the number tests, and adds some more

  • odd(n: Number) - validates the value if it is odd
  • even(n: Number) - validates the value if it is even

Tests

make

License

MIT

Keywords

FAQs

Package last updated on 21 Aug 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

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