private matchAnyFile()

in functions/src/plugins/merge.ts [593:608]


  private matchAnyFile(names: string[], patterns: string[], negPatterns: string[] = []): boolean {
    this.logDebug('Checking for any file that matches a pattern and does not match any negPatterns');
    let matches = false;
    names.forEach(name => {
      const matchesPattern = patterns.find((pattern: string) => minimatch(name, pattern));
      let matchesNegPattern;
      if (matchesPattern) {
        matchesNegPattern = negPatterns.find((negPattern: string) => minimatch(name, negPattern));
      }
      const currentFileMatched = !!(matchesPattern && !matchesNegPattern);
      this.logDebug(`Matched: ${currentFileMatched} | File: ${name} | Pattern Matched: ${matchesPattern || 'No Match'} | NegPattern Matched: ${matchesNegPattern || 'No Match'}`);
      matches = matches || currentFileMatched;
    });
    this.logDebug(`Overall Result of matchAnyFile: ${matches}`);
    return matches;
  }