| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- // NOTICE: This file is generated by Rollup. To modify it,
- // please instead edit the ESM counterpart and rebuild with Rollup (npm run build).
- 'use strict';
- const node_fs = require('node:fs');
- const node_path = require('node:path');
- const ignore = require('ignore');
- const constants = require('../constants.cjs');
- /**
- * @typedef {import('stylelint').LinterOptions} LinterOptions
- *
- * @param {Pick<LinterOptions, 'ignorePath' | 'ignorePattern'> & { cwd: string }} options
- * @returns {import('ignore').Ignore}
- */
- function getFileIgnorer({ ignorePath, ignorePattern, cwd }) {
- const ignorer = ignore();
- const ignorePaths = [ignorePath || []].flat();
- if (ignorePaths.length === 0) {
- ignorePaths.push(constants.DEFAULT_IGNORE_FILENAME);
- }
- for (const ignoreFilePath of ignorePaths) {
- const absoluteIgnoreFilePath = node_path.isAbsolute(ignoreFilePath)
- ? ignoreFilePath
- : node_path.resolve(cwd, ignoreFilePath);
- if (!node_fs.existsSync(absoluteIgnoreFilePath)) continue;
- const ignoreText = node_fs.readFileSync(absoluteIgnoreFilePath, {
- // utf must remain lowercased to hit the fast path
- // see nodejs/node#49888
- encoding: 'utf8',
- flag: 'r',
- });
- ignorer.add(ignoreText);
- }
- if (ignorePattern) ignorer.add(ignorePattern);
- return ignorer;
- }
- module.exports = getFileIgnorer;
|