UNPKG

@sap/generator-cap-project

Version:

Creates a new SAP Cloud Application Programming Model project.

29 lines (22 loc) 606 B
import minimatch from 'minimatch'; import arrayUnion from 'array-union'; import arrayDiffer from 'array-differ'; export default function multimatch(list, patterns, options = {}) { list = [list].flat(); patterns = [patterns].flat(); if (list.length === 0 || patterns.length === 0) { return []; } let result = []; for (const item of list) { for (let pattern of patterns) { let process = arrayUnion; if (pattern[0] === '!') { pattern = pattern.slice(1); process = arrayDiffer; } result = process(result, minimatch.match([item], pattern, options)); } } return result; }