function shouldIgnoreFilePath(ignores, filePath, relativeFilePath) {

	let shouldIgnore = false;

	for (const matcher of ignores) {

		if (typeof matcher === 'function') {
			shouldIgnore = shouldIgnore || matcher(filePath);
			continue;
		}

		/*
		 * If there's a negated pattern, that means anything matching
		 * must NOT be ignored. To do that, we need to use the `flipNegate`
		 * option for minimatch to check if the filepath matches the
		 * pattern specified after the !, and if that result is true,
		 * then we return false immediately because this file should
		 * never be ignored.
		 */
		if (matcher.startsWith('!')) {

			/*
			 * The file must already be ignored in order to apply a negated
			 * pattern, because negated patterns simply remove files that
			 * would already be ignored.
			 */
			if (shouldIgnore &&
				minimatch(relativeFilePath, matcher, {
					...MINIMATCH_OPTIONS,
					flipNegate: true
				})) {
				return false;
			}
		} else {
			shouldIgnore = shouldIgnore || minimatch(relativeFilePath, matcher, MINIMATCH_OPTIONS);
		}

	}

	return shouldIgnore;
}
/**
 * Determines if a given file path should be ignored based on the given
 * matcher.
 * @param {Array<string|() => boolean>} ignores The ignore patterns to check. 
 * @param {string} filePath The absolute path of the file to check.
 * @param {string} relativeFilePath The relative path of the file to check.
 * @returns {boolean} True if the path should be ignored and false if not.
 */
Determines if a given file path should be ignored based on the given
matcher.
@param {Array boolean>} ignores The ignore patterns to check.
@param {string} filePath The absolute path of the file to check.
@param {string} relativeFilePath The relative path of the file to check.
@returns {boolean} True if the path should be ignored and false if not.
Determines if a given file path should be ignored based on the given matcher . @param { Array boolean > } ignores The ignore patterns to check . @param { string } filePath The absolute path of the file to check . @param { string } relativeFilePath The relative path of the file to check . @returns { boolean } True if the path should be ignored and false if not .
function shouldIgnoreFilePath(ignores, filePath, relativeFilePath) {
	let shouldIgnore = false;
	for (const matcher of ignores) {
		if (typeof matcher === 'function') {
			shouldIgnore = shouldIgnore || matcher(filePath);
			continue;
		}
		if (matcher.startsWith('!')) {
			if (shouldIgnore &&
				minimatch(relativeFilePath, matcher, {
					...MINIMATCH_OPTIONS,
					flipNegate: true
				})) {
				return false;
			}
		} else {
			shouldIgnore = shouldIgnore || minimatch(relativeFilePath, matcher, MINIMATCH_OPTIONS);
		}
	}
	return shouldIgnore;
}
function shouldIgnoreFilePath ( ignores , filePath , relativeFilePath ) { let shouldIgnore = false ; for ( const matcher of ignores ) { if ( typeof matcher === 'function' ) { shouldIgnore = shouldIgnore || matcher ( filePath ) ; continue ; } if ( matcher . startsWith ( '!' ) ) { if ( shouldIgnore && minimatch ( relativeFilePath , matcher , { ... MINIMATCH_OPTIONS , flipNegate : true } ) ) { return false ; } } else { shouldIgnore = shouldIgnore || minimatch ( relativeFilePath , matcher , MINIMATCH_OPTIONS ) ; } } return shouldIgnore ; }
Determines if a given file path should be ignored based on the given
 matcher.
Determines if a given file path should be ignored based on the given matcher .
/*
		 * If there's a negated pattern, that means anything matching
		 * must NOT be ignored. To do that, we need to use the `flipNegate`
		 * option for minimatch to check if the filepath matches the
		 * pattern specified after the !, and if that result is true,
		 * then we return false immediately because this file should
		 * never be ignored.
		 */ /*
			 * The file must already be ignored in order to apply a negated
			 * pattern, because negated patterns simply remove files that
			 * would already be ignored.
			 */