Skip to content

Commit a15989d

Browse files
committed
✨ Allow no pattern defs to be sent in
1 parent f15f758 commit a15989d

File tree

1 file changed

+34
-32
lines changed

1 file changed

+34
-32
lines changed

lib/utils.js

Lines changed: 34 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -27,43 +27,45 @@ class ModClean_Utils extends EventEmitter {
2727
patterns = [],
2828
ignore = [];
2929

30-
if(!Array.isArray(patDefs)) patDefs = [patDefs];
31-
32-
patDefs.forEach((def) => {
33-
def = def.split(':');
34-
let mod = def[0],
35-
name = def[1],
36-
loader = this._loadPatterns(mod),
37-
results;
38-
39-
mod = loader.module;
40-
results = loader.patterns;
41-
42-
let all = Object.keys(results).filter(function(val) {
43-
return val[0] !== '$';
44-
});
45-
46-
if(!name) {
47-
if(results.$default) name = results.$default;
48-
else name = all[0];
49-
}
50-
51-
if(name === '*') name = all;
30+
if(patDefs) {
31+
if(!Array.isArray(patDefs)) patDefs = [patDefs];
5232

53-
let rules = Array.isArray(name)? name : name.split(',');
54-
55-
rules.forEach(function(rule) {
56-
if(!results.hasOwnProperty(rule)) throw new Error(`Module "${mod}" does not contain rule "${rule}"`);
57-
let obj = results[rule];
33+
patDefs.forEach((def) => {
34+
def = def.split(':');
35+
let mod = def[0],
36+
name = def[1],
37+
loader = this._loadPatterns(mod),
38+
results;
39+
40+
mod = loader.module;
41+
results = loader.patterns;
5842

59-
if(Array.isArray(obj)) return patterns = patterns.concat(obj);
43+
let all = Object.keys(results).filter(function(val) {
44+
return val[0] !== '$';
45+
});
6046

61-
if(typeof obj === 'object') {
62-
if(obj.hasOwnProperty('patterns')) patterns = patterns.concat(obj.patterns);
63-
if(obj.hasOwnProperty('ignore')) ignore = ignore.concat(obj.ignore);
47+
if(!name) {
48+
if(results.$default) name = results.$default;
49+
else name = all[0];
6450
}
51+
52+
if(name === '*') name = all;
53+
54+
let rules = Array.isArray(name)? name : name.split(',');
55+
56+
rules.forEach(function(rule) {
57+
if(!results.hasOwnProperty(rule)) throw new Error(`Module "${mod}" does not contain rule "${rule}"`);
58+
let obj = results[rule];
59+
60+
if(Array.isArray(obj)) return patterns = patterns.concat(obj);
61+
62+
if(typeof obj === 'object') {
63+
if(obj.hasOwnProperty('patterns')) patterns = patterns.concat(obj.patterns);
64+
if(obj.hasOwnProperty('ignore')) ignore = ignore.concat(obj.ignore);
65+
}
66+
});
6567
});
66-
});
68+
}
6769

6870
let addlPats = this.options.additionalPatterns,
6971
addlIgnore = this.options.ignorePatterns;

0 commit comments

Comments
 (0)