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.
- package/.swcrc +5 -0
- package/find.js +3 -3
- package/lib/abbreviations.js +26 -0
- package/lib/action/addRootDirectoryPath.js +38 -0
- package/lib/action/find.js +73 -0
- package/lib/action/help.js +15 -0
- package/lib/action/initialise.js +23 -0
- package/lib/action/listRootDirectoryPaths.js +27 -0
- package/lib/action/removeRootDirectoryPath.js +39 -0
- package/lib/action/version.js +19 -0
- package/lib/commands.js +42 -0
- package/lib/configuration/version_1_1.js +25 -0
- package/lib/configuration/version_1_2.js +42 -0
- package/lib/configuration/version_1_3.js +24 -0
- package/lib/configuration/version_1_4.js +29 -0
- package/lib/configuration/version_1_7.js +44 -0
- package/lib/configuration.js +216 -0
- package/lib/constants.js +58 -0
- package/lib/converter/alternates.js +135 -0
- package/lib/converter/characterClass.js +148 -0
- package/lib/converter/default.js +131 -0
- package/lib/converter/directory.js +131 -0
- package/lib/converter/escapedCharacter.js +131 -0
- package/lib/converter/period.js +131 -0
- package/lib/converter/questionMark.js +131 -0
- package/lib/converter/repeatedDirectories.js +131 -0
- package/lib/converter/repeatedWildcard.js +131 -0
- package/lib/converter/singleDirectory.js +131 -0
- package/lib/converter/singleWildcard.js +131 -0
- package/lib/converter.js +71 -0
- package/lib/converters.js +42 -0
- package/lib/defaults.js +50 -0
- package/lib/descriptions.js +30 -0
- package/lib/find.js +53 -0
- package/lib/isIgnored/asynchronous.js +61 -0
- package/lib/isIgnored/synchronous.js +83 -0
- package/lib/line.js +196 -0
- package/lib/main.js +89 -0
- package/lib/messages.js +74 -0
- package/lib/occurrence.js +69 -0
- package/lib/operation/addRootDirectoryPath.js +19 -0
- package/lib/operation/find.js +69 -0
- package/lib/operation/listRootDirectoryPaths.js +38 -0
- package/lib/operation/previousRule.js +34 -0
- package/lib/operation/prompt/addRootDirectoryPath.js +41 -0
- package/lib/operation/prompt/ignoreOrPermitPath.js +37 -0
- package/lib/operation/prompt/pathRule.js +41 -0
- package/lib/operation/prompt/previousRule.js +44 -0
- package/lib/operation/prompt/removeRootDirectoryPath.js +50 -0
- package/lib/operation/prompt/rule.js +60 -0
- package/lib/operation/removeRootDirectoryPath.js +28 -0
- package/lib/operation/removeRootDirectoryPathByIndex.js +35 -0
- package/lib/operation/rule.js +34 -0
- package/lib/operation/updatePatRules.js +40 -0
- package/lib/operation/validateRootDirectoryPath.js +30 -0
- package/lib/options.js +54 -0
- package/lib/prepare.js +37 -0
- package/lib/rule/glob.js +223 -0
- package/lib/rule/regex.js +171 -0
- package/lib/rule/string.js +154 -0
- package/lib/types.js +26 -0
- package/lib/utilities/find.js +140 -0
- package/lib/utilities/literal.js +33 -0
- package/lib/utilities/log.js +45 -0
- package/lib/utilities/operation.js +32 -0
- package/lib/utilities/path.js +53 -0
- package/lib/utilities/prompt.js +97 -0
- package/lib/utilities/rule.js +17 -0
- package/lib/utilities/string.js +69 -0
- package/lib/utilities/validate.js +58 -0
- package/lib/versions.js +38 -0
- package/package.json +21 -6
- package/{bin → src}/abbreviations.js +3 -1
- package/src/action/addRootDirectoryPath.js +29 -0
- package/{bin → src}/action/find.js +8 -10
- package/{bin → src}/action/help.js +1 -3
- package/{bin → src}/action/initialise.js +3 -5
- package/src/action/listRootDirectoryPaths.js +16 -0
- package/src/action/removeRootDirectoryPath.js +31 -0
- package/src/action/version.js +13 -0
- package/src/commands.js +9 -0
- package/{bin → src}/configuration/version_1_1.js +2 -6
- package/{bin → src}/configuration/version_1_2.js +3 -7
- package/src/configuration/version_1_3.js +18 -0
- package/{bin → src}/configuration/version_1_4.js +2 -6
- package/{bin → src}/configuration/version_1_7.js +4 -9
- package/{bin → src}/configuration.js +15 -15
- package/src/constants.js +13 -0
- package/{bin → src}/converter/alternates.js +3 -3
- package/{bin → src}/converter/characterClass.js +3 -3
- package/{bin → src}/converter/default.js +2 -2
- package/{bin → src}/converter/directory.js +2 -2
- package/{bin → src}/converter/escapedCharacter.js +2 -2
- package/{bin → src}/converter/period.js +2 -2
- package/{bin → src}/converter/questionMark.js +2 -2
- package/{bin → src}/converter/repeatedDirectories.js +2 -2
- package/{bin → src}/converter/repeatedWildcard.js +2 -2
- package/{bin → src}/converter/singleDirectory.js +2 -2
- package/{bin → src}/converter/singleWildcard.js +2 -2
- package/{bin → src}/converter.js +3 -5
- package/src/converters.js +29 -0
- package/src/defaults.js +11 -0
- package/src/descriptions.js +6 -0
- package/{bin → src}/find.js +3 -5
- package/{bin → src}/isIgnored/asynchronous.js +7 -12
- package/{bin → src}/isIgnored/synchronous.js +5 -10
- package/{bin → src}/line.js +4 -6
- package/{bin → src}/main.js +19 -21
- package/src/messages.js +17 -0
- package/{bin → src}/occurrence.js +2 -4
- package/{bin → src}/operation/addRootDirectoryPath.js +2 -4
- package/{bin → src}/operation/find.js +8 -10
- package/{bin → src}/operation/listRootDirectoryPaths.js +4 -10
- package/{bin → src}/operation/previousRule.js +3 -5
- package/{bin → src}/operation/prompt/addRootDirectoryPath.js +5 -7
- package/{bin → src}/operation/prompt/ignoreOrPermitPath.js +6 -8
- package/{bin → src}/operation/prompt/pathRule.js +6 -8
- package/{bin → src}/operation/prompt/previousRule.js +4 -6
- package/{bin → src}/operation/prompt/removeRootDirectoryPath.js +6 -8
- package/{bin → src}/operation/prompt/rule.js +7 -9
- package/{bin → src}/operation/removeRootDirectoryPath.js +3 -5
- package/{bin → src}/operation/removeRootDirectoryPathByIndex.js +3 -9
- package/{bin → src}/operation/rule.js +2 -4
- package/{bin → src}/operation/updatePatRules.js +3 -5
- package/{bin → src}/operation/validateRootDirectoryPath.js +3 -5
- package/src/options.js +12 -0
- package/{bin → src}/prepare.js +11 -13
- package/{bin → src}/rule/glob.js +7 -9
- package/{bin → src}/rule/regex.js +12 -14
- package/{bin → src}/rule/string.js +5 -7
- package/src/types.js +5 -0
- package/{bin → src}/utilities/find.js +7 -11
- package/src/utilities/literal.js +13 -0
- package/src/utilities/log.js +18 -0
- package/{bin → src}/utilities/operation.js +2 -6
- package/{bin → src}/utilities/path.js +5 -11
- package/{bin → src}/utilities/prompt.js +5 -10
- package/{bin → src}/utilities/rule.js +1 -5
- package/src/utilities/string.js +21 -0
- package/{bin → src}/utilities/validate.js +5 -12
- package/src/versions.js +8 -0
- package/bin/action/addRootDirectoryPath.js +0 -31
- package/bin/action/listRootDirectoryPaths.js +0 -18
- package/bin/action/removeRootDirectoryPath.js +0 -33
- package/bin/action/version.js +0 -15
- package/bin/commands.js +0 -19
- package/bin/configuration/version_1_3.js +0 -22
- package/bin/constants.js +0 -27
- package/bin/converters.js +0 -29
- package/bin/defaults.js +0 -23
- package/bin/descriptions.js +0 -13
- package/bin/messages.js +0 -35
- package/bin/options.js +0 -25
- package/bin/types.js +0 -11
- package/bin/utilities/literal.js +0 -19
- package/bin/utilities/log.js +0 -26
- package/bin/utilities/string.js +0 -33
- package/bin/versions.js +0 -17
|
@@ -0,0 +1,28 @@
|
|
|
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 removeRootDirectoryPathOperation;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _configuration = require("../configuration");
|
|
12
|
+
var _removeRootDirectoryPathByIndex = require("./removeRootDirectoryPathByIndex");
|
|
13
|
+
function removeRootDirectoryPathOperation(proceed, abort, context) {
|
|
14
|
+
var rootDirectoryPath = context.rootDirectoryPath;
|
|
15
|
+
if (rootDirectoryPath === null) {
|
|
16
|
+
proceed();
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
var rootDirectoryPaths = (0, _configuration.retrieveRootDirectoryPaths)(), index = rootDirectoryPaths.indexOf(rootDirectoryPath);
|
|
20
|
+
if (index === -1) {
|
|
21
|
+
abort();
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
(0, _removeRootDirectoryPathByIndex.removeRootDirectoryPathByIndex)(index);
|
|
25
|
+
proceed();
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb24vcmVtb3ZlUm9vdERpcmVjdG9yeVBhdGguanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IHJldHJpZXZlUm9vdERpcmVjdG9yeVBhdGhzIH0gZnJvbSBcIi4uL2NvbmZpZ3VyYXRpb25cIjtcbmltcG9ydCB7IHJlbW92ZVJvb3REaXJlY3RvcnlQYXRoQnlJbmRleCB9IGZyb20gXCIuL3JlbW92ZVJvb3REaXJlY3RvcnlQYXRoQnlJbmRleFwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiByZW1vdmVSb290RGlyZWN0b3J5UGF0aE9wZXJhdGlvbihwcm9jZWVkLCBhYm9ydCwgY29udGV4dCkge1xuICBjb25zdCB7IHJvb3REaXJlY3RvcnlQYXRoIH0gPSBjb250ZXh0O1xuXG4gIGlmIChyb290RGlyZWN0b3J5UGF0aCA9PT0gbnVsbCkge1xuICAgIHByb2NlZWQoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHJvb3REaXJlY3RvcnlQYXRocyA9IHJldHJpZXZlUm9vdERpcmVjdG9yeVBhdGhzKCksXG4gICAgICAgIGluZGV4ID0gcm9vdERpcmVjdG9yeVBhdGhzLmluZGV4T2Yocm9vdERpcmVjdG9yeVBhdGgpO1xuXG4gIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICBhYm9ydCgpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcmVtb3ZlUm9vdERpcmVjdG9yeVBhdGhCeUluZGV4KGluZGV4KTtcblxuICBwcm9jZWVkKCk7XG59XG4iXSwibmFtZXMiOlsicmVtb3ZlUm9vdERpcmVjdG9yeVBhdGhPcGVyYXRpb24iLCJwcm9jZWVkIiwiYWJvcnQiLCJjb250ZXh0Iiwicm9vdERpcmVjdG9yeVBhdGgiLCJyb290RGlyZWN0b3J5UGF0aHMiLCJyZXRyaWV2ZVJvb3REaXJlY3RvcnlQYXRocyIsImluZGV4IiwiaW5kZXhPZiIsInJlbW92ZVJvb3REaXJlY3RvcnlQYXRoQnlJbmRleCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBS0E7OztlQUF3QkE7Ozs2QkFIbUI7OENBQ0k7QUFFaEMsU0FBU0EsaUNBQWlDQyxPQUFPLEVBQUVDLEtBQUssRUFBRUMsT0FBTztJQUM5RSxJQUFNLEFBQUVDLG9CQUFzQkQsUUFBdEJDO0lBRVIsSUFBSUEsc0JBQXNCLE1BQU07UUFDOUJIO1FBRUE7SUFDRjtJQUVBLElBQU1JLHFCQUFxQkMsSUFBQUEseUNBQTBCLEtBQy9DQyxRQUFRRixtQkFBbUJHLE9BQU8sQ0FBQ0o7SUFFekMsSUFBSUcsVUFBVSxDQUFDLEdBQUc7UUFDaEJMO1FBRUE7SUFDRjtJQUVBTyxJQUFBQSw4REFBOEIsRUFBQ0Y7SUFFL0JOO0FBQ0YifQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
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 () {
|
|
13
|
+
return removeRootDirectoryPathByIndexOperation;
|
|
14
|
+
},
|
|
15
|
+
get removeRootDirectoryPathByIndex () {
|
|
16
|
+
return removeRootDirectoryPathByIndex;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
var _configuration = require("../configuration");
|
|
20
|
+
function removeRootDirectoryPathByIndexOperation(proceed, abort, context) {
|
|
21
|
+
var index = context.index;
|
|
22
|
+
if (index === null) {
|
|
23
|
+
proceed();
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
removeRootDirectoryPathByIndex(index);
|
|
27
|
+
proceed();
|
|
28
|
+
}
|
|
29
|
+
function removeRootDirectoryPathByIndex(index) {
|
|
30
|
+
var start = index, deleteCount = 1, rootDirectoryPaths = (0, _configuration.retrieveRootDirectoryPaths)();
|
|
31
|
+
rootDirectoryPaths.splice(start, deleteCount);
|
|
32
|
+
(0, _configuration.updateRootDirectoryPaths)(rootDirectoryPaths);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb24vcmVtb3ZlUm9vdERpcmVjdG9yeVBhdGhCeUluZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyByZXRyaWV2ZVJvb3REaXJlY3RvcnlQYXRocywgdXBkYXRlUm9vdERpcmVjdG9yeVBhdGhzIH0gZnJvbSBcIi4uL2NvbmZpZ3VyYXRpb25cIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcmVtb3ZlUm9vdERpcmVjdG9yeVBhdGhCeUluZGV4T3BlcmF0aW9uKHByb2NlZWQsIGFib3J0LCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgaW5kZXggfSA9IGNvbnRleHQ7XG5cbiAgaWYgKGluZGV4ID09PSBudWxsKSB7XG4gICAgcHJvY2VlZCgpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcmVtb3ZlUm9vdERpcmVjdG9yeVBhdGhCeUluZGV4KGluZGV4KTtcblxuICBwcm9jZWVkKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVSb290RGlyZWN0b3J5UGF0aEJ5SW5kZXgoaW5kZXgpIHtcbiAgY29uc3Qgc3RhcnQgPSBpbmRleCwgIC8vL1xuICAgICAgICBkZWxldGVDb3VudCA9IDEsXG4gICAgICAgIHJvb3REaXJlY3RvcnlQYXRocyA9IHJldHJpZXZlUm9vdERpcmVjdG9yeVBhdGhzKClcblxuICByb290RGlyZWN0b3J5UGF0aHMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCk7XG5cbiAgdXBkYXRlUm9vdERpcmVjdG9yeVBhdGhzKHJvb3REaXJlY3RvcnlQYXRocyk7XG5cbn1cbiJdLCJuYW1lcyI6WyJyZW1vdmVSb290RGlyZWN0b3J5UGF0aEJ5SW5kZXhPcGVyYXRpb24iLCJyZW1vdmVSb290RGlyZWN0b3J5UGF0aEJ5SW5kZXgiLCJwcm9jZWVkIiwiYWJvcnQiLCJjb250ZXh0IiwiaW5kZXgiLCJzdGFydCIsImRlbGV0ZUNvdW50Iiwicm9vdERpcmVjdG9yeVBhdGhzIiwicmV0cmlldmVSb290RGlyZWN0b3J5UGF0aHMiLCJzcGxpY2UiLCJ1cGRhdGVSb290RGlyZWN0b3J5UGF0aHMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQUlBO2VBQXdCQTs7UUFjUkM7ZUFBQUE7Ozs2QkFoQnFEO0FBRXRELFNBQVNELHdDQUF3Q0UsT0FBTyxFQUFFQyxLQUFLLEVBQUVDLE9BQU87SUFDckYsSUFBTSxBQUFFQyxRQUFVRCxRQUFWQztJQUVSLElBQUlBLFVBQVUsTUFBTTtRQUNsQkg7UUFFQTtJQUNGO0lBRUFELCtCQUErQkk7SUFFL0JIO0FBQ0Y7QUFFTyxTQUFTRCwrQkFBK0JJLEtBQUs7SUFDbEQsSUFBTUMsUUFBUUQsT0FDUkUsY0FBYyxHQUNkQyxxQkFBcUJDLElBQUFBLHlDQUEwQjtJQUVyREQsbUJBQW1CRSxNQUFNLENBQUNKLE9BQU9DO0lBRWpDSSxJQUFBQSx1Q0FBd0IsRUFBQ0g7QUFFM0IifQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
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 ruleOperation;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _rule = require("../utilities/rule");
|
|
12
|
+
function ruleOperation(proceed, abort, context) {
|
|
13
|
+
var dryRun = context.dryRun;
|
|
14
|
+
if (dryRun) {
|
|
15
|
+
proceed();
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
var previous = context.previous, interactive = context.interactive;
|
|
19
|
+
if (previous || interactive) {
|
|
20
|
+
proceed();
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
var string = context.string, anchored = true, directory = false, rule = (0, _rule.ruleFromStringAnchoredAndDirectory)(string, anchored, directory);
|
|
24
|
+
if (rule === null) {
|
|
25
|
+
abort();
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
Object.assign(context, {
|
|
29
|
+
rule: rule
|
|
30
|
+
});
|
|
31
|
+
proceed();
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb24vcnVsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcnVsZUZyb21TdHJpbmdBbmNob3JlZEFuZERpcmVjdG9yeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcnVsZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBydWxlT3BlcmF0aW9uKHByb2NlZWQsIGFib3J0LCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgZHJ5UnVuIH0gPSBjb250ZXh0O1xuXG4gIGlmIChkcnlSdW4pIHtcbiAgICBwcm9jZWVkKCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCB7IHByZXZpb3VzLCBpbnRlcmFjdGl2ZSB9ID0gY29udGV4dDtcblxuICBpZiAocHJldmlvdXMgfHwgaW50ZXJhY3RpdmUpIHtcbiAgICBwcm9jZWVkKCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCB7IHN0cmluZyB9ID0gY29udGV4dCxcbiAgICAgICAgYW5jaG9yZWQgPSB0cnVlLFxuICAgICAgICBkaXJlY3RvcnkgPSBmYWxzZSxcbiAgICAgICAgcnVsZSA9IHJ1bGVGcm9tU3RyaW5nQW5jaG9yZWRBbmREaXJlY3Rvcnkoc3RyaW5nLCBhbmNob3JlZCwgZGlyZWN0b3J5KTtcblxuICBpZiAocnVsZSA9PT0gbnVsbCkge1xuICAgIGFib3J0KCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICBydWxlXG4gIH0pO1xuXG4gIHByb2NlZWQoKTtcbn1cbiJdLCJuYW1lcyI6WyJydWxlT3BlcmF0aW9uIiwicHJvY2VlZCIsImFib3J0IiwiY29udGV4dCIsImRyeVJ1biIsInByZXZpb3VzIiwiaW50ZXJhY3RpdmUiLCJzdHJpbmciLCJhbmNob3JlZCIsImRpcmVjdG9yeSIsInJ1bGUiLCJydWxlRnJvbVN0cmluZ0FuY2hvcmVkQW5kRGlyZWN0b3J5IiwiT2JqZWN0IiwiYXNzaWduIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFJQTs7O2VBQXdCQTs7O29CQUYyQjtBQUVwQyxTQUFTQSxjQUFjQyxPQUFPLEVBQUVDLEtBQUssRUFBRUMsT0FBTztJQUMzRCxJQUFNLEFBQUVDLFNBQVdELFFBQVhDO0lBRVIsSUFBSUEsUUFBUTtRQUNWSDtRQUVBO0lBQ0Y7SUFFQSxJQUFRSSxXQUEwQkYsUUFBMUJFLFVBQVVDLGNBQWdCSCxRQUFoQkc7SUFFbEIsSUFBSUQsWUFBWUMsYUFBYTtRQUMzQkw7UUFFQTtJQUNGO0lBRUEsSUFBTSxBQUFFTSxTQUFXSixRQUFYSSxRQUNGQyxXQUFXLE1BQ1hDLFlBQVksT0FDWkMsT0FBT0MsSUFBQUEsd0NBQWtDLEVBQUNKLFFBQVFDLFVBQVVDO0lBRWxFLElBQUlDLFNBQVMsTUFBTTtRQUNqQlI7UUFFQTtJQUNGO0lBRUFVLE9BQU9DLE1BQU0sQ0FBQ1YsU0FBUztRQUNyQk8sTUFBQUE7SUFDRjtJQUVBVDtBQUNGIn0=
|
|
@@ -0,0 +1,40 @@
|
|
|
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 updatePathRulesOperation;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _configuration = require("../configuration");
|
|
12
|
+
function updatePathRulesOperation(proceed, abort, context) {
|
|
13
|
+
var pathRule = context.pathRule, directory = context.directory, pathIgnored = context.pathIgnored;
|
|
14
|
+
pathIgnored ? addIgnoreRule(pathRule, directory, context) : addPermitRule(pathRule, directory, context);
|
|
15
|
+
proceed();
|
|
16
|
+
}
|
|
17
|
+
function addIgnoreRule(pathRule, directory, context) {
|
|
18
|
+
if (directory) {
|
|
19
|
+
var ignoredDirectoryPathRules = context.ignoredDirectoryPathRules, ignoredDirectoryPathRule = pathRule; ///
|
|
20
|
+
ignoredDirectoryPathRules.push(ignoredDirectoryPathRule);
|
|
21
|
+
(0, _configuration.updateIgnoredDirectoryPathRules)(ignoredDirectoryPathRules);
|
|
22
|
+
} else {
|
|
23
|
+
var ignoredFilePathRules = context.ignoredFilePathRules, ignoredFilePathRule = pathRule; ///
|
|
24
|
+
ignoredFilePathRules.push(ignoredFilePathRule);
|
|
25
|
+
(0, _configuration.updateIgnoredFilePathRules)(ignoredFilePathRules);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
function addPermitRule(pathRule, directory, context) {
|
|
29
|
+
if (directory) {
|
|
30
|
+
var permittedDirectoryPathRules = context.permittedDirectoryPathRules, permittedDirectoryPathRule = pathRule; ///
|
|
31
|
+
permittedDirectoryPathRules.push(permittedDirectoryPathRule);
|
|
32
|
+
(0, _configuration.updatePermittedDirectoryPathRules)(permittedDirectoryPathRules);
|
|
33
|
+
} else {
|
|
34
|
+
var permittedFilePathRules = context.permittedFilePathRules, permittedFilePathRule = pathRule; ///
|
|
35
|
+
permittedFilePathRules.push(permittedFilePathRule);
|
|
36
|
+
(0, _configuration.updatePermittedFilePathRules)(permittedFilePathRules);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb24vdXBkYXRlUGF0UnVsZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IHVwZGF0ZUlnbm9yZWRGaWxlUGF0aFJ1bGVzLFxuICAgICAgICB1cGRhdGVQZXJtaXR0ZWRGaWxlUGF0aFJ1bGVzLFxuICAgICAgICB1cGRhdGVJZ25vcmVkRGlyZWN0b3J5UGF0aFJ1bGVzLFxuICAgICAgICB1cGRhdGVQZXJtaXR0ZWREaXJlY3RvcnlQYXRoUnVsZXMgfSBmcm9tIFwiLi4vY29uZmlndXJhdGlvblwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1cGRhdGVQYXRoUnVsZXNPcGVyYXRpb24ocHJvY2VlZCwgYWJvcnQsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBwYXRoUnVsZSwgZGlyZWN0b3J5LCBwYXRoSWdub3JlZCB9ID0gY29udGV4dDtcblxuICBwYXRoSWdub3JlZCA/XG4gICAgYWRkSWdub3JlUnVsZShwYXRoUnVsZSwgZGlyZWN0b3J5LCBjb250ZXh0KSA6XG4gICAgICBhZGRQZXJtaXRSdWxlKHBhdGhSdWxlLCBkaXJlY3RvcnksIGNvbnRleHQpO1xuXG4gIHByb2NlZWQoKTtcbn1cblxuZnVuY3Rpb24gYWRkSWdub3JlUnVsZShwYXRoUnVsZSwgZGlyZWN0b3J5LCBjb250ZXh0KSB7XG4gIGlmIChkaXJlY3RvcnkpIHtcbiAgICBjb25zdCB7IGlnbm9yZWREaXJlY3RvcnlQYXRoUnVsZXMgfSA9IGNvbnRleHQsXG4gICAgICAgICAgaWdub3JlZERpcmVjdG9yeVBhdGhSdWxlID0gcGF0aFJ1bGU7ICAvLy9cblxuICAgIGlnbm9yZWREaXJlY3RvcnlQYXRoUnVsZXMucHVzaChpZ25vcmVkRGlyZWN0b3J5UGF0aFJ1bGUpO1xuXG4gICAgdXBkYXRlSWdub3JlZERpcmVjdG9yeVBhdGhSdWxlcyhpZ25vcmVkRGlyZWN0b3J5UGF0aFJ1bGVzKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB7IGlnbm9yZWRGaWxlUGF0aFJ1bGVzIH0gPSBjb250ZXh0LFxuICAgICAgICAgIGlnbm9yZWRGaWxlUGF0aFJ1bGUgPSBwYXRoUnVsZTsgIC8vL1xuXG4gICAgaWdub3JlZEZpbGVQYXRoUnVsZXMucHVzaChpZ25vcmVkRmlsZVBhdGhSdWxlKTtcblxuICAgIHVwZGF0ZUlnbm9yZWRGaWxlUGF0aFJ1bGVzKGlnbm9yZWRGaWxlUGF0aFJ1bGVzKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBhZGRQZXJtaXRSdWxlKHBhdGhSdWxlLCBkaXJlY3RvcnksIGNvbnRleHQpIHtcbiAgaWYgKGRpcmVjdG9yeSkge1xuICAgIGNvbnN0IHsgcGVybWl0dGVkRGlyZWN0b3J5UGF0aFJ1bGVzIH0gPSBjb250ZXh0LFxuICAgICAgICAgIHBlcm1pdHRlZERpcmVjdG9yeVBhdGhSdWxlID0gcGF0aFJ1bGU7ICAvLy9cblxuICAgIHBlcm1pdHRlZERpcmVjdG9yeVBhdGhSdWxlcy5wdXNoKHBlcm1pdHRlZERpcmVjdG9yeVBhdGhSdWxlKTtcblxuICAgIHVwZGF0ZVBlcm1pdHRlZERpcmVjdG9yeVBhdGhSdWxlcyhwZXJtaXR0ZWREaXJlY3RvcnlQYXRoUnVsZXMpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHsgcGVybWl0dGVkRmlsZVBhdGhSdWxlcyB9ID0gY29udGV4dCxcbiAgICAgICAgICBwZXJtaXR0ZWRGaWxlUGF0aFJ1bGUgPSBwYXRoUnVsZTsgIC8vL1xuXG4gICAgcGVybWl0dGVkRmlsZVBhdGhSdWxlcy5wdXNoKHBlcm1pdHRlZEZpbGVQYXRoUnVsZSk7XG5cbiAgICB1cGRhdGVQZXJtaXR0ZWRGaWxlUGF0aFJ1bGVzKHBlcm1pdHRlZEZpbGVQYXRoUnVsZXMpO1xuICB9XG59XG4iXSwibmFtZXMiOlsidXBkYXRlUGF0aFJ1bGVzT3BlcmF0aW9uIiwicHJvY2VlZCIsImFib3J0IiwiY29udGV4dCIsInBhdGhSdWxlIiwiZGlyZWN0b3J5IiwicGF0aElnbm9yZWQiLCJhZGRJZ25vcmVSdWxlIiwiYWRkUGVybWl0UnVsZSIsImlnbm9yZWREaXJlY3RvcnlQYXRoUnVsZXMiLCJpZ25vcmVkRGlyZWN0b3J5UGF0aFJ1bGUiLCJwdXNoIiwidXBkYXRlSWdub3JlZERpcmVjdG9yeVBhdGhSdWxlcyIsImlnbm9yZWRGaWxlUGF0aFJ1bGVzIiwiaWdub3JlZEZpbGVQYXRoUnVsZSIsInVwZGF0ZUlnbm9yZWRGaWxlUGF0aFJ1bGVzIiwicGVybWl0dGVkRGlyZWN0b3J5UGF0aFJ1bGVzIiwicGVybWl0dGVkRGlyZWN0b3J5UGF0aFJ1bGUiLCJ1cGRhdGVQZXJtaXR0ZWREaXJlY3RvcnlQYXRoUnVsZXMiLCJwZXJtaXR0ZWRGaWxlUGF0aFJ1bGVzIiwicGVybWl0dGVkRmlsZVBhdGhSdWxlIiwidXBkYXRlUGVybWl0dGVkRmlsZVBhdGhSdWxlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUF3QkE7Ozs2QkFGeUI7QUFFbEMsU0FBU0EseUJBQXlCQyxPQUFPLEVBQUVDLEtBQUssRUFBRUMsT0FBTztJQUN0RSxJQUFRQyxXQUFxQ0QsUUFBckNDLFVBQVVDLFlBQTJCRixRQUEzQkUsV0FBV0MsY0FBZ0JILFFBQWhCRztJQUU3QkEsY0FDRUMsY0FBY0gsVUFBVUMsV0FBV0YsV0FDakNLLGNBQWNKLFVBQVVDLFdBQVdGO0lBRXZDRjtBQUNGO0FBRUEsU0FBU00sY0FBY0gsUUFBUSxFQUFFQyxTQUFTLEVBQUVGLE9BQU87SUFDakQsSUFBSUUsV0FBVztRQUNiLElBQU0sQUFBRUksNEJBQThCTixRQUE5Qk0sMkJBQ0ZDLDJCQUEyQk4sVUFBVyxHQUFHO1FBRS9DSywwQkFBMEJFLElBQUksQ0FBQ0Q7UUFFL0JFLElBQUFBLDhDQUErQixFQUFDSDtJQUNsQyxPQUFPO1FBQ0wsSUFBTSxBQUFFSSx1QkFBeUJWLFFBQXpCVSxzQkFDRkMsc0JBQXNCVixVQUFXLEdBQUc7UUFFMUNTLHFCQUFxQkYsSUFBSSxDQUFDRztRQUUxQkMsSUFBQUEseUNBQTBCLEVBQUNGO0lBQzdCO0FBQ0Y7QUFFQSxTQUFTTCxjQUFjSixRQUFRLEVBQUVDLFNBQVMsRUFBRUYsT0FBTztJQUNqRCxJQUFJRSxXQUFXO1FBQ2IsSUFBTSxBQUFFVyw4QkFBZ0NiLFFBQWhDYSw2QkFDRkMsNkJBQTZCYixVQUFXLEdBQUc7UUFFakRZLDRCQUE0QkwsSUFBSSxDQUFDTTtRQUVqQ0MsSUFBQUEsZ0RBQWlDLEVBQUNGO0lBQ3BDLE9BQU87UUFDTCxJQUFNLEFBQUVHLHlCQUEyQmhCLFFBQTNCZ0Isd0JBQ0ZDLHdCQUF3QmhCLFVBQVcsR0FBRztRQUU1Q2UsdUJBQXVCUixJQUFJLENBQUNTO1FBRTVCQyxJQUFBQSwyQ0FBNEIsRUFBQ0Y7SUFDL0I7QUFDRiJ9
|
|
@@ -0,0 +1,30 @@
|
|
|
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 validateRootDirectoryPathOperation;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _validate = require("../utilities/validate");
|
|
12
|
+
var _messages = require("../messages");
|
|
13
|
+
function validateRootDirectoryPathOperation(proceed, abort, context) {
|
|
14
|
+
var rootDirectoryPath = context.rootDirectoryPath;
|
|
15
|
+
if (rootDirectoryPath === null) {
|
|
16
|
+
proceed();
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
var valid = (0, _validate.validateRootDirectoryPath)(rootDirectoryPath);
|
|
20
|
+
if (!valid) {
|
|
21
|
+
console.log(_messages.INVALID_ROOT_DIRECTORY_PATH_MESSAGE);
|
|
22
|
+
var rootDirectoryPath1 = null;
|
|
23
|
+
Object.assign(context, {
|
|
24
|
+
rootDirectoryPath: rootDirectoryPath1
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
proceed();
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb24vdmFsaWRhdGVSb290RGlyZWN0b3J5UGF0aC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgdmFsaWRhdGVSb290RGlyZWN0b3J5UGF0aCB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsaWRhdGVcIjtcbmltcG9ydCB7IElOVkFMSURfUk9PVF9ESVJFQ1RPUllfUEFUSF9NRVNTQUdFIH0gZnJvbSBcIi4uL21lc3NhZ2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZhbGlkYXRlUm9vdERpcmVjdG9yeVBhdGhPcGVyYXRpb24ocHJvY2VlZCwgYWJvcnQsIGNvbnRleHQpIHtcbiAgY29uc3QgeyByb290RGlyZWN0b3J5UGF0aCB9ID0gY29udGV4dDtcblxuICBpZiAocm9vdERpcmVjdG9yeVBhdGggPT09IG51bGwpIHtcbiAgICBwcm9jZWVkKCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCB2YWxpZCA9IHZhbGlkYXRlUm9vdERpcmVjdG9yeVBhdGgocm9vdERpcmVjdG9yeVBhdGgpO1xuXG4gIGlmICghdmFsaWQpIHtcbiAgICBjb25zb2xlLmxvZyhJTlZBTElEX1JPT1RfRElSRUNUT1JZX1BBVEhfTUVTU0FHRSk7XG5cbiAgICBjb25zdCByb290RGlyZWN0b3J5UGF0aCA9IG51bGw7XG5cbiAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgIHJvb3REaXJlY3RvcnlQYXRoXG4gICAgfSk7XG4gIH1cblxuICBwcm9jZWVkKCk7XG59XG4iXSwibmFtZXMiOlsidmFsaWRhdGVSb290RGlyZWN0b3J5UGF0aE9wZXJhdGlvbiIsInByb2NlZWQiLCJhYm9ydCIsImNvbnRleHQiLCJyb290RGlyZWN0b3J5UGF0aCIsInZhbGlkIiwidmFsaWRhdGVSb290RGlyZWN0b3J5UGF0aCIsImNvbnNvbGUiLCJsb2ciLCJJTlZBTElEX1JPT1RfRElSRUNUT1JZX1BBVEhfTUVTU0FHRSIsIk9iamVjdCIsImFzc2lnbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBS0E7OztlQUF3QkE7Ozt3QkFIa0I7d0JBQ1U7QUFFckMsU0FBU0EsbUNBQW1DQyxPQUFPLEVBQUVDLEtBQUssRUFBRUMsT0FBTztJQUNoRixJQUFNLEFBQUVDLG9CQUFzQkQsUUFBdEJDO0lBRVIsSUFBSUEsc0JBQXNCLE1BQU07UUFDOUJIO1FBRUE7SUFDRjtJQUVBLElBQU1JLFFBQVFDLElBQUFBLG1DQUF5QixFQUFDRjtJQUV4QyxJQUFJLENBQUNDLE9BQU87UUFDVkUsUUFBUUMsR0FBRyxDQUFDQyw2Q0FBbUM7UUFFL0MsSUFBTUwscUJBQW9CO1FBRTFCTSxPQUFPQyxNQUFNLENBQUNSLFNBQVM7WUFDckJDLG1CQUFBQTtRQUNGO0lBQ0Y7SUFFQUg7QUFDRiJ9
|
package/lib/options.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
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 DRY_RUN_OPTION () {
|
|
13
|
+
return DRY_RUN_OPTION;
|
|
14
|
+
},
|
|
15
|
+
get FORMAT_OPTION () {
|
|
16
|
+
return FORMAT_OPTION;
|
|
17
|
+
},
|
|
18
|
+
get GLOB_OPTION () {
|
|
19
|
+
return GLOB_OPTION;
|
|
20
|
+
},
|
|
21
|
+
get HELP_OPTION () {
|
|
22
|
+
return HELP_OPTION;
|
|
23
|
+
},
|
|
24
|
+
get INTERACTIVE_OPTION () {
|
|
25
|
+
return INTERACTIVE_OPTION;
|
|
26
|
+
},
|
|
27
|
+
get PREVIOUS_OPTION () {
|
|
28
|
+
return PREVIOUS_OPTION;
|
|
29
|
+
},
|
|
30
|
+
get QUIETLY_OPTION () {
|
|
31
|
+
return QUIETLY_OPTION;
|
|
32
|
+
},
|
|
33
|
+
get REGEX_OPTION () {
|
|
34
|
+
return REGEX_OPTION;
|
|
35
|
+
},
|
|
36
|
+
get STRING_OPTION () {
|
|
37
|
+
return STRING_OPTION;
|
|
38
|
+
},
|
|
39
|
+
get VERSION_OPTION () {
|
|
40
|
+
return VERSION_OPTION;
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
var HELP_OPTION = "help";
|
|
44
|
+
var GLOB_OPTION = "glob";
|
|
45
|
+
var REGEX_OPTION = "regex";
|
|
46
|
+
var STRING_OPTION = "string";
|
|
47
|
+
var FORMAT_OPTION = "format";
|
|
48
|
+
var VERSION_OPTION = "version";
|
|
49
|
+
var QUIETLY_OPTION = "quietly";
|
|
50
|
+
var DRY_RUN_OPTION = "dry-run";
|
|
51
|
+
var PREVIOUS_OPTION = "previous";
|
|
52
|
+
var INTERACTIVE_OPTION = "interactive";
|
|
53
|
+
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9vcHRpb25zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgY29uc3QgSEVMUF9PUFRJT04gPSBcImhlbHBcIjtcbmV4cG9ydCBjb25zdCBHTE9CX09QVElPTiA9IFwiZ2xvYlwiO1xuZXhwb3J0IGNvbnN0IFJFR0VYX09QVElPTiA9IFwicmVnZXhcIjtcbmV4cG9ydCBjb25zdCBTVFJJTkdfT1BUSU9OID0gXCJzdHJpbmdcIjtcbmV4cG9ydCBjb25zdCBGT1JNQVRfT1BUSU9OID0gXCJmb3JtYXRcIjtcbmV4cG9ydCBjb25zdCBWRVJTSU9OX09QVElPTiA9IFwidmVyc2lvblwiO1xuZXhwb3J0IGNvbnN0IFFVSUVUTFlfT1BUSU9OID0gXCJxdWlldGx5XCI7XG5leHBvcnQgY29uc3QgRFJZX1JVTl9PUFRJT04gPSBcImRyeS1ydW5cIjtcbmV4cG9ydCBjb25zdCBQUkVWSU9VU19PUFRJT04gPSBcInByZXZpb3VzXCI7XG5leHBvcnQgY29uc3QgSU5URVJBQ1RJVkVfT1BUSU9OID0gXCJpbnRlcmFjdGl2ZVwiO1xuIl0sIm5hbWVzIjpbIkRSWV9SVU5fT1BUSU9OIiwiRk9STUFUX09QVElPTiIsIkdMT0JfT1BUSU9OIiwiSEVMUF9PUFRJT04iLCJJTlRFUkFDVElWRV9PUFRJT04iLCJQUkVWSU9VU19PUFRJT04iLCJRVUlFVExZX09QVElPTiIsIlJFR0VYX09QVElPTiIsIlNUUklOR19PUFRJT04iLCJWRVJTSU9OX09QVElPTiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBU2FBO2VBQUFBOztRQUhBQztlQUFBQTs7UUFIQUM7ZUFBQUE7O1FBREFDO2VBQUFBOztRQVNBQztlQUFBQTs7UUFEQUM7ZUFBQUE7O1FBRkFDO2VBQUFBOztRQUpBQztlQUFBQTs7UUFDQUM7ZUFBQUE7O1FBRUFDO2VBQUFBOzs7QUFMTixJQUFNTixjQUFjO0FBQ3BCLElBQU1ELGNBQWM7QUFDcEIsSUFBTUssZUFBZTtBQUNyQixJQUFNQyxnQkFBZ0I7QUFDdEIsSUFBTVAsZ0JBQWdCO0FBQ3RCLElBQU1RLGlCQUFpQjtBQUN2QixJQUFNSCxpQkFBaUI7QUFDdkIsSUFBTU4saUJBQWlCO0FBQ3ZCLElBQU1LLGtCQUFrQjtBQUN4QixJQUFNRCxxQkFBcUIifQ==
|
package/lib/prepare.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
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 prepare;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _configuration = require("./configuration");
|
|
12
|
+
var _defaults = require("./defaults");
|
|
13
|
+
var _commands = require("./commands");
|
|
14
|
+
function prepare(command, argument, options, main) {
|
|
15
|
+
var _options_help = options.help, help = _options_help === void 0 ? _defaults.DEFAULT_HELP : _options_help, _options_version = options.version, version = _options_version === void 0 ? _defaults.DEFAULT_VERSION : _options_version;
|
|
16
|
+
if (false) {
|
|
17
|
+
///
|
|
18
|
+
} else if (help) {
|
|
19
|
+
command = _commands.HELP_COMMAND;
|
|
20
|
+
} else if (version) {
|
|
21
|
+
command = _commands.VERSION_COMMAND;
|
|
22
|
+
}
|
|
23
|
+
if (command === _commands.HELP_COMMAND || command === _commands.VERSION_COMMAND || command === _commands.INITIALISE_COMMAND) {
|
|
24
|
+
main(command, argument, options);
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
(0, _configuration.migrateConfigurationFile)();
|
|
28
|
+
if (command === _commands.ADD_ROOT_DIRECTORY_PATH_COMMAND || command === _commands.LIST_ROOT_DIRECTORY_PATHS_COMMAND || command === _commands.REMOVE_ROOT_DIRECTORY_PATH_COMMAND) {
|
|
29
|
+
main(command, argument, options);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
argument = command; ///
|
|
33
|
+
command = _commands.FIND_COMMAND;
|
|
34
|
+
main(command, argument, options);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wcmVwYXJlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBtaWdyYXRlQ29uZmlndXJhdGlvbkZpbGUgfSBmcm9tIFwiLi9jb25maWd1cmF0aW9uXCI7XG5pbXBvcnQgeyBERUZBVUxUX0hFTFAsIERFRkFVTFRfVkVSU0lPTiB9IGZyb20gXCIuL2RlZmF1bHRzXCI7XG5pbXBvcnQgeyBGSU5EX0NPTU1BTkQsXG4gICAgICAgICBIRUxQX0NPTU1BTkQsXG4gICAgICAgICBWRVJTSU9OX0NPTU1BTkQsXG4gICAgICAgICBJTklUSUFMSVNFX0NPTU1BTkQsXG4gICAgICAgICBBRERfUk9PVF9ESVJFQ1RPUllfUEFUSF9DT01NQU5ELFxuICAgICAgICAgTElTVF9ST09UX0RJUkVDVE9SWV9QQVRIU19DT01NQU5ELFxuICAgICAgICAgUkVNT1ZFX1JPT1RfRElSRUNUT1JZX1BBVEhfQ09NTUFORCB9IGZyb20gXCIuL2NvbW1hbmRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHByZXBhcmUoY29tbWFuZCwgYXJndW1lbnQsIG9wdGlvbnMsIG1haW4pIHtcbiAgY29uc3QgeyBoZWxwID0gREVGQVVMVF9IRUxQLCB2ZXJzaW9uID0gREVGQVVMVF9WRVJTSU9OIH0gPSBvcHRpb25zO1xuXG4gIGlmIChmYWxzZSkge1xuICAgIC8vL1xuICB9IGVsc2UgaWYgKGhlbHApIHtcbiAgICBjb21tYW5kID0gSEVMUF9DT01NQU5EO1xuICB9IGVsc2UgaWYgKHZlcnNpb24pIHtcbiAgICBjb21tYW5kID0gVkVSU0lPTl9DT01NQU5EO1xuICB9XG5cbiAgaWYgKChjb21tYW5kID09PSBIRUxQX0NPTU1BTkQpIHx8XG4gICAgICAoY29tbWFuZCA9PT0gVkVSU0lPTl9DT01NQU5EKSB8fFxuICAgICAgKGNvbW1hbmQgPT09IElOSVRJQUxJU0VfQ09NTUFORCkpIHtcblxuICAgIG1haW4oY29tbWFuZCwgYXJndW1lbnQsIG9wdGlvbnMpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgbWlncmF0ZUNvbmZpZ3VyYXRpb25GaWxlKCk7XG5cbiAgaWYgKChjb21tYW5kID09PSBBRERfUk9PVF9ESVJFQ1RPUllfUEFUSF9DT01NQU5EKSB8fFxuICAgICAgKGNvbW1hbmQgPT09IExJU1RfUk9PVF9ESVJFQ1RPUllfUEFUSFNfQ09NTUFORCkgfHxcbiAgICAgIChjb21tYW5kID09PSBSRU1PVkVfUk9PVF9ESVJFQ1RPUllfUEFUSF9DT01NQU5EKSkge1xuXG4gICAgbWFpbihjb21tYW5kLCBhcmd1bWVudCwgb3B0aW9ucyk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBhcmd1bWVudCA9IGNvbW1hbmQ7IC8vL1xuXG4gIGNvbW1hbmQgPSBGSU5EX0NPTU1BTkQ7XG5cbiAgbWFpbihjb21tYW5kLCBhcmd1bWVudCwgb3B0aW9ucyk7XG59XG4iXSwibmFtZXMiOlsicHJlcGFyZSIsImNvbW1hbmQiLCJhcmd1bWVudCIsIm9wdGlvbnMiLCJtYWluIiwiaGVscCIsIkRFRkFVTFRfSEVMUCIsInZlcnNpb24iLCJERUZBVUxUX1ZFUlNJT04iLCJIRUxQX0NPTU1BTkQiLCJWRVJTSU9OX0NPTU1BTkQiLCJJTklUSUFMSVNFX0NPTU1BTkQiLCJtaWdyYXRlQ29uZmlndXJhdGlvbkZpbGUiLCJBRERfUk9PVF9ESVJFQ1RPUllfUEFUSF9DT01NQU5EIiwiTElTVF9ST09UX0RJUkVDVE9SWV9QQVRIU19DT01NQU5EIiwiUkVNT1ZFX1JPT1RfRElSRUNUT1JZX1BBVEhfQ09NTUFORCIsIkZJTkRfQ09NTUFORCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBWUE7OztlQUF3QkE7Ozs2QkFWaUI7d0JBQ0s7d0JBT0s7QUFFcEMsU0FBU0EsUUFBUUMsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLE9BQU8sRUFBRUMsSUFBSTtJQUM5RCxvQkFBMkRELFFBQW5ERSxNQUFBQSxrQ0FBT0Msc0JBQVkscUNBQWdDSCxRQUE5QkksU0FBQUEsd0NBQVVDLHlCQUFlO0lBRXRELElBQUksT0FBTztJQUNULEdBQUc7SUFDTCxPQUFPLElBQUlILE1BQU07UUFDZkosVUFBVVEsc0JBQVk7SUFDeEIsT0FBTyxJQUFJRixTQUFTO1FBQ2xCTixVQUFVUyx5QkFBZTtJQUMzQjtJQUVBLElBQUksQUFBQ1QsWUFBWVEsc0JBQVksSUFDeEJSLFlBQVlTLHlCQUFlLElBQzNCVCxZQUFZVSw0QkFBa0IsRUFBRztRQUVwQ1AsS0FBS0gsU0FBU0MsVUFBVUM7UUFFeEI7SUFDRjtJQUVBUyxJQUFBQSx1Q0FBd0I7SUFFeEIsSUFBSSxBQUFDWCxZQUFZWSx5Q0FBK0IsSUFDM0NaLFlBQVlhLDJDQUFpQyxJQUM3Q2IsWUFBWWMsNENBQWtDLEVBQUc7UUFFcERYLEtBQUtILFNBQVNDLFVBQVVDO1FBRXhCO0lBQ0Y7SUFFQUQsV0FBV0QsU0FBUyxHQUFHO0lBRXZCQSxVQUFVZSxzQkFBWTtJQUV0QlosS0FBS0gsU0FBU0MsVUFBVUM7QUFDMUIifQ==
|
package/lib/rule/glob.js
ADDED
|
@@ -0,0 +1,223 @@
|
|
|
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 GlobRule;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _converters = /*#__PURE__*/ _interop_require_default(require("../converters"));
|
|
12
|
+
var _occurrence = /*#__PURE__*/ _interop_require_default(require("../occurrence"));
|
|
13
|
+
var _types = require("../types");
|
|
14
|
+
var _constants = require("../constants");
|
|
15
|
+
var _literal = require("../utilities/literal");
|
|
16
|
+
var _string = require("../utilities/string");
|
|
17
|
+
function _array_like_to_array(arr, len) {
|
|
18
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
19
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
20
|
+
return arr2;
|
|
21
|
+
}
|
|
22
|
+
function _array_without_holes(arr) {
|
|
23
|
+
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
24
|
+
}
|
|
25
|
+
function _class_call_check(instance, Constructor) {
|
|
26
|
+
if (!(instance instanceof Constructor)) {
|
|
27
|
+
throw new TypeError("Cannot call a class as a function");
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
function _defineProperties(target, props) {
|
|
31
|
+
for(var i = 0; i < props.length; i++){
|
|
32
|
+
var descriptor = props[i];
|
|
33
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
34
|
+
descriptor.configurable = true;
|
|
35
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
36
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
40
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
41
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
42
|
+
return Constructor;
|
|
43
|
+
}
|
|
44
|
+
function _interop_require_default(obj) {
|
|
45
|
+
return obj && obj.__esModule ? obj : {
|
|
46
|
+
default: obj
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function _iterable_to_array(iter) {
|
|
50
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
51
|
+
}
|
|
52
|
+
function _non_iterable_spread() {
|
|
53
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
54
|
+
}
|
|
55
|
+
function _to_consumable_array(arr) {
|
|
56
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
57
|
+
}
|
|
58
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
59
|
+
if (!o) return;
|
|
60
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
61
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
62
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
63
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
64
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
65
|
+
}
|
|
66
|
+
var GlobRule = /*#__PURE__*/ function() {
|
|
67
|
+
function GlobRule(type, glob, pattern, regExp) {
|
|
68
|
+
_class_call_check(this, GlobRule);
|
|
69
|
+
this.type = type;
|
|
70
|
+
this.glob = glob;
|
|
71
|
+
this.pattern = pattern;
|
|
72
|
+
this.regExp = regExp;
|
|
73
|
+
}
|
|
74
|
+
_create_class(GlobRule, [
|
|
75
|
+
{
|
|
76
|
+
key: "getType",
|
|
77
|
+
value: function getType() {
|
|
78
|
+
return this.type;
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
key: "getGlob",
|
|
83
|
+
value: function getGlob() {
|
|
84
|
+
return this.glob;
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
key: "getPattern",
|
|
89
|
+
value: function getPattern() {
|
|
90
|
+
return this.pattern;
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
key: "getRegExp",
|
|
95
|
+
value: function getRegExp() {
|
|
96
|
+
return this.regExp;
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
key: "toJSON",
|
|
101
|
+
value: function toJSON() {
|
|
102
|
+
var type = this.type, glob = this.glob, pattern = this.pattern, json = {
|
|
103
|
+
type: type,
|
|
104
|
+
glob: glob,
|
|
105
|
+
pattern: pattern
|
|
106
|
+
};
|
|
107
|
+
return json;
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
key: "find",
|
|
112
|
+
value: function find(line) {
|
|
113
|
+
var occurrences = [], content = line.getContent();
|
|
114
|
+
var offset = 0, string = content, result = string.match(this.regExp);
|
|
115
|
+
while(result !== null){
|
|
116
|
+
var occurrence = _occurrence.default.fromResultAndOffset(result, offset), end = occurrence.getEnd(), start = end; ///
|
|
117
|
+
string = string.substring(start); ///
|
|
118
|
+
offset += start;
|
|
119
|
+
occurrences.push(occurrence);
|
|
120
|
+
result = string.match(this.regExp);
|
|
121
|
+
}
|
|
122
|
+
return occurrences;
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
key: "match",
|
|
127
|
+
value: function match(string) {
|
|
128
|
+
var matches = this.regExp.test(string);
|
|
129
|
+
return matches;
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
key: "isEqualTo",
|
|
134
|
+
value: function isEqualTo(rule) {
|
|
135
|
+
var equalTo = false;
|
|
136
|
+
var ruleType = rule.getType();
|
|
137
|
+
if (ruleType === this.type) {
|
|
138
|
+
var ruleGlob = rule.getGlob();
|
|
139
|
+
if (ruleGlob === this.glob) {
|
|
140
|
+
equalTo = true;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
return equalTo;
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
key: "asString",
|
|
148
|
+
value: function asString() {
|
|
149
|
+
var string = this.glob; ///
|
|
150
|
+
return string;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
], [
|
|
154
|
+
{
|
|
155
|
+
key: "fromJSON",
|
|
156
|
+
value: function fromJSON(json) {
|
|
157
|
+
var globRule = null;
|
|
158
|
+
var type = json.type;
|
|
159
|
+
if (type === _types.GLOB_TYPE) {
|
|
160
|
+
var glob = json.glob, pattern = json.pattern, regExp = new RegExp(pattern);
|
|
161
|
+
globRule = new GlobRule(type, glob, pattern, regExp);
|
|
162
|
+
}
|
|
163
|
+
return globRule;
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
key: "fromStringAnchoredAndDirectory",
|
|
168
|
+
value: function fromStringAnchoredAndDirectory(string, anchored, directory) {
|
|
169
|
+
var globRule = null;
|
|
170
|
+
var glob = globFromStringAndDirectory(string, directory);
|
|
171
|
+
if (glob !== null) {
|
|
172
|
+
var type = _types.GLOB_TYPE, pattern = patternFromGlobAndAnchored(glob, anchored), regExp = new RegExp(pattern);
|
|
173
|
+
globRule = new GlobRule(type, glob, pattern, regExp);
|
|
174
|
+
}
|
|
175
|
+
return globRule;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
]);
|
|
179
|
+
return GlobRule;
|
|
180
|
+
}();
|
|
181
|
+
function patternFromGlobAndAnchored(glob, anchored) {
|
|
182
|
+
var pattern = _constants.EMPTY_STRING;
|
|
183
|
+
var characters = _to_consumable_array(glob);
|
|
184
|
+
for(;;){
|
|
185
|
+
var converted = _converters.default.some(function(converter) {
|
|
186
|
+
var result = converter.match(characters);
|
|
187
|
+
if (result !== null) {
|
|
188
|
+
pattern = "".concat(pattern).concat(result);
|
|
189
|
+
return true;
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
if (!converted) {
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
if (anchored) {
|
|
197
|
+
pattern = (0, _string.addAnchors)(pattern);
|
|
198
|
+
}
|
|
199
|
+
return pattern;
|
|
200
|
+
}
|
|
201
|
+
function globFromStringAndDirectory(string, directory) {
|
|
202
|
+
var glob;
|
|
203
|
+
var stringGlobLiteral = (0, _literal.isStringGlobLiteral)(string);
|
|
204
|
+
if (stringGlobLiteral) {
|
|
205
|
+
var globLiteral = string; ///
|
|
206
|
+
glob = globLiteral; ///
|
|
207
|
+
glob = (0, _string.removeTrailingForwardSlash)(glob); ///
|
|
208
|
+
if (directory) {
|
|
209
|
+
glob = (0, _string.addTrailingForwardSlash)(glob); ///
|
|
210
|
+
}
|
|
211
|
+
try {
|
|
212
|
+
var anchored = false, pattern = patternFromGlobAndAnchored(glob, anchored);
|
|
213
|
+
new RegExp(pattern);
|
|
214
|
+
} catch (error) {
|
|
215
|
+
glob = null;
|
|
216
|
+
}
|
|
217
|
+
} else {
|
|
218
|
+
glob = null;
|
|
219
|
+
}
|
|
220
|
+
return glob;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlL2dsb2IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBjb252ZXJ0ZXJzIGZyb20gXCIuLi9jb252ZXJ0ZXJzXCI7XG5pbXBvcnQgT2NjdXJyZW5jZSBmcm9tIFwiLi4vb2NjdXJyZW5jZVwiO1xuXG5pbXBvcnQgeyBHTE9CX1RZUEUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGlzU3RyaW5nR2xvYkxpdGVyYWwgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2xpdGVyYWxcIjtcbmltcG9ydCB7IGFkZEFuY2hvcnMsIGFkZFRyYWlsaW5nRm9yd2FyZFNsYXNoLCByZW1vdmVUcmFpbGluZ0ZvcndhcmRTbGFzaCB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdsb2JSdWxlIHtcbiAgY29uc3RydWN0b3IodHlwZSwgZ2xvYiwgcGF0dGVybiwgcmVnRXhwKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLmdsb2IgPSBnbG9iO1xuICAgIHRoaXMucGF0dGVybiA9IHBhdHRlcm47XG4gICAgdGhpcy5yZWdFeHAgPSByZWdFeHA7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBnZXRHbG9iKCkge1xuICAgIHJldHVybiB0aGlzLmdsb2I7XG4gIH1cblxuICBnZXRQYXR0ZXJuKCkge1xuICAgIHJldHVybiB0aGlzLnBhdHRlcm47XG4gIH1cblxuICBnZXRSZWdFeHAoKSB7XG4gICAgcmV0dXJuIHRoaXMucmVnRXhwO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLnR5cGUsXG4gICAgICAgICAgZ2xvYiA9IHRoaXMuZ2xvYixcbiAgICAgICAgICBwYXR0ZXJuID0gdGhpcy5wYXR0ZXJuLFxuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgZ2xvYixcbiAgICAgICAgICAgIHBhdHRlcm5cbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBmaW5kKGxpbmUpIHtcbiAgICBjb25zdCBvY2N1cnJlbmNlcyA9IFtdLFxuICAgICAgICAgIGNvbnRlbnQgPSBsaW5lLmdldENvbnRlbnQoKTtcblxuICAgIGxldCBvZmZzZXQgPSAwLFxuICAgICAgICBzdHJpbmcgPSBjb250ZW50LCAvLy9cbiAgICAgICAgcmVzdWx0ID0gc3RyaW5nLm1hdGNoKHRoaXMucmVnRXhwKTtcblxuICAgIHdoaWxlIChyZXN1bHQgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG9jY3VycmVuY2UgPSBPY2N1cnJlbmNlLmZyb21SZXN1bHRBbmRPZmZzZXQocmVzdWx0LCBvZmZzZXQpLFxuICAgICAgICAgICAgZW5kID0gb2NjdXJyZW5jZS5nZXRFbmQoKSxcbiAgICAgICAgICAgIHN0YXJ0ID0gZW5kOyAgLy8vXG5cbiAgICAgIHN0cmluZyA9IHN0cmluZy5zdWJzdHJpbmcoc3RhcnQpOyAvLy9cblxuICAgICAgb2Zmc2V0ICs9IHN0YXJ0O1xuXG4gICAgICBvY2N1cnJlbmNlcy5wdXNoKG9jY3VycmVuY2UpO1xuXG4gICAgICByZXN1bHQgPSBzdHJpbmcubWF0Y2godGhpcy5yZWdFeHApO1xuICAgIH1cblxuICAgIHJldHVybiBvY2N1cnJlbmNlcztcbiAgfVxuXG4gIG1hdGNoKHN0cmluZykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSB0aGlzLnJlZ0V4cC50ZXN0KHN0cmluZyk7XG5cbiAgICByZXR1cm4gbWF0Y2hlcztcbiAgfVxuXG4gIGlzRXF1YWxUbyhydWxlKSB7XG4gICAgbGV0IGVxdWFsVG8gPSBmYWxzZTtcblxuICAgIGNvbnN0IHJ1bGVUeXBlID0gcnVsZS5nZXRUeXBlKCk7XG5cbiAgICBpZiAocnVsZVR5cGUgPT09IHRoaXMudHlwZSkge1xuICAgICAgY29uc3QgcnVsZUdsb2IgPSBydWxlLmdldEdsb2IoKTtcblxuICAgICAgaWYgKHJ1bGVHbG9iID09PSB0aGlzLmdsb2IpIHtcbiAgICAgICAgZXF1YWxUbyA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGVxdWFsVG87XG4gIH1cblxuICBhc1N0cmluZygpIHtcbiAgICBjb25zdCBzdHJpbmcgPSB0aGlzLmdsb2I7IC8vL1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uKSB7XG4gICAgbGV0IGdsb2JSdWxlID0gbnVsbDtcblxuICAgIGNvbnN0IHsgdHlwZSB9ID0ganNvbjtcblxuICAgIGlmICh0eXBlID09PSBHTE9CX1RZUEUpIHtcbiAgICAgIGNvbnN0IHsgZ2xvYiwgcGF0dGVybiB9ID0ganNvbixcbiAgICAgICAgICAgIHJlZ0V4cCA9IG5ldyBSZWdFeHAocGF0dGVybik7XG5cbiAgICAgIGdsb2JSdWxlID0gbmV3IEdsb2JSdWxlKHR5cGUsIGdsb2IsIHBhdHRlcm4sIHJlZ0V4cCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGdsb2JSdWxlO1xuICB9XG5cbiAgc3RhdGljIGZyb21TdHJpbmdBbmNob3JlZEFuZERpcmVjdG9yeShzdHJpbmcsIGFuY2hvcmVkLCBkaXJlY3RvcnkpIHtcbiAgICBsZXQgZ2xvYlJ1bGUgPSBudWxsO1xuXG4gICAgY29uc3QgZ2xvYiA9IGdsb2JGcm9tU3RyaW5nQW5kRGlyZWN0b3J5KHN0cmluZywgZGlyZWN0b3J5KTtcblxuICAgIGlmIChnbG9iICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB0eXBlID0gR0xPQl9UWVBFLFxuICAgICAgICAgICAgcGF0dGVybiA9IHBhdHRlcm5Gcm9tR2xvYkFuZEFuY2hvcmVkKGdsb2IsIGFuY2hvcmVkKSxcbiAgICAgICAgICAgIHJlZ0V4cCA9IG5ldyBSZWdFeHAocGF0dGVybik7XG5cbiAgICAgIGdsb2JSdWxlID0gbmV3IEdsb2JSdWxlKHR5cGUsIGdsb2IsIHBhdHRlcm4sIHJlZ0V4cCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGdsb2JSdWxlO1xuICB9XG59XG5cbmZ1bmN0aW9uIHBhdHRlcm5Gcm9tR2xvYkFuZEFuY2hvcmVkKGdsb2IsIGFuY2hvcmVkKSB7XG4gIGxldCBwYXR0ZXJuID0gRU1QVFlfU1RSSU5HO1xuXG4gIGNvbnN0IGNoYXJhY3RlcnMgPSBbIC4uLmdsb2IgXTtcblxuICBmb3IgKDs7KSB7XG4gICAgY29uc3QgY29udmVydGVkID0gY29udmVydGVycy5zb21lKChjb252ZXJ0ZXIpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGNvbnZlcnRlci5tYXRjaChjaGFyYWN0ZXJzKTtcblxuICAgICAgaWYgKHJlc3VsdCAhPT0gbnVsbCkge1xuICAgICAgICBwYXR0ZXJuID0gYCR7cGF0dGVybn0ke3Jlc3VsdH1gO1xuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKCFjb252ZXJ0ZWQpIHtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIGlmIChhbmNob3JlZCkge1xuICAgIHBhdHRlcm4gPSBhZGRBbmNob3JzKHBhdHRlcm4pO1xuICB9XG5cbiAgcmV0dXJuIHBhdHRlcm47XG59XG5cbmZ1bmN0aW9uIGdsb2JGcm9tU3RyaW5nQW5kRGlyZWN0b3J5KHN0cmluZywgZGlyZWN0b3J5KSB7XG4gIGxldCBnbG9iO1xuXG4gIGNvbnN0IHN0cmluZ0dsb2JMaXRlcmFsID0gaXNTdHJpbmdHbG9iTGl0ZXJhbChzdHJpbmcpO1xuXG4gIGlmIChzdHJpbmdHbG9iTGl0ZXJhbCkge1xuICAgIGNvbnN0IGdsb2JMaXRlcmFsID0gc3RyaW5nOyAvLy9cblxuICAgIGdsb2IgPSBnbG9iTGl0ZXJhbDsgIC8vL1xuXG4gICAgZ2xvYiA9IHJlbW92ZVRyYWlsaW5nRm9yd2FyZFNsYXNoKGdsb2IpOyAgLy8vXG5cbiAgICBpZiAoZGlyZWN0b3J5KSB7XG4gICAgICBnbG9iID0gYWRkVHJhaWxpbmdGb3J3YXJkU2xhc2goZ2xvYik7IC8vL1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBhbmNob3JlZCA9IGZhbHNlLFxuICAgICAgICAgICAgcGF0dGVybiA9IHBhdHRlcm5Gcm9tR2xvYkFuZEFuY2hvcmVkKGdsb2IsIGFuY2hvcmVkKTtcblxuICAgICAgbmV3IFJlZ0V4cChwYXR0ZXJuKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgZ2xvYiA9IG51bGw7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGdsb2IgPSBudWxsO1xuICB9XG5cbiAgcmV0dXJuIGdsb2I7XG59XG4iXSwibmFtZXMiOlsiR2xvYlJ1bGUiLCJ0eXBlIiwiZ2xvYiIsInBhdHRlcm4iLCJyZWdFeHAiLCJnZXRUeXBlIiwiZ2V0R2xvYiIsImdldFBhdHRlcm4iLCJnZXRSZWdFeHAiLCJ0b0pTT04iLCJqc29uIiwiZmluZCIsImxpbmUiLCJvY2N1cnJlbmNlcyIsImNvbnRlbnQiLCJnZXRDb250ZW50Iiwib2Zmc2V0Iiwic3RyaW5nIiwicmVzdWx0IiwibWF0Y2giLCJvY2N1cnJlbmNlIiwiT2NjdXJyZW5jZSIsImZyb21SZXN1bHRBbmRPZmZzZXQiLCJlbmQiLCJnZXRFbmQiLCJzdGFydCIsInN1YnN0cmluZyIsInB1c2giLCJtYXRjaGVzIiwidGVzdCIsImlzRXF1YWxUbyIsInJ1bGUiLCJlcXVhbFRvIiwicnVsZVR5cGUiLCJydWxlR2xvYiIsImFzU3RyaW5nIiwiZnJvbUpTT04iLCJnbG9iUnVsZSIsIkdMT0JfVFlQRSIsIlJlZ0V4cCIsImZyb21TdHJpbmdBbmNob3JlZEFuZERpcmVjdG9yeSIsImFuY2hvcmVkIiwiZGlyZWN0b3J5IiwiZ2xvYkZyb21TdHJpbmdBbmREaXJlY3RvcnkiLCJwYXR0ZXJuRnJvbUdsb2JBbmRBbmNob3JlZCIsIkVNUFRZX1NUUklORyIsImNoYXJhY3RlcnMiLCJjb252ZXJ0ZWQiLCJjb252ZXJ0ZXJzIiwic29tZSIsImNvbnZlcnRlciIsImFkZEFuY2hvcnMiLCJzdHJpbmdHbG9iTGl0ZXJhbCIsImlzU3RyaW5nR2xvYkxpdGVyYWwiLCJnbG9iTGl0ZXJhbCIsInJlbW92ZVRyYWlsaW5nRm9yd2FyZFNsYXNoIiwiYWRkVHJhaWxpbmdGb3J3YXJkU2xhc2giLCJlcnJvciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFVcUJBOzs7aUVBUkU7aUVBQ0E7cUJBRUc7eUJBQ0c7dUJBQ087c0JBQzRDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVqRSxJQUFBLEFBQU1BLHlCQUFOO2FBQU1BLFNBQ1BDLElBQUksRUFBRUMsSUFBSSxFQUFFQyxPQUFPLEVBQUVDLE1BQU07Z0NBRHBCSjtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLE1BQU0sR0FBR0E7O2tCQUxHSjs7WUFRbkJLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osSUFBSTtZQUNsQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osSUFBSTtZQUNsQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osT0FBTztZQUNyQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osTUFBTTtZQUNwQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNUixPQUFPLElBQUksQ0FBQ0EsSUFBSSxFQUNoQkMsT0FBTyxJQUFJLENBQUNBLElBQUksRUFDaEJDLFVBQVUsSUFBSSxDQUFDQSxPQUFPLEVBQ3RCTyxPQUFPO29CQUNMVCxNQUFBQTtvQkFDQUMsTUFBQUE7b0JBQ0FDLFNBQUFBO2dCQUNGO2dCQUVOLE9BQU9PO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEs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
|