Nth Power Matrix

    evalidate
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.5 • Public • Published

    evalidate

    CircleCI Known Vulnerabilities codecov codebeat badge HitCount npm version Maintenance Contributions welcome Gitter MIT license

    A fast and easy to use Object Schema Validator

    Index

    Install

    npm install --save evalidate
    

    Usage

    Importing

    // Using require()
    const evalidate = require("evalidate");
    
    // Using ES6 import
    import evalidate from "evalidate"

    Defining a Schema

    let schema = new evalidate.schema({
        name: evalidate.string(),
        email: evalidate.string().required().email(),
        age: evalidate.number().min(18).max(150),
        status: evalidate.string().required().in(["Active", "Deacive"]),
        address: evalidate.object({
            city: evalidate.string(),
            country: evalidate.string().required(),
        }),
        birthday: evalidate.date().required().before(new Date())
    });

    Custom Error Message

    let schema = new evalidate.schema({
        email: evalidate.string().required("email is required!").email("Please enter a valid email address!"),
        age: evalidate.number().min(18, "Too young!").max(150, "Too old!"),
    });

    Validating Data

    let result = schema.validate({
        name: "xxxx-xxxx",
        email: "xxxx@gmail.com",
        age: 18,
        status: "Active",
        address: {
            city: "xxxx",
            country: "xxxx"
        },
        birthday: "2019-01-01"
    });
    
    if (!result.isValid) {
        console.log(result.errors);
    }

    Validators

    Array: evalidate.array()

    • contains(value, message)

      • must contain value
      • (Optional) Custom error message
    • equals(value, message)

      • must have the same content as value
      • value must be an array
      • (Optional) Custom error message
    • required(message)

      • (Optional) Custom error message
    • size(value, message)

      • Checks the number of items in the array
      • (Optional) Custom error message

    Boolean: evalidate.boolean()

    • equals(value, message)

      • must be the same as value
      • value must be boolean
      • (Optional) Custom error message
    • required(message)

      • (Optional) Custom error message

    Date: evalidate.date()

    • after(value, message)

      • must be after value
      • value can be a date object, an integer value representing the number of milliseconds since January 1, 1970 or string value representing a date, specified in a format recognized by the Date.parse() method.
      • (Optional) Custom error message
    • before(value, message)

      • must be before value
      • value can be a date object, an integer value representing the number of milliseconds since January 1, 1970 or string value representing a date, specified in a format recognized by the Date.parse() method.
      • (Optional) Custom error message
    • equals(value, message)

      • must be the same as value
      • value can be a date object, an integer value representing the number of milliseconds since January 1, 1970 or string value representing a date, specified in a format recognized by the Date.parse() method.
      • (Optional) Custom error message
    • required(message)

      • (Optional) Custom error message

    Number: evalidate.number()

    • equals(value, message)

      • must be the same as value
      • value must be a number
      • (Optional) Custom error message
    • integer(message)

      • must be an integer
      • (Optional) Custom error message
    • latitude(message)

      • must be a valid latitude (Between -90 and 90)
      • (Optional) Custom error message
    • longitude(message)

      • must be a valid longitude (Between -180 and 180)
      • (Optional) Custom error message
    • min(value, message)

      • must be greater than or equal to value
      • value must be a number
      • (Optional) Custom error message
    • max(value, message)

      • must be less than or equal to value
      • value must be a number
      • (Optional) Custom error message
    • required(message)

      • (Optional) Custom error message

    String: evalidate.string()

    • alphanumeric(message)

      • must contain only alphanumeric characters
      • (Optional) Custom error message
    • credit_card(message)

      • must be a valid credit card number
      • (Optional) Custom error message
    • email(message)

      • must be a valid email address
      • (Optional) Custom error message
    • equals(value, message)

      • must be equalt to value
      • value must be a string
      • (Optional) Custom error message
    • fqdn(message)

      • must be a valid fully qualified domain name
      • (Optional) Custom error message
    • in(value, message)

      • must be in value
      • value must be an array
      • (Optional) Custom error message
    • isbn(message)

      • must be a valid ISBN
      • (Optional) Custom error message
    • maxlength(value, message)

      • number of characters in the input string must be less than or equal to value
      • value must be a number
      • (Optional) Custom error message
    • milength(value, message)

      • number of characters in the input string must be greater than or equal to value
      • value must be a number
      • (Optional) Custom error message
    • numeric(message)

      • must contain only numeric characters
      • (Optional) Custom error message
    • required(message)

      • (Optional) Custom error message
    • url(message)

      • must be a valid url
      • (Optional) Custom error message

    License

    MIT © aderabiruk

    Install

    npm i evalidate

    DownloadsWeekly Downloads

    68

    Version

    1.0.5

    License

    ISC

    Unpacked Size

    638 kB

    Total Files

    92

    Last publish

    Collaborators

    • aderabiruk