|
12345678910111213141516171819202122232425262728293031323334 |
- 'use strict';
- // Try to get file ignorer from '.stylelintignore'
-
- const fs = require('fs');
- const path = require('path');
- const { default: ignore } = require('ignore');
-
- const DEFAULT_IGNORE_FILENAME = '.stylelintignore';
- const FILE_NOT_FOUND_ERROR_CODE = 'ENOENT';
-
- /** @typedef {import('stylelint').StylelintStandaloneOptions} StylelintOptions */
-
- /**
- * @param {StylelintOptions} options
- * @return {import('ignore').Ignore}
- */
- module.exports = function (options) {
- const ignoreFilePath = options.ignorePath || DEFAULT_IGNORE_FILENAME;
- const absoluteIgnoreFilePath = path.isAbsolute(ignoreFilePath)
- ? ignoreFilePath
- : path.resolve(process.cwd(), ignoreFilePath);
- let ignoreText = '';
-
- try {
- ignoreText = fs.readFileSync(absoluteIgnoreFilePath, 'utf8');
- } catch (readError) {
- if (readError.code !== FILE_NOT_FOUND_ERROR_CODE) throw readError;
- }
-
- const ignorePattern = options.ignorePattern || [];
- const ignorer = ignore().add(ignoreText).add(ignorePattern);
-
- return ignorer;
- };
|