find-cli 1.7.3 → 1.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/.swcrc +5 -0
  2. package/find.js +3 -3
  3. package/lib/abbreviations.js +26 -0
  4. package/lib/action/addRootDirectoryPath.js +38 -0
  5. package/lib/action/find.js +73 -0
  6. package/lib/action/help.js +15 -0
  7. package/lib/action/initialise.js +23 -0
  8. package/lib/action/listRootDirectoryPaths.js +27 -0
  9. package/lib/action/removeRootDirectoryPath.js +39 -0
  10. package/lib/action/version.js +19 -0
  11. package/lib/commands.js +42 -0
  12. package/lib/configuration/version_1_1.js +25 -0
  13. package/lib/configuration/version_1_2.js +42 -0
  14. package/lib/configuration/version_1_3.js +24 -0
  15. package/lib/configuration/version_1_4.js +29 -0
  16. package/lib/configuration/version_1_7.js +44 -0
  17. package/lib/configuration.js +216 -0
  18. package/lib/constants.js +58 -0
  19. package/lib/converter/alternates.js +135 -0
  20. package/lib/converter/characterClass.js +148 -0
  21. package/lib/converter/default.js +131 -0
  22. package/lib/converter/directory.js +131 -0
  23. package/lib/converter/escapedCharacter.js +131 -0
  24. package/lib/converter/period.js +131 -0
  25. package/lib/converter/questionMark.js +131 -0
  26. package/lib/converter/repeatedDirectories.js +131 -0
  27. package/lib/converter/repeatedWildcard.js +131 -0
  28. package/lib/converter/singleDirectory.js +131 -0
  29. package/lib/converter/singleWildcard.js +131 -0
  30. package/lib/converter.js +71 -0
  31. package/lib/converters.js +42 -0
  32. package/lib/defaults.js +50 -0
  33. package/lib/descriptions.js +30 -0
  34. package/lib/find.js +53 -0
  35. package/lib/isIgnored/asynchronous.js +61 -0
  36. package/lib/isIgnored/synchronous.js +83 -0
  37. package/lib/line.js +196 -0
  38. package/lib/main.js +89 -0
  39. package/lib/messages.js +74 -0
  40. package/lib/occurrence.js +69 -0
  41. package/lib/operation/addRootDirectoryPath.js +19 -0
  42. package/lib/operation/find.js +69 -0
  43. package/lib/operation/listRootDirectoryPaths.js +38 -0
  44. package/lib/operation/previousRule.js +34 -0
  45. package/lib/operation/prompt/addRootDirectoryPath.js +41 -0
  46. package/lib/operation/prompt/ignoreOrPermitPath.js +37 -0
  47. package/lib/operation/prompt/pathRule.js +41 -0
  48. package/lib/operation/prompt/previousRule.js +44 -0
  49. package/lib/operation/prompt/removeRootDirectoryPath.js +50 -0
  50. package/lib/operation/prompt/rule.js +60 -0
  51. package/lib/operation/removeRootDirectoryPath.js +28 -0
  52. package/lib/operation/removeRootDirectoryPathByIndex.js +35 -0
  53. package/lib/operation/rule.js +34 -0
  54. package/lib/operation/updatePatRules.js +40 -0
  55. package/lib/operation/validateRootDirectoryPath.js +30 -0
  56. package/lib/options.js +54 -0
  57. package/lib/prepare.js +37 -0
  58. package/lib/rule/glob.js +223 -0
  59. package/lib/rule/regex.js +171 -0
  60. package/lib/rule/string.js +154 -0
  61. package/lib/types.js +26 -0
  62. package/lib/utilities/find.js +140 -0
  63. package/lib/utilities/literal.js +33 -0
  64. package/lib/utilities/log.js +45 -0
  65. package/lib/utilities/operation.js +32 -0
  66. package/lib/utilities/path.js +53 -0
  67. package/lib/utilities/prompt.js +97 -0
  68. package/lib/utilities/rule.js +17 -0
  69. package/lib/utilities/string.js +69 -0
  70. package/lib/utilities/validate.js +58 -0
  71. package/lib/versions.js +38 -0
  72. package/package.json +22 -7
  73. package/{bin → src}/abbreviations.js +3 -1
  74. package/src/action/addRootDirectoryPath.js +29 -0
  75. package/{bin → src}/action/find.js +8 -10
  76. package/{bin → src}/action/help.js +1 -3
  77. package/{bin → src}/action/initialise.js +3 -5
  78. package/src/action/listRootDirectoryPaths.js +16 -0
  79. package/src/action/removeRootDirectoryPath.js +31 -0
  80. package/src/action/version.js +13 -0
  81. package/src/commands.js +9 -0
  82. package/{bin → src}/configuration/version_1_1.js +2 -6
  83. package/{bin → src}/configuration/version_1_2.js +3 -7
  84. package/src/configuration/version_1_3.js +18 -0
  85. package/{bin → src}/configuration/version_1_4.js +2 -6
  86. package/{bin → src}/configuration/version_1_7.js +4 -9
  87. package/{bin → src}/configuration.js +15 -15
  88. package/src/constants.js +13 -0
  89. package/{bin → src}/converter/alternates.js +3 -3
  90. package/{bin → src}/converter/characterClass.js +3 -3
  91. package/{bin → src}/converter/default.js +2 -2
  92. package/{bin → src}/converter/directory.js +2 -2
  93. package/{bin → src}/converter/escapedCharacter.js +2 -2
  94. package/{bin → src}/converter/period.js +2 -2
  95. package/{bin → src}/converter/questionMark.js +2 -2
  96. package/{bin → src}/converter/repeatedDirectories.js +2 -2
  97. package/{bin → src}/converter/repeatedWildcard.js +2 -2
  98. package/{bin → src}/converter/singleDirectory.js +2 -2
  99. package/{bin → src}/converter/singleWildcard.js +2 -2
  100. package/{bin → src}/converter.js +3 -5
  101. package/src/converters.js +29 -0
  102. package/src/defaults.js +11 -0
  103. package/src/descriptions.js +6 -0
  104. package/{bin → src}/find.js +3 -5
  105. package/{bin → src}/isIgnored/asynchronous.js +7 -12
  106. package/{bin → src}/isIgnored/synchronous.js +5 -10
  107. package/{bin → src}/line.js +4 -6
  108. package/{bin → src}/main.js +19 -21
  109. package/src/messages.js +17 -0
  110. package/{bin → src}/occurrence.js +2 -4
  111. package/{bin → src}/operation/addRootDirectoryPath.js +2 -4
  112. package/{bin → src}/operation/find.js +8 -10
  113. package/{bin → src}/operation/listRootDirectoryPaths.js +4 -10
  114. package/{bin → src}/operation/previousRule.js +3 -5
  115. package/{bin → src}/operation/prompt/addRootDirectoryPath.js +5 -7
  116. package/{bin → src}/operation/prompt/ignoreOrPermitPath.js +6 -8
  117. package/{bin → src}/operation/prompt/pathRule.js +6 -8
  118. package/{bin → src}/operation/prompt/previousRule.js +4 -6
  119. package/{bin → src}/operation/prompt/removeRootDirectoryPath.js +6 -8
  120. package/{bin → src}/operation/prompt/rule.js +7 -9
  121. package/{bin → src}/operation/removeRootDirectoryPath.js +3 -5
  122. package/{bin → src}/operation/removeRootDirectoryPathByIndex.js +3 -9
  123. package/{bin → src}/operation/rule.js +2 -4
  124. package/{bin → src}/operation/updatePatRules.js +3 -5
  125. package/{bin → src}/operation/validateRootDirectoryPath.js +3 -5
  126. package/src/options.js +12 -0
  127. package/{bin → src}/prepare.js +11 -13
  128. package/{bin → src}/rule/glob.js +7 -9
  129. package/{bin → src}/rule/regex.js +12 -14
  130. package/{bin → src}/rule/string.js +5 -7
  131. package/src/types.js +5 -0
  132. package/{bin → src}/utilities/find.js +7 -11
  133. package/src/utilities/literal.js +13 -0
  134. package/src/utilities/log.js +18 -0
  135. package/{bin → src}/utilities/operation.js +2 -6
  136. package/{bin → src}/utilities/path.js +5 -11
  137. package/{bin → src}/utilities/prompt.js +5 -10
  138. package/{bin → src}/utilities/rule.js +1 -5
  139. package/src/utilities/string.js +21 -0
  140. package/{bin → src}/utilities/validate.js +5 -12
  141. package/src/versions.js +8 -0
  142. package/bin/action/addRootDirectoryPath.js +0 -31
  143. package/bin/action/listRootDirectoryPaths.js +0 -18
  144. package/bin/action/removeRootDirectoryPath.js +0 -33
  145. package/bin/action/version.js +0 -15
  146. package/bin/commands.js +0 -19
  147. package/bin/configuration/version_1_3.js +0 -22
  148. package/bin/constants.js +0 -27
  149. package/bin/converters.js +0 -29
  150. package/bin/defaults.js +0 -23
  151. package/bin/descriptions.js +0 -13
  152. package/bin/messages.js +0 -35
  153. package/bin/options.js +0 -25
  154. package/bin/types.js +0 -11
  155. package/bin/utilities/literal.js +0 -19
  156. package/bin/utilities/log.js +0 -26
  157. package/bin/utilities/string.js +0 -33
  158. package/bin/versions.js +0 -17
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return RegexRule;
9
+ }
10
+ });
11
+ var _occurrence = /*#__PURE__*/ _interop_require_default(require("../occurrence"));
12
+ var _types = require("../types");
13
+ var _literal = require("../utilities/literal");
14
+ var _string = require("../utilities/string");
15
+ function _class_call_check(instance, Constructor) {
16
+ if (!(instance instanceof Constructor)) {
17
+ throw new TypeError("Cannot call a class as a function");
18
+ }
19
+ }
20
+ function _defineProperties(target, props) {
21
+ for(var i = 0; i < props.length; i++){
22
+ var descriptor = props[i];
23
+ descriptor.enumerable = descriptor.enumerable || false;
24
+ descriptor.configurable = true;
25
+ if ("value" in descriptor) descriptor.writable = true;
26
+ Object.defineProperty(target, descriptor.key, descriptor);
27
+ }
28
+ }
29
+ function _create_class(Constructor, protoProps, staticProps) {
30
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
31
+ if (staticProps) _defineProperties(Constructor, staticProps);
32
+ return Constructor;
33
+ }
34
+ function _interop_require_default(obj) {
35
+ return obj && obj.__esModule ? obj : {
36
+ default: obj
37
+ };
38
+ }
39
+ var RegexRule = /*#__PURE__*/ function() {
40
+ function RegexRule(type, pattern, regExp) {
41
+ _class_call_check(this, RegexRule);
42
+ this.type = type;
43
+ this.pattern = pattern;
44
+ this.regExp = regExp;
45
+ }
46
+ _create_class(RegexRule, [
47
+ {
48
+ key: "getType",
49
+ value: function getType() {
50
+ return this.type;
51
+ }
52
+ },
53
+ {
54
+ key: "getPattern",
55
+ value: function getPattern() {
56
+ return this.pattern;
57
+ }
58
+ },
59
+ {
60
+ key: "getRegExp",
61
+ value: function getRegExp() {
62
+ return this.regExp;
63
+ }
64
+ },
65
+ {
66
+ key: "toJSON",
67
+ value: function toJSON() {
68
+ var type = this.type, pattern = this.pattern, json = {
69
+ type: type,
70
+ pattern: pattern
71
+ };
72
+ return json;
73
+ }
74
+ },
75
+ {
76
+ key: "find",
77
+ value: function find(line) {
78
+ var occurrences = [], content = line.getContent();
79
+ var offset = 0, string = content, result = string.match(this.regExp);
80
+ while(result !== null){
81
+ var occurrence = _occurrence.default.fromResultAndOffset(result, offset), end = occurrence.getEnd(), start = end; ///
82
+ string = string.substring(start); ///
83
+ offset += start;
84
+ occurrences.push(occurrence);
85
+ result = string.match(this.regExp);
86
+ }
87
+ return occurrences;
88
+ }
89
+ },
90
+ {
91
+ key: "match",
92
+ value: function match(string) {
93
+ var matches = this.regExp.test(string);
94
+ return matches;
95
+ }
96
+ },
97
+ {
98
+ key: "isEqualTo",
99
+ value: function isEqualTo(rule) {
100
+ var equalTo = false;
101
+ var ruleType = rule.getType();
102
+ if (ruleType === this.type) {
103
+ var rulePattern = rule.getPattern();
104
+ if (rulePattern === this.pattern) {
105
+ equalTo = true;
106
+ }
107
+ }
108
+ return equalTo;
109
+ }
110
+ },
111
+ {
112
+ key: "asString",
113
+ value: function asString() {
114
+ var string = (0, _string.addForwardSlashes)(this.pattern); ///
115
+ return string;
116
+ }
117
+ }
118
+ ], [
119
+ {
120
+ key: "fromJSON",
121
+ value: function fromJSON(json) {
122
+ var regexRule = null;
123
+ var type = json.type;
124
+ if (type === _types.REGEX_TYPE) {
125
+ var pattern = json.pattern, regExp = new RegExp(pattern);
126
+ regexRule = new RegexRule(type, pattern, regExp);
127
+ }
128
+ return regexRule;
129
+ }
130
+ },
131
+ {
132
+ key: "fromStringAnchoredAndDirectory",
133
+ value: function fromStringAnchoredAndDirectory(string, anchored, directory) {
134
+ var regexRule = null;
135
+ var pattern = patternFromStringAndDirectory(string, anchored, directory);
136
+ if (pattern !== null) {
137
+ var type = _types.REGEX_TYPE, regExp = new RegExp(pattern);
138
+ regexRule = new RegexRule(type, pattern, regExp);
139
+ }
140
+ return regexRule;
141
+ }
142
+ }
143
+ ]);
144
+ return RegexRule;
145
+ }();
146
+ function patternFromStringAndDirectory(string, anchored, directory) {
147
+ var pattern;
148
+ var stringRegexLiteral = (0, _literal.isStringRegexLiteral)(string);
149
+ if (stringRegexLiteral) {
150
+ var regexLiteral = string; ///
151
+ pattern = (0, _string.removeForwardSlashes)(regexLiteral);
152
+ pattern = (0, _string.removeAnchors)(pattern); ///
153
+ pattern = (0, _string.removeTrailingEscapedForwardSlash)(pattern); ///
154
+ if (directory) {
155
+ pattern = (0, _string.addTrailingEscapedForwardSlash)(pattern); ///
156
+ }
157
+ if (anchored) {
158
+ pattern = (0, _string.addAnchors)(pattern);
159
+ }
160
+ try {
161
+ new RegExp(pattern);
162
+ } catch (error) {
163
+ pattern = null;
164
+ }
165
+ } else {
166
+ pattern = null;
167
+ }
168
+ return pattern;
169
+ }
170
+
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlL3JlZ2V4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgT2NjdXJyZW5jZSBmcm9tIFwiLi4vb2NjdXJyZW5jZVwiO1xuXG5pbXBvcnQgeyBSRUdFWF9UWVBFIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5pbXBvcnQgeyBpc1N0cmluZ1JlZ2V4TGl0ZXJhbCB9IGZyb20gXCIuLi91dGlsaXRpZXMvbGl0ZXJhbFwiO1xuaW1wb3J0IHsgYWRkQW5jaG9ycyxcbiAgICAgICAgIHJlbW92ZUFuY2hvcnMsXG4gICAgICAgICBhZGRGb3J3YXJkU2xhc2hlcyxcbiAgICAgICAgIHJlbW92ZUZvcndhcmRTbGFzaGVzLFxuICAgICAgICAgYWRkVHJhaWxpbmdFc2NhcGVkRm9yd2FyZFNsYXNoLFxuICAgICAgICAgcmVtb3ZlVHJhaWxpbmdFc2NhcGVkRm9yd2FyZFNsYXNoIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVnZXhSdWxlIHtcbiAgY29uc3RydWN0b3IodHlwZSwgcGF0dGVybiwgcmVnRXhwKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnBhdHRlcm4gPSBwYXR0ZXJuO1xuICAgIHRoaXMucmVnRXhwID0gcmVnRXhwO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgZ2V0UGF0dGVybigpIHtcbiAgICByZXR1cm4gdGhpcy5wYXR0ZXJuO1xuICB9XG5cbiAgZ2V0UmVnRXhwKCkge1xuICAgIHJldHVybiB0aGlzLnJlZ0V4cDtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCB0eXBlID0gdGhpcy50eXBlLFxuICAgICAgICAgIHBhdHRlcm4gPSB0aGlzLnBhdHRlcm4sXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBwYXR0ZXJuXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgZmluZChsaW5lKSB7XG4gICAgY29uc3Qgb2NjdXJyZW5jZXMgPSBbXSxcbiAgICAgICAgICBjb250ZW50ID0gbGluZS5nZXRDb250ZW50KCk7XG5cbiAgICBsZXQgb2Zmc2V0ID0gMCxcbiAgICAgICAgc3RyaW5nID0gY29udGVudCwgLy8vXG4gICAgICAgIHJlc3VsdCA9IHN0cmluZy5tYXRjaCh0aGlzLnJlZ0V4cCk7XG5cbiAgICB3aGlsZSAocmVzdWx0ICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBvY2N1cnJlbmNlID0gT2NjdXJyZW5jZS5mcm9tUmVzdWx0QW5kT2Zmc2V0KHJlc3VsdCwgb2Zmc2V0KSxcbiAgICAgICAgICAgIGVuZCA9IG9jY3VycmVuY2UuZ2V0RW5kKCksXG4gICAgICAgICAgICBzdGFydCA9IGVuZDsgIC8vL1xuXG4gICAgICBzdHJpbmcgPSBzdHJpbmcuc3Vic3RyaW5nKHN0YXJ0KTsgLy8vXG5cbiAgICAgIG9mZnNldCArPSBzdGFydDtcblxuICAgICAgb2NjdXJyZW5jZXMucHVzaChvY2N1cnJlbmNlKTtcblxuICAgICAgcmVzdWx0ID0gc3RyaW5nLm1hdGNoKHRoaXMucmVnRXhwKTtcbiAgICB9XG5cbiAgICByZXR1cm4gb2NjdXJyZW5jZXM7XG4gIH1cblxuICBtYXRjaChzdHJpbmcpIHtcbiAgICBjb25zdCBtYXRjaGVzID0gdGhpcy5yZWdFeHAudGVzdChzdHJpbmcpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXM7XG4gIH1cblxuICBpc0VxdWFsVG8ocnVsZSkge1xuICAgIGxldCBlcXVhbFRvID0gZmFsc2U7XG5cbiAgICBjb25zdCBydWxlVHlwZSA9IHJ1bGUuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHJ1bGVUeXBlID09PSB0aGlzLnR5cGUpIHtcbiAgICAgIGNvbnN0IHJ1bGVQYXR0ZXJuID0gcnVsZS5nZXRQYXR0ZXJuKCk7XG5cbiAgICAgIGlmIChydWxlUGF0dGVybiA9PT0gdGhpcy5wYXR0ZXJuKSB7XG4gICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgYXNTdHJpbmcoKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gYWRkRm9yd2FyZFNsYXNoZXModGhpcy5wYXR0ZXJuKTsgIC8vL1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uKSB7XG4gICAgbGV0IHJlZ2V4UnVsZSA9IG51bGw7XG5cbiAgICBjb25zdCB7IHR5cGUgfSA9IGpzb247XG5cbiAgICBpZiAodHlwZSA9PT0gUkVHRVhfVFlQRSkge1xuICAgICAgY29uc3QgeyBwYXR0ZXJuIH0gPSBqc29uLFxuICAgICAgICAgICAgcmVnRXhwID0gbmV3IFJlZ0V4cChwYXR0ZXJuKTtcblxuICAgICAgcmVnZXhSdWxlID0gbmV3IFJlZ2V4UnVsZSh0eXBlLCBwYXR0ZXJuLCByZWdFeHApO1xuICAgIH1cblxuICAgIHJldHVybiByZWdleFJ1bGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0cmluZ0FuY2hvcmVkQW5kRGlyZWN0b3J5KHN0cmluZywgYW5jaG9yZWQsIGRpcmVjdG9yeSkge1xuICAgIGxldCByZWdleFJ1bGUgPSBudWxsO1xuXG4gICAgY29uc3QgcGF0dGVybiA9IHBhdHRlcm5Gcm9tU3RyaW5nQW5kRGlyZWN0b3J5KHN0cmluZywgYW5jaG9yZWQsIGRpcmVjdG9yeSk7XG5cbiAgICBpZiAocGF0dGVybiAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdHlwZSA9IFJFR0VYX1RZUEUsXG4gICAgICAgICAgICByZWdFeHAgPSBuZXcgUmVnRXhwKHBhdHRlcm4pO1xuXG4gICAgICByZWdleFJ1bGUgPSBuZXcgUmVnZXhSdWxlKHR5cGUsIHBhdHRlcm4sIHJlZ0V4cCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlZ2V4UnVsZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBwYXR0ZXJuRnJvbVN0cmluZ0FuZERpcmVjdG9yeShzdHJpbmcsIGFuY2hvcmVkLCBkaXJlY3RvcnkpIHtcbiAgbGV0IHBhdHRlcm47XG5cbiAgY29uc3Qgc3RyaW5nUmVnZXhMaXRlcmFsID0gaXNTdHJpbmdSZWdleExpdGVyYWwoc3RyaW5nKTtcblxuICBpZiAoc3RyaW5nUmVnZXhMaXRlcmFsKSB7XG4gICAgY29uc3QgcmVnZXhMaXRlcmFsID0gc3RyaW5nOyAgLy8vXG5cbiAgICBwYXR0ZXJuID0gcmVtb3ZlRm9yd2FyZFNsYXNoZXMocmVnZXhMaXRlcmFsKTtcblxuICAgIHBhdHRlcm4gPSByZW1vdmVBbmNob3JzKHBhdHRlcm4pOyAvLy9cblxuICAgIHBhdHRlcm4gPSByZW1vdmVUcmFpbGluZ0VzY2FwZWRGb3J3YXJkU2xhc2gocGF0dGVybik7ICAvLy9cblxuICAgIGlmIChkaXJlY3RvcnkpIHtcbiAgICAgIHBhdHRlcm4gPSBhZGRUcmFpbGluZ0VzY2FwZWRGb3J3YXJkU2xhc2gocGF0dGVybik7IC8vL1xuICAgIH1cblxuICAgIGlmIChhbmNob3JlZCkge1xuICAgICAgcGF0dGVybiA9IGFkZEFuY2hvcnMocGF0dGVybik7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIG5ldyBSZWdFeHAocGF0dGVybik7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHBhdHRlcm4gPSBudWxsO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBwYXR0ZXJuID0gbnVsbDtcbiAgfVxuXG4gIHJldHVybiBwYXR0ZXJuO1xufVxuXG4iXSwibmFtZXMiOlsiUmVnZXhSdWxlIiwidHlwZSIsInBhdHRlcm4iLCJyZWdFeHAiLCJnZXRUeXBlIiwiZ2V0UGF0dGVybiIsImdldFJlZ0V4cCIsInRvSlNPTiIsImpzb24iLCJmaW5kIiwibGluZSIsIm9jY3VycmVuY2VzIiwiY29udGVudCIsImdldENvbnRlbnQiLCJvZmZzZXQiLCJzdHJpbmciLCJyZXN1bHQiLCJtYXRjaCIsIm9jY3VycmVuY2UiLCJPY2N1cnJlbmNlIiwiZnJvbVJlc3VsdEFuZE9mZnNldCIsImVuZCIsImdldEVuZCIsInN0YXJ0Iiwic3Vic3RyaW5nIiwicHVzaCIsIm1hdGNoZXMiLCJ0ZXN0IiwiaXNFcXVhbFRvIiwicnVsZSIsImVxdWFsVG8iLCJydWxlVHlwZSIsInJ1bGVQYXR0ZXJuIiwiYXNTdHJpbmciLCJhZGRGb3J3YXJkU2xhc2hlcyIsImZyb21KU09OIiwicmVnZXhSdWxlIiwiUkVHRVhfVFlQRSIsIlJlZ0V4cCIsImZyb21TdHJpbmdBbmNob3JlZEFuZERpcmVjdG9yeSIsImFuY2hvcmVkIiwiZGlyZWN0b3J5IiwicGF0dGVybkZyb21TdHJpbmdBbmREaXJlY3RvcnkiLCJzdHJpbmdSZWdleExpdGVyYWwiLCJpc1N0cmluZ1JlZ2V4TGl0ZXJhbCIsInJlZ2V4TGl0ZXJhbCIsInJlbW92ZUZvcndhcmRTbGFzaGVzIiwicmVtb3ZlQW5jaG9ycyIsInJlbW92ZVRyYWlsaW5nRXNjYXBlZEZvcndhcmRTbGFzaCIsImFkZFRyYWlsaW5nRXNjYXBlZEZvcndhcmRTbGFzaCIsImFkZEFuY2hvcnMiLCJlcnJvciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFhcUJBOzs7aUVBWEU7cUJBRUk7dUJBQ1U7c0JBTWE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbkMsSUFBQSxBQUFNQSwwQkFBTjthQUFNQSxVQUNQQyxJQUFJLEVBQUVDLE9BQU8sRUFBRUMsTUFBTTtnQ0FEZEg7UUFFakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxPQUFPLEdBQUdBO1FBQ2YsSUFBSSxDQUFDQyxNQUFNLEdBQUdBOztrQkFKR0g7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILElBQUk7WUFDbEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILE9BQU87WUFDckI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILE1BQU07WUFDcEI7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
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return StringRule;
9
+ }
10
+ });
11
+ var _occurrence = /*#__PURE__*/ _interop_require_default(require("../occurrence"));
12
+ var _types = require("../types");
13
+ var _literal = require("../utilities/literal");
14
+ var _string = require("../utilities/string");
15
+ function _class_call_check(instance, Constructor) {
16
+ if (!(instance instanceof Constructor)) {
17
+ throw new TypeError("Cannot call a class as a function");
18
+ }
19
+ }
20
+ function _defineProperties(target, props) {
21
+ for(var i = 0; i < props.length; i++){
22
+ var descriptor = props[i];
23
+ descriptor.enumerable = descriptor.enumerable || false;
24
+ descriptor.configurable = true;
25
+ if ("value" in descriptor) descriptor.writable = true;
26
+ Object.defineProperty(target, descriptor.key, descriptor);
27
+ }
28
+ }
29
+ function _create_class(Constructor, protoProps, staticProps) {
30
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
31
+ if (staticProps) _defineProperties(Constructor, staticProps);
32
+ return Constructor;
33
+ }
34
+ function _interop_require_default(obj) {
35
+ return obj && obj.__esModule ? obj : {
36
+ default: obj
37
+ };
38
+ }
39
+ var StringRule = /*#__PURE__*/ function() {
40
+ function StringRule(type, string) {
41
+ _class_call_check(this, StringRule);
42
+ this.type = type;
43
+ this.string = string;
44
+ }
45
+ _create_class(StringRule, [
46
+ {
47
+ key: "getType",
48
+ value: function getType() {
49
+ return this.type;
50
+ }
51
+ },
52
+ {
53
+ key: "getString",
54
+ value: function getString() {
55
+ return this.string;
56
+ }
57
+ },
58
+ {
59
+ key: "toJSON",
60
+ value: function toJSON() {
61
+ var type = this.type, string = this.string, json = {
62
+ type: type,
63
+ string: string
64
+ };
65
+ return json;
66
+ }
67
+ },
68
+ {
69
+ key: "find",
70
+ value: function find(line) {
71
+ var occurrences = [], content = line.getContent();
72
+ var offset = 0, string = content, index = string.indexOf(this.string), length = this.string.length;
73
+ while(index !== -1){
74
+ var occurrence = _occurrence.default.fromIndexLengthAndOffset(index, length, offset), end = occurrence.getEnd(), start = end; ///
75
+ string = string.substring(start); ///
76
+ offset += start;
77
+ occurrences.push(occurrence);
78
+ index = string.indexOf(this.string);
79
+ }
80
+ return occurrences;
81
+ }
82
+ },
83
+ {
84
+ key: "match",
85
+ value: function match(string) {
86
+ var matches = this.string === string;
87
+ return matches;
88
+ }
89
+ },
90
+ {
91
+ key: "isEqualTo",
92
+ value: function isEqualTo(rule) {
93
+ var equalTo = false;
94
+ var ruleType = rule.getType();
95
+ if (ruleType === this.type) {
96
+ var ruleString = rule.getString();
97
+ if (ruleString === this.string) {
98
+ equalTo = true;
99
+ }
100
+ }
101
+ return equalTo;
102
+ }
103
+ },
104
+ {
105
+ key: "asString",
106
+ value: function asString() {
107
+ var string = '"'.concat(this.string, '"');
108
+ return string;
109
+ }
110
+ }
111
+ ], [
112
+ {
113
+ key: "fromJSON",
114
+ value: function fromJSON(json) {
115
+ var stringRule = null;
116
+ var type = json.type;
117
+ if (type === _types.STRING_TYPE) {
118
+ var string = json.string;
119
+ stringRule = new StringRule(type, string);
120
+ }
121
+ return stringRule;
122
+ }
123
+ },
124
+ {
125
+ key: "fromStringAnchoredAndDirectory",
126
+ value: function fromStringAnchoredAndDirectory(string, anchored, directory) {
127
+ var stringRule = null;
128
+ string = stringFromStringAndDirectory(string, directory); ///
129
+ if (string !== null) {
130
+ var type = _types.STRING_TYPE; ///
131
+ stringRule = new StringRule(type, string);
132
+ }
133
+ return stringRule;
134
+ }
135
+ }
136
+ ]);
137
+ return StringRule;
138
+ }();
139
+ function stringFromStringAndDirectory(string, directory) {
140
+ var stringStringLiteral = (0, _literal.isStringStringLiteral)(string);
141
+ if (stringStringLiteral) {
142
+ var stringLiteral = string; ///
143
+ string = (0, _string.removeDoubleQuotes)(stringLiteral); ///
144
+ string = (0, _string.removeTrailingForwardSlash)(string); ///
145
+ if (directory) {
146
+ string = (0, _string.addTrailingForwardSlash)(string); ///
147
+ }
148
+ } else {
149
+ string = null;
150
+ }
151
+ return string;
152
+ }
153
+
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlL3N0cmluZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE9jY3VycmVuY2UgZnJvbSBcIi4uL29jY3VycmVuY2VcIjtcblxuaW1wb3J0IHsgU1RSSU5HX1RZUEUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB7IGlzU3RyaW5nU3RyaW5nTGl0ZXJhbCB9IGZyb20gXCIuLi91dGlsaXRpZXMvbGl0ZXJhbFwiO1xuaW1wb3J0IHsgcmVtb3ZlRG91YmxlUXVvdGVzLCBhZGRUcmFpbGluZ0ZvcndhcmRTbGFzaCwgcmVtb3ZlVHJhaWxpbmdGb3J3YXJkU2xhc2ggfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdHJpbmdSdWxlIHtcbiAgY29uc3RydWN0b3IodHlwZSwgc3RyaW5nKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgdHlwZSA9IHRoaXMudHlwZSxcbiAgICAgICAgICBzdHJpbmcgPSB0aGlzLnN0cmluZyxcbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgIHN0cmluZ1xuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIGZpbmQobGluZSkge1xuICAgIGNvbnN0IG9jY3VycmVuY2VzID0gW10sXG4gICAgICAgICAgY29udGVudCA9IGxpbmUuZ2V0Q29udGVudCgpO1xuXG4gICAgbGV0IG9mZnNldCA9IDAsXG4gICAgICAgIHN0cmluZyA9IGNvbnRlbnQsIC8vL1xuICAgICAgICBpbmRleCA9IHN0cmluZy5pbmRleE9mKHRoaXMuc3RyaW5nKSxcbiAgICAgICAgbGVuZ3RoID0gdGhpcy5zdHJpbmcubGVuZ3RoO1xuXG4gICAgd2hpbGUgKGluZGV4ICE9PSAtMSkge1xuICAgICAgY29uc3Qgb2NjdXJyZW5jZSA9IE9jY3VycmVuY2UuZnJvbUluZGV4TGVuZ3RoQW5kT2Zmc2V0KGluZGV4LCBsZW5ndGgsIG9mZnNldCksXG4gICAgICAgICAgICBlbmQgPSBvY2N1cnJlbmNlLmdldEVuZCgpLFxuICAgICAgICAgICAgc3RhcnQgPSBlbmQ7ICAvLy9cblxuICAgICAgc3RyaW5nID0gc3RyaW5nLnN1YnN0cmluZyhzdGFydCk7IC8vL1xuXG4gICAgICBvZmZzZXQgKz0gc3RhcnQ7XG5cbiAgICAgIG9jY3VycmVuY2VzLnB1c2gob2NjdXJyZW5jZSk7XG5cbiAgICAgIGluZGV4ID0gc3RyaW5nLmluZGV4T2YodGhpcy5zdHJpbmcpO1xuICAgIH1cblxuICAgIHJldHVybiBvY2N1cnJlbmNlcztcbiAgfVxuXG4gIG1hdGNoKHN0cmluZykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSAodGhpcy5zdHJpbmcgPT09IHN0cmluZyk7XG5cbiAgICByZXR1cm4gbWF0Y2hlcztcbiAgfVxuXG4gIGlzRXF1YWxUbyhydWxlKSB7XG4gICAgbGV0IGVxdWFsVG8gPSBmYWxzZTtcblxuICAgIGNvbnN0IHJ1bGVUeXBlID0gcnVsZS5nZXRUeXBlKCk7XG5cbiAgICBpZiAocnVsZVR5cGUgPT09IHRoaXMudHlwZSkge1xuICAgICAgY29uc3QgcnVsZVN0cmluZyA9IHJ1bGUuZ2V0U3RyaW5nKCk7XG5cbiAgICAgIGlmIChydWxlU3RyaW5nID09PSB0aGlzLnN0cmluZykge1xuICAgICAgICBlcXVhbFRvID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIGFzU3RyaW5nKCkge1xuICAgIGNvbnN0IHN0cmluZyA9IGBcIiR7dGhpcy5zdHJpbmd9XCJgO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uKSB7XG4gICAgbGV0IHN0cmluZ1J1bGUgPSBudWxsO1xuXG4gICAgY29uc3QgeyB0eXBlIH0gPSBqc29uO1xuXG4gICAgaWYgKHR5cGUgPT09IFNUUklOR19UWVBFKSB7XG4gICAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbjtcblxuICAgICAgc3RyaW5nUnVsZSA9IG5ldyBTdHJpbmdSdWxlKHR5cGUsIHN0cmluZyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0cmluZ1J1bGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0cmluZ0FuY2hvcmVkQW5kRGlyZWN0b3J5KHN0cmluZywgYW5jaG9yZWQsIGRpcmVjdG9yeSkge1xuICAgIGxldCBzdHJpbmdSdWxlID0gbnVsbDtcblxuICAgIHN0cmluZyA9IHN0cmluZ0Zyb21TdHJpbmdBbmREaXJlY3Rvcnkoc3RyaW5nLCBkaXJlY3RvcnkpOyAvLy9cblxuICAgIGlmIChzdHJpbmcgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBTVFJJTkdfVFlQRTsgLy8vXG5cbiAgICAgIHN0cmluZ1J1bGUgPSBuZXcgU3RyaW5nUnVsZSh0eXBlLCBzdHJpbmcpO1xuICAgIH1cblxuICAgIHJldHVybiBzdHJpbmdSdWxlO1xuICB9XG59XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21TdHJpbmdBbmREaXJlY3Rvcnkoc3RyaW5nLCBkaXJlY3RvcnkpIHtcbiAgY29uc3Qgc3RyaW5nU3RyaW5nTGl0ZXJhbCA9IGlzU3RyaW5nU3RyaW5nTGl0ZXJhbChzdHJpbmcpO1xuXG4gIGlmIChzdHJpbmdTdHJpbmdMaXRlcmFsKSB7XG4gICAgY29uc3Qgc3RyaW5nTGl0ZXJhbCA9IHN0cmluZzsgLy8vXG5cbiAgICBzdHJpbmcgPSByZW1vdmVEb3VibGVRdW90ZXMoc3RyaW5nTGl0ZXJhbCk7ICAvLy9cblxuICAgIHN0cmluZyA9IHJlbW92ZVRyYWlsaW5nRm9yd2FyZFNsYXNoKHN0cmluZyk7ICAvLy9cblxuICAgIGlmIChkaXJlY3RvcnkpIHtcbiAgICAgIHN0cmluZyA9IGFkZFRyYWlsaW5nRm9yd2FyZFNsYXNoKHN0cmluZyk7IC8vL1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBzdHJpbmcgPSBudWxsO1xuICB9XG5cbiAgcmV0dXJuIHN0cmluZztcbn1cbiJdLCJuYW1lcyI6WyJTdHJpbmdSdWxlIiwidHlwZSIsInN0cmluZyIsImdldFR5cGUiLCJnZXRTdHJpbmciLCJ0b0pTT04iLCJqc29uIiwiZmluZCIsImxpbmUiLCJvY2N1cnJlbmNlcyIsImNvbnRlbnQiLCJnZXRDb250ZW50Iiwib2Zmc2V0IiwiaW5kZXgiLCJpbmRleE9mIiwibGVuZ3RoIiwib2NjdXJyZW5jZSIsIk9jY3VycmVuY2UiLCJmcm9tSW5kZXhMZW5ndGhBbmRPZmZzZXQiLCJlbmQiLCJnZXRFbmQiLCJzdGFydCIsInN1YnN0cmluZyIsInB1c2giLCJtYXRjaCIsIm1hdGNoZXMiLCJpc0VxdWFsVG8iLCJydWxlIiwiZXF1YWxUbyIsInJ1bGVUeXBlIiwicnVsZVN0cmluZyIsImFzU3RyaW5nIiwiZnJvbUpTT04iLCJzdHJpbmdSdWxlIiwiU1RSSU5HX1RZUEUiLCJmcm9tU3RyaW5nQW5jaG9yZWRBbmREaXJlY3RvcnkiLCJhbmNob3JlZCIsImRpcmVjdG9yeSIsInN0cmluZ0Zyb21TdHJpbmdBbmREaXJlY3RvcnkiLCJzdHJpbmdTdHJpbmdMaXRlcmFsIiwiaXNTdHJpbmdTdHJpbmdMaXRlcmFsIiwic3RyaW5nTGl0ZXJhbCIsInJlbW92ZURvdWJsZVF1b3RlcyIsInJlbW92ZVRyYWlsaW5nRm9yd2FyZFNsYXNoIiwiYWRkVHJhaWxpbmdGb3J3YXJkU2xhc2giXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBUXFCQTs7O2lFQU5FO3FCQUVLO3VCQUNVO3NCQUNrRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV6RSxJQUFBLEFBQU1BLDJCQUFOO2FBQU1BLFdBQ1BDLElBQUksRUFBRUMsTUFBTTtnQ0FETEY7UUFF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
package/lib/types.js ADDED
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get GLOB_TYPE () {
13
+ return GLOB_TYPE;
14
+ },
15
+ get REGEX_TYPE () {
16
+ return REGEX_TYPE;
17
+ },
18
+ get STRING_TYPE () {
19
+ return STRING_TYPE;
20
+ }
21
+ });
22
+ var GLOB_TYPE = "glob";
23
+ var REGEX_TYPE = "regex";
24
+ var STRING_TYPE = "string";
25
+
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90eXBlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGNvbnN0IEdMT0JfVFlQRSA9IFwiZ2xvYlwiO1xuZXhwb3J0IGNvbnN0IFJFR0VYX1RZUEUgPSBcInJlZ2V4XCI7XG5leHBvcnQgY29uc3QgU1RSSU5HX1RZUEUgPSBcInN0cmluZ1wiO1xuIl0sIm5hbWVzIjpbIkdMT0JfVFlQRSIsIlJFR0VYX1RZUEUiLCJTVFJJTkdfVFlQRSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBRWFBO2VBQUFBOztRQUNBQztlQUFBQTs7UUFDQUM7ZUFBQUE7OztBQUZOLElBQU1GLFlBQVk7QUFDbEIsSUFBTUMsYUFBYTtBQUNuQixJQUFNQyxjQUFjIn0=
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return findInEntries;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var _find = /*#__PURE__*/ _interop_require_default(require("../find"));
13
+ var _log = require("../utilities/log");
14
+ var _synchronous = require("../isIgnored/synchronous");
15
+ var _asynchronous = require("../isIgnored/asynchronous");
16
+ var _path = require("../utilities/path");
17
+ function _interop_require_default(obj) {
18
+ return obj && obj.__esModule ? obj : {
19
+ default: obj
20
+ };
21
+ }
22
+ var readDirectory = _necessary.fileSystemUtilities.readDirectory, isEntryDirectory = _necessary.fileSystemUtilities.isEntryDirectory;
23
+ function findInEntries(entryPaths, callback, context) {
24
+ var synchronous = true;
25
+ var entryNamesLength;
26
+ entryNamesLength = entryPaths.length;
27
+ while(entryNamesLength > 0){
28
+ var entryPath = entryPaths.shift();
29
+ synchronous = findInEntry(entryPath, entryPaths, callback, context);
30
+ if (!synchronous) {
31
+ break;
32
+ }
33
+ entryNamesLength = entryPaths.length;
34
+ }
35
+ return synchronous;
36
+ }
37
+ function findInEntry(entryPath, entryPaths, callback, context) {
38
+ var synchronous;
39
+ var path = entryPath, directory = isEntryDirectory(path);
40
+ if (directory) {
41
+ var directoryPath = entryPath; ///
42
+ synchronous = findInDirectory(directoryPath, function(pathIgnored) {
43
+ var synchronous = pathIgnored !== null ? findInEntries(entryPaths, callback, context) : true;
44
+ if (synchronous) {
45
+ callback(pathIgnored);
46
+ }
47
+ }, context);
48
+ } else {
49
+ var filePath = entryPath; ///
50
+ synchronous = findInFile(filePath, function(pathIgnored) {
51
+ var synchronous = pathIgnored !== null ? findInEntries(entryPaths, callback, context) : true;
52
+ if (synchronous) {
53
+ callback(pathIgnored);
54
+ }
55
+ }, context);
56
+ }
57
+ if (synchronous) {
58
+ synchronous = findInEntries(entryPaths, callback, context);
59
+ }
60
+ return synchronous;
61
+ }
62
+ function findInFile(filePath, callback, context) {
63
+ var synchronous;
64
+ var filePathIgnored = (0, _synchronous.synchronousIsFilePathIgnored)(filePath, context);
65
+ if (filePathIgnored !== null) {
66
+ synchronous = true;
67
+ var quietly = context.quietly;
68
+ if (!quietly) {
69
+ var message;
70
+ var format = context.format, ruleString = context.ruleString;
71
+ message = filePathIgnored ? "Ignore ".concat(filePath) : "Permit ".concat(filePath);
72
+ if (format) {
73
+ message = filePathIgnored ? (0, _log.red)(message) : (0, _log.green)(message);
74
+ }
75
+ message = "".concat(message, " ").concat(ruleString);
76
+ console.log(message);
77
+ }
78
+ if (!filePathIgnored) {
79
+ var filesTotal = context.filesTotal;
80
+ filesTotal++;
81
+ Object.assign(context, {
82
+ filesTotal: filesTotal
83
+ });
84
+ var dryRun = context.dryRun;
85
+ if (!dryRun) {
86
+ (0, _find.default)(filePath, context);
87
+ }
88
+ }
89
+ } else {
90
+ synchronous = false;
91
+ (0, _asynchronous.asynchronousIsFilePathIgnored)(filePath, context, function(pathIgnored) {
92
+ var synchronous = pathIgnored !== null ? findInFile(filePath, callback, context) : true;
93
+ if (synchronous) {
94
+ callback(pathIgnored);
95
+ }
96
+ });
97
+ }
98
+ return synchronous;
99
+ }
100
+ function findInDirectory(directoryPath, callback, context) {
101
+ var synchronous;
102
+ var directoryPathIgnored = (0, _synchronous.synchronousIsDirectoryPathIgnored)(directoryPath, context);
103
+ if (directoryPathIgnored !== null) {
104
+ synchronous = true;
105
+ var directoryPathRootDirectoryPath = (0, _path.isDirectoryPathRootDirectoryPath)(directoryPath, context);
106
+ if (!directoryPathRootDirectoryPath) {
107
+ var quietly = context.quietly;
108
+ if (!quietly) {
109
+ var message;
110
+ var format = context.format, ruleString = context.ruleString;
111
+ message = directoryPathIgnored ? "Ignore ".concat(directoryPath, "/") : "Permit ".concat(directoryPath, "/");
112
+ if (format) {
113
+ message = directoryPathIgnored ? (0, _log.red)(message) : (0, _log.green)(message);
114
+ }
115
+ message = "".concat(message, " ").concat(ruleString);
116
+ console.log(message);
117
+ }
118
+ }
119
+ if (!directoryPathIgnored) {
120
+ var directoriesTotal = context.directoriesTotal;
121
+ directoriesTotal++;
122
+ Object.assign(context, {
123
+ directoriesTotal: directoriesTotal
124
+ });
125
+ var entryNames = readDirectory(directoryPath), entryPaths = (0, _path.entryPathsFromEntryNamesAndDirectoryPath)(entryNames, directoryPath);
126
+ synchronous = findInEntries(entryPaths, callback, context);
127
+ }
128
+ } else {
129
+ synchronous = false;
130
+ (0, _asynchronous.asynchronousIsDirectoryPathIgnored)(directoryPath, context, function(pathIgnored) {
131
+ var synchronous = pathIgnored !== null ? findInDirectory(directoryPath, callback, context) : true;
132
+ if (synchronous) {
133
+ callback(pathIgnored);
134
+ }
135
+ });
136
+ }
137
+ return synchronous;
138
+ }
139
+
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmluZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgZmlsZVN5c3RlbVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IGZpbmQgZnJvbSBcIi4uL2ZpbmRcIjtcblxuaW1wb3J0IHsgcmVkLCBncmVlbiB9IGZyb20gXCIuLi91dGlsaXRpZXMvbG9nXCI7XG5pbXBvcnQgeyBzeW5jaHJvbm91c0lzRmlsZVBhdGhJZ25vcmVkLCBzeW5jaHJvbm91c0lzRGlyZWN0b3J5UGF0aElnbm9yZWQgfSBmcm9tIFwiLi4vaXNJZ25vcmVkL3N5bmNocm9ub3VzXCI7XG5pbXBvcnQgeyBhc3luY2hyb25vdXNJc0ZpbGVQYXRoSWdub3JlZCwgYXN5bmNocm9ub3VzSXNEaXJlY3RvcnlQYXRoSWdub3JlZCB9IGZyb20gXCIuLi9pc0lnbm9yZWQvYXN5bmNocm9ub3VzXCI7XG5pbXBvcnQgeyBpc0RpcmVjdG9yeVBhdGhSb290RGlyZWN0b3J5UGF0aCwgZW50cnlQYXRoc0Zyb21FbnRyeU5hbWVzQW5kRGlyZWN0b3J5UGF0aCB9IGZyb20gXCIuLi91dGlsaXRpZXMvcGF0aFwiO1xuXG5jb25zdCB7IHJlYWREaXJlY3RvcnksIGlzRW50cnlEaXJlY3RvcnkgfSA9IGZpbGVTeXN0ZW1VdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGZpbmRJbkVudHJpZXMoZW50cnlQYXRocywgY2FsbGJhY2ssIGNvbnRleHQpIHtcbiAgbGV0IHN5bmNocm9ub3VzID0gdHJ1ZTtcblxuICBsZXQgZW50cnlOYW1lc0xlbmd0aDtcblxuICBlbnRyeU5hbWVzTGVuZ3RoID0gZW50cnlQYXRocy5sZW5ndGg7XG5cbiAgd2hpbGUgKGVudHJ5TmFtZXNMZW5ndGggPiAwKSB7XG4gICAgY29uc3QgZW50cnlQYXRoID0gZW50cnlQYXRocy5zaGlmdCgpO1xuXG4gICAgc3luY2hyb25vdXMgPSBmaW5kSW5FbnRyeShlbnRyeVBhdGgsIGVudHJ5UGF0aHMsIGNhbGxiYWNrLCBjb250ZXh0KTtcblxuICAgIGlmICghc3luY2hyb25vdXMpIHtcbiAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGVudHJ5TmFtZXNMZW5ndGggPSBlbnRyeVBhdGhzLmxlbmd0aDtcbiAgfVxuXG4gIHJldHVybiBzeW5jaHJvbm91cztcbn1cblxuZnVuY3Rpb24gZmluZEluRW50cnkoZW50cnlQYXRoLCBlbnRyeVBhdGhzLCBjYWxsYmFjaywgY29udGV4dCkge1xuICBsZXQgc3luY2hyb25vdXM7XG5cbiAgY29uc3QgcGF0aCA9IGVudHJ5UGF0aCxcbiAgICAgICAgZGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShwYXRoKTtcblxuICBpZiAoZGlyZWN0b3J5KSB7XG4gICAgY29uc3QgZGlyZWN0b3J5UGF0aCA9IGVudHJ5UGF0aDsgLy8vXG5cbiAgICBzeW5jaHJvbm91cyA9IGZpbmRJbkRpcmVjdG9yeShkaXJlY3RvcnlQYXRoLCAocGF0aElnbm9yZWQpID0+IHtcbiAgICAgIGNvbnN0IHN5bmNocm9ub3VzID0gKHBhdGhJZ25vcmVkICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmluZEluRW50cmllcyhlbnRyeVBhdGhzLCBjYWxsYmFjaywgY29udGV4dCkgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZTtcblxuICAgICAgaWYgKHN5bmNocm9ub3VzKSB7XG4gICAgICAgIGNhbGxiYWNrKHBhdGhJZ25vcmVkKTtcbiAgICAgIH1cbiAgICB9LCBjb250ZXh0KTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBmaWxlUGF0aCA9IGVudHJ5UGF0aDsgIC8vL1xuXG4gICAgc3luY2hyb25vdXMgPSBmaW5kSW5GaWxlKGZpbGVQYXRoLCAocGF0aElnbm9yZWQpID0+IHtcbiAgICAgIGNvbnN0IHN5bmNocm9ub3VzID0gKHBhdGhJZ25vcmVkICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmluZEluRW50cmllcyhlbnRyeVBhdGhzLCBjYWxsYmFjaywgY29udGV4dCkgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZTtcbiAgICAgIGlmIChzeW5jaHJvbm91cykge1xuICAgICAgICBjYWxsYmFjayhwYXRoSWdub3JlZCk7XG4gICAgICB9XG4gICAgfSwgY29udGV4dCk7XG4gIH1cblxuICBpZiAoc3luY2hyb25vdXMpIHtcbiAgICBzeW5jaHJvbm91cyA9IGZpbmRJbkVudHJpZXMoZW50cnlQYXRocywgY2FsbGJhY2ssIGNvbnRleHQpO1xuICB9XG5cbiAgcmV0dXJuIHN5bmNocm9ub3VzO1xufVxuXG5mdW5jdGlvbiBmaW5kSW5GaWxlKGZpbGVQYXRoLCBjYWxsYmFjaywgY29udGV4dCkge1xuICBsZXQgc3luY2hyb25vdXM7XG5cbiAgY29uc3QgZmlsZVBhdGhJZ25vcmVkID0gc3luY2hyb25vdXNJc0ZpbGVQYXRoSWdub3JlZChmaWxlUGF0aCwgY29udGV4dCk7XG5cbiAgaWYgKGZpbGVQYXRoSWdub3JlZCAhPT0gbnVsbCkge1xuICAgIHN5bmNocm9ub3VzID0gdHJ1ZTtcblxuICAgIGNvbnN0IHsgcXVpZXRseSB9ID0gY29udGV4dDtcblxuICAgIGlmICghcXVpZXRseSkge1xuICAgICAgbGV0IG1lc3NhZ2U7XG5cbiAgICAgIGNvbnN0IHsgZm9ybWF0LCBydWxlU3RyaW5nIH0gPSBjb250ZXh0O1xuXG4gICAgICBtZXNzYWdlID0gZmlsZVBhdGhJZ25vcmVkID9cbiAgICAgICAgICAgICAgICAgIGBJZ25vcmUgJHtmaWxlUGF0aH1gOlxuICAgICAgICAgICAgICAgICAgICBgUGVybWl0ICR7ZmlsZVBhdGh9YDtcblxuICAgICAgaWYgKGZvcm1hdCkge1xuICAgICAgICBtZXNzYWdlID0gZmlsZVBhdGhJZ25vcmVkID9cbiAgICAgICAgICAgICAgICAgICAgcmVkKG1lc3NhZ2UpIDpcbiAgICAgICAgICAgICAgICAgICAgICBncmVlbihtZXNzYWdlKTtcbiAgICAgIH1cblxuICAgICAgbWVzc2FnZSA9IGAke21lc3NhZ2V9ICR7cnVsZVN0cmluZ31gO1xuXG4gICAgICBjb25zb2xlLmxvZyhtZXNzYWdlKTtcbiAgICB9XG5cbiAgICBpZiAoIWZpbGVQYXRoSWdub3JlZCkge1xuICAgICAgbGV0IHsgZmlsZXNUb3RhbCB9ID0gY29udGV4dDtcblxuICAgICAgZmlsZXNUb3RhbCsrO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgZmlsZXNUb3RhbFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHsgZHJ5UnVuIH0gPSBjb250ZXh0O1xuXG4gICAgICBpZiAoIWRyeVJ1bikge1xuICAgICAgICBmaW5kKGZpbGVQYXRoLCBjb250ZXh0KTtcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgc3luY2hyb25vdXMgPSBmYWxzZTtcblxuICAgIGFzeW5jaHJvbm91c0lzRmlsZVBhdGhJZ25vcmVkKGZpbGVQYXRoLCBjb250ZXh0LCAocGF0aElnbm9yZWQpID0+IHtcbiAgICAgIGNvbnN0IHN5bmNocm9ub3VzID0gKHBhdGhJZ25vcmVkICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmluZEluRmlsZShmaWxlUGF0aCwgY2FsbGJhY2ssIGNvbnRleHQpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWU7XG5cbiAgICAgIGlmIChzeW5jaHJvbm91cykge1xuICAgICAgICBjYWxsYmFjayhwYXRoSWdub3JlZCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gc3luY2hyb25vdXM7XG59XG5cbmZ1bmN0aW9uIGZpbmRJbkRpcmVjdG9yeShkaXJlY3RvcnlQYXRoLCBjYWxsYmFjaywgY29udGV4dCkge1xuICBsZXQgc3luY2hyb25vdXM7XG5cbiAgY29uc3QgZGlyZWN0b3J5UGF0aElnbm9yZWQgPSBzeW5jaHJvbm91c0lzRGlyZWN0b3J5UGF0aElnbm9yZWQoZGlyZWN0b3J5UGF0aCwgY29udGV4dCk7XG5cbiAgaWYgKGRpcmVjdG9yeVBhdGhJZ25vcmVkICE9PSBudWxsKSB7XG4gICAgc3luY2hyb25vdXMgPSB0cnVlO1xuXG4gICAgY29uc3QgZGlyZWN0b3J5UGF0aFJvb3REaXJlY3RvcnlQYXRoID0gaXNEaXJlY3RvcnlQYXRoUm9vdERpcmVjdG9yeVBhdGgoZGlyZWN0b3J5UGF0aCwgY29udGV4dCk7XG5cbiAgICBpZiAoIWRpcmVjdG9yeVBhdGhSb290RGlyZWN0b3J5UGF0aCkge1xuICAgICAgY29uc3QgeyBxdWlldGx5IH0gPSBjb250ZXh0O1xuXG4gICAgICBpZiAoIXF1aWV0bHkpIHtcbiAgICAgICAgbGV0IG1lc3NhZ2U7XG5cbiAgICAgICAgY29uc3QgeyBmb3JtYXQsIHJ1bGVTdHJpbmcgfSA9IGNvbnRleHQ7XG5cbiAgICAgICAgbWVzc2FnZSA9IGRpcmVjdG9yeVBhdGhJZ25vcmVkID9cbiAgICAgICAgICAgICAgICAgICBgSWdub3JlICR7ZGlyZWN0b3J5UGF0aH0vYCA6XG4gICAgICAgICAgICAgICAgICAgICBgUGVybWl0ICR7ZGlyZWN0b3J5UGF0aH0vYDtcblxuICAgICAgICBpZiAoZm9ybWF0KSB7XG4gICAgICAgICAgbWVzc2FnZSA9IGRpcmVjdG9yeVBhdGhJZ25vcmVkID9cbiAgICAgICAgICAgICAgICAgICAgICByZWQobWVzc2FnZSkgOlxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JlZW4obWVzc2FnZSk7XG4gICAgICAgIH1cblxuICAgICAgICBtZXNzYWdlID0gYCR7bWVzc2FnZX0gJHtydWxlU3RyaW5nfWA7XG5cbiAgICAgICAgY29uc29sZS5sb2cobWVzc2FnZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFkaXJlY3RvcnlQYXRoSWdub3JlZCkge1xuICAgICAgbGV0IHsgZGlyZWN0b3JpZXNUb3RhbCB9ID0gY29udGV4dDtcblxuICAgICAgZGlyZWN0b3JpZXNUb3RhbCsrO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgZGlyZWN0b3JpZXNUb3RhbFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KGRpcmVjdG9yeVBhdGgpLFxuICAgICAgICAgICAgZW50cnlQYXRocyA9IGVudHJ5UGF0aHNGcm9tRW50cnlOYW1lc0FuZERpcmVjdG9yeVBhdGgoZW50cnlOYW1lcywgZGlyZWN0b3J5UGF0aCk7XG5cbiAgICAgIHN5bmNocm9ub3VzID0gZmluZEluRW50cmllcyhlbnRyeVBhdGhzLCBjYWxsYmFjaywgY29udGV4dCk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHN5bmNocm9ub3VzID0gZmFsc2U7XG5cbiAgICBhc3luY2hyb25vdXNJc0RpcmVjdG9yeVBhdGhJZ25vcmVkKGRpcmVjdG9yeVBhdGgsIGNvbnRleHQsIChwYXRoSWdub3JlZCkgPT4ge1xuICAgICAgY29uc3Qgc3luY2hyb25vdXMgPSAocGF0aElnbm9yZWQgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaW5kSW5EaXJlY3RvcnkoZGlyZWN0b3J5UGF0aCwgY2FsbGJhY2ssIGNvbnRleHQpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWU7XG5cbiAgICAgIGlmIChzeW5jaHJvbm91cykge1xuICAgICAgICBjYWxsYmFjayhwYXRoSWdub3JlZCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gc3luY2hyb25vdXM7XG59XG4iXSwibmFtZXMiOlsiZmluZEluRW50cmllcyIsInJlYWREaXJlY3RvcnkiLCJmaWxlU3lzdGVtVXRpbGl0aWVzIiwiaXNFbnRyeURpcmVjdG9yeSIsImVudHJ5UGF0aHMiLCJjYWxsYmFjayIsImNvbnRleHQiLCJzeW5jaHJvbm91cyIsImVudHJ5TmFtZXNMZW5ndGgiLCJsZW5ndGgiLCJlbnRyeVBhdGgiLCJzaGlmdCIsImZpbmRJbkVudHJ5IiwicGF0aCIsImRpcmVjdG9yeSIsImRpcmVjdG9yeVBhdGgiLCJmaW5kSW5EaXJlY3RvcnkiLCJwYXRoSWdub3JlZCIsImZpbGVQYXRoIiwiZmluZEluRmlsZSIsImZpbGVQYXRoSWdub3JlZCIsInN5bmNocm9ub3VzSXNGaWxlUGF0aElnbm9yZWQiLCJxdWlldGx5IiwibWVzc2FnZSIsImZvcm1hdCIsInJ1bGVTdHJpbmciLCJyZWQiLCJncmVlbiIsImNvbnNvbGUiLCJsb2ciLCJmaWxlc1RvdGFsIiwiT2JqZWN0IiwiYXNzaWduIiwiZHJ5UnVuIiwiZmluZCIsImFzeW5jaHJvbm91c0lzRmlsZVBhdGhJZ25vcmVkIiwiZGlyZWN0b3J5UGF0aElnbm9yZWQiLCJzeW5jaHJvbm91c0lzRGlyZWN0b3J5UGF0aElnbm9yZWQiLCJkaXJlY3RvcnlQYXRoUm9vdERpcmVjdG9yeVBhdGgiLCJpc0RpcmVjdG9yeVBhdGhSb290RGlyZWN0b3J5UGF0aCIsImRpcmVjdG9yaWVzVG90YWwiLCJlbnRyeU5hbWVzIiwiZW50cnlQYXRoc0Zyb21FbnRyeU5hbWVzQW5kRGlyZWN0b3J5UGF0aCIsImFzeW5jaHJvbm91c0lzRGlyZWN0b3J5UGF0aElnbm9yZWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWFBOzs7ZUFBd0JBOzs7eUJBWFk7MkRBRW5CO21CQUVVOzJCQUNxRDs0QkFDRTtvQkFDUzs7Ozs7O0FBRTNGLElBQVFDLGdCQUFvQ0MsOEJBQW1CLENBQXZERCxlQUFlRSxtQkFBcUJELDhCQUFtQixDQUF4Q0M7QUFFUixTQUFTSCxjQUFjSSxVQUFVLEVBQUVDLFFBQVEsRUFBRUMsT0FBTztJQUNqRSxJQUFJQyxjQUFjO0lBRWxCLElBQUlDO0lBRUpBLG1CQUFtQkosV0FBV0ssTUFBTTtJQUVwQyxNQUFPRCxtQkFBbUIsRUFBRztRQUMzQixJQUFNRSxZQUFZTixXQUFXTyxLQUFLO1FBRWxDSixjQUFjSyxZQUFZRixXQUFXTixZQUFZQyxVQUFVQztRQUUzRCxJQUFJLENBQUNDLGFBQWE7WUFDaEI7UUFDRjtR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
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get isStringGlobLiteral () {
13
+ return isStringGlobLiteral;
14
+ },
15
+ get isStringRegexLiteral () {
16
+ return isStringRegexLiteral;
17
+ },
18
+ get isStringStringLiteral () {
19
+ return isStringStringLiteral;
20
+ }
21
+ });
22
+ function isStringGlobLiteral(string) {
23
+ var stringStringLiteral = isStringStringLiteral(string), stringRegexLiteral = isStringRegexLiteral(string), stringGlobLiteral = !stringStringLiteral && !stringRegexLiteral;
24
+ return stringGlobLiteral;
25
+ }
26
+ function isStringRegexLiteral(string) {
27
+ return /^\/.*?\/$/.test(string);
28
+ }
29
+ function isStringStringLiteral(string) {
30
+ return /^".*?"$/.test(string);
31
+ }
32
+
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbGl0ZXJhbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzU3RyaW5nR2xvYkxpdGVyYWwoc3RyaW5nKSB7XG4gIGNvbnN0IHN0cmluZ1N0cmluZ0xpdGVyYWwgPSBpc1N0cmluZ1N0cmluZ0xpdGVyYWwoc3RyaW5nKSxcbiAgICAgICAgc3RyaW5nUmVnZXhMaXRlcmFsID0gaXNTdHJpbmdSZWdleExpdGVyYWwoc3RyaW5nKSxcbiAgICAgICAgc3RyaW5nR2xvYkxpdGVyYWwgPSAoIXN0cmluZ1N0cmluZ0xpdGVyYWwgJiYgIXN0cmluZ1JlZ2V4TGl0ZXJhbCk7XG5cbiAgcmV0dXJuIHN0cmluZ0dsb2JMaXRlcmFsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTdHJpbmdSZWdleExpdGVyYWwoc3RyaW5nKSB7IHJldHVybiAvXlxcLy4qP1xcLyQvLnRlc3Qoc3RyaW5nKTsgfVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTdHJpbmdTdHJpbmdMaXRlcmFsKHN0cmluZykgeyByZXR1cm4gL15cIi4qP1wiJC8udGVzdChzdHJpbmcpOyB9XG4iXSwibmFtZXMiOlsiaXNTdHJpbmdHbG9iTGl0ZXJhbCIsImlzU3RyaW5nUmVnZXhMaXRlcmFsIiwiaXNTdHJpbmdTdHJpbmdMaXRlcmFsIiwic3RyaW5nIiwic3RyaW5nU3RyaW5nTGl0ZXJhbCIsInN0cmluZ1JlZ2V4TGl0ZXJhbCIsInN0cmluZ0dsb2JMaXRlcmFsIiwidGVzdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBRWdCQTtlQUFBQTs7UUFRQUM7ZUFBQUE7O1FBRUFDO2VBQUFBOzs7QUFWVCxTQUFTRixvQkFBb0JHLE1BQU07SUFDeEMsSUFBTUMsc0JBQXNCRixzQkFBc0JDLFNBQzVDRSxxQkFBcUJKLHFCQUFxQkUsU0FDMUNHLG9CQUFxQixDQUFDRix1QkFBdUIsQ0FBQ0M7SUFFcEQsT0FBT0M7QUFDVDtBQUVPLFNBQVNMLHFCQUFxQkUsTUFBTTtJQUFJLE9BQU8sWUFBWUksSUFBSSxDQUFDSjtBQUFTO0FBRXpFLFNBQVNELHNCQUFzQkMsTUFBTTtJQUFJLE9BQU8sVUFBVUksSUFBSSxDQUFDSjtBQUFTIn0=
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get blue () {
13
+ return blue;
14
+ },
15
+ get green () {
16
+ return green;
17
+ },
18
+ get grey () {
19
+ return grey;
20
+ },
21
+ get red () {
22
+ return red;
23
+ },
24
+ get yellow () {
25
+ return yellow;
26
+ }
27
+ });
28
+ var RED_FOREGROUND_COLOUR = "\u001b[31m", GREY_FOREGROUND_COLOUR = "\u001b[90m", BLUE_FOREGROUND_COLOUR = "\u001b[34m", GREEN_FOREGROUND_COLOUR = "\u001b[32m", YELLOW_FOREGROUND_COLOUR = "\u001b[33m", RESET_FOREGROUND_COLOUR = "\u001b[39m";
29
+ function red(string) {
30
+ return "".concat(RED_FOREGROUND_COLOUR).concat(string).concat(RESET_FOREGROUND_COLOUR);
31
+ }
32
+ function grey(string) {
33
+ return "".concat(GREY_FOREGROUND_COLOUR).concat(string).concat(RESET_FOREGROUND_COLOUR);
34
+ }
35
+ function blue(string) {
36
+ return "".concat(BLUE_FOREGROUND_COLOUR).concat(string).concat(RESET_FOREGROUND_COLOUR);
37
+ }
38
+ function green(string) {
39
+ return "".concat(GREEN_FOREGROUND_COLOUR).concat(string).concat(RESET_FOREGROUND_COLOUR);
40
+ }
41
+ function yellow(string) {
42
+ return "".concat(YELLOW_FOREGROUND_COLOUR).concat(string).concat(RESET_FOREGROUND_COLOUR);
43
+ }
44
+
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbG9nLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5jb25zdCBSRURfRk9SRUdST1VORF9DT0xPVVIgPSBcIlxcdTAwMWJbMzFtXCIsXG4gICAgICBHUkVZX0ZPUkVHUk9VTkRfQ09MT1VSID0gXCJcXHUwMDFiWzkwbVwiLFxuICAgICAgQkxVRV9GT1JFR1JPVU5EX0NPTE9VUiA9IFwiXFx1MDAxYlszNG1cIixcbiAgICAgIEdSRUVOX0ZPUkVHUk9VTkRfQ09MT1VSID0gXCJcXHUwMDFiWzMybVwiLFxuICAgICAgWUVMTE9XX0ZPUkVHUk9VTkRfQ09MT1VSID0gXCJcXHUwMDFiWzMzbVwiLFxuICAgICAgUkVTRVRfRk9SRUdST1VORF9DT0xPVVIgPSBcIlxcdTAwMWJbMzltXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiByZWQoc3RyaW5nKSB7IHJldHVybiBgJHtSRURfRk9SRUdST1VORF9DT0xPVVJ9JHtzdHJpbmd9JHtSRVNFVF9GT1JFR1JPVU5EX0NPTE9VUn1gOyB9XG5cbmV4cG9ydCBmdW5jdGlvbiBncmV5KHN0cmluZykgeyByZXR1cm4gYCR7R1JFWV9GT1JFR1JPVU5EX0NPTE9VUn0ke3N0cmluZ30ke1JFU0VUX0ZPUkVHUk9VTkRfQ09MT1VSfWA7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIGJsdWUoc3RyaW5nKSB7IHJldHVybiBgJHtCTFVFX0ZPUkVHUk9VTkRfQ09MT1VSfSR7c3RyaW5nfSR7UkVTRVRfRk9SRUdST1VORF9DT0xPVVJ9YDsgfVxuXG5leHBvcnQgZnVuY3Rpb24gZ3JlZW4oc3RyaW5nKSB7IHJldHVybiBgJHtHUkVFTl9GT1JFR1JPVU5EX0NPTE9VUn0ke3N0cmluZ30ke1JFU0VUX0ZPUkVHUk9VTkRfQ09MT1VSfWA7IH1cblxuZXhwb3J0IGZ1bmN0aW9uIHllbGxvdyhzdHJpbmcpIHsgcmV0dXJuIGAke1lFTExPV19GT1JFR1JPVU5EX0NPTE9VUn0ke3N0cmluZ30ke1JFU0VUX0ZPUkVHUk9VTkRfQ09MT1VSfWA7IH1cbiJdLCJuYW1lcyI6WyJibHVlIiwiZ3JlZW4iLCJncmV5IiwicmVkIiwieWVsbG93IiwiUkVEX0ZPUkVHUk9VTkRfQ09MT1VSIiwiR1JFWV9GT1JFR1JPVU5EX0NPTE9VUiIsIkJMVUVfRk9SRUdST1VORF9DT0xPVVIiLCJHUkVFTl9GT1JFR1JPVU5EX0NPTE9VUiIsIllFTExPV19GT1JFR1JPVU5EX0NPTE9VUiIsIlJFU0VUX0ZPUkVHUk9VTkRfQ09MT1VSIiwic3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFhZ0JBO2VBQUFBOztRQUVBQztlQUFBQTs7UUFKQUM7ZUFBQUE7O1FBRkFDO2VBQUFBOztRQVFBQztlQUFBQTs7O0FBZmhCLElBQU1DLHdCQUF3QixjQUN4QkMseUJBQXlCLGNBQ3pCQyx5QkFBeUIsY0FDekJDLDBCQUEwQixjQUMxQkMsMkJBQTJCLGNBQzNCQywwQkFBMEI7QUFFekIsU0FBU1AsSUFBSVEsTUFBTTtJQUFJLE9BQU8sQUFBQyxHQUEwQkEsT0FBeEJOLHVCQUFpQ0ssT0FBVEMsUUFBaUMsT0FBeEJEO0FBQTJCO0FBRTdGLFNBQVNSLEtBQUtTLE1BQU07SUFBSSxPQUFPLEFBQUMsR0FBMkJBLE9BQXpCTCx3QkFBa0NJLE9BQVRDLFFBQWlDLE9BQXhCRDtBQUEyQjtBQUUvRixTQUFTVixLQUFLVyxNQUFNO0lBQUksT0FBTyxBQUFDLEdBQTJCQSxPQUF6Qkosd0JBQWtDRyxPQUFUQyxRQUFpQyxPQUF4QkQ7QUFBMkI7QUFFL0YsU0FBU1QsTUFBTVUsTUFBTTtJQUFJLE9BQU8sQUFBQyxHQUE0QkEsT0FBMUJILHlCQUFtQ0UsT0FBVEMsUUFBaUMsT0FBeEJEO0FBQTJCO0FBRWpHLFNBQVNOLE9BQU9PLE1BQU07SUFBSSxPQUFPLEFBQUMsR0FBNkJBLE9BQTNCRiwwQkFBb0NDLE9BQVRDLFFBQWlDLE9BQXhCRDtBQUEyQiJ9
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "executeOperations", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return executeOperations;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var whilst = _necessary.asynchronousUtilities.whilst;
13
+ function executeOperations(operations, callback, context) {
14
+ var completed = true;
15
+ var operationsLength = operations.length, lastIndex = operationsLength - 1;
16
+ whilst(function(next, done, context, index) {
17
+ if (index > lastIndex) {
18
+ done();
19
+ return;
20
+ }
21
+ var operation = operations[index], proceed = next, abort = function() {
22
+ completed = false;
23
+ done();
24
+ };
25
+ operation(proceed, abort, context);
26
+ }, done, context);
27
+ function done() {
28
+ callback(completed);
29
+ }
30
+ }
31
+
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvb3BlcmF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmNvbnN0IHsgd2hpbHN0IH0gPSBhc3luY2hyb25vdXNVdGlsaXRpZXM7XG5cbmV4cG9ydCBmdW5jdGlvbiBleGVjdXRlT3BlcmF0aW9ucyhvcGVyYXRpb25zLCBjYWxsYmFjaywgY29udGV4dCkge1xuICBsZXQgY29tcGxldGVkID0gdHJ1ZTtcblxuICBjb25zdCBvcGVyYXRpb25zTGVuZ3RoID0gb3BlcmF0aW9ucy5sZW5ndGgsXG4gICAgICAgIGxhc3RJbmRleCA9IG9wZXJhdGlvbnNMZW5ndGggLSAxO1xuXG4gIHdoaWxzdCgobmV4dCwgZG9uZSwgY29udGV4dCwgaW5kZXgpID0+IHtcbiAgICBpZiAoaW5kZXggPiBsYXN0SW5kZXgpIHtcbiAgICAgIGRvbmUoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG9wZXJhdGlvbiA9IG9wZXJhdGlvbnNbaW5kZXhdLFxuICAgICAgICAgIHByb2NlZWQgPSBuZXh0LCAvLy9cbiAgICAgICAgICBhYm9ydCA9ICgpID0+IHtcbiAgICAgICAgICAgIGNvbXBsZXRlZCA9IGZhbHNlO1xuXG4gICAgICAgICAgICBkb25lKCk7XG4gICAgICAgICAgfTtcblxuICAgIG9wZXJhdGlvbihwcm9jZWVkLCBhYm9ydCwgY29udGV4dCk7XG4gIH0sIGRvbmUsIGNvbnRleHQpO1xuXG4gIGZ1bmN0aW9uIGRvbmUoKSB7XG4gICAgY2FsbGJhY2soY29tcGxldGVkKTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbImV4ZWN1dGVPcGVyYXRpb25zIiwid2hpbHN0IiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwib3BlcmF0aW9ucyIsImNhbGxiYWNrIiwiY29udGV4dCIsImNvbXBsZXRlZCIsIm9wZXJhdGlvbnNMZW5ndGgiLCJsZW5ndGgiLCJsYXN0SW5kZXgiLCJuZXh0IiwiZG9uZSIsImluZGV4Iiwib3BlcmF0aW9uIiwicHJvY2VlZCIsImFib3J0Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFNZ0JBOzs7ZUFBQUE7Ozt5QkFKc0I7QUFFdEMsSUFBTSxBQUFFQyxTQUFXQyxnQ0FBcUIsQ0FBaENEO0FBRUQsU0FBU0Qsa0JBQWtCRyxVQUFVLEVBQUVDLFFBQVEsRUFBRUMsT0FBTztJQUM3RCxJQUFJQyxZQUFZO0lBRWhCLElBQU1DLG1CQUFtQkosV0FBV0ssTUFBTSxFQUNwQ0MsWUFBWUYsbUJBQW1CO0lBRXJDTixPQUFPLFNBQUNTLE1BQU1DLE1BQU1OLFNBQVNPO1FBQzNCLElBQUlBLFFBQVFILFdBQVc7WUFDckJFO1lBRUE7UUFDRjtRQUVBLElBQU1FLFlBQVlWLFVBQVUsQ0FBQ1MsTUFBTSxFQUM3QkUsVUFBVUosTUFDVkssUUFBUTtZQUNOVCxZQUFZO1lBRVpLO1FBQ0Y7UUFFTkUsVUFBVUMsU0FBU0MsT0FBT1Y7SUFDNUIsR0FBR00sTUFBTU47SUFFVCxTQUFTTTtRQUNQUCxTQUFTRTtJQUNYO0FBQ0YifQ==