diff options
Diffstat (limited to 'node_modules/regex-not')
| -rw-r--r-- | node_modules/regex-not/LICENSE | 21 | ||||
| -rw-r--r-- | node_modules/regex-not/README.md | 133 | ||||
| -rw-r--r-- | node_modules/regex-not/index.js | 72 | ||||
| -rw-r--r-- | node_modules/regex-not/package.json | 102 | 
4 files changed, 328 insertions, 0 deletions
diff --git a/node_modules/regex-not/LICENSE b/node_modules/regex-not/LICENSE new file mode 100644 index 0000000..8ee09d9 --- /dev/null +++ b/node_modules/regex-not/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016, 2018, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/regex-not/README.md b/node_modules/regex-not/README.md new file mode 100644 index 0000000..24d00e7 --- /dev/null +++ b/node_modules/regex-not/README.md @@ -0,0 +1,133 @@ +# regex-not [](https://www.npmjs.com/package/regex-not) [](https://npmjs.org/package/regex-not) [](https://npmjs.org/package/regex-not) [](https://travis-ci.org/jonschlinkert/regex-not) + +> Create a javascript regular expression for matching everything except for the given string. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save regex-not +``` + +## Usage + +```js +var not = require('regex-not'); +``` + +The main export is a function that takes a string an options object. + +```js +not(string[, options]); +``` + +**Example** + +```js +var not = require('regex-not'); +console.log(not('foo')); +//=> /^(?:(?!^(?:foo)$).)+$/ +``` + +**Strict matching** + +By default, the returned regex is for strictly (not) matching the exact given pattern (in other words, "match this string if it does NOT _exactly equal_ `foo`"): + +```js +var re = not('foo'); +console.log(re.test('foo'));     //=> false +console.log(re.test('bar'));     //=> true +console.log(re.test('foobar'));  //=> true +console.log(re.test('barfoo'));  //=> true +``` + +### .create + +Returns a string to allow you to create your own regex: + +```js +console.log(not.create('foo')); +//=> '(?:(?!^(?:foo)$).)+' +``` + +### Options + +**options.contains** + +You can relax strict matching by setting `options.contains` to true (in other words, "match this string if it does NOT _contain_ `foo`"): + +```js +var re = not('foo'); +console.log(re.test('foo', {contains: true}));     //=> false +console.log(re.test('bar', {contains: true}));     //=> true +console.log(re.test('foobar', {contains: true}));  //=> false +console.log(re.test('barfoo', {contains: true}));  //=> false +``` + +## About + +<details> +<summary><strong>Contributing</strong></summary> + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +</details> + +<details> +<summary><strong>Running Tests</strong></summary> + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +</details> + +<details> +<summary><strong>Building docs</strong></summary> + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +</details> + +### Related projects + +You might also be interested in these projects: + +* [regex-cache](https://www.npmjs.com/package/regex-cache): Memoize the results of a call to the RegExp constructor, avoiding repetitious runtime compilation of… [more](https://github.com/jonschlinkert/regex-cache) | [homepage](https://github.com/jonschlinkert/regex-cache "Memoize the results of a call to the RegExp constructor, avoiding repetitious runtime compilation of the same string and options, resulting in surprising performance improvements.") +* [to-regex](https://www.npmjs.com/package/to-regex): Generate a regex from a string or array of strings. | [homepage](https://github.com/jonschlinkert/to-regex "Generate a regex from a string or array of strings.") + +### Contributors + +| **Commits** | **Contributor** |  +| --- | --- | +| 9 | [jonschlinkert](https://github.com/jonschlinkert) | +| 1 | [doowb](https://github.com/doowb) | +| 1 | [EdwardBetts](https://github.com/EdwardBetts) | + +### Author + +**Jon Schlinkert** + +* [linkedin/in/jonschlinkert](https://linkedin.com/in/jonschlinkert) +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on February 19, 2018._
\ No newline at end of file diff --git a/node_modules/regex-not/index.js b/node_modules/regex-not/index.js new file mode 100644 index 0000000..02bfed4 --- /dev/null +++ b/node_modules/regex-not/index.js @@ -0,0 +1,72 @@ +'use strict'; + +var extend = require('extend-shallow'); +var safe = require('safe-regex'); + +/** + * The main export is a function that takes a `pattern` string and an `options` object. + * + * ```js + & var not = require('regex-not'); + & console.log(not('foo')); + & //=> /^(?:(?!^(?:foo)$).)*$/ + * ``` + * + * @param {String} `pattern` + * @param {Object} `options` + * @return {RegExp} Converts the given `pattern` to a regex using the specified `options`. + * @api public + */ + +function toRegex(pattern, options) { +  return new RegExp(toRegex.create(pattern, options)); +} + +/** + * Create a regex-compatible string from the given `pattern` and `options`. + * + * ```js + & var not = require('regex-not'); + & console.log(not.create('foo')); + & //=> '^(?:(?!^(?:foo)$).)*$' + * ``` + * @param {String} `pattern` + * @param {Object} `options` + * @return {String} + * @api public + */ + +toRegex.create = function(pattern, options) { +  if (typeof pattern !== 'string') { +    throw new TypeError('expected a string'); +  } + +  var opts = extend({}, options); +  if (opts.contains === true) { +    opts.strictNegate = false; +  } + +  var open = opts.strictOpen !== false ? '^' : ''; +  var close = opts.strictClose !== false ? '$' : ''; +  var endChar = opts.endChar ? opts.endChar : '+'; +  var str = pattern; + +  if (opts.strictNegate === false) { +    str = '(?:(?!(?:' + pattern + ')).)' + endChar; +  } else { +    str = '(?:(?!^(?:' + pattern + ')$).)' + endChar; +  } + +  var res = open + str + close; +  if (opts.safe === true && safe(res) === false) { +    throw new Error('potentially unsafe regular expression: ' + res); +  } + +  return res; +}; + +/** + * Expose `toRegex` + */ + +module.exports = toRegex; diff --git a/node_modules/regex-not/package.json b/node_modules/regex-not/package.json new file mode 100644 index 0000000..bddd8e6 --- /dev/null +++ b/node_modules/regex-not/package.json @@ -0,0 +1,102 @@ +{ +  "_args": [ +    [ +      "regex-not@1.0.2", +      "/home/dstaesse/git/website" +    ] +  ], +  "_development": true, +  "_from": "regex-not@1.0.2", +  "_id": "regex-not@1.0.2", +  "_inBundle": false, +  "_integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", +  "_location": "/regex-not", +  "_phantomChildren": {}, +  "_requested": { +    "type": "version", +    "registry": true, +    "raw": "regex-not@1.0.2", +    "name": "regex-not", +    "escapedName": "regex-not", +    "rawSpec": "1.0.2", +    "saveSpec": null, +    "fetchSpec": "1.0.2" +  }, +  "_requiredBy": [ +    "/expand-brackets", +    "/extglob", +    "/micromatch", +    "/nanomatch", +    "/to-regex" +  ], +  "_resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", +  "_spec": "1.0.2", +  "_where": "/home/dstaesse/git/website", +  "author": { +    "name": "Jon Schlinkert", +    "url": "https://github.com/jonschlinkert" +  }, +  "bugs": { +    "url": "https://github.com/jonschlinkert/regex-not/issues" +  }, +  "dependencies": { +    "extend-shallow": "^3.0.2", +    "safe-regex": "^1.1.0" +  }, +  "description": "Create a javascript regular expression for matching everything except for the given string.", +  "devDependencies": { +    "gulp-format-md": "^1.0.0", +    "mocha": "^3.5.3" +  }, +  "engines": { +    "node": ">=0.10.0" +  }, +  "files": [ +    "index.js" +  ], +  "homepage": "https://github.com/jonschlinkert/regex-not", +  "keywords": [ +    "exec", +    "match", +    "negate", +    "negation", +    "not", +    "regex", +    "regular expression", +    "test" +  ], +  "license": "MIT", +  "main": "index.js", +  "name": "regex-not", +  "repository": { +    "type": "git", +    "url": "git+https://github.com/jonschlinkert/regex-not.git" +  }, +  "scripts": { +    "test": "mocha" +  }, +  "verb": { +    "toc": false, +    "layout": "default", +    "tasks": [ +      "readme" +    ], +    "plugins": [ +      "gulp-format-md" +    ], +    "related": { +      "list": [ +        "regex-cache", +        "to-regex" +      ] +    }, +    "reflinks": [ +      "verb", +      "verb-generate-readme" +    ], +    "lint": { +      "reflinks": true +    } +  }, +  "version": "1.0.2" +}  | 
