find-cli 1.7.4 → 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 +21 -6
  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,50 @@
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 DEFAULT_DRY_RUN () {
13
+ return DEFAULT_DRY_RUN;
14
+ },
15
+ get DEFAULT_FORMAT () {
16
+ return DEFAULT_FORMAT;
17
+ },
18
+ get DEFAULT_HELP () {
19
+ return DEFAULT_HELP;
20
+ },
21
+ get DEFAULT_INTERACTIVE () {
22
+ return DEFAULT_INTERACTIVE;
23
+ },
24
+ get DEFAULT_PREVIOUS () {
25
+ return DEFAULT_PREVIOUS;
26
+ },
27
+ get DEFAULT_QUIETLY () {
28
+ return DEFAULT_QUIETLY;
29
+ },
30
+ get DEFAULT_REGEX () {
31
+ return DEFAULT_REGEX;
32
+ },
33
+ get DEFAULT_STRING () {
34
+ return DEFAULT_STRING;
35
+ },
36
+ get DEFAULT_VERSION () {
37
+ return DEFAULT_VERSION;
38
+ }
39
+ });
40
+ var DEFAULT_HELP = false;
41
+ var DEFAULT_REGEX = false;
42
+ var DEFAULT_STRING = false;
43
+ var DEFAULT_FORMAT = false;
44
+ var DEFAULT_VERSION = false;
45
+ var DEFAULT_DRY_RUN = false;
46
+ var DEFAULT_QUIETLY = false;
47
+ var DEFAULT_PREVIOUS = false;
48
+ var DEFAULT_INTERACTIVE = false;
49
+
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWZhdWx0cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfSEVMUCA9IGZhbHNlO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUkVHRVggPSBmYWxzZTtcbmV4cG9ydCBjb25zdCBERUZBVUxUX1NUUklORyA9IGZhbHNlO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfRk9STUFUID0gZmFsc2U7XG5leHBvcnQgY29uc3QgREVGQVVMVF9WRVJTSU9OID0gZmFsc2U7XG5leHBvcnQgY29uc3QgREVGQVVMVF9EUllfUlVOID0gZmFsc2U7XG5leHBvcnQgY29uc3QgREVGQVVMVF9RVUlFVExZID0gZmFsc2U7XG5leHBvcnQgY29uc3QgREVGQVVMVF9QUkVWSU9VUyA9IGZhbHNlO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfSU5URVJBQ1RJVkUgPSBmYWxzZTtcbiJdLCJuYW1lcyI6WyJERUZBVUxUX0RSWV9SVU4iLCJERUZBVUxUX0ZPUk1BVCIsIkRFRkFVTFRfSEVMUCIsIkRFRkFVTFRfSU5URVJBQ1RJVkUiLCJERUZBVUxUX1BSRVZJT1VTIiwiREVGQVVMVF9RVUlFVExZIiwiREVGQVVMVF9SRUdFWCIsIkRFRkFVTFRfU1RSSU5HIiwiREVGQVVMVF9WRVJTSU9OIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFPYUE7ZUFBQUE7O1FBRkFDO2VBQUFBOztRQUhBQztlQUFBQTs7UUFRQUM7ZUFBQUE7O1FBREFDO2VBQUFBOztRQURBQztlQUFBQTs7UUFMQUM7ZUFBQUE7O1FBQ0FDO2VBQUFBOztRQUVBQztlQUFBQTs7O0FBSk4sSUFBTU4sZUFBZTtBQUNyQixJQUFNSSxnQkFBZ0I7QUFDdEIsSUFBTUMsaUJBQWlCO0FBQ3ZCLElBQU1OLGlCQUFpQjtBQUN2QixJQUFNTyxrQkFBa0I7QUFDeEIsSUFBTVIsa0JBQWtCO0FBQ3hCLElBQU1LLGtCQUFrQjtBQUN4QixJQUFNRCxtQkFBbUI7QUFDekIsSUFBTUQsc0JBQXNCIn0=
@@ -0,0 +1,30 @@
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 ADD_ROOT_DIRECTORY_PATH_DESCRIPTION () {
13
+ return ADD_ROOT_DIRECTORY_PATH_DESCRIPTION;
14
+ },
15
+ get GLOB_STRING_OR_REGEX_DESCRIPTION () {
16
+ return GLOB_STRING_OR_REGEX_DESCRIPTION;
17
+ },
18
+ get PREVIOUS_GLOB_STRING_OR_REGEX_DESCRIPTION () {
19
+ return PREVIOUS_GLOB_STRING_OR_REGEX_DESCRIPTION;
20
+ },
21
+ get REMOVE_ROOT_DIRECTORY_PATH_DESCRIPTION () {
22
+ return REMOVE_ROOT_DIRECTORY_PATH_DESCRIPTION;
23
+ }
24
+ });
25
+ var GLOB_STRING_OR_REGEX_DESCRIPTION = "Glob, string or regex: ";
26
+ var ADD_ROOT_DIRECTORY_PATH_DESCRIPTION = "Root directory: ";
27
+ var REMOVE_ROOT_DIRECTORY_PATH_DESCRIPTION = "Root directory index: ";
28
+ var PREVIOUS_GLOB_STRING_OR_REGEX_DESCRIPTION = "Previous glob, string or regex: ";
29
+
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXNjcmlwdGlvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBHTE9CX1NUUklOR19PUl9SRUdFWF9ERVNDUklQVElPTiA9IGBHbG9iLCBzdHJpbmcgb3IgcmVnZXg6IGA7XG5leHBvcnQgY29uc3QgQUREX1JPT1RfRElSRUNUT1JZX1BBVEhfREVTQ1JJUFRJT04gPSBgUm9vdCBkaXJlY3Rvcnk6IGA7XG5leHBvcnQgY29uc3QgUkVNT1ZFX1JPT1RfRElSRUNUT1JZX1BBVEhfREVTQ1JJUFRJT04gPSBgUm9vdCBkaXJlY3RvcnkgaW5kZXg6IGA7XG5leHBvcnQgY29uc3QgUFJFVklPVVNfR0xPQl9TVFJJTkdfT1JfUkVHRVhfREVTQ1JJUFRJT04gPSBgUHJldmlvdXMgZ2xvYiwgc3RyaW5nIG9yIHJlZ2V4OiBgO1xuIl0sIm5hbWVzIjpbIkFERF9ST09UX0RJUkVDVE9SWV9QQVRIX0RFU0NSSVBUSU9OIiwiR0xPQl9TVFJJTkdfT1JfUkVHRVhfREVTQ1JJUFRJT04iLCJQUkVWSU9VU19HTE9CX1NUUklOR19PUl9SRUdFWF9ERVNDUklQVElPTiIsIlJFTU9WRV9ST09UX0RJUkVDVE9SWV9QQVRIX0RFU0NSSVBUSU9OIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFHYUE7ZUFBQUE7O1FBREFDO2VBQUFBOztRQUdBQztlQUFBQTs7UUFEQUM7ZUFBQUE7OztBQUZOLElBQU1GLG1DQUFtQztBQUN6QyxJQUFNRCxzQ0FBc0M7QUFDNUMsSUFBTUcseUNBQXlDO0FBQy9DLElBQU1ELDRDQUE0QyJ9
package/lib/find.js ADDED
@@ -0,0 +1,53 @@
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 find;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var _line = /*#__PURE__*/ _interop_require_default(require("./line"));
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ var readFile = _necessary.fileSystemUtilities.readFile;
19
+ function find(filePath, context) {
20
+ var rule = context.rule, format = context.format, content = readFile(filePath), lines = linesFromContentAndFilePath(content, filePath);
21
+ var linesTotal = context.linesTotal;
22
+ lines.forEach(function(line) {
23
+ var occurrences = rule.find(line, filePath), occurrencesLength = occurrences.length;
24
+ if (occurrencesLength > 0) {
25
+ var occurrencesTotal = context.occurrencesTotal;
26
+ occurrencesTotal += occurrencesLength;
27
+ Object.assign(context, {
28
+ occurrencesTotal: occurrencesTotal
29
+ });
30
+ line.setOccurrences(occurrences);
31
+ if (!format) {
32
+ var message = line.asMessage();
33
+ console.log(message);
34
+ } else {
35
+ var lines = context.lines;
36
+ lines.push(line);
37
+ }
38
+ }
39
+ linesTotal++;
40
+ });
41
+ Object.assign(context, {
42
+ linesTotal: linesTotal
43
+ });
44
+ }
45
+ function linesFromContentAndFilePath(content, filePath) {
46
+ var contents = content.split(/(\r\n|\r|\n)/), lines = contents.map(function(content, index) {
47
+ var line = _line.default.fromIndexContentAndFilePath(index, content, filePath);
48
+ return line;
49
+ });
50
+ return lines;
51
+ }
52
+
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9maW5kLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBmaWxlU3lzdGVtVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgTGluZSBmcm9tIFwiLi9saW5lXCI7XG5cbmNvbnN0IHsgcmVhZEZpbGUgfSA9IGZpbGVTeXN0ZW1VdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGZpbmQoZmlsZVBhdGgsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBydWxlLCBmb3JtYXQgfSA9IGNvbnRleHQsXG4gICAgICAgIGNvbnRlbnQgPSByZWFkRmlsZShmaWxlUGF0aCksXG4gICAgICAgIGxpbmVzID0gbGluZXNGcm9tQ29udGVudEFuZEZpbGVQYXRoKGNvbnRlbnQsIGZpbGVQYXRoKTtcblxuICBsZXQgeyBsaW5lc1RvdGFsIH0gPSBjb250ZXh0O1xuXG4gIGxpbmVzLmZvckVhY2goKGxpbmUpID0+IHtcbiAgICBjb25zdCBvY2N1cnJlbmNlcyA9IHJ1bGUuZmluZChsaW5lLCBmaWxlUGF0aCksXG4gICAgICAgICAgb2NjdXJyZW5jZXNMZW5ndGggPSBvY2N1cnJlbmNlcy5sZW5ndGg7XG5cbiAgICBpZiAob2NjdXJyZW5jZXNMZW5ndGggPiAwKSB7XG4gICAgICBsZXQgeyBvY2N1cnJlbmNlc1RvdGFsIH0gPSBjb250ZXh0O1xuXG4gICAgICBvY2N1cnJlbmNlc1RvdGFsICs9IG9jY3VycmVuY2VzTGVuZ3RoO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgb2NjdXJyZW5jZXNUb3RhbFxuICAgICAgfSk7XG5cbiAgICAgIGxpbmUuc2V0T2NjdXJyZW5jZXMob2NjdXJyZW5jZXMpO1xuXG4gICAgICBpZiAoIWZvcm1hdCkge1xuICAgICAgICBjb25zdCBtZXNzYWdlID0gbGluZS5hc01lc3NhZ2UoKTtcblxuICAgICAgICBjb25zb2xlLmxvZyhtZXNzYWdlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHsgbGluZXMgfSA9IGNvbnRleHQ7XG5cbiAgICAgICAgbGluZXMucHVzaChsaW5lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaW5lc1RvdGFsKys7XG4gIH0pO1xuXG4gIE9iamVjdC5hc3NpZ24oY29udGV4dCwge1xuICAgIGxpbmVzVG90YWxcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGxpbmVzRnJvbUNvbnRlbnRBbmRGaWxlUGF0aChjb250ZW50LCBmaWxlUGF0aCkge1xuICBjb25zdCBjb250ZW50cyA9IGNvbnRlbnQuc3BsaXQoLyhcXHJcXG58XFxyfFxcbikvKSxcbiAgICAgICAgbGluZXMgPSBjb250ZW50cy5tYXAoKGNvbnRlbnQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgY29uc3QgbGluZSA9IExpbmUuZnJvbUluZGV4Q29udGVudEFuZEZpbGVQYXRoKGluZGV4LCBjb250ZW50LCBmaWxlUGF0aCk7XG5cbiAgICAgICAgICByZXR1cm4gbGluZTtcbiAgICAgICAgfSk7XG5cbiAgcmV0dXJuIGxpbmVzO1xufVxuIl0sIm5hbWVzIjpbImZpbmQiLCJyZWFkRmlsZSIsImZpbGVTeXN0ZW1VdGlsaXRpZXMiLCJmaWxlUGF0aCIsImNvbnRleHQiLCJydWxlIiwiZm9ybWF0IiwiY29udGVudCIsImxpbmVzIiwibGluZXNGcm9tQ29udGVudEFuZEZpbGVQYXRoIiwibGluZXNUb3RhbCIsImZvckVhY2giLCJsaW5lIiwib2NjdXJyZW5jZXMiLCJvY2N1cnJlbmNlc0xlbmd0aCIsImxlbmd0aCIsIm9jY3VycmVuY2VzVG90YWwiLCJPYmplY3QiLCJhc3NpZ24iLCJzZXRPY2N1cnJlbmNlcyIsIm1lc3NhZ2UiLCJhc01lc3NhZ2UiLCJjb25zb2xlIiwibG9nIiwicHVzaCIsImNvbnRlbnRzIiwic3BsaXQiLCJtYXAiLCJpbmRleCIsIkxpbmUiLCJmcm9tSW5kZXhDb250ZW50QW5kRmlsZVBhdGgiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBd0JBOzs7eUJBTlk7MkRBRW5COzs7Ozs7QUFFakIsSUFBTSxBQUFFQyxXQUFhQyw4QkFBbUIsQ0FBaENEO0FBRU8sU0FBU0QsS0FBS0csUUFBUSxFQUFFQyxPQUFPO0lBQzVDLElBQVFDLE9BQWlCRCxRQUFqQkMsTUFBTUMsU0FBV0YsUUFBWEUsUUFDUkMsVUFBVU4sU0FBU0UsV0FDbkJLLFFBQVFDLDRCQUE0QkYsU0FBU0o7SUFFbkQsSUFBSSxBQUFFTyxhQUFlTixRQUFmTTtJQUVORixNQUFNRyxPQUFPLENBQUMsU0FBQ0M7UUFDYixJQUFNQyxjQUFjUixLQUFLTCxJQUFJLENBQUNZLE1BQU1ULFdBQzlCVyxvQkFBb0JELFlBQVlFLE1BQU07UUFFNUMsSUFBSUQsb0JBQW9CLEdBQUc7WUFDekIsSUFBSSxBQUFFRSxtQkFBcUJaLFFBQXJCWTtZQUVOQSxvQkFBb0JGO1lBRXBCRyxPQUFPQyxNQUFNLENBQUNkLFNBQVM7Z0JBQ3JCWSxrQkFBQUE7WUFDRjtZQUVBSixLQUFLTyxjQUFjLENBQUNOO1lBRXBCLElBQUksQ0FBQ1AsUUFBUTtnQkFDWCxJQUFNYyxVQUFVUixLQUFLUyxTQUFTO2dCQUU5QkMsUUFBUUMsR0FBRyxDQUFDSDtZQUNkLE9BQU87Z0JBQ0wsSUFBTSxBQUFFWixRQUFVSixRQUFWSTtnQkFFUkEsTUFBTWdCLElBQUksQ0FBQ1o7WUFDYjtRQUNGO1FBRUFGO0lBQ0Y7SUFFQU8sT0FBT0MsTUFBTSxDQUFDZCxTQUFTO1FBQ3JCTSxZQUFBQTtJQUNGO0FBQ0Y7QUFFQSxTQUFTRCw0QkFBNEJGLE9BQU8sRUFBRUosUUFBUTtJQUNwRCxJQUFNc0IsV0FBV2xCLFFBQVFtQixLQUFLLENBQUMsaUJBQ3pCbEIsUUFBUWlCLFNBQVNFLEdBQUcsQ0FBQyxTQUFDcEIsU0FBU3FCO1FBQzdCLElBQU1oQixPQUFPaUIsYUFBSSxDQUFDQywyQkFBMkIsQ0FBQ0YsT0FBT3JCLFNBQVNKO1FBRTlELE9BQU9TO0lBQ1Q7SUFFTixPQUFPSjtBQUNUIn0=
@@ -0,0 +1,61 @@
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 asynchronousIsDirectoryPathIgnored () {
13
+ return asynchronousIsDirectoryPathIgnored;
14
+ },
15
+ get asynchronousIsFilePathIgnored () {
16
+ return asynchronousIsFilePathIgnored;
17
+ }
18
+ });
19
+ var _pathRule = /*#__PURE__*/ _interop_require_default(require("../operation/prompt/pathRule"));
20
+ var _updatePatRules = /*#__PURE__*/ _interop_require_default(require("../operation/updatePatRules"));
21
+ var _ignoreOrPermitPath = /*#__PURE__*/ _interop_require_default(require("../operation/prompt/ignoreOrPermitPath"));
22
+ var _operation = require("../utilities/operation");
23
+ var _path = require("../utilities/path");
24
+ function _interop_require_default(obj) {
25
+ return obj && obj.__esModule ? obj : {
26
+ default: obj
27
+ };
28
+ }
29
+ function asynchronousIsFilePathIgnored(filePath, context, callback) {
30
+ filePath = (0, _path.stripRootDirectoryFromPath)(filePath, context); ///
31
+ var path = filePath, directory = false;
32
+ asynchronousIsPathIgnored(path, directory, context, callback);
33
+ }
34
+ function asynchronousIsDirectoryPathIgnored(directoryPath, context, callback) {
35
+ directoryPath = (0, _path.stripRootDirectoryFromPath)(directoryPath, context); ///
36
+ var path = directoryPath, directory = true;
37
+ asynchronousIsPathIgnored(path, directory, context, callback);
38
+ }
39
+ function asynchronousIsPathIgnored(path, directory, context, callback) {
40
+ var operations = [
41
+ _ignoreOrPermitPath.default,
42
+ _pathRule.default,
43
+ _updatePatRules.default
44
+ ], pathRule = null, pathIgnored = null;
45
+ Object.assign(context, {
46
+ path: path,
47
+ directory: directory,
48
+ pathRule: pathRule,
49
+ pathIgnored: pathIgnored
50
+ });
51
+ (0, _operation.executeOperations)(operations, function(completed) {
52
+ var pathIgnored = context.pathIgnored;
53
+ delete context.path;
54
+ delete context.directory;
55
+ delete context.pathRule;
56
+ delete context.pathIgnored;
57
+ callback(pathIgnored);
58
+ }, context);
59
+ }
60
+
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pc0lnbm9yZWQvYXN5bmNocm9ub3VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgcGF0aFJ1bGVQcm9tcHRPcGVyYXRpb24gZnJvbSBcIi4uL29wZXJhdGlvbi9wcm9tcHQvcGF0aFJ1bGVcIjtcbmltcG9ydCB1cGRhdGVQYXRoUnVsZXNPcGVyYXRpb24gZnJvbSBcIi4uL29wZXJhdGlvbi91cGRhdGVQYXRSdWxlc1wiO1xuaW1wb3J0IGlnbm9yZU9yUGVybWl0UGF0aFByb21wdE9wZXJhdGlvbiBmcm9tIFwiLi4vb3BlcmF0aW9uL3Byb21wdC9pZ25vcmVPclBlcm1pdFBhdGhcIjtcblxuaW1wb3J0IHsgZXhlY3V0ZU9wZXJhdGlvbnMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL29wZXJhdGlvblwiO1xuaW1wb3J0IHsgc3RyaXBSb290RGlyZWN0b3J5RnJvbVBhdGggfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3BhdGhcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGFzeW5jaHJvbm91c0lzRmlsZVBhdGhJZ25vcmVkKGZpbGVQYXRoLCBjb250ZXh0LCBjYWxsYmFjaykge1xuICBmaWxlUGF0aCA9IHN0cmlwUm9vdERpcmVjdG9yeUZyb21QYXRoKGZpbGVQYXRoLCBjb250ZXh0KTsgLy8vXG5cbiAgY29uc3QgcGF0aCA9IGZpbGVQYXRoLCAgLy8vXG4gICAgICAgIGRpcmVjdG9yeSA9IGZhbHNlO1xuXG4gIGFzeW5jaHJvbm91c0lzUGF0aElnbm9yZWQocGF0aCwgZGlyZWN0b3J5LCBjb250ZXh0LCBjYWxsYmFjayk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3luY2hyb25vdXNJc0RpcmVjdG9yeVBhdGhJZ25vcmVkKGRpcmVjdG9yeVBhdGgsIGNvbnRleHQsIGNhbGxiYWNrKSB7XG4gIGRpcmVjdG9yeVBhdGggPSBzdHJpcFJvb3REaXJlY3RvcnlGcm9tUGF0aChkaXJlY3RvcnlQYXRoLCBjb250ZXh0KTsgIC8vL1xuXG4gIGNvbnN0IHBhdGggPSBkaXJlY3RvcnlQYXRoLCAgLy8vXG4gICAgICAgIGRpcmVjdG9yeSA9IHRydWU7XG5cbiAgYXN5bmNocm9ub3VzSXNQYXRoSWdub3JlZChwYXRoLCBkaXJlY3RvcnksIGNvbnRleHQsIGNhbGxiYWNrKTtcbn1cblxuZnVuY3Rpb24gYXN5bmNocm9ub3VzSXNQYXRoSWdub3JlZChwYXRoLCBkaXJlY3RvcnksIGNvbnRleHQsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IG9wZXJhdGlvbnMgPSBbXG4gICAgICAgICAgaWdub3JlT3JQZXJtaXRQYXRoUHJvbXB0T3BlcmF0aW9uLFxuICAgICAgICAgIHBhdGhSdWxlUHJvbXB0T3BlcmF0aW9uLFxuICAgICAgICAgIHVwZGF0ZVBhdGhSdWxlc09wZXJhdGlvblxuICAgICAgICBdLFxuICAgICAgICBwYXRoUnVsZSA9IG51bGwsXG4gICAgICAgIHBhdGhJZ25vcmVkID0gbnVsbDtcblxuICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICBwYXRoLFxuICAgIGRpcmVjdG9yeSxcbiAgICBwYXRoUnVsZSxcbiAgICBwYXRoSWdub3JlZFxuICB9KTtcblxuICBleGVjdXRlT3BlcmF0aW9ucyhvcGVyYXRpb25zLCAoY29tcGxldGVkKSA9PiB7XG4gICAgY29uc3QgeyBwYXRoSWdub3JlZCB9ID0gY29udGV4dDtcblxuICAgIGRlbGV0ZSBjb250ZXh0LnBhdGg7XG4gICAgZGVsZXRlIGNvbnRleHQuZGlyZWN0b3J5O1xuICAgIGRlbGV0ZSBjb250ZXh0LnBhdGhSdWxlO1xuICAgIGRlbGV0ZSBjb250ZXh0LnBhdGhJZ25vcmVkO1xuXG4gICAgY2FsbGJhY2socGF0aElnbm9yZWQpO1xuICB9LCBjb250ZXh0KTtcbn1cbiJdLCJuYW1lcyI6WyJhc3luY2hyb25vdXNJc0RpcmVjdG9yeVBhdGhJZ25vcmVkIiwiYXN5bmNocm9ub3VzSXNGaWxlUGF0aElnbm9yZWQiLCJmaWxlUGF0aCIsImNvbnRleHQiLCJjYWxsYmFjayIsInN0cmlwUm9vdERpcmVjdG9yeUZyb21QYXRoIiwicGF0aCIsImRpcmVjdG9yeSIsImFzeW5jaHJvbm91c0lzUGF0aElnbm9yZWQiLCJkaXJlY3RvcnlQYXRoIiwib3BlcmF0aW9ucyIsImlnbm9yZU9yUGVybWl0UGF0aFByb21wdE9wZXJhdGlvbiIsInBhdGhSdWxlUHJvbXB0T3BlcmF0aW9uIiwidXBkYXRlUGF0aFJ1bGVzT3BlcmF0aW9uIiwicGF0aFJ1bGUiLCJwYXRoSWdub3JlZCIsIk9iamVjdCIsImFzc2lnbiIsImV4ZWN1dGVPcGVyYXRpb25zIiwiY29tcGxldGVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFrQmdCQTtlQUFBQTs7UUFUQUM7ZUFBQUE7OzsrREFQb0I7cUVBQ0M7eUVBQ1M7eUJBRVo7b0JBQ1M7Ozs7OztBQUVwQyxTQUFTQSw4QkFBOEJDLFFBQVEsRUFBRUMsT0FBTyxFQUFFQyxRQUFRO0lBQ3ZFRixXQUFXRyxJQUFBQSxnQ0FBMEIsRUFBQ0gsVUFBVUMsVUFBVSxHQUFHO0lBRTdELElBQU1HLE9BQU9KLFVBQ1BLLFlBQVk7SUFFbEJDLDBCQUEwQkYsTUFBTUMsV0FBV0osU0FBU0M7QUFDdEQ7QUFFTyxTQUFTSixtQ0FBbUNTLGFBQWEsRUFBRU4sT0FBTyxFQUFFQyxRQUFRO0lBQ2pGSyxnQkFBZ0JKLElBQUFBLGdDQUEwQixFQUFDSSxlQUFlTixVQUFXLEdBQUc7SUFFeEUsSUFBTUcsT0FBT0csZUFDUEYsWUFBWTtJQUVsQkMsMEJBQTBCRixNQUFNQyxXQUFXSixTQUFTQztBQUN0RDtBQUVBLFNBQVNJLDBCQUEwQkYsSUFBSSxFQUFFQyxTQUFTLEVBQUVKLE9BQU8sRUFBRUMsUUFBUTtJQUNuRSxJQUFNTSxhQUFhO1FBQ1hDLDJCQUFpQztRQUNqQ0MsaUJBQXVCO1FBQ3ZCQyx1QkFBd0I7S0FDekIsRUFDREMsV0FBVyxNQUNYQyxjQUFjO0lBRXBCQyxPQUFPQyxNQUFNLENBQUNkLFNBQVM7UUFDckJHLE1BQUFBO1FBQ0FDLFdBQUFBO1FBQ0FPLFVBQUFBO1FBQ0FDLGFBQUFBO0lBQ0Y7SUFFQUcsSUFBQUEsNEJBQWlCLEVBQUNSLFlBQVksU0FBQ1M7UUFDN0IsSUFBTSxBQUFFSixjQUFnQlosUUFBaEJZO1FBRVIsT0FBT1osUUFBUUcsSUFBSTtRQUNuQixPQUFPSCxRQUFRSSxTQUFTO1FBQ3hCLE9BQU9KLFFBQVFXLFFBQVE7UUFDdkIsT0FBT1gsUUFBUVksV0FBVztRQUUxQlgsU0FBU1c7SUFDWCxHQUFHWjtBQUNMIn0=
@@ -0,0 +1,83 @@
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 synchronousIsDirectoryPathIgnored () {
13
+ return synchronousIsDirectoryPathIgnored;
14
+ },
15
+ get synchronousIsFilePathIgnored () {
16
+ return synchronousIsFilePathIgnored;
17
+ }
18
+ });
19
+ var _constants = require("../constants");
20
+ var _string = require("../utilities/string");
21
+ var _path = require("../utilities/path");
22
+ function synchronousIsFilePathIgnored(filePath, context) {
23
+ var filePathIgnored = null;
24
+ filePath = (0, _path.stripRootDirectoryFromPath)(filePath, context); ///
25
+ var ignoredFilePathRules = context.ignoredFilePathRules, permittedFilePathRules = context.permittedFilePathRules, string = filePath; ///
26
+ ignoredFilePathRules.some(function(ignoredFilePathRule) {
27
+ var matches = ignoredFilePathRule.match(string);
28
+ if (matches) {
29
+ var rule = ignoredFilePathRule, ruleString = rule.asString();
30
+ Object.assign(context, {
31
+ ruleString: ruleString
32
+ });
33
+ filePathIgnored = true;
34
+ return true;
35
+ }
36
+ });
37
+ permittedFilePathRules.some(function(permittedFilePathRule) {
38
+ var matches = permittedFilePathRule.match(string);
39
+ if (matches) {
40
+ var rule = permittedFilePathRule, ruleString = rule.asString();
41
+ Object.assign(context, {
42
+ ruleString: ruleString
43
+ });
44
+ filePathIgnored = false;
45
+ return true;
46
+ }
47
+ });
48
+ return filePathIgnored;
49
+ }
50
+ function synchronousIsDirectoryPathIgnored(directoryPath, context) {
51
+ var directoryPathIgnored = null;
52
+ directoryPath = (0, _path.stripRootDirectoryFromPath)(directoryPath, context); ///
53
+ if (directoryPath === _constants.EMPTY_STRING) {
54
+ directoryPathIgnored = false;
55
+ } else {
56
+ var ignoredDirectoryPathRules = context.ignoredDirectoryPathRules, permittedDirectoryPathRules = context.permittedDirectoryPathRules, string = (0, _string.addTrailingForwardSlash)(directoryPath); ///
57
+ ignoredDirectoryPathRules.some(function(ignoredDirectoryPathRule) {
58
+ var matches = ignoredDirectoryPathRule.match(string);
59
+ if (matches) {
60
+ var rule = ignoredDirectoryPathRule, ruleString = rule.asString();
61
+ Object.assign(context, {
62
+ ruleString: ruleString
63
+ });
64
+ directoryPathIgnored = true;
65
+ return true;
66
+ }
67
+ });
68
+ permittedDirectoryPathRules.some(function(permittedDirectoryPathRule) {
69
+ var matches = permittedDirectoryPathRule.match(string);
70
+ if (matches) {
71
+ var rule = permittedDirectoryPathRule, ruleString = rule.asString();
72
+ Object.assign(context, {
73
+ ruleString: ruleString
74
+ });
75
+ directoryPathIgnored = false;
76
+ return true;
77
+ }
78
+ });
79
+ }
80
+ return directoryPathIgnored;
81
+ }
82
+
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pc0lnbm9yZWQvc3luY2hyb25vdXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGFkZFRyYWlsaW5nRm9yd2FyZFNsYXNoIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IHN0cmlwUm9vdERpcmVjdG9yeUZyb21QYXRoIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9wYXRoXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBzeW5jaHJvbm91c0lzRmlsZVBhdGhJZ25vcmVkKGZpbGVQYXRoLCBjb250ZXh0KSB7XG4gIGxldCBmaWxlUGF0aElnbm9yZWQgPSBudWxsO1xuXG4gIGZpbGVQYXRoID0gc3RyaXBSb290RGlyZWN0b3J5RnJvbVBhdGgoZmlsZVBhdGgsIGNvbnRleHQpOyAgLy8vXG5cbiAgY29uc3QgeyBpZ25vcmVkRmlsZVBhdGhSdWxlcywgcGVybWl0dGVkRmlsZVBhdGhSdWxlcyB9ID0gY29udGV4dCxcbiAgICAgICAgc3RyaW5nID0gZmlsZVBhdGg7ICAvLy9cblxuICBpZ25vcmVkRmlsZVBhdGhSdWxlcy5zb21lKChpZ25vcmVkRmlsZVBhdGhSdWxlKSA9PiB7XG4gICAgY29uc3QgbWF0Y2hlcyA9IGlnbm9yZWRGaWxlUGF0aFJ1bGUubWF0Y2goc3RyaW5nKTtcblxuICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICBjb25zdCBydWxlID0gaWdub3JlZEZpbGVQYXRoUnVsZSwgLy8vXG4gICAgICAgICAgICBydWxlU3RyaW5nID0gcnVsZS5hc1N0cmluZygpO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgcnVsZVN0cmluZ1xuICAgICAgfSk7XG5cbiAgICAgIGZpbGVQYXRoSWdub3JlZCA9IHRydWU7XG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcGVybWl0dGVkRmlsZVBhdGhSdWxlcy5zb21lKChwZXJtaXR0ZWRGaWxlUGF0aFJ1bGUpID0+IHtcbiAgICBjb25zdCBtYXRjaGVzID0gcGVybWl0dGVkRmlsZVBhdGhSdWxlLm1hdGNoKHN0cmluZyk7XG5cbiAgICBpZiAobWF0Y2hlcykge1xuICAgICAgY29uc3QgcnVsZSA9IHBlcm1pdHRlZEZpbGVQYXRoUnVsZSwgLy8vXG4gICAgICAgICAgICBydWxlU3RyaW5nID0gcnVsZS5hc1N0cmluZygpO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgcnVsZVN0cmluZ1xuICAgICAgfSk7XG5cbiAgICAgIGZpbGVQYXRoSWdub3JlZCA9IGZhbHNlO1xuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBmaWxlUGF0aElnbm9yZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzeW5jaHJvbm91c0lzRGlyZWN0b3J5UGF0aElnbm9yZWQoZGlyZWN0b3J5UGF0aCwgY29udGV4dCkge1xuICBsZXQgZGlyZWN0b3J5UGF0aElnbm9yZWQgPSBudWxsO1xuXG4gIGRpcmVjdG9yeVBhdGggPSBzdHJpcFJvb3REaXJlY3RvcnlGcm9tUGF0aChkaXJlY3RvcnlQYXRoLCBjb250ZXh0KTsgIC8vL1xuXG4gIGlmIChkaXJlY3RvcnlQYXRoID09PSBFTVBUWV9TVFJJTkcpIHtcbiAgICBkaXJlY3RvcnlQYXRoSWdub3JlZCA9IGZhbHNlO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHsgaWdub3JlZERpcmVjdG9yeVBhdGhSdWxlcywgcGVybWl0dGVkRGlyZWN0b3J5UGF0aFJ1bGVzIH0gPSBjb250ZXh0LFxuICAgICAgICAgIHN0cmluZyA9IGFkZFRyYWlsaW5nRm9yd2FyZFNsYXNoKGRpcmVjdG9yeVBhdGgpOyAgLy8vXG5cbiAgICBpZ25vcmVkRGlyZWN0b3J5UGF0aFJ1bGVzLnNvbWUoKGlnbm9yZWREaXJlY3RvcnlQYXRoUnVsZSkgPT4ge1xuICAgICAgY29uc3QgbWF0Y2hlcyA9IGlnbm9yZWREaXJlY3RvcnlQYXRoUnVsZS5tYXRjaChzdHJpbmcpO1xuXG4gICAgICBpZiAobWF0Y2hlcykge1xuICAgICAgICBjb25zdCBydWxlID0gaWdub3JlZERpcmVjdG9yeVBhdGhSdWxlLCAvLy9cbiAgICAgICAgICAgICAgcnVsZVN0cmluZyA9IHJ1bGUuYXNTdHJpbmcoKTtcblxuICAgICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgICBydWxlU3RyaW5nXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGRpcmVjdG9yeVBhdGhJZ25vcmVkID0gdHJ1ZTtcblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHBlcm1pdHRlZERpcmVjdG9yeVBhdGhSdWxlcy5zb21lKChwZXJtaXR0ZWREaXJlY3RvcnlQYXRoUnVsZSkgPT4ge1xuICAgICAgY29uc3QgbWF0Y2hlcyA9IHBlcm1pdHRlZERpcmVjdG9yeVBhdGhSdWxlLm1hdGNoKHN0cmluZyk7XG5cbiAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgIGNvbnN0IHJ1bGUgPSBwZXJtaXR0ZWREaXJlY3RvcnlQYXRoUnVsZSwgLy8vXG4gICAgICAgICAgICAgIHJ1bGVTdHJpbmcgPSBydWxlLmFzU3RyaW5nKCk7XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbihjb250ZXh0LCB7XG4gICAgICAgICAgcnVsZVN0cmluZ1xuICAgICAgICB9KTtcblxuICAgICAgICBkaXJlY3RvcnlQYXRoSWdub3JlZCA9IGZhbHNlO1xuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGRpcmVjdG9yeVBhdGhJZ25vcmVkO1xufVxuIl0sIm5hbWVzIjpbInN5bmNocm9ub3VzSXNEaXJlY3RvcnlQYXRoSWdub3JlZCIsInN5bmNocm9ub3VzSXNGaWxlUGF0aElnbm9yZWQiLCJmaWxlUGF0aCIsImNvbnRleHQiLCJmaWxlUGF0aElnbm9yZWQiLCJzdHJpcFJvb3REaXJlY3RvcnlGcm9tUGF0aCIsImlnbm9yZWRGaWxlUGF0aFJ1bGVzIiwicGVybWl0dGVkRmlsZVBhdGhSdWxlcyIsInN0cmluZyIsInNvbWUiLCJpZ25vcmVkRmlsZVBhdGhSdWxlIiwibWF0Y2hlcyIsIm1hdGNoIiwicnVsZSIsInJ1bGVTdHJpbmciLCJhc1N0cmluZyIsIk9iamVjdCIsImFzc2lnbiIsInBlcm1pdHRlZEZpbGVQYXRoUnVsZSIsImRpcmVjdG9yeVBhdGgiLCJkaXJlY3RvcnlQYXRoSWdub3JlZCIsIkVNUFRZX1NUUklORyIsImlnbm9yZWREaXJlY3RvcnlQYXRoUnVsZXMiLCJwZXJtaXR0ZWREaXJlY3RvcnlQYXRoUnVsZXMiLCJhZGRUcmFpbGluZ0ZvcndhcmRTbGFzaCIsImlnbm9yZWREaXJlY3RvcnlQYXRoUnVsZSIsInBlcm1pdHRlZERpcmVjdG9yeVBhdGhSdWxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFtRGdCQTtlQUFBQTs7UUE3Q0FDO2VBQUFBOzs7eUJBSmE7c0JBQ1c7b0JBQ0c7QUFFcEMsU0FBU0EsNkJBQTZCQyxRQUFRLEVBQUVDLE9BQU87SUFDNUQsSUFBSUMsa0JBQWtCO0lBRXRCRixXQUFXRyxJQUFBQSxnQ0FBMEIsRUFBQ0gsVUFBVUMsVUFBVyxHQUFHO0lBRTlELElBQVFHLHVCQUFpREgsUUFBakRHLHNCQUFzQkMseUJBQTJCSixRQUEzQkksd0JBQ3hCQyxTQUFTTixVQUFXLEdBQUc7SUFFN0JJLHFCQUFxQkcsSUFBSSxDQUFDLFNBQUNDO1FBQ3pCLElBQU1DLFVBQVVELG9CQUFvQkUsS0FBSyxDQUFDSjtRQUUxQyxJQUFJRyxTQUFTO1lBQ1gsSUFBTUUsT0FBT0gscUJBQ1BJLGFBQWFELEtBQUtFLFFBQVE7WUFFaENDLE9BQU9DLE1BQU0sQ0FBQ2QsU0FBUztnQkFDckJXLFlBQUFBO1lBQ0Y7WUFFQVYsa0JBQWtCO1lBRWxCLE9BQU87UUFDVDtJQUNGO0lBRUFHLHVCQUF1QkUsSUFBSSxDQUFDLFNBQUNTO1FBQzNCLElBQU1QLFVBQVVPLHNCQUFzQk4sS0FBSyxDQUFDSjtRQUU1QyxJQUFJRyxTQUFTO1lBQ1gsSUFBTUUsT0FBT0ssdUJBQ1BKLGFBQWFELEtBQUtFLFFBQVE7WUFFaENDLE9BQU9DLE1BQU0sQ0FBQ2QsU0FBUztnQkFDckJXLFlBQUFBO1lBQ0Y7WUFFQVYsa0JBQWtCO1lBRWxCLE9BQU87UUFDVDtJQUNGO0lBRUEsT0FBT0E7QUFDVDtBQUVPLFNBQVNKLGtDQUFrQ21CLGFBQWEsRUFBRWhCLE9BQU87SUFDdEUsSUFBSWlCLHVCQUF1QjtJQUUzQkQsZ0JBQWdCZCxJQUFBQSxnQ0FBMEIsRUFBQ2MsZUFBZWhCLFVBQVcsR0FBRztJQUV4RSxJQUFJZ0Isa0JBQWtCRSx1QkFBWSxFQUFFO1FBQ2xDRCx1QkFBdUI7SUFDekIsT0FBTztRQUNMLElBQVFFLDRCQUEyRG5CLFFBQTNEbUIsMkJBQTJCQyw4QkFBZ0NwQixRQUFoQ29CLDZCQUM3QmYsU0FBU2dCLElBQUFBLCtCQUF1QixFQUFDTCxnQkFBaUIsR0FBRztRQUUzREcsMEJBQTBCYixJQUFJLENBQUMsU0FBQ2dCO1lBQzlCLElBQU1kLFVBQVVjLHlCQUF5QmIsS0FBSyxDQUFDSjtZQUUvQyxJQUFJRyxTQUFTO2dCQUNYLElBQU1FLE9BQU9ZLDBCQUNQWCxhQUFhRCxLQUFLRSxRQUFRO2dCQUVoQ0MsT0FBT0MsTUFBTSxDQUFDZCxTQUFTO29CQUNyQlcsWUFBQUE7Z0JBQ0Y7Z0JBRUFNLHVCQUF1QjtnQkFFdkIsT0FBTztZQUNUO1FBQ0Y7UUFFQUcsNEJBQTRCZCxJQUFJLENBQUMsU0FBQ2lCO1lBQ2hDLElBQU1mLFVBQVVlLDJCQUEyQmQsS0FBSyxDQUFDSjtZQUVqRCxJQUFJRyxTQUFTO2dCQUNYLElBQU1FLE9BQU9hLDRCQUNQWixhQUFhRCxLQUFLRSxRQUFRO2dCQUVoQ0MsT0FBT0MsTUFBTSxDQUFDZCxTQUFTO29CQUNyQlcsWUFBQUE7Z0JBQ0Y7Z0JBRUFNLHVCQUF1QjtnQkFFdkIsT0FBTztZQUNUO1FBQ0Y7SUFDRjtJQUVBLE9BQU9BO0FBQ1QifQ==
package/lib/line.js ADDED
@@ -0,0 +1,196 @@
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 Line;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var _log = require("./utilities/log");
13
+ var _constants = require("./constants");
14
+ function _class_call_check(instance, Constructor) {
15
+ if (!(instance instanceof Constructor)) {
16
+ throw new TypeError("Cannot call a class as a function");
17
+ }
18
+ }
19
+ function _defineProperties(target, props) {
20
+ for(var i = 0; i < props.length; i++){
21
+ var descriptor = props[i];
22
+ descriptor.enumerable = descriptor.enumerable || false;
23
+ descriptor.configurable = true;
24
+ if ("value" in descriptor) descriptor.writable = true;
25
+ Object.defineProperty(target, descriptor.key, descriptor);
26
+ }
27
+ }
28
+ function _create_class(Constructor, protoProps, staticProps) {
29
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
30
+ if (staticProps) _defineProperties(Constructor, staticProps);
31
+ return Constructor;
32
+ }
33
+ var backwardsForEach = _necessary.arrayUtilities.backwardsForEach;
34
+ var Line = /*#__PURE__*/ function() {
35
+ function Line(index, content, filePath, occurrences) {
36
+ _class_call_check(this, Line);
37
+ this.index = index;
38
+ this.content = content;
39
+ this.filePath = filePath;
40
+ this.occurences = occurrences;
41
+ }
42
+ _create_class(Line, [
43
+ {
44
+ key: "getIndex",
45
+ value: function getIndex() {
46
+ return this.index;
47
+ }
48
+ },
49
+ {
50
+ key: "getContent",
51
+ value: function getContent() {
52
+ return this.content;
53
+ }
54
+ },
55
+ {
56
+ key: "getFilePath",
57
+ value: function getFilePath() {
58
+ return this.filePath;
59
+ }
60
+ },
61
+ {
62
+ key: "getOccurrences",
63
+ value: function getOccurrences() {
64
+ return this.occurences;
65
+ }
66
+ },
67
+ {
68
+ key: "setIndex",
69
+ value: function setIndex(index) {
70
+ this.index = index;
71
+ }
72
+ },
73
+ {
74
+ key: "setContent",
75
+ value: function setContent(content) {
76
+ this.content = content;
77
+ }
78
+ },
79
+ {
80
+ key: "setFilePath",
81
+ value: function setFilePath(filePath) {
82
+ this.filePath = filePath;
83
+ }
84
+ },
85
+ {
86
+ key: "setOccurrences",
87
+ value: function setOccurrences(occurrences) {
88
+ this.occurrences = occurrences;
89
+ }
90
+ },
91
+ {
92
+ key: "getIndexLength",
93
+ value: function getIndexLength() {
94
+ var indexLength = this.index.length;
95
+ return indexLength;
96
+ }
97
+ },
98
+ {
99
+ key: "getFilePathLength",
100
+ value: function getFilePathLength() {
101
+ var filePathLength = this.filePath.length;
102
+ return filePathLength;
103
+ }
104
+ },
105
+ {
106
+ key: "addOccurrences",
107
+ value: function addOccurrences(occurrences) {}
108
+ },
109
+ {
110
+ key: "getFormattedIndex",
111
+ value: function getFormattedIndex(requiredIndexLength) {
112
+ var index;
113
+ var indexLength = this.getIndexLength(), paddingLength = requiredIndexLength - indexLength, padding = paddingFromPaddingLength(paddingLength);
114
+ index = "".concat(padding).concat(this.index);
115
+ var formattedIndex = (0, _log.yellow)(index);
116
+ return formattedIndex;
117
+ }
118
+ },
119
+ {
120
+ key: "getFormattedContent",
121
+ value: function getFormattedContent() {
122
+ var gaps = [], matches = [];
123
+ var end, start, string = this.content; ///
124
+ backwardsForEach(this.occurrences, function(occurrence) {
125
+ end = occurrence.getEnd();
126
+ start = end; ///
127
+ end = Infinity;
128
+ var gap = string.substring(start, end);
129
+ gaps.unshift(gap);
130
+ end = occurrence.getEnd();
131
+ start = 0;
132
+ string = string.substring(start, end);
133
+ start = occurrence.getStart();
134
+ end = Infinity;
135
+ var match = string.substring(start, end);
136
+ matches.unshift(match);
137
+ end = start; ///
138
+ start = 0;
139
+ string = string.substring(start, end); ///
140
+ });
141
+ var gap = string; ///
142
+ gap = (0, _log.grey)(gap); ///
143
+ string = gap; ///
144
+ gaps.forEach(function(gap, index) {
145
+ var match = matches[index];
146
+ gap = (0, _log.grey)(gap); ///
147
+ match = (0, _log.blue)(match); ///
148
+ string = "".concat(string).concat(match).concat(gap);
149
+ });
150
+ var formattedContent = string; ///
151
+ return formattedContent;
152
+ }
153
+ },
154
+ {
155
+ key: "getFormattedFilePath",
156
+ value: function getFormattedFilePath(requiredFilePathLength) {
157
+ var filePathLength = this.getFilePathLength(), paddingLength = requiredFilePathLength - filePathLength, padding = paddingFromPaddingLength(paddingLength), formattedFilePath = "".concat(this.filePath).concat(padding);
158
+ return formattedFilePath;
159
+ }
160
+ },
161
+ {
162
+ key: "asMessage",
163
+ value: function asMessage() {
164
+ var message = "".concat(this.filePath, " ").concat(this.index, " | ").concat(this.content);
165
+ return message;
166
+ }
167
+ },
168
+ {
169
+ key: "asFormattedMessage",
170
+ value: function asFormattedMessage(requiredIndexLength, requiredFilePathLength) {
171
+ var formattedIndex = this.getFormattedIndex(requiredIndexLength), formattedContent = this.getFormattedContent(), formattedFilePath = this.getFormattedFilePath(requiredFilePathLength), message = "".concat(formattedFilePath, " ").concat(formattedIndex, " | ").concat(formattedContent);
172
+ return message;
173
+ }
174
+ }
175
+ ], [
176
+ {
177
+ key: "fromIndexContentAndFilePath",
178
+ value: function fromIndexContentAndFilePath(index, content, filePath) {
179
+ index = "".concat(index); ///
180
+ content = content.replace(/(\r\n|\r|\n)$/, _constants.EMPTY_STRING); ///
181
+ var occurrences = [], line = new Line(index, content, filePath, occurrences);
182
+ return line;
183
+ }
184
+ }
185
+ ]);
186
+ return Line;
187
+ }();
188
+ function paddingFromPaddingLength(paddingLength) {
189
+ var padding = _constants.EMPTY_STRING;
190
+ for(var count = 0; count < paddingLength; count++){
191
+ padding += _constants.SINGLE_SPACE;
192
+ }
193
+ return padding;
194
+ }
195
+
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9saW5lLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IHsgZ3JleSwgYmx1ZSwgeWVsbG93IH0gZnJvbSBcIi4vdXRpbGl0aWVzL2xvZ1wiO1xuaW1wb3J0IHsgRU1QVFlfU1RSSU5HLCBTSU5HTEVfU1BBQ0UgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuY29uc3QgeyBiYWNrd2FyZHNGb3JFYWNoIH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGluZSB7XG4gIGNvbnN0cnVjdG9yKGluZGV4LCBjb250ZW50LCBmaWxlUGF0aCwgb2NjdXJyZW5jZXMpIHtcbiAgICB0aGlzLmluZGV4ID0gaW5kZXg7XG4gICAgdGhpcy5jb250ZW50ID0gY29udGVudDtcbiAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7XG4gICAgdGhpcy5vY2N1cmVuY2VzID0gb2NjdXJyZW5jZXM7XG4gIH1cblxuICBnZXRJbmRleCgpIHtcbiAgICByZXR1cm4gdGhpcy5pbmRleDtcbiAgfVxuXG4gIGdldENvbnRlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudDtcbiAgfVxuXG4gIGdldEZpbGVQYXRoKCkge1xuICAgIHJldHVybiB0aGlzLmZpbGVQYXRoO1xuICB9XG5cbiAgZ2V0T2NjdXJyZW5jZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMub2NjdXJlbmNlcztcbiAgfVxuXG4gIHNldEluZGV4KGluZGV4KSB7XG4gICAgdGhpcy5pbmRleCA9IGluZGV4O1xuICB9XG5cbiAgc2V0Q29udGVudChjb250ZW50KSB7XG4gICAgdGhpcy5jb250ZW50ID0gY29udGVudDtcbiAgfVxuXG4gIHNldEZpbGVQYXRoKGZpbGVQYXRoKSB7XG4gICAgdGhpcy5maWxlUGF0aCA9IGZpbGVQYXRoO1xuICB9XG5cbiAgc2V0T2NjdXJyZW5jZXMob2NjdXJyZW5jZXMpIHtcbiAgICB0aGlzLm9jY3VycmVuY2VzID0gb2NjdXJyZW5jZXM7XG4gIH1cblxuICBnZXRJbmRleExlbmd0aCgpIHtcbiAgICBjb25zdCBpbmRleExlbmd0aCA9IHRoaXMuaW5kZXgubGVuZ3RoO1xuXG4gICAgcmV0dXJuIGluZGV4TGVuZ3RoO1xuICB9XG5cbiAgZ2V0RmlsZVBhdGhMZW5ndGgoKSB7XG4gICAgY29uc3QgZmlsZVBhdGhMZW5ndGggPSB0aGlzLmZpbGVQYXRoLmxlbmd0aDtcblxuICAgIHJldHVybiBmaWxlUGF0aExlbmd0aDtcbiAgfVxuXG4gIGFkZE9jY3VycmVuY2VzKG9jY3VycmVuY2VzKSB7XG5cbiAgfVxuXG4gIGdldEZvcm1hdHRlZEluZGV4KHJlcXVpcmVkSW5kZXhMZW5ndGgpIHtcbiAgICBsZXQgaW5kZXg7XG5cbiAgICBjb25zdCBpbmRleExlbmd0aCA9IHRoaXMuZ2V0SW5kZXhMZW5ndGgoKSxcbiAgICAgICAgICBwYWRkaW5nTGVuZ3RoID0gcmVxdWlyZWRJbmRleExlbmd0aCAtIGluZGV4TGVuZ3RoLFxuICAgICAgICAgIHBhZGRpbmcgPSBwYWRkaW5nRnJvbVBhZGRpbmdMZW5ndGgocGFkZGluZ0xlbmd0aCk7XG5cbiAgICBpbmRleCA9IGAke3BhZGRpbmd9JHt0aGlzLmluZGV4fWA7XG5cbiAgICBjb25zdCBmb3JtYXR0ZWRJbmRleCA9IHllbGxvdyhpbmRleCk7XG5cbiAgICByZXR1cm4gZm9ybWF0dGVkSW5kZXg7XG4gIH1cblxuICBnZXRGb3JtYXR0ZWRDb250ZW50KCkge1xuICAgIGNvbnN0IGdhcHMgPSBbXSxcbiAgICAgICAgICBtYXRjaGVzID0gW107XG5cbiAgICBsZXQgZW5kLFxuICAgICAgICBzdGFydCxcbiAgICAgICAgc3RyaW5nID0gdGhpcy5jb250ZW50OyAgLy8vXG5cbiAgICBiYWNrd2FyZHNGb3JFYWNoKHRoaXMub2NjdXJyZW5jZXMsIChvY2N1cnJlbmNlKSA9PiB7XG4gICAgICBlbmQgPSBvY2N1cnJlbmNlLmdldEVuZCgpO1xuXG4gICAgICBzdGFydCA9IGVuZDsgIC8vL1xuXG4gICAgICBlbmQgPSBJbmZpbml0eTtcblxuICAgICAgY29uc3QgZ2FwID0gc3RyaW5nLnN1YnN0cmluZyhzdGFydCwgZW5kKTtcblxuICAgICAgZ2Fwcy51bnNoaWZ0KGdhcCk7XG5cbiAgICAgIGVuZCA9IG9jY3VycmVuY2UuZ2V0RW5kKCk7XG5cbiAgICAgIHN0YXJ0ID0gMDtcblxuICAgICAgc3RyaW5nID0gc3RyaW5nLnN1YnN0cmluZyhzdGFydCwgZW5kKTtcblxuICAgICAgc3RhcnQgPSBvY2N1cnJlbmNlLmdldFN0YXJ0KCk7XG5cbiAgICAgIGVuZCA9IEluZmluaXR5O1xuXG4gICAgICBjb25zdCBtYXRjaCA9IHN0cmluZy5zdWJzdHJpbmcoc3RhcnQsIGVuZCk7XG5cbiAgICAgIG1hdGNoZXMudW5zaGlmdChtYXRjaCk7XG5cbiAgICAgIGVuZCA9IHN0YXJ0OyAgLy8vXG5cbiAgICAgIHN0YXJ0ID0gMDtcblxuICAgICAgc3RyaW5nID0gc3RyaW5nLnN1YnN0cmluZyhzdGFydCwgZW5kKTsgIC8vL1xuICAgIH0pO1xuXG4gICAgbGV0IGdhcCA9IHN0cmluZzsgLy8vXG5cbiAgICBnYXAgPSBncmV5KGdhcCk7ICAvLy9cblxuICAgIHN0cmluZyA9IGdhcDsgLy8vXG5cbiAgICBnYXBzLmZvckVhY2goKGdhcCwgaW5kZXgpID0+IHtcbiAgICAgIGxldCBtYXRjaCA9IG1hdGNoZXNbaW5kZXhdO1xuXG4gICAgICBnYXAgPSBncmV5KGdhcCk7ICAvLy9cblxuICAgICAgbWF0Y2ggPSBibHVlKG1hdGNoKTsgIC8vL1xuXG4gICAgICBzdHJpbmcgPSBgJHtzdHJpbmd9JHttYXRjaH0ke2dhcH1gO1xuICAgIH0pO1xuXG4gICAgY29uc3QgZm9ybWF0dGVkQ29udGVudCA9IHN0cmluZzsgIC8vL1xuXG4gICAgcmV0dXJuIGZvcm1hdHRlZENvbnRlbnQ7XG4gIH1cblxuICBnZXRGb3JtYXR0ZWRGaWxlUGF0aChyZXF1aXJlZEZpbGVQYXRoTGVuZ3RoKSB7XG4gICAgY29uc3QgZmlsZVBhdGhMZW5ndGggPSB0aGlzLmdldEZpbGVQYXRoTGVuZ3RoKCksXG4gICAgICAgICAgcGFkZGluZ0xlbmd0aCA9IHJlcXVpcmVkRmlsZVBhdGhMZW5ndGggLSBmaWxlUGF0aExlbmd0aCxcbiAgICAgICAgICBwYWRkaW5nID0gcGFkZGluZ0Zyb21QYWRkaW5nTGVuZ3RoKHBhZGRpbmdMZW5ndGgpLFxuICAgICAgICAgIGZvcm1hdHRlZEZpbGVQYXRoID0gIGAke3RoaXMuZmlsZVBhdGh9JHtwYWRkaW5nfWA7XG5cbiAgICByZXR1cm4gZm9ybWF0dGVkRmlsZVBhdGg7XG4gIH1cblxuICBhc01lc3NhZ2UoKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IGAke3RoaXMuZmlsZVBhdGh9ICAke3RoaXMuaW5kZXh9IHwgJHt0aGlzLmNvbnRlbnR9YDtcblxuICAgIHJldHVybiBtZXNzYWdlO1xuICB9XG5cbiAgYXNGb3JtYXR0ZWRNZXNzYWdlKHJlcXVpcmVkSW5kZXhMZW5ndGgsIHJlcXVpcmVkRmlsZVBhdGhMZW5ndGgpIHtcbiAgICBjb25zdCBmb3JtYXR0ZWRJbmRleCA9IHRoaXMuZ2V0Rm9ybWF0dGVkSW5kZXgocmVxdWlyZWRJbmRleExlbmd0aCksXG4gICAgICAgICAgZm9ybWF0dGVkQ29udGVudCA9IHRoaXMuZ2V0Rm9ybWF0dGVkQ29udGVudCgpLFxuICAgICAgICAgIGZvcm1hdHRlZEZpbGVQYXRoID0gdGhpcy5nZXRGb3JtYXR0ZWRGaWxlUGF0aChyZXF1aXJlZEZpbGVQYXRoTGVuZ3RoKSxcbiAgICAgICAgICBtZXNzYWdlID0gYCR7Zm9ybWF0dGVkRmlsZVBhdGh9ICAke2Zvcm1hdHRlZEluZGV4fSB8ICR7Zm9ybWF0dGVkQ29udGVudH1gO1xuXG4gICAgcmV0dXJuIG1lc3NhZ2U7XG4gIH1cblxuICBzdGF0aWMgZnJvbUluZGV4Q29udGVudEFuZEZpbGVQYXRoKGluZGV4LCBjb250ZW50LCBmaWxlUGF0aCkge1xuICAgIGluZGV4ID0gYCR7aW5kZXh9YDsgLy8vXG5cbiAgICBjb250ZW50ID0gY29udGVudC5yZXBsYWNlKC8oXFxyXFxufFxccnxcXG4pJC8sIEVNUFRZX1NUUklORyk7IC8vL1xuXG4gICAgY29uc3Qgb2NjdXJyZW5jZXMgPSBbXSxcbiAgICAgICAgICBsaW5lID0gbmV3IExpbmUoaW5kZXgsIGNvbnRlbnQsIGZpbGVQYXRoLCBvY2N1cnJlbmNlcyk7XG5cbiAgICByZXR1cm4gbGluZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBwYWRkaW5nRnJvbVBhZGRpbmdMZW5ndGgocGFkZGluZ0xlbmd0aCkge1xuICBsZXQgcGFkZGluZyA9IEVNUFRZX1NUUklORztcblxuICBmb3IgKGxldCBjb3VudCA9IDA7IGNvdW50IDwgcGFkZGluZ0xlbmd0aDsgY291bnQrKykge1xuICAgIHBhZGRpbmcgKz0gU0lOR0xFX1NQQUNFO1xuICB9XG5cbiAgcmV0dXJuIHBhZGRpbmc7XG59XG4iXSwibmFtZXMiOlsiTGluZSIsImJhY2t3YXJkc0ZvckVhY2giLCJhcnJheVV0aWxpdGllcyIsImluZGV4IiwiY29udGVudCIsImZpbGVQYXRoIiwib2NjdXJyZW5jZXMiLCJvY2N1cmVuY2VzIiwiZ2V0SW5kZXgiLCJnZXRDb250ZW50IiwiZ2V0RmlsZVBhdGgiLCJnZXRPY2N1cnJlbmNlcyIsInNldEluZGV4Iiwic2V0Q29udGVudCIsInNldEZpbGVQYXRoIiwic2V0T2NjdXJyZW5jZXMiLCJnZXRJbmRleExlbmd0aCIsImluZGV4TGVuZ3RoIiwibGVuZ3RoIiwiZ2V0RmlsZVBhdGhMZW5ndGgiLCJmaWxlUGF0aExlbmd0aCIsImFkZE9jY3VycmVuY2VzIiwiZ2V0Rm9ybWF0dGVkSW5kZXgiLCJyZXF1aXJlZEluZGV4TGVuZ3RoIiwicGFkZGluZ0xlbmd0aCIsInBhZGRpbmciLCJwYWRkaW5nRnJvbVBhZGRpbmdMZW5ndGgiLCJmb3JtYXR0ZWRJbmRleCIsInllbGxvdyIsImdldEZvcm1hdHRlZENvbnRlbnQiLCJnYXBzIiwibWF0Y2hlcyIsImVuZCIsInN0YXJ0Iiwic3RyaW5nIiwib2NjdXJyZW5jZSIsImdldEVuZCIsIkluZmluaXR5IiwiZ2FwIiwic3Vic3RyaW5nIiwidW5zaGlmdCIsImdldFN0YXJ0IiwibWF0Y2giLCJncmV5IiwiZm9yRWFjaCIsImJsdWUiLCJmb3JtYXR0ZWRDb250ZW50IiwiZ2V0Rm9ybWF0dGVkRmlsZVBhdGgiLCJyZXF1aXJlZEZpbGVQYXRoTGVuZ3RoIiwiZm9ybWF0dGVkRmlsZVBhdGgiLCJhc01lc3NhZ2UiLCJtZXNzYWdlIiwiYXNGb3JtYXR0ZWRNZXNzYWdlIiwiZnJvbUluZGV4Q29udGVudEFuZEZpbGVQYXRoIiwicmVwbGFjZSIsIkVNUFRZX1NUUklORyIsImxpbmUiLCJjb3VudCIsIlNJTkdMRV9TUEFDRSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFTcUJBOzs7eUJBUFU7bUJBRUk7eUJBQ1E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTNDLElBQU0sQUFBRUMsbUJBQXFCQyx5QkFBYyxDQUFuQ0Q7QUFFTyxJQUFBLEFBQU1ELHFCQUFOO2FBQU1BLEtBQ1BHLEtBQUssRUFBRUMsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLFdBQVc7Z0NBRDlCTjtRQUVqQixJQUFJLENBQUNHLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDRSxVQUFVLEdBQUdEOztrQkFMRE47O1lBUW5CUSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNMLEtBQUs7WUFDbkI7OztZQUVBTSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNMLE9BQU87WUFDckI7OztZQUVBTSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNMLFFBQVE7WUFDdEI7OztZQUVBTSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNKLFVBQVU7WUFDeEI7OztZQUVB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
package/lib/main.js ADDED
@@ -0,0 +1,89 @@
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 main;
9
+ }
10
+ });
11
+ var _find = /*#__PURE__*/ _interop_require_default(require("./action/find"));
12
+ var _help = /*#__PURE__*/ _interop_require_default(require("./action/help"));
13
+ var _version = /*#__PURE__*/ _interop_require_default(require("./action/version"));
14
+ var _initialise = /*#__PURE__*/ _interop_require_default(require("./action/initialise"));
15
+ var _addRootDirectoryPath = /*#__PURE__*/ _interop_require_default(require("./action/addRootDirectoryPath"));
16
+ var _listRootDirectoryPaths = /*#__PURE__*/ _interop_require_default(require("./action/listRootDirectoryPaths"));
17
+ var _removeRootDirectoryPath = /*#__PURE__*/ _interop_require_default(require("./action/removeRootDirectoryPath"));
18
+ var _messages = require("./messages");
19
+ var _defaults = require("./defaults");
20
+ var _commands = require("./commands");
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
26
+ function main(command, argument, options) {
27
+ var _options_format = options.format, format = _options_format === void 0 ? _defaults.DEFAULT_FORMAT : _options_format, _options_dryRun = options.dryRun, dryRun = _options_dryRun === void 0 ? _defaults.DEFAULT_DRY_RUN : _options_dryRun, _options_quietly = options.quietly, quietly = _options_quietly === void 0 ? _defaults.DEFAULT_QUIETLY : _options_quietly, _options_previous = options.previous, previous = _options_previous === void 0 ? _defaults.DEFAULT_PREVIOUS : _options_previous, _options_interactive = options.interactive, interactive = _options_interactive === void 0 ? _defaults.DEFAULT_INTERACTIVE : _options_interactive;
28
+ var _options_regex = options.regex, regex = _options_regex === void 0 ? _defaults.DEFAULT_REGEX : _options_regex, _options_string = options.string, string = _options_string === void 0 ? _defaults.DEFAULT_STRING : _options_string;
29
+ switch(command){
30
+ case _commands.HELP_COMMAND:
31
+ {
32
+ (0, _help.default)();
33
+ break;
34
+ }
35
+ case _commands.VERSION_COMMAND:
36
+ {
37
+ (0, _version.default)();
38
+ break;
39
+ }
40
+ case _commands.INITIALISE_COMMAND:
41
+ {
42
+ (0, _initialise.default)();
43
+ break;
44
+ }
45
+ case _commands.ADD_ROOT_DIRECTORY_PATH_COMMAND:
46
+ {
47
+ var rootDirectoryPath = argument; ///
48
+ (0, _addRootDirectoryPath.default)(rootDirectoryPath);
49
+ break;
50
+ }
51
+ case _commands.LIST_ROOT_DIRECTORY_PATHS_COMMAND:
52
+ {
53
+ (0, _listRootDirectoryPaths.default)();
54
+ break;
55
+ }
56
+ case _commands.REMOVE_ROOT_DIRECTORY_PATH_COMMAND:
57
+ {
58
+ var rootDirectoryPath1 = argument; ///
59
+ (0, _removeRootDirectoryPath.default)(rootDirectoryPath1);
60
+ break;
61
+ }
62
+ case _commands.FIND_COMMAND:
63
+ {
64
+ if (argument === null) {
65
+ if (!dryRun && !previous && !interactive) {
66
+ console.log(_messages.NO_ARGUMENT_GIVEN_MESSAGE);
67
+ break;
68
+ }
69
+ }
70
+ if (false) {
71
+ ///
72
+ } else if (string) {
73
+ argument = '"'.concat(argument, '"');
74
+ } else if (regex) {
75
+ argument = "/".concat(argument, "/");
76
+ }
77
+ string = argument; ///
78
+ (0, _find.default)(string, dryRun, format, quietly, previous, interactive);
79
+ break;
80
+ }
81
+ default:
82
+ {
83
+ console.log(_messages.COMMAND_NOT_RECOGNISED_MESSAGE);
84
+ break;
85
+ }
86
+ }
87
+ }
88
+
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZmluZEFjdGlvbiBmcm9tIFwiLi9hY3Rpb24vZmluZFwiO1xuaW1wb3J0IGhlbHBBY3Rpb24gZnJvbSBcIi4vYWN0aW9uL2hlbHBcIjtcbmltcG9ydCB2ZXJzaW9uQWN0aW9uIGZyb20gXCIuL2FjdGlvbi92ZXJzaW9uXCI7XG5pbXBvcnQgaW5pdGlhbGlzZUFjdGlvbiBmcm9tIFwiLi9hY3Rpb24vaW5pdGlhbGlzZVwiO1xuaW1wb3J0IGFkZFJvb3REaXJlY3RvcnlQYXRoQWN0aW9uIGZyb20gXCIuL2FjdGlvbi9hZGRSb290RGlyZWN0b3J5UGF0aFwiO1xuaW1wb3J0IGxpc3RSb290RGlyZWN0b3J5UGF0aHNBY3Rpb24gZnJvbSBcIi4vYWN0aW9uL2xpc3RSb290RGlyZWN0b3J5UGF0aHNcIjtcbmltcG9ydCByZW1vdmVSb290RGlyZWN0b3J5UGF0aEFjdGlvbiBmcm9tIFwiLi9hY3Rpb24vcmVtb3ZlUm9vdERpcmVjdG9yeVBhdGhcIjtcblxuaW1wb3J0IHsgTk9fQVJHVU1FTlRfR0lWRU5fTUVTU0FHRSwgQ09NTUFORF9OT1RfUkVDT0dOSVNFRF9NRVNTQUdFIH0gZnJvbSBcIi4vbWVzc2FnZXNcIjtcbmltcG9ydCB7IERFRkFVTFRfUkVHRVgsIERFRkFVTFRfU1RSSU5HLCBERUZBVUxUX0ZPUk1BVCwgREVGQVVMVF9EUllfUlVOLCBERUZBVUxUX1FVSUVUTFksIERFRkFVTFRfUFJFVklPVVMsIERFRkFVTFRfSU5URVJBQ1RJVkUgfSBmcm9tIFwiLi9kZWZhdWx0c1wiO1xuaW1wb3J0IHsgRklORF9DT01NQU5ELFxuICAgICAgICAgSEVMUF9DT01NQU5ELFxuICAgICAgICAgVkVSU0lPTl9DT01NQU5ELFxuICAgICAgICAgSU5JVElBTElTRV9DT01NQU5ELFxuICAgICAgICAgQUREX1JPT1RfRElSRUNUT1JZX1BBVEhfQ09NTUFORCxcbiAgICAgICAgIExJU1RfUk9PVF9ESVJFQ1RPUllfUEFUSFNfQ09NTUFORCxcbiAgICAgICAgIFJFTU9WRV9ST09UX0RJUkVDVE9SWV9QQVRIX0NPTU1BTkQgfSBmcm9tIFwiLi9jb21tYW5kc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWluKGNvbW1hbmQsIGFyZ3VtZW50LCBvcHRpb25zKSB7XG4gIGNvbnN0IHsgZm9ybWF0ID0gREVGQVVMVF9GT1JNQVQsIGRyeVJ1biA9IERFRkFVTFRfRFJZX1JVTiwgcXVpZXRseSA9IERFRkFVTFRfUVVJRVRMWSwgcHJldmlvdXMgPSBERUZBVUxUX1BSRVZJT1VTLCBpbnRlcmFjdGl2ZSA9IERFRkFVTFRfSU5URVJBQ1RJVkUgfSA9IG9wdGlvbnM7XG5cbiAgbGV0IHsgcmVnZXggPSBERUZBVUxUX1JFR0VYLCBzdHJpbmcgPSBERUZBVUxUX1NUUklORyB9ID0gb3B0aW9ucztcblxuICBzd2l0Y2ggKGNvbW1hbmQpIHtcbiAgICBjYXNlIEhFTFBfQ09NTUFORDoge1xuICAgICAgaGVscEFjdGlvbigpO1xuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjYXNlIFZFUlNJT05fQ09NTUFORDoge1xuICAgICAgdmVyc2lvbkFjdGlvbigpO1xuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjYXNlIElOSVRJQUxJU0VfQ09NTUFORDoge1xuICAgICAgaW5pdGlhbGlzZUFjdGlvbigpO1xuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjYXNlIEFERF9ST09UX0RJUkVDVE9SWV9QQVRIX0NPTU1BTkQ6IHtcbiAgICAgIGNvbnN0IHJvb3REaXJlY3RvcnlQYXRoID0gYXJndW1lbnQ7IC8vL1xuXG4gICAgICBhZGRSb290RGlyZWN0b3J5UGF0aEFjdGlvbihyb290RGlyZWN0b3J5UGF0aCk7XG5cbiAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGNhc2UgTElTVF9ST09UX0RJUkVDVE9SWV9QQVRIU19DT01NQU5EOiB7XG4gICAgICBsaXN0Um9vdERpcmVjdG9yeVBhdGhzQWN0aW9uKCk7XG5cbiAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGNhc2UgUkVNT1ZFX1JPT1RfRElSRUNUT1JZX1BBVEhfQ09NTUFORDoge1xuICAgICAgY29uc3Qgcm9vdERpcmVjdG9yeVBhdGggPSBhcmd1bWVudDsgLy8vXG5cbiAgICAgIHJlbW92ZVJvb3REaXJlY3RvcnlQYXRoQWN0aW9uKHJvb3REaXJlY3RvcnlQYXRoKTtcblxuICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgY2FzZSBGSU5EX0NPTU1BTkQ6IHtcbiAgICAgIGlmIChhcmd1bWVudCA9PT0gbnVsbCkge1xuICAgICAgICBpZiAoIWRyeVJ1biAmJiAhcHJldmlvdXMgJiYgIWludGVyYWN0aXZlKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coTk9fQVJHVU1FTlRfR0lWRU5fTUVTU0FHRSk7XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZmFsc2UpIHtcbiAgICAgICAgLy8vXG4gICAgICB9IGVsc2UgaWYgKHN0cmluZykge1xuICAgICAgICBhcmd1bWVudCA9IGBcIiR7YXJndW1lbnR9XCJgO1xuICAgICAgfSBlbHNlIGlmIChyZWdleCkge1xuICAgICAgICBhcmd1bWVudCA9IGAvJHthcmd1bWVudH0vYDtcbiAgICAgIH1cblxuICAgICAgc3RyaW5nID0gYXJndW1lbnQ7ICAvLy9cblxuICAgICAgZmluZEFjdGlvbihzdHJpbmcsIGRyeVJ1biwgZm9ybWF0LCBxdWlldGx5LCBwcmV2aW91cywgaW50ZXJhY3RpdmUpO1xuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBkZWZhdWx0OiB7XG4gICAgICBjb25zb2xlLmxvZyhDT01NQU5EX05PVF9SRUNPR05JU0VEX01FU1NBR0UpO1xuXG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJtYWluIiwiY29tbWFuZCIsImFyZ3VtZW50Iiwib3B0aW9ucyIsImZvcm1hdCIsIkRFRkFVTFRfRk9STUFUIiwiZHJ5UnVuIiwiREVGQVVMVF9EUllfUlVOIiwicXVpZXRseSIsIkRFRkFVTFRfUVVJRVRMWSIsInByZXZpb3VzIiwiREVGQVVMVF9QUkVWSU9VUyIsImludGVyYWN0aXZlIiwiREVGQVVMVF9JTlRFUkFDVElWRSIsInJlZ2V4IiwiREVGQVVMVF9SRUdFWCIsInN0cmluZyIsIkRFRkFVTFRfU1RSSU5HIiwiSEVMUF9DT01NQU5EIiwiaGVscEFjdGlvbiIsIlZFUlNJT05fQ09NTUFORCIsInZlcnNpb25BY3Rpb24iLCJJTklUSUFMSVNFX0NPTU1BTkQiLCJpbml0aWFsaXNlQWN0aW9uIiwiQUREX1JPT1RfRElSRUNUT1JZX1BBVEhfQ09NTUFORCIsInJvb3REaXJlY3RvcnlQYXRoIiwiYWRkUm9vdERpcmVjdG9yeVBhdGhBY3Rpb24iLCJMSVNUX1JPT1RfRElSRUNUT1JZX1BBVEhTX0NPTU1BTkQiLCJsaXN0Um9vdERpcmVjdG9yeVBhdGhzQWN0aW9uIiwiUkVNT1ZFX1JPT1RfRElSRUNUT1JZX1BBVEhfQ09NTUFORCIsInJlbW92ZVJvb3REaXJlY3RvcnlQYXRoQWN0aW9uIiwiRklORF9DT01NQU5EIiwiY29uc29sZSIsImxvZyIsIk5PX0FSR1VNRU5UX0dJVkVOX01FU1NBR0UiLCJmaW5kQWN0aW9uIiwiQ09NTUFORF9OT1RfUkVDT0dOSVNFRF9NRVNTQUdFIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFvQkE7OztlQUF3QkE7OzsyREFsQkQ7MkRBQ0E7OERBQ0c7aUVBQ0c7MkVBQ1U7NkVBQ0U7OEVBQ0M7d0JBRWdDO3dCQUM2RDt3QkFPcEY7Ozs7OztBQUVwQyxTQUFTQSxLQUFLQyxPQUFPLEVBQUVDLFFBQVEsRUFBRUMsT0FBTztJQUNyRCxzQkFBeUpBLFFBQWpKQyxRQUFBQSxzQ0FBU0Msd0JBQWMsc0NBQTBIRixRQUF4SEcsUUFBQUEsc0NBQVNDLHlCQUFlLHVDQUFnR0osUUFBOUZLLFNBQUFBLHdDQUFVQyx5QkFBZSx5Q0FBcUVOLFFBQW5FTyxVQUFBQSwwQ0FBV0MsMEJBQWdCLDZDQUF3Q1IsUUFBdENTLGFBQUFBLGdEQUFjQyw2QkFBbUI7SUFFcEoscUJBQXlEVixRQUFuRFcsT0FBQUEsb0NBQVFDLHVCQUFhLHFDQUE4QlosUUFBNUJhLFFBQUFBLHNDQUFTQyx3QkFBYztJQUVwRCxPQUFRaEI7UUFDTixLQUFLaUIsc0JBQVk7WUFBRTtnQkFDakJDLElBQUFBLGFBQVU7Z0JBRVY7WUFDRjtRQUVBLEtBQUtDLHlCQUFlO1lBQUU7Z0JBQ3BCQyxJQUFBQSxnQkFBYTtnQkFFYjtZQUNGO1FBRUEsS0FBS0MsNEJBQWtCO1lBQUU7Z0JBQ3ZCQyxJQUFBQSxtQkFBZ0I7Z0JBRWhCO1lBQ0Y7UUFFQSxLQUFLQyx5Q0FBK0I7WUFBRTtnQkFDcEMsSUFBTUMsb0JBQW9CdkIsVUFBVSxHQUFHO2dCQUV2Q3dCLElBQUFBLDZCQUEwQixFQUFDRDtnQkFFM0I7WUFDRjtRQUVBLEtBQUtFLDJDQUFpQztZQUFFO2dCQUN0Q0MsSUFBQUEsK0JBQTRCO2dCQUU1QjtZQUNGO1FBRUEsS0FBS0MsNENBQWtDO1lBQUU7Z0JBQ3ZDLElBQU1KLHFCQUFvQnZCLFVBQVUsR0FBRztnQkFFdkM0QixJQUFBQSxnQ0FBNkIsRUFBQ0w7Z0JBRTlCO1lBQ0Y7UUFFQSxLQUFLTSxzQkFBWTtZQUFFO2dCQUNqQixJQUFJN0IsYUFBYSxNQUFNO29CQUNyQixJQUFJLENBQUNJLFVBQVUsQ0FBQ0ksWUFBWSxDQUFDRSxhQUFhO3dCQUN4Q29CLFFBQVFDLEdBQUcsQ0FBQ0MsbUNBQXlCO3dCQUVyQztvQkFDRjtnQkFDRjtnQkFFQSxJQUFJLE9BQU87Z0JBQ1QsR0FBRztnQkFDTCxPQUFPLElBQUlsQixRQUFRO29CQUNqQmQsV0FBVyxBQUFDLElBQVksT0FBVEEsVUFBUztnQkFDMUIsT0FBTyxJQUFJWSxPQUFPO29CQUNoQlosV0FBVyxBQUFDLElBQVksT0FBVEEsVUFBUztnQkFDMUI7Z0JBRUFjLFNBQVNkLFVBQVcsR0FBRztnQkFFdkJpQyxJQUFBQSxhQUFVLEVBQUNuQixRQUFRVixRQUFRRixRQUFRSSxTQUFTRSxVQUFVRTtnQkFFdEQ7WUFDRjtRQUVBO1lBQVM7Z0JBQ1BvQixRQUFRQyxHQUFHLENBQUNHLHdDQUE4QjtnQkFFMUM7WUFDRjtJQUNGO0FBQ0YifQ==