you-shall-not-pass

1.0.0 • Public • Published

you-shall-not-pass

just a simple way to filter strings

build status

What

It happens that you would like to filter something that if matches shall not pass.

Blacklist VS Whitelist

The function accepts optionally no list, blacklist, or whitelist, and it gives precedence to the white one.

However, if no list is provided and matches the input, the youShallNotPass.maybe is returned instead.

To preserve the security intent, by maybe, youShallNotPass(str) returns true but if you want to rely the blacklist 100% feel free to chnge the value.

// if you don't care about non checked things
youShallNotPass.maybe = true;

API

youShallNotPass(
  str:string,
  [blacklist:Array|RegExp|null],
  [whitelist:Array|RegExp|null]
):boolean

These are few examples from the test file:

true === youShallNotPass(
  'test',
  /\btest\b/ // blacklist
);
 
true === youShallNotPass(
  'test',
  [ // blacklist as list
    /\btes\b/,
    /\btest\b/
  ]
);
 
// as whitelisted, then stronger!
false === youShallNotPass(
  'test',
  /.*/,
  /\btest\b/
);
 
// same as above
false === youShallNotPass(
  'test',
  [
    /.*/,
    /\btest\b/
  ],
  [
    /\btest\b/
  ]
);

Readme

Keywords

none

Package Sidebar

Install

npm i you-shall-not-pass

Weekly Downloads

2

Version

1.0.0

License

none

Last publish

Collaborators

  • webreflection