diff options
| author | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 | 
|---|---|---|
| committer | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 | 
| commit | 5d309ff52cd399a6b71968a6b9a70c8ac0b98981 (patch) | |
| tree | 360f7eb50f956e2367ef38fa1fc6ac7ac5258042 /node_modules/balanced-match | |
| parent | b500a50f1b97d93c98b36ed9a980f8188d648147 (diff) | |
| download | LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.tar.gz LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.zip  | |
Added node_modules for the updating to work properly.
Diffstat (limited to 'node_modules/balanced-match')
| -rw-r--r-- | node_modules/balanced-match/.github/FUNDING.yml | 2 | ||||
| -rw-r--r-- | node_modules/balanced-match/LICENSE.md | 21 | ||||
| -rw-r--r-- | node_modules/balanced-match/README.md | 97 | ||||
| -rw-r--r-- | node_modules/balanced-match/index.js | 62 | ||||
| -rw-r--r-- | node_modules/balanced-match/package.json | 48 | 
5 files changed, 230 insertions, 0 deletions
diff --git a/node_modules/balanced-match/.github/FUNDING.yml b/node_modules/balanced-match/.github/FUNDING.yml new file mode 100644 index 0000000..cea8b16 --- /dev/null +++ b/node_modules/balanced-match/.github/FUNDING.yml @@ -0,0 +1,2 @@ +tidelift: "npm/balanced-match" +patreon: juliangruber diff --git a/node_modules/balanced-match/LICENSE.md b/node_modules/balanced-match/LICENSE.md new file mode 100644 index 0000000..2cdc8e4 --- /dev/null +++ b/node_modules/balanced-match/LICENSE.md @@ -0,0 +1,21 @@ +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +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/balanced-match/README.md b/node_modules/balanced-match/README.md new file mode 100644 index 0000000..d2a48b6 --- /dev/null +++ b/node_modules/balanced-match/README.md @@ -0,0 +1,97 @@ +# balanced-match + +Match balanced string pairs, like `{` and `}` or `<b>` and `</b>`. Supports regular expressions as well! + +[](http://travis-ci.org/juliangruber/balanced-match) +[](https://www.npmjs.org/package/balanced-match) + +[](https://ci.testling.com/juliangruber/balanced-match) + +## Example + +Get the first matching pair of braces: + +```js +var balanced = require('balanced-match'); + +console.log(balanced('{', '}', 'pre{in{nested}}post')); +console.log(balanced('{', '}', 'pre{first}between{second}post')); +console.log(balanced(/\s+\{\s+/, /\s+\}\s+/, 'pre  {   in{nest}   }  post')); +``` + +The matches are: + +```bash +$ node example.js +{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' } +{ start: 3, +  end: 9, +  pre: 'pre', +  body: 'first', +  post: 'between{second}post' } +{ start: 3, end: 17, pre: 'pre', body: 'in{nest}', post: 'post' } +``` + +## API + +### var m = balanced(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +object with those keys: + +* **start** the index of the first match of `a` +* **end** the index of the matching `b` +* **pre** the preamble, `a` and `b` not included +* **body** the match, `a` and `b` not included +* **post** the postscript, `a` and `b` not included + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']` and `{a}}` will match `['', 'a', '}']`. + +### var r = balanced.range(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +array with indexes: `[ <a index>, <b index> ]`. + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `[ 1, 3 ]` and `{a}}` will match `[0, 2]`. + +## Installation + +With [npm](https://npmjs.org) do: + +```bash +npm install balanced-match +``` + +## Security contact information + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. + +## License + +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +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/balanced-match/index.js b/node_modules/balanced-match/index.js new file mode 100644 index 0000000..c67a646 --- /dev/null +++ b/node_modules/balanced-match/index.js @@ -0,0 +1,62 @@ +'use strict'; +module.exports = balanced; +function balanced(a, b, str) { +  if (a instanceof RegExp) a = maybeMatch(a, str); +  if (b instanceof RegExp) b = maybeMatch(b, str); + +  var r = range(a, b, str); + +  return r && { +    start: r[0], +    end: r[1], +    pre: str.slice(0, r[0]), +    body: str.slice(r[0] + a.length, r[1]), +    post: str.slice(r[1] + b.length) +  }; +} + +function maybeMatch(reg, str) { +  var m = str.match(reg); +  return m ? m[0] : null; +} + +balanced.range = range; +function range(a, b, str) { +  var begs, beg, left, right, result; +  var ai = str.indexOf(a); +  var bi = str.indexOf(b, ai + 1); +  var i = ai; + +  if (ai >= 0 && bi > 0) { +    if(a===b) { +      return [ai, bi]; +    } +    begs = []; +    left = str.length; + +    while (i >= 0 && !result) { +      if (i == ai) { +        begs.push(i); +        ai = str.indexOf(a, i + 1); +      } else if (begs.length == 1) { +        result = [ begs.pop(), bi ]; +      } else { +        beg = begs.pop(); +        if (beg < left) { +          left = beg; +          right = bi; +        } + +        bi = str.indexOf(b, i + 1); +      } + +      i = ai < bi && ai >= 0 ? ai : bi; +    } + +    if (begs.length) { +      result = [ left, right ]; +    } +  } + +  return result; +} diff --git a/node_modules/balanced-match/package.json b/node_modules/balanced-match/package.json new file mode 100644 index 0000000..ce6073e --- /dev/null +++ b/node_modules/balanced-match/package.json @@ -0,0 +1,48 @@ +{ +  "name": "balanced-match", +  "description": "Match balanced character pairs, like \"{\" and \"}\"", +  "version": "1.0.2", +  "repository": { +    "type": "git", +    "url": "git://github.com/juliangruber/balanced-match.git" +  }, +  "homepage": "https://github.com/juliangruber/balanced-match", +  "main": "index.js", +  "scripts": { +    "test": "tape test/test.js", +    "bench": "matcha test/bench.js" +  }, +  "devDependencies": { +    "matcha": "^0.7.0", +    "tape": "^4.6.0" +  }, +  "keywords": [ +    "match", +    "regexp", +    "test", +    "balanced", +    "parse" +  ], +  "author": { +    "name": "Julian Gruber", +    "email": "mail@juliangruber.com", +    "url": "http://juliangruber.com" +  }, +  "license": "MIT", +  "testling": { +    "files": "test/*.js", +    "browsers": [ +      "ie/8..latest", +      "firefox/20..latest", +      "firefox/nightly", +      "chrome/25..latest", +      "chrome/canary", +      "opera/12..latest", +      "opera/next", +      "safari/5.1..latest", +      "ipad/6.0..latest", +      "iphone/6.0..latest", +      "android-browser/4.2..latest" +    ] +  } +}  | 
