parse-my-command 0.1.6 → 0.1.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/README.md +10 -0
- package/dist/index.cjs +16 -6
- package/dist/index.js +14 -6
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -53,6 +53,16 @@ console.log(missingOptions.get(childCommand)); // Set(1) { 'optionC' }
|
|
|
53
53
|
|
|
54
54
|
More examples can be found in the [examples](/examples/) directory.
|
|
55
55
|
|
|
56
|
+
## Error Handling
|
|
57
|
+
|
|
58
|
+
`partialParse` throws errors in the following cases:
|
|
59
|
+
|
|
60
|
+
1. In all cases where your `Command` with the
|
|
61
|
+
[default `exitCallback`](https://github.com/tj/commander.js#override-exit-and-output-handling)
|
|
62
|
+
would throw an error (e.g. when displaying help)
|
|
63
|
+
2. In all cases where your command would throw an error before an action is
|
|
64
|
+
executed (e.g. when a required option is missing)
|
|
65
|
+
|
|
56
66
|
## How It Works and Limitations
|
|
57
67
|
|
|
58
68
|
This module works by creating a (best-effort) clone of the command and its
|
package/dist/index.cjs
CHANGED
|
@@ -33,6 +33,12 @@ __export(src_exports, {
|
|
|
33
33
|
partialParse: () => partialParse
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(src_exports);
|
|
36
|
+
|
|
37
|
+
// src/noop.ts
|
|
38
|
+
var noop = () => {
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
// src/index.ts
|
|
36
42
|
var import_camelcase = __toESM(require("camelcase"), 1);
|
|
37
43
|
var import_commander = require("commander");
|
|
38
44
|
var findMissingOptions = (command, providedOptionsByCommand) => {
|
|
@@ -68,6 +74,13 @@ var copyCommandSettings = (source, target) => {
|
|
|
68
74
|
target.name(source.name());
|
|
69
75
|
target.aliases(source.aliases());
|
|
70
76
|
};
|
|
77
|
+
var disableCommandOutput = (command) => {
|
|
78
|
+
command.configureOutput({
|
|
79
|
+
writeOut: noop,
|
|
80
|
+
writeErr: noop,
|
|
81
|
+
outputError: noop
|
|
82
|
+
});
|
|
83
|
+
};
|
|
71
84
|
var cloneOption = (option) => {
|
|
72
85
|
const newOption = new import_commander.Option(option.flags, option.description);
|
|
73
86
|
newOption.default(option.defaultValue, option.defaultValueDescription);
|
|
@@ -92,11 +105,8 @@ var partialParse = (command, argv, options) => {
|
|
|
92
105
|
const createParserCommand = (parserCommand2, command2) => {
|
|
93
106
|
commandsMap.set(parserCommand2, command2);
|
|
94
107
|
copyCommandSettings(command2, parserCommand2);
|
|
95
|
-
parserCommand2
|
|
96
|
-
|
|
97
|
-
throw error;
|
|
98
|
-
}
|
|
99
|
-
});
|
|
108
|
+
disableCommandOutput(parserCommand2);
|
|
109
|
+
parserCommand2.exitOverride();
|
|
100
110
|
for (const option of command2.options) {
|
|
101
111
|
parserCommand2.addOption(cloneOption(option));
|
|
102
112
|
}
|
|
@@ -130,4 +140,4 @@ var partialParse = (command, argv, options) => {
|
|
|
130
140
|
findMissingOptions,
|
|
131
141
|
partialParse
|
|
132
142
|
});
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2luZGV4LnRzIiwgIi4uL3NyYy9ub29wLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgeyBub29wIH0gZnJvbSBcIi4vbm9vcFwiO1xuaW1wb3J0IGNhbWVsQ2FzZSBmcm9tIFwiY2FtZWxjYXNlXCI7XG5pbXBvcnQge1xuICB0eXBlIE9wdGlvblZhbHVlcyxcbiAgQ29tbWFuZCxcbiAgdHlwZSBQYXJzZU9wdGlvbnMsXG4gIE9wdGlvbixcbn0gZnJvbSBcImNvbW1hbmRlclwiO1xuXG5leHBvcnQgY29uc3QgZmluZE1pc3NpbmdPcHRpb25zID0gKFxuICBjb21tYW5kOiBDb21tYW5kLFxuICBwcm92aWRlZE9wdGlvbnNCeUNvbW1hbmQ6IE1hcDxDb21tYW5kLCBPcHRpb25WYWx1ZXM+LFxuKSA9PiB7XG4gIGNvbnN0IG1pc3NpbmdPcHRpb25zQnlDb21tYW5kID0gbmV3IE1hcDxDb21tYW5kLCBTZXQ8c3RyaW5nPj4oKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICBsZXQgY3VycmVudENvbW1hbmQ6IENvbW1hbmQgfCB1bmRlZmluZWQgfCBudWxsID0gY29tbWFuZDtcblxuICB3aGlsZSAoY3VycmVudENvbW1hbmQpIHtcbiAgICBjb25zdCBtaXNzaW5nT3B0aW9ucyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIGNvbnN0IHByb3ZpZGVkT3B0aW9ucyA9IHByb3ZpZGVkT3B0aW9uc0J5Q29tbWFuZC5nZXQoY3VycmVudENvbW1hbmQpO1xuICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIGN1cnJlbnRDb21tYW5kLm9wdGlvbnMpIHtcbiAgICAgIGNvbnN0IGtleSA9IGNhbWVsQ2FzZSgob3B0aW9uLmxvbmcgPz8gb3B0aW9uLnNob3J0KSEpO1xuICAgICAgaWYgKHByb3ZpZGVkT3B0aW9ucz8uW2tleV0pIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIG1pc3NpbmdPcHRpb25zLmFkZChrZXkpO1xuICAgIH1cblxuICAgIG1pc3NpbmdPcHRpb25zQnlDb21tYW5kLnNldChjdXJyZW50Q29tbWFuZCwgbWlzc2luZ09wdGlvbnMpO1xuICAgIGN1cnJlbnRDb21tYW5kID0gY3VycmVudENvbW1hbmQucGFyZW50O1xuICB9XG5cbiAgcmV0dXJuIG1pc3NpbmdPcHRpb25zQnlDb21tYW5kO1xufTtcblxuZXhwb3J0IHR5cGUgUGFydGlhbFBhcnNlUmVzdWx0ID0ge1xuICAvKipcbiAgICogVGhlIGNvbW1hbmQgd2hvc2UgYWN0aW9uIHdpbGwgYmUgZXhlY3V0ZWRcbiAgICovXG4gIG1hdGNoZWRDb21tYW5kOiBDb21tYW5kIHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICogQSBtYXAgb2YgY29tbWFuZHMgdG8gYSBzZXQgb2YgbWlzc2luZyBvcHRpb25zIGZvciB0aGF0IGNvbW1hbmRcbiAgICovXG4gIG1pc3NpbmdPcHRpb25zOiBNYXA8Q29tbWFuZCwgU2V0PHN0cmluZz4+O1xuICAvKipcbiAgICogQSBtYXAgb2YgY29tbWFuZHMgdG8gdGhlIG9wdGlvbnMgcHJvdmlkZWQgZm9yIHRoYXQgY29tbWFuZFxuICAgKi9cbiAgcHJvdmlkZWRPcHRpb25zOiBNYXA8Q29tbWFuZCwgT3B0aW9uVmFsdWVzPjtcbn07XG5cbmNvbnN0IGNvcHlDb21tYW5kU2V0dGluZ3MgPSAoc291cmNlOiBDb21tYW5kLCB0YXJnZXQ6IENvbW1hbmQpID0+IHtcbiAgZm9yIChjb25zdCBrZXlzVG9Db3B5IG9mIFtcbiAgICBcIl9hbGxvd0V4Y2Vzc0FyZ3VtZW50c1wiLFxuICAgIFwiX2FsbG93VW5rbm93bk9wdGlvblwiLFxuICAgIFwiX2FyZ3NcIixcbiAgICBcIl9jb21iaW5lRmxhZ0FuZE9wdGlvbmFsVmFsdWVcIixcbiAgICBcIl9kZWZhdWx0Q29tbWFuZE5hbWVcIixcbiAgICBcIl9lbmFibGVQb3NpdGlvbmFsT3B0aW9uc1wiLFxuICAgIFwiX3Bhc3NUaHJvdWdoT3B0aW9uc1wiLFxuICBdIGFzIGNvbnN0KSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtYXNzaWdubWVudFxuICAgICh0YXJnZXQgYXMgYW55KVtrZXlzVG9Db3B5XSA9IChzb3VyY2UgYXMgYW55KVtrZXlzVG9Db3B5XTtcbiAgfVxuXG4gIHRhcmdldC5uYW1lKHNvdXJjZS5uYW1lKCkpO1xuICB0YXJnZXQuYWxpYXNlcyhzb3VyY2UuYWxpYXNlcygpKTtcbn07XG5cbmNvbnN0IGRpc2FibGVDb21tYW5kT3V0cHV0ID0gKGNvbW1hbmQ6IENvbW1hbmQpID0+IHtcbiAgY29tbWFuZC5jb25maWd1cmVPdXRwdXQoe1xuICAgIHdyaXRlT3V0OiBub29wLFxuICAgIHdyaXRlRXJyOiBub29wLFxuICAgIG91dHB1dEVycm9yOiBub29wLFxuICB9KTtcbn07XG5cbmNvbnN0IGNsb25lT3B0aW9uID0gKG9wdGlvbjogT3B0aW9uKSA9PiB7XG4gIGNvbnN0IG5ld09wdGlvbiA9IG5ldyBPcHRpb24ob3B0aW9uLmZsYWdzLCBvcHRpb24uZGVzY3JpcHRpb24pO1xuICBuZXdPcHRpb24uZGVmYXVsdChvcHRpb24uZGVmYXVsdFZhbHVlLCBvcHRpb24uZGVmYXVsdFZhbHVlRGVzY3JpcHRpb24pO1xuICBpZiAob3B0aW9uLmFyZ0Nob2ljZXMpIHtcbiAgICBuZXdPcHRpb24uY2hvaWNlcyhvcHRpb24uYXJnQ2hvaWNlcyk7XG4gIH1cblxuICBuZXdPcHRpb24ubWFrZU9wdGlvbk1hbmRhdG9yeShmYWxzZSk7XG4gIG5ld09wdGlvbi5wcmVzZXQob3B0aW9uLnBhcnNlQXJnKTtcbiAgbmV3T3B0aW9uLmNvbmZsaWN0cyhcbiAgICAob3B0aW9uIGFzIE9wdGlvbiAmIHsgY29uZmxpY3RzV2l0aDogc3RyaW5nW10gfSkuY29uZmxpY3RzV2l0aCxcbiAgKTtcbiAgbmV3T3B0aW9uLmVudigob3B0aW9uIGFzIE9wdGlvbiAmIHsgZW52VmFyOiBzdHJpbmcgfSkuZW52VmFyKTtcbiAgaWYgKG9wdGlvbi5wYXJzZUFyZykge1xuICAgIG5ld09wdGlvbi5hcmdQYXJzZXIob3B0aW9uLnBhcnNlQXJnKTtcbiAgfVxuXG4gIHJldHVybiBuZXdPcHRpb247XG59O1xuXG4vKipcbiAqIFBhcnRpYWxseSBwYXJzZSBhcmd2IGZvciBhIGNvbW1hbmQgd2l0aG91dCBleGVjdXRpbmcgdGhlIGFjdGlvbi4gQHNlZSB7QGxpbmsgQ29tbWFuZC5wYXJzZX1cbiAqXG4gKiBAcmV0dXJucyBBbiBvYmplY3QgY29udGFpbmluZyB0aGUgbWF0Y2hlZCBjb21tYW5kLCB0aGUgcHJvdmlkZWQgb3B0aW9ucywgYW5kIHRoZSBtaXNzaW5nIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBjb25zdCBwYXJ0aWFsUGFyc2UgPSAoXG4gIGNvbW1hbmQ6IENvbW1hbmQsXG4gIGFyZ3Y6IHJlYWRvbmx5IHN0cmluZ1tdLFxuICBvcHRpb25zPzogUGFyc2VPcHRpb25zLFxuKTogUGFydGlhbFBhcnNlUmVzdWx0ID0+IHtcbiAgY29uc3QgcHJvdmlkZWRPcHRpb25zID0gbmV3IE1hcDxDb21tYW5kLCBPcHRpb25WYWx1ZXM+KCk7XG4gIGNvbnN0IGNvbW1hbmRzTWFwID0gbmV3IE1hcDxDb21tYW5kLCBDb21tYW5kPigpO1xuICBsZXQgbWF0Y2hlZENvbW1hbmQ6IENvbW1hbmQgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3QgY3JlYXRlUGFyc2VyQ29tbWFuZCA9IChwYXJzZXJDb21tYW5kOiBDb21tYW5kLCBjb21tYW5kOiBDb21tYW5kKSA9PiB7XG4gICAgY29tbWFuZHNNYXAuc2V0KHBhcnNlckNvbW1hbmQsIGNvbW1hbmQpO1xuXG4gICAgY29weUNvbW1hbmRTZXR0aW5ncyhjb21tYW5kLCBwYXJzZXJDb21tYW5kKTtcbiAgICBkaXNhYmxlQ29tbWFuZE91dHB1dChwYXJzZXJDb21tYW5kKTtcbiAgICBwYXJzZXJDb21tYW5kLmV4aXRPdmVycmlkZSgpO1xuXG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgY29tbWFuZC5vcHRpb25zKSB7XG4gICAgICBwYXJzZXJDb21tYW5kLmFkZE9wdGlvbihjbG9uZU9wdGlvbihvcHRpb24pKTtcbiAgICB9XG5cbiAgICBwYXJzZXJDb21tYW5kLmhvb2soXCJwcmVTdWJjb21tYW5kXCIsICh0aGlzQ29tbWFuZCwgYWN0aW9uQ29tbWFuZCkgPT4ge1xuICAgICAgcHJvdmlkZWRPcHRpb25zLnNldChjb21tYW5kc01hcC5nZXQocGFyc2VyQ29tbWFuZCkhLCB0aGlzQ29tbWFuZC5vcHRzKCkpO1xuICAgICAgcHJvdmlkZWRPcHRpb25zLnNldChjb21tYW5kc01hcC5nZXQoYWN0aW9uQ29tbWFuZCkhLCB0aGlzQ29tbWFuZC5vcHRzKCkpO1xuICAgIH0pO1xuXG4gICAgcGFyc2VyQ29tbWFuZC5hY3Rpb24oKCkgPT4ge1xuICAgICAgcHJvdmlkZWRPcHRpb25zLnNldChcbiAgICAgICAgY29tbWFuZHNNYXAuZ2V0KHBhcnNlckNvbW1hbmQpISxcbiAgICAgICAgcGFyc2VyQ29tbWFuZC5vcHRzKCksXG4gICAgICApO1xuICAgICAgbWF0Y2hlZENvbW1hbmQgPSBjb21tYW5kO1xuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBzdWJjb21tYW5kIG9mIGNvbW1hbmQuY29tbWFuZHMgYXMgQ29tbWFuZFtdKSB7XG4gICAgICBjb25zdCBwYXJzZXJTdWJjb21tYW5kID0gcGFyc2VyQ29tbWFuZC5jb21tYW5kKHN1YmNvbW1hbmQubmFtZSgpKTtcbiAgICAgIGNyZWF0ZVBhcnNlckNvbW1hbmQocGFyc2VyU3ViY29tbWFuZCwgc3ViY29tbWFuZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcnNlckNvbW1hbmQ7XG4gIH07XG5cbiAgY29uc3QgcGFyc2VyQ29tbWFuZCA9IGNyZWF0ZVBhcnNlckNvbW1hbmQoXG4gICAgbmV3IENvbW1hbmQoKS5leGl0T3ZlcnJpZGUoKSxcbiAgICBjb21tYW5kLFxuICApO1xuICBwYXJzZXJDb21tYW5kLnBhcnNlKGFyZ3YsIG9wdGlvbnMpO1xuXG4gIGNvbnN0IG1pc3NpbmdPcHRpb25zID0gbWF0Y2hlZENvbW1hbmRcbiAgICA/IGZpbmRNaXNzaW5nT3B0aW9ucyhtYXRjaGVkQ29tbWFuZCwgcHJvdmlkZWRPcHRpb25zKVxuICAgIDogbmV3IE1hcDxDb21tYW5kLCBTZXQ8c3RyaW5nPj4oKTtcblxuICByZXR1cm4geyBtYXRjaGVkQ29tbWFuZCwgbWlzc2luZ09wdGlvbnMsIHByb3ZpZGVkT3B0aW9ucyB9O1xufTtcbiIsICIvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG5leHBvcnQgY29uc3Qgbm9vcCA9ICgpID0+IHt9O1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7OztBQ0NPLElBQU0sT0FBTyxNQUFNO0FBQUM7OztBREEzQix1QkFBc0I7QUFDdEIsdUJBS087QUFFQSxJQUFNLHFCQUFxQixDQUNoQyxTQUNBLDZCQUNHO0FBQ0gsUUFBTSwwQkFBMEIsb0JBQUksSUFBMEI7QUFHOUQsTUFBSSxpQkFBNkM7QUFFakQsU0FBTyxnQkFBZ0I7QUFDckIsVUFBTSxpQkFBaUIsb0JBQUksSUFBWTtBQUN2QyxVQUFNLGtCQUFrQix5QkFBeUIsSUFBSSxjQUFjO0FBQ25FLGVBQVcsVUFBVSxlQUFlLFNBQVM7QUFDM0MsWUFBTSxVQUFNLGlCQUFBQSxTQUFXLE9BQU8sUUFBUSxPQUFPLEtBQU87QUFDcEQsVUFBSSxrQkFBa0IsR0FBRyxHQUFHO0FBQzFCO0FBQUEsTUFDRjtBQUVBLHFCQUFlLElBQUksR0FBRztBQUFBLElBQ3hCO0FBRUEsNEJBQXdCLElBQUksZ0JBQWdCLGNBQWM7QUFDMUQscUJBQWlCLGVBQWU7QUFBQSxFQUNsQztBQUVBLFNBQU87QUFDVDtBQWlCQSxJQUFNLHNCQUFzQixDQUFDLFFBQWlCLFdBQW9CO0FBQ2hFLGFBQVcsY0FBYztB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
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
// src/noop.ts
|
|
2
|
+
var noop = () => {
|
|
3
|
+
};
|
|
4
|
+
|
|
1
5
|
// src/index.ts
|
|
2
6
|
import camelCase from "camelcase";
|
|
3
7
|
import {
|
|
@@ -37,6 +41,13 @@ var copyCommandSettings = (source, target) => {
|
|
|
37
41
|
target.name(source.name());
|
|
38
42
|
target.aliases(source.aliases());
|
|
39
43
|
};
|
|
44
|
+
var disableCommandOutput = (command) => {
|
|
45
|
+
command.configureOutput({
|
|
46
|
+
writeOut: noop,
|
|
47
|
+
writeErr: noop,
|
|
48
|
+
outputError: noop
|
|
49
|
+
});
|
|
50
|
+
};
|
|
40
51
|
var cloneOption = (option) => {
|
|
41
52
|
const newOption = new Option(option.flags, option.description);
|
|
42
53
|
newOption.default(option.defaultValue, option.defaultValueDescription);
|
|
@@ -61,11 +72,8 @@ var partialParse = (command, argv, options) => {
|
|
|
61
72
|
const createParserCommand = (parserCommand2, command2) => {
|
|
62
73
|
commandsMap.set(parserCommand2, command2);
|
|
63
74
|
copyCommandSettings(command2, parserCommand2);
|
|
64
|
-
parserCommand2
|
|
65
|
-
|
|
66
|
-
throw error;
|
|
67
|
-
}
|
|
68
|
-
});
|
|
75
|
+
disableCommandOutput(parserCommand2);
|
|
76
|
+
parserCommand2.exitOverride();
|
|
69
77
|
for (const option of command2.options) {
|
|
70
78
|
parserCommand2.addOption(cloneOption(option));
|
|
71
79
|
}
|
|
@@ -98,4 +106,4 @@ export {
|
|
|
98
106
|
findMissingOptions,
|
|
99
107
|
partialParse
|
|
100
108
|
};
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL25vb3AudHMiLCAiLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG5leHBvcnQgY29uc3Qgbm9vcCA9ICgpID0+IHt9O1xuIiwgImltcG9ydCB7IG5vb3AgfSBmcm9tIFwiLi9ub29wXCI7XG5pbXBvcnQgY2FtZWxDYXNlIGZyb20gXCJjYW1lbGNhc2VcIjtcbmltcG9ydCB7XG4gIHR5cGUgT3B0aW9uVmFsdWVzLFxuICBDb21tYW5kLFxuICB0eXBlIFBhcnNlT3B0aW9ucyxcbiAgT3B0aW9uLFxufSBmcm9tIFwiY29tbWFuZGVyXCI7XG5cbmV4cG9ydCBjb25zdCBmaW5kTWlzc2luZ09wdGlvbnMgPSAoXG4gIGNvbW1hbmQ6IENvbW1hbmQsXG4gIHByb3ZpZGVkT3B0aW9uc0J5Q29tbWFuZDogTWFwPENvbW1hbmQsIE9wdGlvblZhbHVlcz4sXG4pID0+IHtcbiAgY29uc3QgbWlzc2luZ09wdGlvbnNCeUNvbW1hbmQgPSBuZXcgTWFwPENvbW1hbmQsIFNldDxzdHJpbmc+PigpO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXG4gIGxldCBjdXJyZW50Q29tbWFuZDogQ29tbWFuZCB8IHVuZGVmaW5lZCB8IG51bGwgPSBjb21tYW5kO1xuXG4gIHdoaWxlIChjdXJyZW50Q29tbWFuZCkge1xuICAgIGNvbnN0IG1pc3NpbmdPcHRpb25zID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgY29uc3QgcHJvdmlkZWRPcHRpb25zID0gcHJvdmlkZWRPcHRpb25zQnlDb21tYW5kLmdldChjdXJyZW50Q29tbWFuZCk7XG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgY3VycmVudENvbW1hbmQub3B0aW9ucykge1xuICAgICAgY29uc3Qga2V5ID0gY2FtZWxDYXNlKChvcHRpb24ubG9uZyA/PyBvcHRpb24uc2hvcnQpISk7XG4gICAgICBpZiAocHJvdmlkZWRPcHRpb25zPy5ba2V5XSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgbWlzc2luZ09wdGlvbnMuYWRkKGtleSk7XG4gICAgfVxuXG4gICAgbWlzc2luZ09wdGlvbnNCeUNvbW1hbmQuc2V0KGN1cnJlbnRDb21tYW5kLCBtaXNzaW5nT3B0aW9ucyk7XG4gICAgY3VycmVudENvbW1hbmQgPSBjdXJyZW50Q29tbWFuZC5wYXJlbnQ7XG4gIH1cblxuICByZXR1cm4gbWlzc2luZ09wdGlvbnNCeUNvbW1hbmQ7XG59O1xuXG5leHBvcnQgdHlwZSBQYXJ0aWFsUGFyc2VSZXN1bHQgPSB7XG4gIC8qKlxuICAgKiBUaGUgY29tbWFuZCB3aG9zZSBhY3Rpb24gd2lsbCBiZSBleGVjdXRlZFxuICAgKi9cbiAgbWF0Y2hlZENvbW1hbmQ6IENvbW1hbmQgfCB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBjb21tYW5kcyB0byBhIHNldCBvZiBtaXNzaW5nIG9wdGlvbnMgZm9yIHRoYXQgY29tbWFuZFxuICAgKi9cbiAgbWlzc2luZ09wdGlvbnM6IE1hcDxDb21tYW5kLCBTZXQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBBIG1hcCBvZiBjb21tYW5kcyB0byB0aGUgb3B0aW9ucyBwcm92aWRlZCBmb3IgdGhhdCBjb21tYW5kXG4gICAqL1xuICBwcm92aWRlZE9wdGlvbnM6IE1hcDxDb21tYW5kLCBPcHRpb25WYWx1ZXM+O1xufTtcblxuY29uc3QgY29weUNvbW1hbmRTZXR0aW5ncyA9IChzb3VyY2U6IENvbW1hbmQsIHRhcmdldDogQ29tbWFuZCkgPT4ge1xuICBmb3IgKGNvbnN0IGtleXNUb0NvcHkgb2YgW1xuICAgIFwiX2FsbG93RXhjZXNzQXJndW1lbnRzXCIsXG4gICAgXCJfYWxsb3dVbmtub3duT3B0aW9uXCIsXG4gICAgXCJfYXJnc1wiLFxuICAgIFwiX2NvbWJpbmVGbGFnQW5kT3B0aW9uYWxWYWx1ZVwiLFxuICAgIFwiX2RlZmF1bHRDb21tYW5kTmFtZVwiLFxuICAgIFwiX2VuYWJsZVBvc2l0aW9uYWxPcHRpb25zXCIsXG4gICAgXCJfcGFzc1Rocm91Z2hPcHRpb25zXCIsXG4gIF0gYXMgY29uc3QpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1hc3NpZ25tZW50XG4gICAgKHRhcmdldCBhcyBhbnkpW2tleXNUb0NvcHldID0gKHNvdXJjZSBhcyBhbnkpW2tleXNUb0NvcHldO1xuICB9XG5cbiAgdGFyZ2V0Lm5hbWUoc291cmNlLm5hbWUoKSk7XG4gIHRhcmdldC5hbGlhc2VzKHNvdXJjZS5hbGlhc2VzKCkpO1xufTtcblxuY29uc3QgZGlzYWJsZUNvbW1hbmRPdXRwdXQgPSAoY29tbWFuZDogQ29tbWFuZCkgPT4ge1xuICBjb21tYW5kLmNvbmZpZ3VyZU91dHB1dCh7XG4gICAgd3JpdGVPdXQ6IG5vb3AsXG4gICAgd3JpdGVFcnI6IG5vb3AsXG4gICAgb3V0cHV0RXJyb3I6IG5vb3AsXG4gIH0pO1xufTtcblxuY29uc3QgY2xvbmVPcHRpb24gPSAob3B0aW9uOiBPcHRpb24pID0+IHtcbiAgY29uc3QgbmV3T3B0aW9uID0gbmV3IE9wdGlvbihvcHRpb24uZmxhZ3MsIG9wdGlvbi5kZXNjcmlwdGlvbik7XG4gIG5ld09wdGlvbi5kZWZhdWx0KG9wdGlvbi5kZWZhdWx0VmFsdWUsIG9wdGlvbi5kZWZhdWx0VmFsdWVEZXNjcmlwdGlvbik7XG4gIGlmIChvcHRpb24uYXJnQ2hvaWNlcykge1xuICAgIG5ld09wdGlvbi5jaG9pY2VzKG9wdGlvbi5hcmdDaG9pY2VzKTtcbiAgfVxuXG4gIG5ld09wdGlvbi5tYWtlT3B0aW9uTWFuZGF0b3J5KGZhbHNlKTtcbiAgbmV3T3B0aW9uLnByZXNldChvcHRpb24ucGFyc2VBcmcpO1xuICBuZXdPcHRpb24uY29uZmxpY3RzKFxuICAgIChvcHRpb24gYXMgT3B0aW9uICYgeyBjb25mbGljdHNXaXRoOiBzdHJpbmdbXSB9KS5jb25mbGljdHNXaXRoLFxuICApO1xuICBuZXdPcHRpb24uZW52KChvcHRpb24gYXMgT3B0aW9uICYgeyBlbnZWYXI6IHN0cmluZyB9KS5lbnZWYXIpO1xuICBpZiAob3B0aW9uLnBhcnNlQXJnKSB7XG4gICAgbmV3T3B0aW9uLmFyZ1BhcnNlcihvcHRpb24ucGFyc2VBcmcpO1xuICB9XG5cbiAgcmV0dXJuIG5ld09wdGlvbjtcbn07XG5cbi8qKlxuICogUGFydGlhbGx5IHBhcnNlIGFyZ3YgZm9yIGEgY29tbWFuZCB3aXRob3V0IGV4ZWN1dGluZyB0aGUgYWN0aW9uLiBAc2VlIHtAbGluayBDb21tYW5kLnBhcnNlfVxuICpcbiAqIEByZXR1cm5zIEFuIG9iamVjdCBjb250YWluaW5nIHRoZSBtYXRjaGVkIGNvbW1hbmQsIHRoZSBwcm92aWRlZCBvcHRpb25zLCBhbmQgdGhlIG1pc3Npbmcgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnRpYWxQYXJzZSA9IChcbiAgY29tbWFuZDogQ29tbWFuZCxcbiAgYXJndjogcmVhZG9ubHkgc3RyaW5nW10sXG4gIG9wdGlvbnM/OiBQYXJzZU9wdGlvbnMsXG4pOiBQYXJ0aWFsUGFyc2VSZXN1bHQgPT4ge1xuICBjb25zdCBwcm92aWRlZE9wdGlvbnMgPSBuZXcgTWFwPENvbW1hbmQsIE9wdGlvblZhbHVlcz4oKTtcbiAgY29uc3QgY29tbWFuZHNNYXAgPSBuZXcgTWFwPENvbW1hbmQsIENvbW1hbmQ+KCk7XG4gIGxldCBtYXRjaGVkQ29tbWFuZDogQ29tbWFuZCB8IHVuZGVmaW5lZDtcblxuICBjb25zdCBjcmVhdGVQYXJzZXJDb21tYW5kID0gKHBhcnNlckNvbW1hbmQ6IENvbW1hbmQsIGNvbW1hbmQ6IENvbW1hbmQpID0+IHtcbiAgICBjb21tYW5kc01hcC5zZXQocGFyc2VyQ29tbWFuZCwgY29tbWFuZCk7XG5cbiAgICBjb3B5Q29tbWFuZFNldHRpbmdzKGNvbW1hbmQsIHBhcnNlckNvbW1hbmQpO1xuICAgIGRpc2FibGVDb21tYW5kT3V0cHV0KHBhcnNlckNvbW1hbmQpO1xuICAgIHBhcnNlckNvbW1hbmQuZXhpdE92ZXJyaWRlKCk7XG5cbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBjb21tYW5kLm9wdGlvbnMpIHtcbiAgICAgIHBhcnNlckNvbW1hbmQuYWRkT3B0aW9uKGNsb25lT3B0aW9uKG9wdGlvbikpO1xuICAgIH1cblxuICAgIHBhcnNlckNvbW1hbmQuaG9vayhcInByZVN1YmNvbW1hbmRcIiwgKHRoaXNDb21tYW5kLCBhY3Rpb25Db21tYW5kKSA9PiB7XG4gICAgICBwcm92aWRlZE9wdGlvbnMuc2V0KGNvbW1hbmRzTWFwLmdldChwYXJzZXJDb21tYW5kKSEsIHRoaXNDb21tYW5kLm9wdHMoKSk7XG4gICAgICBwcm92aWRlZE9wdGlvbnMuc2V0KGNvbW1hbmRzTWFwLmdldChhY3Rpb25Db21tYW5kKSEsIHRoaXNDb21tYW5kLm9wdHMoKSk7XG4gICAgfSk7XG5cbiAgICBwYXJzZXJDb21tYW5kLmFjdGlvbigoKSA9PiB7XG4gICAgICBwcm92aWRlZE9wdGlvbnMuc2V0KFxuICAgICAgICBjb21tYW5kc01hcC5nZXQocGFyc2VyQ29tbWFuZCkhLFxuICAgICAgICBwYXJzZXJDb21tYW5kLm9wdHMoKSxcbiAgICAgICk7XG4gICAgICBtYXRjaGVkQ29tbWFuZCA9IGNvbW1hbmQ7XG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IHN1YmNvbW1hbmQgb2YgY29tbWFuZC5jb21tYW5kcyBhcyBDb21tYW5kW10pIHtcbiAgICAgIGNvbnN0IHBhcnNlclN1YmNvbW1hbmQgPSBwYXJzZXJDb21tYW5kLmNvbW1hbmQoc3ViY29tbWFuZC5uYW1lKCkpO1xuICAgICAgY3JlYXRlUGFyc2VyQ29tbWFuZChwYXJzZXJTdWJjb21tYW5kLCBzdWJjb21tYW5kKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyc2VyQ29tbWFuZDtcbiAgfTtcblxuICBjb25zdCBwYXJzZXJDb21tYW5kID0gY3JlYXRlUGFyc2VyQ29tbWFuZChcbiAgICBuZXcgQ29tbWFuZCgpLmV4aXRPdmVycmlkZSgpLFxuICAgIGNvbW1hbmQsXG4gICk7XG4gIHBhcnNlckNvbW1hbmQucGFyc2UoYXJndiwgb3B0aW9ucyk7XG5cbiAgY29uc3QgbWlzc2luZ09wdGlvbnMgPSBtYXRjaGVkQ29tbWFuZFxuICAgID8gZmluZE1pc3NpbmdPcHRpb25zKG1hdGNoZWRDb21tYW5kLCBwcm92aWRlZE9wdGlvbnMpXG4gICAgOiBuZXcgTWFwPENvbW1hbmQsIFNldDxzdHJpbmc+PigpO1xuXG4gIHJldHVybiB7IG1hdGNoZWRDb21tYW5kLCBtaXNzaW5nT3B0aW9ucywgcHJvdmlkZWRPcHRpb25zIH07XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNPLElBQU0sT0FBTyxNQUFNO0FBQUM7OztBQ0EzQixPQUFPLGVBQWU7QUFDdEI7QUFBQSxFQUVFO0FBQUEsRUFFQTtBQUFBLE9BQ0s7QUFFQSxJQUFNLHFCQUFxQixDQUNoQyxTQUNBLDZCQUNHO0FBQ0gsUUFBTSwwQkFBMEIsb0JBQUksSUFBMEI7QUFHOUQsTUFBSSxpQkFBNkM7QUFFakQsU0FBTyxnQkFBZ0I7QUFDckIsVUFBTSxpQkFBaUIsb0JBQUksSUFBWTtBQUN2QyxVQUFNLGtCQUFrQix5QkFBeUIsSUFBSSxjQUFjO0FBQ25FLGVBQVcsVUFBVSxlQUFlLFNBQVM7QUFDM0MsWUFBTSxNQUFNLFVBQVcsT0FBTyxRQUFRLE9BQU8sS0FBTztBQUNwRCxVQUFJLGtCQUFrQixHQUFHLEdBQUc7QUFDMUI7QUFBQSxNQUNGO0FBRUEscUJBQWUsSUFBSSxHQUFHO0FBQUEsSUFDeEI7QUFFQSw0QkFBd0IsSUFBSSxnQkFBZ0IsY0FBYztBQUMxRCxxQkFBaUIsZUFBZTtBQUFBLEVBQ2xDO0FBRUEsU0FBTztBQUNUO0FBaUJBLElBQU0sc0JBQXNCLENBQUMsUUFBaUIsV0FBb0I7QUFDaEUsYUFBVyxjQUFjO0FBQUEsSUFDdkI7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7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
|