1.0.5 • Published 8 years ago

pwd-checker v1.0.5

Weekly downloads
2
License
MIT
Repository
github
Last release
8 years ago

Getting started

This plugin is built for both Node and the Browser, no environment assumptions are made, though it does make use of ECMA5 methods. Depending on the browsers you support you might have to use ECMA5 polyfills.

This plugin is installed via a simple npm command:

npm install pwd-checker

Then simply require the module:

var pwdChecker = require("pwd-checker");

Interface

Password checker has a simple interface of 3 methods, one core method (validate), and 2 convenience methods (isValid and countValidations). All methods require at least two arguments: 1. first argumentmust be the criteria object 2. all subsequent arguments must be strings. NOTE: only the first string will be passed through validation tests. If it passes, all subsequent strings will be matched against the first string).

validate returns an object, similar to the criteria object, with the result of each test.

isValid returns a boolean value (true or false) for the validation test.

countValidations returns the number of passed tests in the validation process.

Criteria object

The criteria object determines which tests your string(s) will go through.

  • lowercase: true or false, requires at least 1 lowercase letter
  • uppercase: true or false, requires at least 1 uppercase letter
  • number: true or false, requires at least one numeric character
  • symbol: true or false, requires at least one non alpha-numeric character
  • minLength: integer, string must contain at least minLength characters
  • maxLength: integer, string must contain at most maxLength characters
  • disallow: array of strings, each string will be converted to a REGEX equivalent as a blocking test. If any of the regex tests return true, validation fails.

Example

var pwdChecker = require("pwd-checker"),
    criteria = {
        lowercase: false,
        uppercase: true,
        number: true,
        symbol: true,
        minLength: 6,
        maxLength: 20,
        disallow: ["password", "[!\? ]"]
    };

pwdChecker.isValid(criteria, "password123");
// returns false, many criteria are not met

pwdChecker.countValidations(criteria, "apassWord123");
//returns 6

pwdChecker.isValid(criteria, "#123Word");
// returns true, all criteria are met

pwdChecker.validate(criteria, "123!OKpassword");
/* returns
{
    lowercase: true,
    uppercase: true,
    number: true,
    symbol: true,
    minLength: true,
    maxLength: true,
    disallow: false
}
*/
1.0.5

8 years ago

1.0.4

9 years ago

1.0.3

9 years ago

1.0.2

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago