1
0
mirror of https://github.com/thangisme/notes.git synced 2024-12-22 13:36:28 -05:00
notes/node_modules/multimatch/index.js
Patrick Marsceill b7b0d0d7bf
Initial commit
2017-03-09 13:16:08 -05:00

28 lines
616 B
JavaScript

'use strict';
var minimatch = require('minimatch');
var arrayUnion = require('array-union');
var arrayDiffer = require('array-differ');
var arrify = require('arrify');
module.exports = function (list, patterns, options) {
list = arrify(list);
patterns = arrify(patterns);
if (list.length === 0 || patterns.length === 0) {
return [];
}
options = options || {};
return patterns.reduce(function (ret, pattern) {
var process = arrayUnion;
if (pattern[0] === '!') {
pattern = pattern.slice(1);
process = arrayDiffer;
}
return process(ret, minimatch.match(list, pattern, options));
}, []);
};