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

validazz

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

validazz

Magical, Flexible and Extendible Javascript Validation

  • 1.1.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
1
Weekly downloads
 
Created
Source

validazz

Generated with nod NPM version Build Status Coverage Status

Magical, Flexible and Extendible Javascript Validation.

Install

npm:

npm i validazz

Yarn:

yarn add validazz

Usage

import Validator, { rules } from 'validazz'

const mySuperCoolValidator = Validator.factory()

// Let's add some rules
mySuperCoolValidator.addRule(rules.isRequired)
mySuperCoolValidator.addRules([rules.minLength(2), rules.maxLength(8)])
mySuperCoolValidator.addRule(rules.isString)

// How about a custom rule?
const customRule = {
  runWithValue: value => {
    if (value !== '🤪') return false
    return true
  },
  message: 'Houston, we got a problem',
}
mySuperCoolValidator.addRule(customRule)

// Okay let's start validating
const { success, failed } = mySuperCoolValidator.runWithValue('hello')
if (success) {
  console.log('Wow, this was validated just like that')
} else {
  const { message } = failed
  console.log(`Okay so here's the error message: ${failed}`)
}

For a list of all the included rules, be sure to check the RULES.md file

API

Table of Contents

Validator

Validation Factory, where all the validation magic happens

Type: Validator

Parameters
addRule

Add a rule to the factory

Parameters

Returns Validator Validator instance

addRules

Add a rules to the factory

Parameters

Returns Validator Validator instance

runWithValue
  • See: validate

Run the factory and validate!

Parameters
  • value string The string to be validated

Returns ValidatorResult The validation outcome

Meta

  • deprecated: Use validate(value: string) instead. Depricated since v1.1
validate

Validates a string

Parameters
  • value String The string to be validated
Examples
const { success, failed } = Validator.factory(rules.isRequired).validate('hello')

Returns ValidatorResult The validation outcome

factory

Create a new validation factory

Parameters
Examples
const validator = Validator.factory([])

Returns Validator Validator instance

runWithValue

The validation function for this rule. It takes the a string/integer value and returns a boolean.

Type: Function

Parameters
  • value string Value of array element
Examples
const rule = {
   runWithValue(value) {
     return value != null
   }
 }

Returns Boolean If it returns true, the field is valid.

ValidationRule

A validation rule

Type: Object

Properties
  • message string A custom error message for this validation rule
  • runWithValue runWithValue Validation callback
Examples
// Basic Example
 const validationRule = {
   message: 'This field is required',
   runWithValue(value) {
     return value != null
   }
 }

 // Example with parameters
 const minimum = (min) => ({
   message: `Amount must be greater than ${min}`,
   runWithValue(value) {
     const value = Number(value)
     return value > min
   }
 })

ValidatorResult

The validation result

Type: Object

Properties
  • success Boolean The outcome of the validation
  • failed ValidationRule An optional value. Returns the rule that failed to validate
Examples
const { success, failed } = Validator.factory(rules.isRequired).validate('hello')
 if (success) {
   alert('validated')
 } else {
   const { message } = failed
   alert(`Failed: ${message}`)
 }

License

MIT © Jesse Onolememen

Keywords

FAQs

Package last updated on 15 Mar 2019

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