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

@clocklimited/validity

Package Overview
Dependencies
Maintainers
6
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@clocklimited/validity

Validator framework for object validation

  • 1.1.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
6
Created
Source

validity - Validation framework

NPM Details

build status Greenkeeper badge

Validation helpers for validating the properties of an object.

Change log

Version 1

As of version 1 all validators have been stripped out and should be required individually as needed.

Validity now only consists of three helper functions that should be used by validator authors. You won't need to include validity directly into you projects any longer unless you need to create a new validator.

Installation

npm install --save validity

Run Tests

npm test

Usage

Simple Boolean Return Validators

var validity = require('validity'),
  createValidator = validity.createValidator,
  booleanToCallback = validity.booleanToCallback,
  requiredValidator,
  defaultMessageValidator

// The simple return boolean type validator we want to convert into a validity style
function isEven(value) {
  return value % 2 === 0
}

// Create the validator converting a simple boolean validation function
requiredValidator = createValidator(booleanToCallback(isEven))

// This sets the already composed validator with a default message
defaultMessageValidator = requiredValidator('#{name} is required')

// Tack a composed function onto the default validator function that allows you
// to change the default error message.
defaultMessageValidator.setFailureMessage = requiredValidator

module.exports = defaultMessageValidator

This can be wrapped up using the createValidatorAllowingFailureMessageOverride helper.

var validity = require('validity')

module.exports = validity.createValidatorAllowingFailureMessageOverride(
  validity.booleanToCallback(isValid),
  '#{name} is required'
)

Unexpected Errors

The first argument of a validator callback should be null unless expected errors outside of validation occurred. Errors such as IO errors or system errors should be reported and dealt with internally. It may cause an security issue if details of such errors are returned to the user.

Validators

Validators should be built as individual npm modules so that applications can pick and choose which they use. Validators should be added to npm repo with the validity- prefix so they can be found with a quick npm search (or via the cli: npm search validity-).

Validator authors should upgrade their validators to use the helper functions from validity and allow easy overriding of failure messages.

Validators that currently exist and can be used:

* - These modules replace functionality previously found in validity pre version 1

Credits

Paul Serby follow me on twitter @serby

License

ISC

Keywords

FAQs

Package last updated on 01 Apr 2022

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