exports.getConfig = function(configName, file, defaultConfig) { var dir = edp.path.dirname(edp.path.resolve(file)); var key = configName + '@' + dir; if (_CONFIG_CACHE[key]) { return _CONFIG_CACHE[key]; } var options = { name: configName, defaultConfig: defaultConfig, factory: function(item) { if (!fs.existsSync(item)) { console.log(item); return null; } return JSON.parse(fs.readFileSync(item, 'utf-8')); } }; var value = edp.util.getConfig(dir, options); _CONFIG_CACHE[key] = value; return value; };
exports.isIgnored = function(file, name) { var ignorePatterns = null; name = name || '.jshintignore'; file = edp.path.resolve(file); var key = name + '@' + edp.path.dirname(file); if (_IGNORE_CACHE[key]) { ignorePatterns = _IGNORE_CACHE[key]; } else { var options = { name: name, factory: function(item) { var config = {}; exports.getIgnorePatterns(item).forEach(function(line) { config[line] = true; }); return config; } }; var ignorePatterns = edp.util.getConfig( edp.path.dirname(file), options ); _IGNORE_CACHE[key] = ignorePatterns; } var bizOrPkgRoot = process.cwd(); try { bizOrPkgRoot = edp.path.getRootDirectory(); } catch (ex) { } var dirname = edp.path.relative(bizOrPkgRoot, file); var isMatch = edp.glob.match(dirname, Object.keys(ignorePatterns)); return isMatch; };
export function isIgnored(file, name = '.csshintignore') { let ignorePatterns = null; file = edpPath.resolve(file); let key = name + '@' + edpPath.dirname(file); if (_IGNORE_CACHE[key]) { ignorePatterns = _IGNORE_CACHE[key]; } else { let options = { name: name, factory(item) { let config = {}; getIgnorePatterns(item).forEach(line => { config[line] = true; }); return config; } }; ignorePatterns = edpUtil.getConfig( edpPath.dirname(file), options ); _IGNORE_CACHE[key] = ignorePatterns; } let bizOrPkgRoot = process.cwd(); try { bizOrPkgRoot = edpPath.getRootDirectory(); } catch (ex) { } const dirname = edpPath.relative(bizOrPkgRoot, file); const isMatch = glob.match(dirname, Object.keys(ignorePatterns)); return isMatch; }