diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json index e3a0b6695a..0e55c52ca0 100644 --- a/node_modules/.package-lock.json +++ b/node_modules/.package-lock.json @@ -3864,15 +3864,16 @@ } }, "node_modules/micromatch": { - "version": "4.0.2", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", "dev": true, - "license": "MIT", "dependencies": { "braces": "^3.0.1", - "picomatch": "^2.0.5" + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8" + "node": ">=8.6" } }, "node_modules/mimic-fn": { @@ -4310,9 +4311,10 @@ } }, "node_modules/picomatch": { - "version": "2.2.2", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", "dev": true, - "license": "MIT", "engines": { "node": ">=8.6" }, diff --git a/node_modules/micromatch/CHANGELOG.md b/node_modules/micromatch/CHANGELOG.md index 25fa58c505..fc6d456ad5 100644 --- a/node_modules/micromatch/CHANGELOG.md +++ b/node_modules/micromatch/CHANGELOG.md @@ -43,8 +43,9 @@ Changelog entries are classified using the following labels _(from [keep-a-chang ### Breaking changes +- Require Node.js >= 8.6 - Removed support for passing an array of brace patterns to `micromatch.braces()`. -- To strictly enforce closing brackets (for `{`, `[`, and `(`), you must now use `strictBrackets=true` instead of `strictErrors`. +- To strictly enforce closing brackets (for `{`, `[`, and `(`), you must now use `strictBrackets=true` instead of `strictErrors`. - `cache` - caching and all related options and methods have been removed - `options.unixify` was renamed to `options.windows` - `options.nodupes` Was removed. Duplicates are always removed by default. You can override this with custom behavior by using the `onMatch`, `onResult` and `onIgnore` functions. @@ -72,7 +73,7 @@ Here are those sub-modules with links to related prs on those modules if you wan **Added** - - source map support (optionally created when using parse or compile - I have no idea what the use case is yet, but they come for free) (note that source maps are not generated for brace expansion at present, since the braces compiler uses a different strategy. I'll update if/when this changes). + - source map support (optionally created when using parse or compile - I have no idea what the use case is yet, but they come for free) (note that source maps are not generated for brace expansion at present, since the braces compiler uses a different strategy. I'll update if/when this changes). - parser is exposed, so that implementors can customize or override specific micromatch parsers if necessary - compiler is exposed, so that implementors can customize or override specific micromatch compilers if necessary diff --git a/node_modules/micromatch/README.md b/node_modules/micromatch/README.md index e38f7ca2ac..c69252976d 100644 --- a/node_modules/micromatch/README.md +++ b/node_modules/micromatch/README.md @@ -1,4 +1,4 @@ -# micromatch [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=W8YFZ425KND68) [![NPM version](https://img.shields.io/npm/v/micromatch.svg?style=flat)](https://www.npmjs.com/package/micromatch) [![NPM monthly downloads](https://img.shields.io/npm/dm/micromatch.svg?style=flat)](https://npmjs.org/package/micromatch) [![NPM total downloads](https://img.shields.io/npm/dt/micromatch.svg?style=flat)](https://npmjs.org/package/micromatch) [![Linux Build Status](https://img.shields.io/travis/micromatch/micromatch.svg?style=flat&label=Travis)](https://travis-ci.org/micromatch/micromatch) +# micromatch [![NPM version](https://img.shields.io/npm/v/micromatch.svg?style=flat)](https://www.npmjs.com/package/micromatch) [![NPM monthly downloads](https://img.shields.io/npm/dm/micromatch.svg?style=flat)](https://npmjs.org/package/micromatch) [![NPM total downloads](https://img.shields.io/npm/dt/micromatch.svg?style=flat)](https://npmjs.org/package/micromatch) [![Linux Build Status](https://img.shields.io/travis/micromatch/micromatch.svg?style=flat&label=Travis)](https://travis-ci.org/micromatch/micromatch) > Glob matching for javascript/node.js. A replacement and faster alternative to minimatch and multimatch. @@ -93,7 +93,7 @@ console.log(micromatch.isMatch('foo', ['b*', 'f*'])) //=> true * More complete support for the Bash 4.3 specification than minimatch and multimatch. Micromatch passes _all of the spec tests_ from bash, including some that bash still fails. * **Fast & Performant** - Loads in about 5ms and performs [fast matches](#benchmarks). * **Glob matching** - Using wildcards (`*` and `?`), globstars (`**`) for nested directories -* **[Advanced globbing](#advanced-globbing)** - Supports [extglobs](#extglobs), [braces](#braces), and [POSIX brackets](#posix-bracket-expressions), and support for escaping special characters with `\` or quotes. +* **[Advanced globbing](#extended-globbing)** - Supports [extglobs](#extglobs), [braces](#braces-1), and [POSIX brackets](#posix-bracket-expressions), and support for escaping special characters with `\` or quotes. * **Accurate** - Covers more scenarios [than minimatch](https://github.com/yarnpkg/yarn/pull/3339) * **Well tested** - More than 5,000 [test assertions](./test) * **Windows support** - More reliable windows support than minimatch and multimatch. @@ -142,9 +142,9 @@ console.log(micromatch(['foo', 'bar', 'baz'], ['f*', '*z'])); //=> ['foo', 'baz' **Params** -* **{String|Array}**: list List of strings to match. -* **{String|Array}**: patterns One or more glob patterns to use for matching. -* **{Object}**: options See available [options](#options) +* `list` **{String|Array}**: List of strings to match. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `options` **{Object}**: See available [options](#options) * `returns` **{Array}**: Returns an array of matches **Example** @@ -157,7 +157,7 @@ console.log(mm(['a.js', 'a.txt'], ['*.js'])); //=> [ 'a.js' ] ``` -### [.matcher](index.js#L98) +### [.matcher](index.js#L104) Returns a matcher function from the given glob `pattern` and `options`. The returned function takes a string to match as its only argument and returns true if the string is a match. @@ -178,15 +178,15 @@ console.log(isMatch('a.a')); //=> false console.log(isMatch('a.b')); //=> true ``` -### [.isMatch](index.js#L117) +### [.isMatch](index.js#L123) Returns true if **any** of the given glob `patterns` match the specified `string`. **Params** -* **{String}**: str The string to test. -* **{String|Array}**: patterns One or more glob patterns to use for matching. -* **{Object}**: See available [options](#options). +* `str` **{String}**: The string to test. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `[options]` **{Object}**: See available [options](#options). * `returns` **{Boolean}**: Returns true if any patterns match `str` **Example** @@ -199,7 +199,7 @@ console.log(mm.isMatch('a.a', ['b.*', '*.a'])); //=> true console.log(mm.isMatch('a.a', 'b.*')); //=> false ``` -### [.not](index.js#L136) +### [.not](index.js#L148) Returns a list of strings that _**do not match any**_ of the given `patterns`. @@ -220,7 +220,7 @@ console.log(mm.not(['a.a', 'b.b', 'c.c'], '*.a')); //=> ['b.b', 'c.c'] ``` -### [.contains](index.js#L176) +### [.contains](index.js#L188) Returns true if the given `string` contains the given pattern. Similar to [.isMatch](#isMatch) but the pattern can match any part of the string. @@ -229,7 +229,7 @@ Returns true if the given `string` contains the given pattern. Similar to [.isMa * `str` **{String}**: The string to match. * `patterns` **{String|Array}**: Glob pattern to use for matching. * `options` **{Object}**: See available [options](#options) for changing how matches are performed -* `returns` **{Boolean}**: Returns true if the patter matches any part of `str`. +* `returns` **{Boolean}**: Returns true if any of the patterns matches any part of `str`. **Example** @@ -243,7 +243,7 @@ console.log(mm.contains('aa/bb/cc', '*d')); //=> false ``` -### [.matchKeys](index.js#L218) +### [.matchKeys](index.js#L230) Filter the keys of the given object with the given `glob` pattern and `options`. Does not attempt to match nested keys. If you need this feature, use [glob-object](https://github.com/jonschlinkert/glob-object) instead. @@ -265,7 +265,7 @@ console.log(mm.matchKeys(obj, '*b')); //=> { ab: 'b' } ``` -### [.some](index.js#L247) +### [.some](index.js#L259) Returns true if some of the strings in the given `list` match any of the given glob `patterns`. @@ -274,7 +274,7 @@ Returns true if some of the strings in the given `list` match any of the given g * `list` **{String|Array}**: The string or array of strings to test. Returns as soon as the first match is found. * `patterns` **{String|Array}**: One or more glob patterns to use for matching. * `options` **{Object}**: See available [options](#options) for changing how matches are performed -* `returns` **{Boolean}**: Returns true if any patterns match `str` +* `returns` **{Boolean}**: Returns true if any `patterns` matches any of the strings in `list` **Example** @@ -288,7 +288,7 @@ console.log(mm.some(['foo.js'], ['*.js', '!foo.js'])); // false ``` -### [.every](index.js#L283) +### [.every](index.js#L295) Returns true if every string in the given `list` matches any of the given glob `patterns`. @@ -297,7 +297,7 @@ Returns true if every string in the given `list` matches any of the given glob ` * `list` **{String|Array}**: The string or array of strings to test. * `patterns` **{String|Array}**: One or more glob patterns to use for matching. * `options` **{Object}**: See available [options](#options) for changing how matches are performed -* `returns` **{Boolean}**: Returns true if any patterns match `str` +* `returns` **{Boolean}**: Returns true if all `patterns` matches all of the strings in `list` **Example** @@ -315,7 +315,7 @@ console.log(mm.every(['foo.js'], ['*.js', '!foo.js'])); // false ``` -### [.all](index.js#L322) +### [.all](index.js#L334) Returns true if **all** of the given `patterns` match the specified string. @@ -345,7 +345,7 @@ console.log(mm.all('foo.js', ['*.js', 'f*', '*o*', '*o.js'])); // true ``` -### [.capture](index.js#L349) +### [.capture](index.js#L361) Returns an array of matches captured by `pattern` in `string, or`null` if the pattern did not match. @@ -354,7 +354,7 @@ Returns an array of matches captured by `pattern` in `string, or`null` if the pa * `glob` **{String}**: Glob pattern to use for matching. * `input` **{String}**: String to match * `options` **{Object}**: See available [options](#options) for changing how matches are performed -* `returns` **{Boolean}**: Returns an array of captures if the input matches the glob pattern, otherwise `null`. +* `returns` **{Array|null}**: Returns an array of captures if the input matches the glob pattern, otherwise `null`. **Example** @@ -368,7 +368,7 @@ console.log(mm.capture('test/*.js', 'foo/bar.css')); //=> null ``` -### [.makeRe](index.js#L375) +### [.makeRe](index.js#L387) Create a regular expression from the given glob `pattern`. @@ -388,7 +388,7 @@ console.log(mm.makeRe('*.js')); //=> /^(?:(\.[\\\/])?(?!\.)(?=.)[^\/]*?\.js)$/ ``` -### [.scan](index.js#L391) +### [.scan](index.js#L403) Scan a glob pattern to separate the pattern into segments. Used by the [split](#split) method. @@ -405,7 +405,7 @@ const mm = require('micromatch'); const state = mm.scan(pattern[, options]); ``` -### [.parse](index.js#L407) +### [.parse](index.js#L419) Parse a glob pattern to create the source string for a regular expression. @@ -422,7 +422,7 @@ const mm = require('micromatch'); const state = mm(pattern[, options]); ``` -### [.braces](index.js#L434) +### [.braces](index.js#L446) Process the given brace `pattern`. @@ -479,7 +479,7 @@ console.log(braces('foo/{a,b,c}/bar', { expand: true })); | [onResult](#optionsonResult) | `function` | `undefined` | Function to be called on all items, regardless of whether or not they are matched or ignored. | | `posix` | `boolean` | `false` | Support [POSIX character classes](#posix-bracket-expressions) ("posix brackets"). | | `posixSlashes` | `boolean` | `undefined` | Convert all slashes in file paths to forward slashes. This does not convert slashes in the glob pattern itself | -| `prepend` | `boolean` | `undefined` | String to prepend to the generated regex used for matching. | +| `prepend` | `string` | `undefined` | String to prepend to the generated regex used for matching. | | `regex` | `boolean` | `false` | Use regular expression rules for `+` (instead of matching literal `+`), and for stars that follow closing parentheses or brackets (as in `)*` and `]*`). | | `strictBrackets` | `boolean` | `undefined` | Throw an error if brackets, braces, or parens are imbalanced. | | `strictSlashes` | `boolean` | `undefined` | When true, picomatch won't match trailing slashes with single stars. | @@ -772,7 +772,6 @@ Given the list: `['a.js', 'b.js', 'c.js', 'd.js', 'E.js']`: * `[ac].js`: matches both `a` and `c`, returning `['a.js', 'c.js']` * `[b-d].js`: matches from `b` to `d`, returning `['b.js', 'c.js', 'd.js']` -* `[b-d].js`: matches from `b` to `d`, returning `['b.js', 'c.js', 'd.js']` * `a/[A-Z].js`: matches and uppercase letter, returning `['a/E.md']` Learn about [regex character classes](http://www.regular-expressions.info/charclass.html). @@ -835,7 +834,7 @@ To solve this, you might be inspired to do something like `'foo\\*'.replace(/\\/ Install dependencies for running benchmarks: ```sh -$ cd bench && npm install +$ cd bench && npm install ``` Run the benchmarks: @@ -846,56 +845,56 @@ $ npm run bench ### Latest results -As of April 10, 2019 (longer bars are better): +As of April 10, 2021 (longer bars are better): ```sh # .makeRe star - micromatch x 1,724,735 ops/sec ±1.69% (87 runs sampled)) - minimatch x 649,565 ops/sec ±1.93% (91 runs sampled) + micromatch x 2,232,802 ops/sec ±2.34% (89 runs sampled)) + minimatch x 781,018 ops/sec ±6.74% (92 runs sampled)) # .makeRe star; dot=true - micromatch x 1,302,127 ops/sec ±1.43% (92 runs sampled) - minimatch x 556,242 ops/sec ±0.71% (86 runs sampled) + micromatch x 1,863,453 ops/sec ±0.74% (93 runs sampled) + minimatch x 723,105 ops/sec ±0.75% (93 runs sampled) # .makeRe globstar - micromatch x 1,393,992 ops/sec ±0.71% (89 runs sampled) - minimatch x 1,112,801 ops/sec ±2.02% (91 runs sampled) + micromatch x 1,624,179 ops/sec ±2.22% (91 runs sampled) + minimatch x 1,117,230 ops/sec ±2.78% (86 runs sampled)) # .makeRe globstars - micromatch x 1,419,097 ops/sec ±0.34% (94 runs sampled) - minimatch x 541,207 ops/sec ±1.66% (93 runs sampled) + micromatch x 1,658,642 ops/sec ±0.86% (92 runs sampled) + minimatch x 741,224 ops/sec ±1.24% (89 runs sampled)) # .makeRe with leading star - micromatch x 1,247,825 ops/sec ±0.97% (94 runs sampled) - minimatch x 489,660 ops/sec ±0.63% (94 runs sampled) + micromatch x 1,525,014 ops/sec ±1.63% (90 runs sampled) + minimatch x 561,074 ops/sec ±3.07% (89 runs sampled) # .makeRe - braces - micromatch x 206,301 ops/sec ±1.62% (81 runs sampled)) - minimatch x 115,986 ops/sec ±0.59% (94 runs sampled) + micromatch x 172,478 ops/sec ±2.37% (78 runs sampled) + minimatch x 96,087 ops/sec ±2.34% (88 runs sampled))) # .makeRe braces - range (expanded) - micromatch x 27,782 ops/sec ±0.79% (88 runs sampled) - minimatch x 4,683 ops/sec ±1.20% (92 runs sampled) + micromatch x 26,973 ops/sec ±0.84% (89 runs sampled) + minimatch x 3,023 ops/sec ±0.99% (90 runs sampled)) # .makeRe braces - range (compiled) - micromatch x 134,056 ops/sec ±2.73% (77 runs sampled)) - minimatch x 977 ops/sec ±0.85% (91 runs sampled)d) + micromatch x 152,892 ops/sec ±1.67% (83 runs sampled) + minimatch x 992 ops/sec ±3.50% (89 runs sampled)d)) # .makeRe braces - nested ranges (expanded) - micromatch x 18,353 ops/sec ±0.95% (91 runs sampled) - minimatch x 4,514 ops/sec ±1.04% (93 runs sampled) + micromatch x 15,816 ops/sec ±13.05% (80 runs sampled) + minimatch x 2,953 ops/sec ±1.64% (91 runs sampled) # .makeRe braces - nested ranges (compiled) - micromatch x 38,916 ops/sec ±1.85% (82 runs sampled) - minimatch x 980 ops/sec ±0.54% (93 runs sampled)d) + micromatch x 110,881 ops/sec ±1.85% (82 runs sampled) + minimatch x 1,008 ops/sec ±1.51% (91 runs sampled) # .makeRe braces - set (compiled) - micromatch x 141,088 ops/sec ±1.70% (70 runs sampled)) - minimatch x 43,385 ops/sec ±0.87% (93 runs sampled) + micromatch x 134,930 ops/sec ±3.54% (63 runs sampled)) + minimatch x 43,242 ops/sec ±0.60% (93 runs sampled) # .makeRe braces - nested sets (compiled) - micromatch x 87,272 ops/sec ±2.85% (71 runs sampled)) - minimatch x 25,327 ops/sec ±1.59% (86 runs sampled) + micromatch x 94,455 ops/sec ±1.74% (69 runs sampled)) + minimatch x 27,720 ops/sec ±1.84% (93 runs sampled)) ``` ## Contributing @@ -964,23 +963,32 @@ You might also be interested in these projects: | **Commits** | **Contributor** | | --- | --- | -| 475 | [jonschlinkert](https://github.com/jonschlinkert) | +| 508 | [jonschlinkert](https://github.com/jonschlinkert) | | 12 | [es128](https://github.com/es128) | | 8 | [doowb](https://github.com/doowb) | -| 3 | [paulmillr](https://github.com/paulmillr) | +| 6 | [paulmillr](https://github.com/paulmillr) | +| 5 | [mrmlnc](https://github.com/mrmlnc) | +| 4 | [danez](https://github.com/danez) | +| 3 | [DrPizza](https://github.com/DrPizza) | | 2 | [TrySound](https://github.com/TrySound) | +| 2 | [mceIdo](https://github.com/mceIdo) | +| 2 | [Glazy](https://github.com/Glazy) | | 2 | [MartinKolarik](https://github.com/MartinKolarik) | | 2 | [Tvrqvoise](https://github.com/Tvrqvoise) | -| 2 | [tunnckoCore](https://github.com/tunnckoCore) | | 1 | [amilajack](https://github.com/amilajack) | -| 1 | [mrmlnc](https://github.com/mrmlnc) | +| 1 | [Cslove](https://github.com/Cslove) | | 1 | [devongovett](https://github.com/devongovett) | | 1 | [DianeLooney](https://github.com/DianeLooney) | | 1 | [UltCombo](https://github.com/UltCombo) | +| 1 | [frangio](https://github.com/frangio) | +| 1 | [juszczykjakub](https://github.com/juszczykjakub) | +| 1 | [muescha](https://github.com/muescha) | +| 1 | [sebdeckers](https://github.com/sebdeckers) | | 1 | [tomByrer](https://github.com/tomByrer) | | 1 | [fidian](https://github.com/fidian) | | 1 | [simlu](https://github.com/simlu) | | 1 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) | +| 1 | [yvele](https://github.com/yvele) | ### Author @@ -992,9 +1000,9 @@ You might also be interested in these projects: ### License -Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert). +Copyright © 2021, [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.8.0, on April 10, 2019._ \ No newline at end of file +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 10, 2021._ \ No newline at end of file diff --git a/node_modules/micromatch/index.js b/node_modules/micromatch/index.js index 1d5b3d1cb2..7ac922bc00 100644 --- a/node_modules/micromatch/index.js +++ b/node_modules/micromatch/index.js @@ -4,7 +4,7 @@ const util = require('util'); const braces = require('braces'); const picomatch = require('picomatch'); const utils = require('picomatch/lib/utils'); -const isEmptyString = val => typeof val === 'string' && (val === '' || val === './'); +const isEmptyString = val => val === '' || val === './'; /** * Returns an array of strings that match one or more glob patterns. @@ -16,9 +16,9 @@ const isEmptyString = val => typeof val === 'string' && (val === '' || val === ' * console.log(mm(['a.js', 'a.txt'], ['*.js'])); * //=> [ 'a.js' ] * ``` - * @param {String|Array} list List of strings to match. - * @param {String|Array} patterns One or more glob patterns to use for matching. - * @param {Object} options See available [options](#options) + * @param {String|Array} `list` List of strings to match. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) * @return {Array} Returns an array of matches * @summary false * @api public @@ -113,9 +113,9 @@ micromatch.matcher = (pattern, options) => picomatch(pattern, options); * console.log(mm.isMatch('a.a', ['b.*', '*.a'])); //=> true * console.log(mm.isMatch('a.a', 'b.*')); //=> false * ``` - * @param {String} str The string to test. - * @param {String|Array} patterns One or more glob patterns to use for matching. - * @param {Object} [options] See available [options](#options). + * @param {String} `str` The string to test. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `[options]` See available [options](#options). * @return {Boolean} Returns true if any patterns match `str` * @api public */ @@ -181,7 +181,7 @@ micromatch.not = (list, patterns, options = {}) => { * @param {String} `str` The string to match. * @param {String|Array} `patterns` Glob pattern to use for matching. * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns true if the patter matches any part of `str`. + * @return {Boolean} Returns true if any of the patterns matches any part of `str`. * @api public */ @@ -252,7 +252,7 @@ micromatch.matchKeys = (obj, patterns, options) => { * @param {String|Array} `list` The string or array of strings to test. Returns as soon as the first match is found. * @param {String|Array} `patterns` One or more glob patterns to use for matching. * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns true if any patterns match `str` + * @return {Boolean} Returns true if any `patterns` matches any of the strings in `list` * @api public */ @@ -288,7 +288,7 @@ micromatch.some = (list, patterns, options) => { * @param {String|Array} `list` The string or array of strings to test. * @param {String|Array} `patterns` One or more glob patterns to use for matching. * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns true if any patterns match `str` + * @return {Boolean} Returns true if all `patterns` matches all of the strings in `list` * @api public */ @@ -354,7 +354,7 @@ micromatch.all = (str, patterns, options) => { * @param {String} `glob` Glob pattern to use for matching. * @param {String} `input` String to match * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns an array of captures if the input matches the glob pattern, otherwise `null`. + * @return {Array|null} Returns an array of captures if the input matches the glob pattern, otherwise `null`. * @api public */ diff --git a/node_modules/micromatch/package.json b/node_modules/micromatch/package.json index 0b870b1fe0..3bac26e13b 100644 --- a/node_modules/micromatch/package.json +++ b/node_modules/micromatch/package.json @@ -1,7 +1,7 @@ { "name": "micromatch", "description": "Glob matching for javascript/node.js. A replacement and faster alternative to minimatch and multimatch.", - "version": "4.0.2", + "version": "4.0.4", "homepage": "https://github.com/micromatch/micromatch", "author": "Jon Schlinkert (https://github.com/jonschlinkert)", "contributors": [ @@ -18,7 +18,8 @@ "Paul Miller (paulmillr.com)", "Tom Byrer (https://github.com/tomByrer)", "Tyler Akins (http://rumkin.com)", - "Peter Bright (https://github.com/drpizza)" + "Peter Bright (https://github.com/drpizza)", + "Kuba Juszczyk (https://github.com/ku8ar)" ], "repository": "micromatch/micromatch", "bugs": { @@ -30,20 +31,20 @@ ], "main": "index.js", "engines": { - "node": ">=8" + "node": ">=8.6" }, "scripts": { "test": "mocha" }, "dependencies": { "braces": "^3.0.1", - "picomatch": "^2.0.5" + "picomatch": "^2.2.3" }, "devDependencies": { "fill-range": "^7.0.1", "gulp-format-md": "^2.0.0", "minimatch": "^3.0.4", - "mocha": "^5.2.0", + "mocha": "^7.2.0", "time-require": "github:jonschlinkert/time-require" }, "keywords": [ diff --git a/node_modules/picomatch/CHANGELOG.md b/node_modules/picomatch/CHANGELOG.md old mode 100755 new mode 100644 index 7af58619f7..b9b9554df7 --- a/node_modules/picomatch/CHANGELOG.md +++ b/node_modules/picomatch/CHANGELOG.md @@ -32,6 +32,19 @@ Changelog entries are classified using the following labels _(from [keep-a-chang +## 2.3.0 (2021-05-21) + +### Fixed + +* Fixes bug where file names with two dots were not being matched consistently with negation extglobs containing a star ([56083ef](https://github.com/micromatch/picomatch/commit/56083ef)) + +## 2.2.3 (2021-04-10) + +### Fixed + +* Do not skip pattern seperator for square brackets ([fb08a30](https://github.com/micromatch/picomatch/commit/fb08a30)). +* Set negatedExtGlob also if it does not span the whole pattern ([032e3f5](https://github.com/micromatch/picomatch/commit/032e3f5)). + ## 2.2.2 (2020-03-21) ### Fixed diff --git a/node_modules/picomatch/LICENSE b/node_modules/picomatch/LICENSE old mode 100755 new mode 100644 diff --git a/node_modules/picomatch/README.md b/node_modules/picomatch/README.md old mode 100755 new mode 100644 index 7737151bf7..54822d498d --- a/node_modules/picomatch/README.md +++ b/node_modules/picomatch/README.md @@ -1,18 +1,18 @@

Picomatch

- - version - - - test status - - - coverage status - - - downloads - + +version + + +test status + + +coverage status + + +downloads +


@@ -54,6 +54,7 @@ See the [library comparison](#library-comparisons) to other libraries. * [.parse](#parse) * [.scan](#scan) * [.compileRe](#compilere) + * [.makeRe](#makere) * [.toRegex](#toregex) - [Options](#options) * [Picomatch options](#picomatch-options) @@ -234,7 +235,20 @@ console.log(result); negated: true } ``` -### [.compileRe](lib/picomatch.js#L250) +### [.compileRe](lib/picomatch.js#L245) + +Compile a regular expression from the `state` object returned by the +[parse()](#parse) method. + +**Params** + +* `state` **{Object}** +* `options` **{Object}** +* `returnOutput` **{Boolean}**: Intended for implementors, this argument allows you to return the raw output from the parser. +* `returnState` **{Boolean}**: Adds the state to a `state` property on the returned regex. Useful for implementors and debugging. +* `returns` **{RegExp}** + +### [.makeRe](lib/picomatch.js#L286) Create a regular expression from a parsed glob pattern. @@ -242,6 +256,8 @@ Create a regular expression from a parsed glob pattern. * `state` **{String}**: The object returned from the `.parse` method. * `options` **{Object}** +* `returnOutput` **{Boolean}**: Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result. +* `returnState` **{Boolean}**: Implementors may use this argument to return the state from the parsed glob with the returned regular expression. * `returns` **{RegExp}**: Returns a regex created from the given pattern. **Example** @@ -255,7 +271,7 @@ console.log(picomatch.compileRe(state)); //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ ``` -### [.toRegex](lib/picomatch.js#L318) +### [.toRegex](lib/picomatch.js#L321) Create a regular expression from the given regex source string. @@ -688,4 +704,4 @@ npm install -g verbose/verb#dev verb-generate-readme && verb ### License Copyright © 2017-present, [Jon Schlinkert](https://github.com/jonschlinkert). -Released under the [MIT License](LICENSE). +Released under the [MIT License](LICENSE). \ No newline at end of file diff --git a/node_modules/picomatch/index.js b/node_modules/picomatch/index.js old mode 100755 new mode 100644 diff --git a/node_modules/picomatch/lib/constants.js b/node_modules/picomatch/lib/constants.js old mode 100755 new mode 100644 diff --git a/node_modules/picomatch/lib/parse.js b/node_modules/picomatch/lib/parse.js old mode 100755 new mode 100644 index 34bdc2f90e..c16d59d9a6 --- a/node_modules/picomatch/lib/parse.js +++ b/node_modules/picomatch/lib/parse.js @@ -92,7 +92,7 @@ const parse = (input, options) => { START_ANCHOR } = PLATFORM_CHARS; - const globstar = (opts) => { + const globstar = opts => { return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; }; @@ -142,12 +142,13 @@ const parse = (input, options) => { const eos = () => state.index === len - 1; const peek = state.peek = (n = 1) => input[state.index + n]; - const advance = state.advance = () => input[++state.index]; + const advance = state.advance = () => input[++state.index] || ''; const remaining = () => input.slice(state.index + 1); const consume = (value = '', num = 0) => { state.consumed += value; state.index += num; }; + const append = token => { state.output += token.output != null ? token.output : token.value; consume(token.value); @@ -203,7 +204,7 @@ const parse = (input, options) => { } } - if (extglobs.length && tok.type !== 'paren' && !EXTGLOB_CHARS[tok.value]) { + if (extglobs.length && tok.type !== 'paren') { extglobs[extglobs.length - 1].inner += tok.value; } @@ -235,6 +236,7 @@ const parse = (input, options) => { const extglobClose = token => { let output = token.close + (opts.capture ? ')' : ''); + let rest; if (token.type === 'negate') { let extglobStar = star; @@ -247,7 +249,11 @@ const parse = (input, options) => { output = token.close = `)$))${extglobStar}`; } - if (token.prev.type === 'bos' && eos()) { + if (token.inner.includes('*') && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) { + output = token.close = `)${rest})${extglobStar})`; + } + + if (token.prev.type === 'bos') { state.negatedExtglob = true; } } @@ -356,9 +362,9 @@ const parse = (input, options) => { } if (opts.unescape === true) { - value = advance() || ''; + value = advance(); } else { - value += advance() || ''; + value += advance(); } if (state.brackets === 0) { @@ -1022,7 +1028,7 @@ parse.fastpaths = (input, options) => { star = `(${star})`; } - const globstar = (opts) => { + const globstar = opts => { if (opts.noglobstar === true) return star; return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; }; diff --git a/node_modules/picomatch/lib/picomatch.js b/node_modules/picomatch/lib/picomatch.js old mode 100755 new mode 100644 index df7438a94f..782d809435 --- a/node_modules/picomatch/lib/picomatch.js +++ b/node_modules/picomatch/lib/picomatch.js @@ -231,68 +231,71 @@ picomatch.parse = (pattern, options) => { picomatch.scan = (input, options) => scan(input, options); /** - * Create a regular expression from a parsed glob pattern. - * - * ```js - * const picomatch = require('picomatch'); - * const state = picomatch.parse('*.js'); - * // picomatch.compileRe(state[, options]); + * Compile a regular expression from the `state` object returned by the + * [parse()](#parse) method. * - * console.log(picomatch.compileRe(state)); - * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ - * ``` - * @param {String} `state` The object returned from the `.parse` method. + * @param {Object} `state` * @param {Object} `options` - * @return {RegExp} Returns a regex created from the given pattern. + * @param {Boolean} `returnOutput` Intended for implementors, this argument allows you to return the raw output from the parser. + * @param {Boolean} `returnState` Adds the state to a `state` property on the returned regex. Useful for implementors and debugging. + * @return {RegExp} * @api public */ -picomatch.compileRe = (parsed, options, returnOutput = false, returnState = false) => { +picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => { if (returnOutput === true) { - return parsed.output; + return state.output; } const opts = options || {}; const prepend = opts.contains ? '' : '^'; const append = opts.contains ? '' : '$'; - let source = `${prepend}(?:${parsed.output})${append}`; - if (parsed && parsed.negated === true) { + let source = `${prepend}(?:${state.output})${append}`; + if (state && state.negated === true) { source = `^(?!${source}).*$`; } const regex = picomatch.toRegex(source, options); if (returnState === true) { - regex.state = parsed; + regex.state = state; } return regex; }; -picomatch.makeRe = (input, options, returnOutput = false, returnState = false) => { +/** + * Create a regular expression from a parsed glob pattern. + * + * ```js + * const picomatch = require('picomatch'); + * const state = picomatch.parse('*.js'); + * // picomatch.compileRe(state[, options]); + * + * console.log(picomatch.compileRe(state)); + * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ + * ``` + * @param {String} `state` The object returned from the `.parse` method. + * @param {Object} `options` + * @param {Boolean} `returnOutput` Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result. + * @param {Boolean} `returnState` Implementors may use this argument to return the state from the parsed glob with the returned regular expression. + * @return {RegExp} Returns a regex created from the given pattern. + * @api public + */ + +picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => { if (!input || typeof input !== 'string') { throw new TypeError('Expected a non-empty string'); } - const opts = options || {}; let parsed = { negated: false, fastpaths: true }; - let prefix = ''; - let output; - - if (input.startsWith('./')) { - input = input.slice(2); - prefix = parsed.prefix = './'; - } - if (opts.fastpaths !== false && (input[0] === '.' || input[0] === '*')) { - output = parse.fastpaths(input, options); + if (options.fastpaths !== false && (input[0] === '.' || input[0] === '*')) { + parsed.output = parse.fastpaths(input, options); } - if (output === undefined) { + if (!parsed.output) { parsed = parse(input, options); - parsed.prefix = prefix + (parsed.prefix || ''); - } else { - parsed.output = output; } return picomatch.compileRe(parsed, options, returnOutput, returnState); diff --git a/node_modules/picomatch/lib/scan.js b/node_modules/picomatch/lib/scan.js old mode 100755 new mode 100644 index 31ae6adbe8..e59cd7a135 --- a/node_modules/picomatch/lib/scan.js +++ b/node_modules/picomatch/lib/scan.js @@ -32,7 +32,8 @@ const depth = token => { /** * Quickly scans a glob pattern and returns an object with a handful of * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists), - * `glob` (the actual pattern), and `negated` (true if the path starts with `!`). + * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not + * with `!(`) and `negatedExtglob` (true if the path starts with `!(`). * * ```js * const pm = require('picomatch'); @@ -66,6 +67,7 @@ const scan = (input, options) => { let braceEscaped = false; let backslashes = false; let negated = false; + let negatedExtglob = false; let finished = false; let braces = 0; let prev; @@ -177,6 +179,9 @@ const scan = (input, options) => { isGlob = token.isGlob = true; isExtglob = token.isExtglob = true; finished = true; + if (code === CHAR_EXCLAMATION_MARK && index === start) { + negatedExtglob = true; + } if (scanToEnd === true) { while (eos() !== true && (code = advance())) { @@ -231,13 +236,15 @@ const scan = (input, options) => { isBracket = token.isBracket = true; isGlob = token.isGlob = true; finished = true; - - if (scanToEnd === true) { - continue; - } break; } } + + if (scanToEnd === true) { + continue; + } + + break; } if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) { @@ -328,7 +335,8 @@ const scan = (input, options) => { isGlob, isExtglob, isGlobstar, - negated + negated, + negatedExtglob }; if (opts.tokens === true) { diff --git a/node_modules/picomatch/lib/utils.js b/node_modules/picomatch/lib/utils.js old mode 100755 new mode 100644 diff --git a/node_modules/picomatch/package.json b/node_modules/picomatch/package.json old mode 100755 new mode 100644 index 882d1dff36..4aabed1bd3 --- a/node_modules/picomatch/package.json +++ b/node_modules/picomatch/package.json @@ -1,7 +1,7 @@ { "name": "picomatch", "description": "Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions.", - "version": "2.2.2", + "version": "2.3.0", "homepage": "https://github.com/micromatch/picomatch", "author": "Jon Schlinkert (https://github.com/jonschlinkert)", "funding": "https://github.com/sponsors/jonschlinkert", diff --git a/package-lock.json b/package-lock.json index 2f86d0c56a..34af557e6f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "eslint-plugin-github": "^4.1.5", "eslint-plugin-import": "^2.22.0", "eslint-plugin-no-async-foreach": "^0.1.1", - "micromatch": "4.0.2", + "micromatch": "4.0.4", "nock": "^13.1.1", "removeNPMAbsolutePaths": "2.0.0", "sinon": "^11.1.2", @@ -3918,15 +3918,16 @@ } }, "node_modules/micromatch": { - "version": "4.0.2", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", "dev": true, - "license": "MIT", "dependencies": { "braces": "^3.0.1", - "picomatch": "^2.0.5" + "picomatch": "^2.2.3" }, "engines": { - "node": ">=8" + "node": ">=8.6" } }, "node_modules/mimic-fn": { @@ -4364,9 +4365,10 @@ } }, "node_modules/picomatch": { - "version": "2.2.2", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", "dev": true, - "license": "MIT", "engines": { "node": ">=8.6" }, @@ -8733,11 +8735,13 @@ "dev": true }, "micromatch": { - "version": "4.0.2", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", "dev": true, "requires": { "braces": "^3.0.1", - "picomatch": "^2.0.5" + "picomatch": "^2.2.3" } }, "mimic-fn": { @@ -9032,7 +9036,9 @@ "dev": true }, "picomatch": { - "version": "2.2.2", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", "dev": true }, "pify": { diff --git a/package.json b/package.json index 17a9ab35df..1d52e12962 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "eslint-plugin-github": "^4.1.5", "eslint-plugin-import": "^2.22.0", "eslint-plugin-no-async-foreach": "^0.1.1", - "micromatch": "4.0.2", + "micromatch": "4.0.4", "nock": "^13.1.1", "removeNPMAbsolutePaths": "2.0.0", "sinon": "^11.1.2", pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy