feat: docker compose maybe
This commit is contained in:
		
							
								
								
									
										15
									
								
								node_modules/anymatch/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								node_modules/anymatch/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
			
		||||
The ISC License
 | 
			
		||||
 | 
			
		||||
Copyright (c) 2019 Elan Shanker, Paul Miller (https://paulmillr.com)
 | 
			
		||||
 | 
			
		||||
Permission to use, copy, modify, and/or distribute this software for any
 | 
			
		||||
purpose with or without fee is hereby granted, provided that the above
 | 
			
		||||
copyright notice and this permission notice appear in all copies.
 | 
			
		||||
 | 
			
		||||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 | 
			
		||||
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 | 
			
		||||
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 | 
			
		||||
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 | 
			
		||||
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 | 
			
		||||
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
 | 
			
		||||
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | 
			
		||||
							
								
								
									
										87
									
								
								node_modules/anymatch/README.md
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								node_modules/anymatch/README.md
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,87 @@
 | 
			
		||||
anymatch [](https://travis-ci.org/micromatch/anymatch) [](https://coveralls.io/r/micromatch/anymatch?branch=master)
 | 
			
		||||
======
 | 
			
		||||
Javascript module to match a string against a regular expression, glob, string,
 | 
			
		||||
or function that takes the string as an argument and returns a truthy or falsy
 | 
			
		||||
value. The matcher can also be an array of any or all of these. Useful for
 | 
			
		||||
allowing a very flexible user-defined config to define things like file paths.
 | 
			
		||||
 | 
			
		||||
__Note: This module has Bash-parity, please be aware that Windows-style backslashes are not supported as separators. See https://github.com/micromatch/micromatch#backslashes for more information.__
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Usage
 | 
			
		||||
-----
 | 
			
		||||
```sh
 | 
			
		||||
npm install anymatch
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
#### anymatch(matchers, testString, [returnIndex], [options])
 | 
			
		||||
* __matchers__: (_Array|String|RegExp|Function_)
 | 
			
		||||
String to be directly matched, string with glob patterns, regular expression
 | 
			
		||||
test, function that takes the testString as an argument and returns a truthy
 | 
			
		||||
value if it should be matched, or an array of any number and mix of these types.
 | 
			
		||||
* __testString__: (_String|Array_) The string to test against the matchers. If
 | 
			
		||||
passed as an array, the first element of the array will be used as the
 | 
			
		||||
`testString` for non-function matchers, while the entire array will be applied
 | 
			
		||||
as the arguments for function matchers.
 | 
			
		||||
* __options__: (_Object_ [optional]_) Any of the [picomatch](https://github.com/micromatch/picomatch#options) options.
 | 
			
		||||
    * __returnIndex__: (_Boolean [optional]_) If true, return the array index of
 | 
			
		||||
the first matcher that that testString matched, or -1 if no match, instead of a
 | 
			
		||||
boolean result.
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
const anymatch = require('anymatch');
 | 
			
		||||
 | 
			
		||||
const matchers = [ 'path/to/file.js', 'path/anyjs/**/*.js', /foo.js$/, string => string.includes('bar') && string.length > 10 ] ;
 | 
			
		||||
 | 
			
		||||
anymatch(matchers, 'path/to/file.js'); // true
 | 
			
		||||
anymatch(matchers, 'path/anyjs/baz.js'); // true
 | 
			
		||||
anymatch(matchers, 'path/to/foo.js'); // true
 | 
			
		||||
anymatch(matchers, 'path/to/bar.js'); // true
 | 
			
		||||
anymatch(matchers, 'bar.js'); // false
 | 
			
		||||
 | 
			
		||||
// returnIndex = true
 | 
			
		||||
anymatch(matchers, 'foo.js', {returnIndex: true}); // 2
 | 
			
		||||
anymatch(matchers, 'path/anyjs/foo.js', {returnIndex: true}); // 1
 | 
			
		||||
 | 
			
		||||
// any picomatc
 | 
			
		||||
 | 
			
		||||
// using globs to match directories and their children
 | 
			
		||||
anymatch('node_modules', 'node_modules'); // true
 | 
			
		||||
anymatch('node_modules', 'node_modules/somelib/index.js'); // false
 | 
			
		||||
anymatch('node_modules/**', 'node_modules/somelib/index.js'); // true
 | 
			
		||||
anymatch('node_modules/**', '/absolute/path/to/node_modules/somelib/index.js'); // false
 | 
			
		||||
anymatch('**/node_modules/**', '/absolute/path/to/node_modules/somelib/index.js'); // true
 | 
			
		||||
 | 
			
		||||
const matcher = anymatch(matchers);
 | 
			
		||||
['foo.js', 'bar.js'].filter(matcher);  // [ 'foo.js' ]
 | 
			
		||||
anymatch master* ❯
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
#### anymatch(matchers)
 | 
			
		||||
You can also pass in only your matcher(s) to get a curried function that has
 | 
			
		||||
already been bound to the provided matching criteria. This can be used as an
 | 
			
		||||
`Array#filter` callback.
 | 
			
		||||
 | 
			
		||||
```js
 | 
			
		||||
var matcher = anymatch(matchers);
 | 
			
		||||
 | 
			
		||||
matcher('path/to/file.js'); // true
 | 
			
		||||
matcher('path/anyjs/baz.js', true); // 1
 | 
			
		||||
 | 
			
		||||
['foo.js', 'bar.js'].filter(matcher); // ['foo.js']
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Changelog
 | 
			
		||||
----------
 | 
			
		||||
[See release notes page on GitHub](https://github.com/micromatch/anymatch/releases)
 | 
			
		||||
 | 
			
		||||
- **v3.0:** Removed `startIndex` and `endIndex` arguments. Node 8.x-only.
 | 
			
		||||
- **v2.0:** [micromatch](https://github.com/jonschlinkert/micromatch) moves away from minimatch-parity and inline with Bash. This includes handling backslashes differently (see https://github.com/micromatch/micromatch#backslashes for more information).
 | 
			
		||||
- **v1.2:** anymatch uses [micromatch](https://github.com/jonschlinkert/micromatch)
 | 
			
		||||
for glob pattern matching. Issues with glob pattern matching should be
 | 
			
		||||
reported directly to the [micromatch issue tracker](https://github.com/jonschlinkert/micromatch/issues).
 | 
			
		||||
 | 
			
		||||
License
 | 
			
		||||
-------
 | 
			
		||||
[ISC](https://raw.github.com/micromatch/anymatch/master/LICENSE)
 | 
			
		||||
							
								
								
									
										20
									
								
								node_modules/anymatch/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								node_modules/anymatch/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
type AnymatchFn = (testString: string) => boolean;
 | 
			
		||||
type AnymatchPattern = string|RegExp|AnymatchFn;
 | 
			
		||||
type AnymatchMatcher = AnymatchPattern|AnymatchPattern[]
 | 
			
		||||
type AnymatchTester = {
 | 
			
		||||
  (testString: string|any[], returnIndex: true): number;
 | 
			
		||||
  (testString: string|any[]): boolean;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type PicomatchOptions = {dot: boolean};
 | 
			
		||||
 | 
			
		||||
declare const anymatch: {
 | 
			
		||||
  (matchers: AnymatchMatcher): AnymatchTester;
 | 
			
		||||
  (matchers: AnymatchMatcher, testString: null, returnIndex: true | PicomatchOptions): AnymatchTester;
 | 
			
		||||
  (matchers: AnymatchMatcher, testString: string|any[], returnIndex: true | PicomatchOptions): number;
 | 
			
		||||
  (matchers: AnymatchMatcher, testString: string|any[]): boolean;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export {AnymatchMatcher as Matcher}
 | 
			
		||||
export {AnymatchTester as Tester}
 | 
			
		||||
export default anymatch
 | 
			
		||||
							
								
								
									
										104
									
								
								node_modules/anymatch/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								node_modules/anymatch/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,104 @@
 | 
			
		||||
'use strict';
 | 
			
		||||
 | 
			
		||||
Object.defineProperty(exports, "__esModule", { value: true });
 | 
			
		||||
 | 
			
		||||
const picomatch = require('picomatch');
 | 
			
		||||
const normalizePath = require('normalize-path');
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @typedef {(testString: string) => boolean} AnymatchFn
 | 
			
		||||
 * @typedef {string|RegExp|AnymatchFn} AnymatchPattern
 | 
			
		||||
 * @typedef {AnymatchPattern|AnymatchPattern[]} AnymatchMatcher
 | 
			
		||||
 */
 | 
			
		||||
const BANG = '!';
 | 
			
		||||
const DEFAULT_OPTIONS = {returnIndex: false};
 | 
			
		||||
const arrify = (item) => Array.isArray(item) ? item : [item];
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @param {AnymatchPattern} matcher
 | 
			
		||||
 * @param {object} options
 | 
			
		||||
 * @returns {AnymatchFn}
 | 
			
		||||
 */
 | 
			
		||||
const createPattern = (matcher, options) => {
 | 
			
		||||
  if (typeof matcher === 'function') {
 | 
			
		||||
    return matcher;
 | 
			
		||||
  }
 | 
			
		||||
  if (typeof matcher === 'string') {
 | 
			
		||||
    const glob = picomatch(matcher, options);
 | 
			
		||||
    return (string) => matcher === string || glob(string);
 | 
			
		||||
  }
 | 
			
		||||
  if (matcher instanceof RegExp) {
 | 
			
		||||
    return (string) => matcher.test(string);
 | 
			
		||||
  }
 | 
			
		||||
  return (string) => false;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @param {Array<Function>} patterns
 | 
			
		||||
 * @param {Array<Function>} negPatterns
 | 
			
		||||
 * @param {String|Array} args
 | 
			
		||||
 * @param {Boolean} returnIndex
 | 
			
		||||
 * @returns {boolean|number}
 | 
			
		||||
 */
 | 
			
		||||
const matchPatterns = (patterns, negPatterns, args, returnIndex) => {
 | 
			
		||||
  const isList = Array.isArray(args);
 | 
			
		||||
  const _path = isList ? args[0] : args;
 | 
			
		||||
  if (!isList && typeof _path !== 'string') {
 | 
			
		||||
    throw new TypeError('anymatch: second argument must be a string: got ' +
 | 
			
		||||
      Object.prototype.toString.call(_path))
 | 
			
		||||
  }
 | 
			
		||||
  const path = normalizePath(_path, false);
 | 
			
		||||
 | 
			
		||||
  for (let index = 0; index < negPatterns.length; index++) {
 | 
			
		||||
    const nglob = negPatterns[index];
 | 
			
		||||
    if (nglob(path)) {
 | 
			
		||||
      return returnIndex ? -1 : false;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  const applied = isList && [path].concat(args.slice(1));
 | 
			
		||||
  for (let index = 0; index < patterns.length; index++) {
 | 
			
		||||
    const pattern = patterns[index];
 | 
			
		||||
    if (isList ? pattern(...applied) : pattern(path)) {
 | 
			
		||||
      return returnIndex ? index : true;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  return returnIndex ? -1 : false;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @param {AnymatchMatcher} matchers
 | 
			
		||||
 * @param {Array|string} testString
 | 
			
		||||
 * @param {object} options
 | 
			
		||||
 * @returns {boolean|number|Function}
 | 
			
		||||
 */
 | 
			
		||||
const anymatch = (matchers, testString, options = DEFAULT_OPTIONS) => {
 | 
			
		||||
  if (matchers == null) {
 | 
			
		||||
    throw new TypeError('anymatch: specify first argument');
 | 
			
		||||
  }
 | 
			
		||||
  const opts = typeof options === 'boolean' ? {returnIndex: options} : options;
 | 
			
		||||
  const returnIndex = opts.returnIndex || false;
 | 
			
		||||
 | 
			
		||||
  // Early cache for matchers.
 | 
			
		||||
  const mtchers = arrify(matchers);
 | 
			
		||||
  const negatedGlobs = mtchers
 | 
			
		||||
    .filter(item => typeof item === 'string' && item.charAt(0) === BANG)
 | 
			
		||||
    .map(item => item.slice(1))
 | 
			
		||||
    .map(item => picomatch(item, opts));
 | 
			
		||||
  const patterns = mtchers
 | 
			
		||||
    .filter(item => typeof item !== 'string' || (typeof item === 'string' && item.charAt(0) !== BANG))
 | 
			
		||||
    .map(matcher => createPattern(matcher, opts));
 | 
			
		||||
 | 
			
		||||
  if (testString == null) {
 | 
			
		||||
    return (testString, ri = false) => {
 | 
			
		||||
      const returnIndex = typeof ri === 'boolean' ? ri : false;
 | 
			
		||||
      return matchPatterns(patterns, negatedGlobs, testString, returnIndex);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  return matchPatterns(patterns, negatedGlobs, testString, returnIndex);
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
anymatch.default = anymatch;
 | 
			
		||||
module.exports = anymatch;
 | 
			
		||||
							
								
								
									
										48
									
								
								node_modules/anymatch/package.json
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								node_modules/anymatch/package.json
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
			
		||||
{
 | 
			
		||||
  "name": "anymatch",
 | 
			
		||||
  "version": "3.1.3",
 | 
			
		||||
  "description": "Matches strings against configurable strings, globs, regular expressions, and/or functions",
 | 
			
		||||
  "files": [
 | 
			
		||||
    "index.js",
 | 
			
		||||
    "index.d.ts"
 | 
			
		||||
  ],
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "normalize-path": "^3.0.0",
 | 
			
		||||
    "picomatch": "^2.0.4"
 | 
			
		||||
  },
 | 
			
		||||
  "author": {
 | 
			
		||||
    "name": "Elan Shanker",
 | 
			
		||||
    "url": "https://github.com/es128"
 | 
			
		||||
  },
 | 
			
		||||
  "license": "ISC",
 | 
			
		||||
  "homepage": "https://github.com/micromatch/anymatch",
 | 
			
		||||
  "repository": {
 | 
			
		||||
    "type": "git",
 | 
			
		||||
    "url": "https://github.com/micromatch/anymatch"
 | 
			
		||||
  },
 | 
			
		||||
  "keywords": [
 | 
			
		||||
    "match",
 | 
			
		||||
    "any",
 | 
			
		||||
    "string",
 | 
			
		||||
    "file",
 | 
			
		||||
    "fs",
 | 
			
		||||
    "list",
 | 
			
		||||
    "glob",
 | 
			
		||||
    "regex",
 | 
			
		||||
    "regexp",
 | 
			
		||||
    "regular",
 | 
			
		||||
    "expression",
 | 
			
		||||
    "function"
 | 
			
		||||
  ],
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "test": "nyc mocha",
 | 
			
		||||
    "mocha": "mocha"
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
    "mocha": "^6.1.3",
 | 
			
		||||
    "nyc": "^14.0.0"
 | 
			
		||||
  },
 | 
			
		||||
  "engines": {
 | 
			
		||||
    "node": ">= 8"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user