@sendly/cli 3.13.0 → 3.13.1
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/dist/commands/campaigns/clone.d.ts +14 -0
- package/dist/commands/campaigns/clone.js +47 -0
- package/dist/commands/campaigns/create.js +7 -6
- package/dist/commands/campaigns/delete.js +3 -3
- package/dist/commands/campaigns/get.js +28 -18
- package/dist/commands/campaigns/list.js +7 -8
- package/dist/commands/campaigns/preview.js +16 -5
- package/dist/commands/campaigns/schedule.js +6 -4
- package/dist/commands/campaigns/send.js +27 -9
- package/dist/commands/campaigns/update.d.ts +17 -0
- package/dist/commands/campaigns/update.js +66 -0
- package/dist/commands/contacts/import.d.ts +14 -0
- package/dist/commands/contacts/import.js +132 -0
- package/dist/commands/contacts/lists/get.d.ts +13 -0
- package/dist/commands/contacts/lists/get.js +63 -0
- package/dist/commands/contacts/lists/update.d.ts +15 -0
- package/dist/commands/contacts/lists/update.js +51 -0
- package/dist/commands/contacts/update.d.ts +15 -0
- package/dist/commands/contacts/update.js +52 -0
- package/dist/commands/status.js +3 -3
- package/oclif.manifest.json +2264 -723
- package/package.json +1 -1
package/dist/commands/status.js
CHANGED
|
@@ -63,7 +63,7 @@ export default class Status extends AuthenticatedCommand {
|
|
|
63
63
|
const tier = status?.account?.tier || "sandbox";
|
|
64
64
|
const tierDisplay = {
|
|
65
65
|
sandbox: colors.warning("Sandbox") + colors.dim(" (test only)"),
|
|
66
|
-
international: colors.primary("International") + colors.dim(" (
|
|
66
|
+
international: colors.primary("International") + colors.dim(" (90+ countries)"),
|
|
67
67
|
domestic: colors.success("US & Canada") + colors.dim(" (toll-free)"),
|
|
68
68
|
global: colors.success("Global") + colors.dim(" (full access)"),
|
|
69
69
|
};
|
|
@@ -116,7 +116,7 @@ export default class Status extends AuthenticatedCommand {
|
|
|
116
116
|
? colors.success("✓")
|
|
117
117
|
: colors.dim("○");
|
|
118
118
|
const intlLabel = caps.canSendInternational
|
|
119
|
-
? "
|
|
119
|
+
? "90+ countries"
|
|
120
120
|
: colors.dim("Upgrade to unlock");
|
|
121
121
|
console.log(` ${intlIcon} ${colors.dim("International")} ${intlLabel}`);
|
|
122
122
|
// US & Canada
|
|
@@ -186,4 +186,4 @@ export default class Status extends AuthenticatedCommand {
|
|
|
186
186
|
console.log();
|
|
187
187
|
}
|
|
188
188
|
}
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3N0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBa0NsRCxNQUFNLENBQUMsT0FBTyxPQUFPLE1BQU8sU0FBUSxvQkFBb0I7SUFDdEQsTUFBTSxDQUFDLFdBQVcsR0FDaEIscUVBQXFFLENBQUM7SUFFeEUsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQiwwQkFBMEI7UUFDMUIsaUNBQWlDO0tBQ2xDLENBQUM7SUFFRixNQUFNLENBQUMsS0FBSyxHQUFHO1FBQ2IsR0FBRyxvQkFBb0IsQ0FBQyxTQUFTO0tBQ2xDLENBQUM7SUFFRixLQUFLLENBQUMsR0FBRztRQUNQLHFDQUFxQztRQUNyQyxNQUFNLE1BQU0sR0FBRyxNQUFNLFNBQVM7YUFDM0IsR0FBRyxDQUF3Qix5QkFBeUIsQ0FBQzthQUNyRCxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckIsOENBQThDO1FBQzlDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDNUQsU0FBUztpQkFDTixHQUFHLENBSUQseUJBQXlCLENBQUM7aUJBQzVCLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQixFQUFFLENB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aEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDeEUsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdkIsT0FBTyxDQUFDLEdBQUcsQ0FDVCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsMkJBQTJCLENBQ25FLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7IGNvbG9ycywganNvbiwgaXNKc29uTW9kZSwgZm9ybWF0UmVsYXRpdmVUaW1lIH0gZnJvbSBcIi4uL2xpYi9vdXRwdXQuanNcIjtcbmltcG9ydCB7IGdldENvbmZpZ1ZhbHVlIH0gZnJvbSBcIi4uL2xpYi9jb25maWcuanNcIjtcblxuaW50ZXJmYWNlIEFjY291bnRTdGF0dXNSZXNwb25zZSB7XG4gIGFjY291bnQ6IHtcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIHRpZXI6IFwic2FuZGJveFwiIHwgXCJpbnRlcm5hdGlvbmFsXCIgfCBcImRvbWVzdGljXCIgfCBcImdsb2JhbFwiO1xuICAgIG9uYm9hcmRpbmdDb21wbGV0ZWQ6IGJvb2xlYW47XG4gIH07XG4gIHZlcmlmaWNhdGlvbjoge1xuICAgIHR5cGU6IHN0cmluZyB8IG51bGw7XG4gICAgc3RhdHVzOiBzdHJpbmcgfCBudWxsO1xuICAgIGlzVmVyaWZpZWQ6IGJvb2xlYW47XG4gICAgYWxwaGFTZW5kZXJJZDogc3RyaW5nIHwgbnVsbDtcbiAgICB0b2xsRnJlZU51bWJlcjogc3RyaW5nIHwgbnVsbDtcbiAgICBidXNpbmVzc05hbWU6IHN0cmluZyB8IG51bGw7XG4gIH0gfCBudWxsO1xuICBjYXBhYmlsaXRpZXM6IHtcbiAgICBjYW5TZW5kU2FuZGJveDogYm9vbGVhbjtcbiAgICBjYW5TZW5kSW50ZXJuYXRpb25hbDogYm9vbGVhbjtcbiAgICBjYW5TZW5kRG9tZXN0aWM6IGJvb2xlYW47XG4gICAgcmVnaW9uczogc3RyaW5nW107XG4gIH07XG4gIGNyZWRpdHM6IHtcbiAgICBiYWxhbmNlOiBudW1iZXI7XG4gICAgY2FuU2VuZExpdmU6IGJvb2xlYW47XG4gIH07XG4gIGtleXM6IHtcbiAgICBoYXNUZXN0S2V5OiBib29sZWFuO1xuICAgIGhhc0xpdmVLZXk6IGJvb2xlYW47XG4gICAgdG90YWxBY3RpdmU6IG51bWJlcjtcbiAgfTtcbiAgbmV4dFN0ZXBzOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdHVzIGV4dGVuZHMgQXV0aGVudGljYXRlZENvbW1hbmQge1xuICBzdGF0aWMgZGVzY3JpcHRpb24gPVxuICAgIFwiU2hvdyBhY2NvdW50IHN0YXR1cyBkYXNoYm9hcmQgd2l0aCBjcmVkaXRzLCB1c2FnZSwgYW5kIGNhcGFiaWxpdGllc1wiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHN0YXR1c1wiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gc3RhdHVzIC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBmbGFncyA9IHtcbiAgICAuLi5BdXRoZW50aWNhdGVkQ29tbWFuZC5iYXNlRmxhZ3MsXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIEZldGNoIGNvbXByZWhlbnNpdmUgYWNjb3VudCBzdGF0dXNcbiAgICBjb25zdCBzdGF0dXMgPSBhd2FpdCBhcGlDbGllbnRcbiAgICAgIC5nZXQ8QWNjb3VudFN0YXR1c1Jlc3BvbnNlPihcIi9hcGkvY2xpL2FjY291bnQvc3RhdHVzXCIpXG4gICAgICAuY2F0Y2goKCkgPT4gbnVsbCk7XG5cbiAgICAvLyBGYWxsYmFjayBkYXRhIGlmIG5ldyBlbmRwb2ludCBub3QgYXZhaWxhYmxlXG4gICAgY29uc3QgW2NyZWRpdHMsIG1lc3NhZ2VzLCB3ZWJob29rcywga2V5c10gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICBhcGlDbGllbnRcbiAgICAgICAgLmdldDx7XG4gICAgICAgICAgYmFsYW5jZTogbnVtYmVyO1xuICAgICAgICAgIHJlc2VydmVkQmFsYW5jZTogbnVtYmVyO1xuICAgICAgICAgIGF2YWlsYWJsZUJhbGFuY2U6IG51bWJlcjtcbiAgICAgICAgfT4oXCIvYXBpL3YxL2FjY291bnQvY3JlZGl0c1wiKVxuICAgICAgICAuY2F0Y2goKCkgPT4gKHsgYmFsYW5jZTogMCwgcmVzZXJ2ZWRCYWxhbmNlOiAwLCBhdmFpbGFibGVCYWxhbmNlOiAwIH0pKSxcbiAgICAgIGFwaUNsaWVudFxuICAgICAgICAuZ2V0PHsgbWVzc2FnZXM6IGFueVtdOyB0b3RhbDogbnVtYmVyIH0+KFwiL2FwaS92MS9tZXNzYWdlc1wiLCB7XG4gICAgICAgICAgbGltaXQ6IDUsXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiAoeyBtZXNzYWdlczogW10sIHRvdGFsOiAwIH0pKSxcbiAgICAgIGFwaUNsaWVudC5nZXQ8YW55W10+KFwiL2FwaS92MS93ZWJob29rc1wiKS5jYXRjaCgoKSA9PiBbXSksXG4gICAgICBhcGlDbGllbnRcbiAgICAgICAgLmdldDx7IGtleXM6IGFueVtdIH0+KFwiL2FwaS92MS9hY2NvdW50L2tleXNcIilcbiAgICAgICAgLmNhdGNoKCgpID0+ICh7IGtleXM6IFtdIH0pKSxcbiAgICBdKTtcblxuICAgIGNvbnN0IGVtYWlsID1cbiAgICAgIHN0YXR1cz8uYWNjb3VudD8uZW1haWwgfHwgZ2V0Q29uZmlnVmFsdWUoXCJlbWFpbFwiKSB8fCBcIlVua25vd25cIjtcbiAgICBjb25zdCBhcGlNb2RlID0gZ2V0Q29uZmlnVmFsdWUoXCJlbnZpcm9ubWVudFwiKSB8fCBcInRlc3RcIjtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24oe1xuICAgICAgICBhY2NvdW50OiBzdGF0dXM/LmFjY291bnQgfHwgeyBlbWFpbCwgdGllcjogXCJzYW5kYm94XCIgfSxcbiAgICAgICAgdmVyaWZpY2F0aW9uOiBzdGF0dXM/LnZlcmlmaWNhdGlvbiB8fCBudWxsLFxuICAgICAgICBjYXBhYmlsaXRpZXM6IHN0YXR1cz8uY2FwYWJpbGl0aWVzIHx8IHsgcmVnaW9uczogW1wic2FuZGJveFwiXSB9LFxuICAgICAgICBjcmVkaXRzOiBzdGF0dXM/LmNyZWRpdHMgfHwge1xuICAgICAgICAgIGJhbGFuY2U6IGNyZWRpdHMuYmFsYW5jZSxcbiAgICAgICAgICBjYW5TZW5kTGl2ZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIGtleXM6IHN0YXR1cz8ua2V5cyB8fCB7XG4gICAgICAgICAgaGFzVGVzdEtleTogZmFsc2UsXG4gICAgICAgICAgaGFzTGl2ZUtleTogZmFsc2UsXG4gICAgICAgICAgdG90YWxBY3RpdmU6IGtleXMua2V5cz8uZmlsdGVyKChrOiBhbnkpID0+IGsuaXNBY3RpdmUpLmxlbmd0aCB8fCAwLFxuICAgICAgICB9LFxuICAgICAgICBuZXh0U3RlcHM6IHN0YXR1cz8ubmV4dFN0ZXBzIHx8IFtdLFxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQmVhdXRpZnVsIGRhc2hib2FyZCBvdXRwdXRcbiAgICBjb25zb2xlLmxvZygpO1xuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKGNvbG9ycy5wcmltYXJ5KFwiICBTZW5kbHkgQWNjb3VudCBTdGF0dXNcIikpKTtcbiAgICBjb25zb2xlLmxvZyhjb2xvcnMuZGltKFwiICBcIiArIFwi4pSAXCIucmVwZWF0KDUwKSkpO1xuICAgIGNvbnNvbGUubG9nKCk7XG5cbiAgICAvLyBBY2NvdW50ICYgVGllciBTZWN0aW9uXG4gICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoXCIgIEFjY291bnRcIikpO1xuICAgIGNvbnNvbGUubG9nKGAgICAgJHtjb2xvcnMuZGltKFwiRW1haWw6XCIpfSAgICAgICAgICR7ZW1haWx9YCk7XG5cbiAgICAvLyBTaG93IHRpZXIgd2l0aCBjb2xvciBjb2RpbmdcbiAgICBjb25zdCB0aWVyID0gc3RhdHVzPy5hY2NvdW50Py50aWVyIHx8IFwic2FuZGJveFwiO1xuICAgIGNvbnN0IHRpZXJEaXNwbGF5ID0ge1xuICAgICAgc2FuZGJveDogY29sb3JzLndhcm5pbmcoXCJTYW5kYm94XCIpICsgY29sb3JzLmRpbShcIiAodGVzdCBvbmx5KVwiKSxcbiAgICAgIGludGVybmF0aW9uYWw6XG4gICAgICAgIGNvbG9ycy5wcmltYXJ5KFwiSW50ZXJuYXRpb25hbFwiKSArIGNvbG9ycy5kaW0oXCIgKDQ4IGNvdW50cmllcylcIiksXG4gICAgICBkb21lc3RpYzogY29sb3JzLnN1Y2Nlc3MoXCJVUyAmIENhbmFkYVwiKSArIGNvbG9ycy5kaW0oXCIgKHRvbGwtZnJlZSlcIiksXG4gICAgICBnbG9iYWw6IGNvbG9ycy5zdWNjZXNzKFwiR2xvYmFsXCIpICsgY29sb3JzLmRpbShcIiAoZnVsbCBhY2Nlc3MpXCIpLFxuICAgIH07XG4gICAgY29uc29sZS5sb2coYCAgICAke2NvbG9ycy5kaW0oXCJUaWVyOlwiKX0gICAgICAgICAgJHt0aWVyRGlzcGxheVt0aWVyXX1gKTtcbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgLy8gVmVyaWZpY2F0aW9uIFNlY3Rpb25cbiAgICBpZiAoc3RhdHVzPy52ZXJpZmljYXRpb24pIHtcbiAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiICBWZXJpZmljYXRpb25cIikpO1xuICAgICAgY29uc3QgdiA9IHN0YXR1cy52ZXJpZmljYXRpb247XG5cbiAgICAgIC8vIFN0YXR1cyB3aXRoIGNvbG9yXG4gICAgICBjb25zdCBzdGF0dXNDb2xvcnM6IFJlY29yZDxzdHJpbmcsIChzOiBzdHJpbmcpID0+IHN0cmluZz4gPSB7XG4gICAgICAgIGFwcHJvdmVkOiBjb2xvcnMuc3VjY2VzcyxcbiAgICAgICAgdmVyaWZpZWQ6IGNvbG9ycy5zdWNjZXNzLFxuICAgICAgICBwZW5kaW5nOiBjb2xvcnMud2FybmluZyxcbiAgICAgICAgaW5fcHJvZ3Jlc3M6IGNvbG9ycy53YXJuaW5nLFxuICAgICAgICByZWplY3RlZDogY29sb3JzLmVycm9yLFxuICAgICAgfTtcbiAgICAgIGNvbnN0IHN0YXR1c0NvbG9yID0gc3RhdHVzQ29sb3JzW3Yuc3RhdHVzIHx8IFwiXCJdIHx8IGNvbG9ycy5kaW07XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgYCAgICAke2NvbG9ycy5kaW0oXCJTdGF0dXM6XCIpfSAgICAgICAgJHtzdGF0dXNDb2xvcih2LnN0YXR1cyB8fCBcInVua25vd25cIil9YCxcbiAgICAgICk7XG5cbiAgICAgIC8vIFR5cGVcbiAgICAgIGNvbnN0IHR5cGVMYWJlbHM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAgIHRvbGxfZnJlZTogXCJUb2xsLUZyZWUgKFVTL0NBKVwiLFxuICAgICAgICBpbnRlcm5hdGlvbmFsOiBcIkludGVybmF0aW9uYWxcIixcbiAgICAgICAgYm90aDogXCJHbG9iYWwgKFVTL0NBICsgSW50bClcIixcbiAgICAgIH07XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgYCAgICAke2NvbG9ycy5kaW0oXCJUeXBlOlwiKX0gICAgICAgICAgJHt0eXBlTGFiZWxzW3YudHlwZSB8fCBcIlwiXSB8fCB2LnR5cGV9YCxcbiAgICAgICk7XG5cbiAgICAgIC8vIFNob3cgc2VuZGVyIElEIG9yIHRvbGwtZnJlZSBudW1iZXJcbiAgICAgIGlmICh2LmFscGhhU2VuZGVySWQpIHtcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgYCAgICAke2NvbG9ycy5kaW0oXCJTZW5kZXIgSUQ6XCIpfSAgICAgJHtjb2xvcnMucHJpbWFyeSh2LmFscGhhU2VuZGVySWQpfWAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAodi50b2xsRnJlZU51bWJlcikge1xuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICBgICAgICR7Y29sb3JzLmRpbShcIlRvbGwtRnJlZTpcIil9ICAgICAke2NvbG9ycy5wcmltYXJ5KHYudG9sbEZyZWVOdW1iZXIpfWAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgIH1cblxuICAgIC8vIENhcGFiaWxpdGllcyBTZWN0aW9uXG4gICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoXCIgIFNlbmQgQ2FwYWJpbGl0aWVzXCIpKTtcbiAgICBjb25zdCBjYXBzID0gc3RhdHVzPy5jYXBhYmlsaXRpZXMgfHwge1xuICAgICAgY2FuU2VuZFNhbmRib3g6IHRydWUsXG4gICAgICBjYW5TZW5kSW50ZXJuYXRpb25hbDogZmFsc2UsXG4gICAgICBjYW5TZW5kRG9tZXN0aWM6IGZhbHNlLFxuICAgIH07XG5cbiAgICAvLyBTYW5kYm94XG4gICAgY29uc3Qgc2FuZGJveEljb24gPSBjYXBzLmNhblNlbmRTYW5kYm94XG4gICAgICA/IGNvbG9ycy5zdWNjZXNzKFwi4pyTXCIpXG4gICAgICA6IGNvbG9ycy5kaW0oXCLil4tcIik7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBgICAgICR7c2FuZGJveEljb259ICR7Y29sb3JzLmRpbShcIlNhbmRib3hcIil9ICAgICAgICBUZXN0IG51bWJlcnMgb25seWAsXG4gICAgKTtcblxuICAgIC8vIEludGVybmF0aW9uYWxcbiAgICBjb25zdCBpbnRsSWNvbiA9IGNhcHMuY2FuU2VuZEludGVybmF0aW9uYWxcbiAgICAgID8gY29sb3JzLnN1Y2Nlc3MoXCLinJNcIilcbiAgICAgIDogY29sb3JzLmRpbShcIuKXi1wiKTtcbiAgICBjb25zdCBpbnRsTGFiZWwgPSBjYXBzLmNhblNlbmRJbnRlcm5hdGlvbmFsXG4gICAgICA/IFwiNDggY291bnRyaWVzXCJcbiAgICAgIDogY29sb3JzLmRpbShcIlVwZ3JhZGUgdG8gdW5sb2NrXCIpO1xuICAgIGNvbnNvbGUubG9nKGAgICAgJHtpbnRsSWNvbn0gJHtjb2xvcnMuZGltKFwiSW50ZXJuYXRpb25hbFwiKX0gICR7aW50bExhYmVsfWApO1xuXG4gICAgLy8gVVMgJiBDYW5hZGFcbiAgICBjb25zdCB1c0ljb24gPSBjYXBzLmNhblNlbmREb21lc3RpYyA/IGNvbG9ycy5zdWNjZXNzKFwi4pyTXCIpIDogY29sb3JzLmRpbShcIuKXi1wiKTtcbiAgICBjb25zdCB1c0xhYmVsID0gY2Fwcy5jYW5TZW5kRG9tZXN0aWNcbiAgICAgID8gXCJUd28td2F5IG1lc3NhZ2luZ1wiXG4gICAgICA6IGNvbG9ycy5kaW0oXCJVcGdyYWRlIHRvIHVubG9ja1wiKTtcbiAgICBjb25zb2xlLmxvZyhgICAgICR7dXNJY29ufSAke2NvbG9ycy5kaW0oXCJVUyAmIENhbmFkYVwiKX0gICAgJHt1c0xhYmVsfWApO1xuICAgIGNvbnNvbGUubG9nKCk7XG5cbiAgICAvLyBDcmVkaXRzIFNlY3Rpb25cbiAgICBjb25zdCBjcmVkaXRCYWxhbmNlID0gc3RhdHVzPy5jcmVkaXRzPy5iYWxhbmNlID8/IGNyZWRpdHMuYmFsYW5jZSA/PyAwO1xuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiICBDcmVkaXRzXCIpKTtcbiAgICBjb25zdCBjcmVkaXRDb2xvciA9XG4gICAgICBjcmVkaXRCYWxhbmNlID4gMTAwXG4gICAgICAgID8gY29sb3JzLnN1Y2Nlc3NcbiAgICAgICAgOiBjcmVkaXRCYWxhbmNlID4gMTBcbiAgICAgICAgICA/IGNvbG9ycy53YXJuaW5nXG4gICAgICAgICAgOiBjb2xvcnMuZXJyb3I7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBgICAgICR7Y29sb3JzLmRpbShcIkJhbGFuY2U6XCIpfSAgICAgICAke2NyZWRpdENvbG9yKGNyZWRpdEJhbGFuY2UudG9Mb2NhbGVTdHJpbmcoKSl9IGNyZWRpdHNgLFxuICAgICk7XG4gICAgaWYgKGNyZWRpdHMucmVzZXJ2ZWRCYWxhbmNlID4gMCkge1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGAgICAgJHtjb2xvcnMuZGltKFwiUmVzZXJ2ZWQ6XCIpfSAgICAgICR7Y29sb3JzLndhcm5pbmcoY3JlZGl0cy5yZXNlcnZlZEJhbGFuY2UudG9Mb2NhbGVTdHJpbmcoKSl9IGNyZWRpdHNgLFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc29sZS5sb2coKTtcblxuICAgIC8vIFJlc291cmNlcyBTZWN0aW9uXG4gICAgY29uc3QgYWN0aXZlS2V5cyA9XG4gICAgICBzdGF0dXM/LmtleXM/LnRvdGFsQWN0aXZlID8/XG4gICAgICBrZXlzLmtleXM/LmZpbHRlcigoazogYW55KSA9PiBrLmlzQWN0aXZlKS5sZW5ndGggPz9cbiAgICAgIDA7XG4gICAgY29uc3QgYWN0aXZlV2ViaG9va3MgPSB3ZWJob29rcy5maWx0ZXIoKHc6IGFueSkgPT4gdy5pc19hY3RpdmUpLmxlbmd0aDtcbiAgICBjb25zb2xlLmxvZyhjb2xvcnMuYm9sZChcIiAgUmVzb3VyY2VzXCIpKTtcbiAgICBjb25zb2xlLmxvZyhgICAgICR7Y29sb3JzLmRpbShcIkFQSSBLZXlzOlwiKX0gICAgICAke2FjdGl2ZUtleXN9IGFjdGl2ZWApO1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgYCAgICAke2NvbG9ycy5kaW0oXCJXZWJob29rczpcIil9ICAgICAgJHthY3RpdmVXZWJob29rc30gY29uZmlndXJlZGAsXG4gICAgKTtcbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgLy8gUmVjZW50IEFjdGl2aXR5XG4gICAgaWYgKG1lc3NhZ2VzLm1lc3NhZ2VzICYmIG1lc3NhZ2VzLm1lc3NhZ2VzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiICBSZWNlbnQgTWVzc2FnZXNcIikpO1xuICAgICAgbWVzc2FnZXMubWVzc2FnZXMuc2xpY2UoMCwgMykuZm9yRWFjaCgobXNnOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgbXNnU3RhdHVzID0gbXNnLnN0YXR1cyB8fCBcInVua25vd25cIjtcbiAgICAgICAgY29uc3Qgc3RhdHVzSWNvbiA9XG4gICAgICAgICAgbXNnU3RhdHVzID09PSBcImRlbGl2ZXJlZFwiXG4gICAgICAgICAgICA/IGNvbG9ycy5zdWNjZXNzKFwi4pyTXCIpXG4gICAgICAgICAgICA6IG1zZ1N0YXR1cyA9PT0gXCJzZW50XCJcbiAgICAgICAgICAgICAgPyBjb2xvcnMucHJpbWFyeShcIuKGklwiKVxuICAgICAgICAgICAgICA6IG1zZ1N0YXR1cyA9PT0gXCJmYWlsZWRcIlxuICAgICAgICAgICAgICAgID8gY29sb3JzLmVycm9yKFwi4pyXXCIpXG4gICAgICAgICAgICAgICAgOiBjb2xvcnMuZGltKFwi4peLXCIpO1xuICAgICAgICBjb25zdCB0byA9IG1zZy50byB8fCBcIlVua25vd25cIjtcbiAgICAgICAgY29uc3QgdGltZSA9IG1zZy5jcmVhdGVkQXRcbiAgICAgICAgICA/IGZvcm1hdFJlbGF0aXZlVGltZShtc2cuY3JlYXRlZEF0KVxuICAgICAgICAgIDogXCJyZWNlbnRseVwiO1xuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICBgICAgICR7c3RhdHVzSWNvbn0gJHtjb2xvcnMuZGltKHRvLnNsaWNlKC00KS5wYWRTdGFydCg4LCBcIuKAolwiKSl9ICR7Y29sb3JzLmRpbShtc2dTdGF0dXMucGFkRW5kKDEwKSl9ICR7Y29sb3JzLmRpbSh0aW1lKX1gLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgIH1cblxuICAgIC8vIE5leHQgU3RlcHMgKGlmIGFueSlcbiAgICBpZiAoc3RhdHVzPy5uZXh0U3RlcHMgJiYgc3RhdHVzLm5leHRTdGVwcy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zb2xlLmxvZyhjb2xvcnMuYm9sZChjb2xvcnMud2FybmluZyhcIiAgTmV4dCBTdGVwc1wiKSkpO1xuICAgICAgc3RhdHVzLm5leHRTdGVwcy5mb3JFYWNoKChzdGVwLCBpKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGAgICAgJHtjb2xvcnMud2FybmluZyhgJHtpICsgMX0uYCl9ICR7c3RlcH1gKTtcbiAgICAgIH0pO1xuICAgICAgY29uc29sZS5sb2coKTtcbiAgICB9XG5cbiAgICAvLyBRdWljayBBY3Rpb25zXG4gICAgY29uc29sZS5sb2coY29sb3JzLmRpbShcIiAgUXVpY2sgQWN0aW9uc1wiKSk7XG4gICAgY29uc29sZS5sb2coYCAgICAke2NvbG9ycy5jb2RlKFwic2VuZGx5IHNtcyBzZW5kXCIpfSAgICAgIFNlbmQgYSBtZXNzYWdlYCk7XG4gICAgY29uc29sZS5sb2coYCAgICAke2NvbG9ycy5jb2RlKFwic2VuZGx5IGtleXMgbGlzdFwiKX0gICAgIFZpZXcgQVBJIGtleXNgKTtcbiAgICBpZiAodGllciA9PT0gXCJzYW5kYm94XCIpIHtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgICAgICR7Y29sb3JzLmNvZGUoXCJzZW5kbHkgb25ib2FyZGluZ1wiKX0gICAgVXBncmFkZSB0byBwcm9kdWN0aW9uYCxcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnNvbGUubG9nKCk7XG4gIH1cbn1cbiJdfQ==
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3N0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBa0NsRCxNQUFNLENBQUMsT0FBTyxPQUFPLE1BQU8sU0FBUSxvQkFBb0I7SUFDdEQsTUFBTSxDQUFDLFdBQVcsR0FDaEIscUVBQXFFLENBQUM7SUFFeEUsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQiwwQkFBMEI7UUFDMUIsaUNBQWlDO0tBQ2xDLENBQUM7SUFFRixNQUFNLENBQUMsS0FBSyxHQUFHO1FBQ2IsR0FBRyxvQkFBb0IsQ0FBQyxTQUFTO0tBQ2xDLENBQUM7SUFFRixLQUFLLENBQUMsR0FBRztRQUNQLHFDQUFxQztRQUNyQyxNQUFNLE1BQU0sR0FBRyxNQUFNLFNBQVM7YUFDM0IsR0FBRyxDQUF3Qix5QkFBeUIsQ0FBQzthQUNyRCxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckIsOENBQThDO1FBQzlDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDNUQsU0FBUztpQkFDTixHQUFHLENBSUQseUJBQXlCLENBQUM7aUJBQzVCLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQixFQUFFLENB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aEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDeEUsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdkIsT0FBTyxDQUFDLEdBQUcsQ0FDVCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsMkJBQTJCLENBQ25FLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7IGNvbG9ycywganNvbiwgaXNKc29uTW9kZSwgZm9ybWF0UmVsYXRpdmVUaW1lIH0gZnJvbSBcIi4uL2xpYi9vdXRwdXQuanNcIjtcbmltcG9ydCB7IGdldENvbmZpZ1ZhbHVlIH0gZnJvbSBcIi4uL2xpYi9jb25maWcuanNcIjtcblxuaW50ZXJmYWNlIEFjY291bnRTdGF0dXNSZXNwb25zZSB7XG4gIGFjY291bnQ6IHtcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIHRpZXI6IFwic2FuZGJveFwiIHwgXCJpbnRlcm5hdGlvbmFsXCIgfCBcImRvbWVzdGljXCIgfCBcImdsb2JhbFwiO1xuICAgIG9uYm9hcmRpbmdDb21wbGV0ZWQ6IGJvb2xlYW47XG4gIH07XG4gIHZlcmlmaWNhdGlvbjoge1xuICAgIHR5cGU6IHN0cmluZyB8IG51bGw7XG4gICAgc3RhdHVzOiBzdHJpbmcgfCBudWxsO1xuICAgIGlzVmVyaWZpZWQ6IGJvb2xlYW47XG4gICAgYWxwaGFTZW5kZXJJZDogc3RyaW5nIHwgbnVsbDtcbiAgICB0b2xsRnJlZU51bWJlcjogc3RyaW5nIHwgbnVsbDtcbiAgICBidXNpbmVzc05hbWU6IHN0cmluZyB8IG51bGw7XG4gIH0gfCBudWxsO1xuICBjYXBhYmlsaXRpZXM6IHtcbiAgICBjYW5TZW5kU2FuZGJveDogYm9vbGVhbjtcbiAgICBjYW5TZW5kSW50ZXJuYXRpb25hbDogYm9vbGVhbjtcbiAgICBjYW5TZW5kRG9tZXN0aWM6IGJvb2xlYW47XG4gICAgcmVnaW9uczogc3RyaW5nW107XG4gIH07XG4gIGNyZWRpdHM6IHtcbiAgICBiYWxhbmNlOiBudW1iZXI7XG4gICAgY2FuU2VuZExpdmU6IGJvb2xlYW47XG4gIH07XG4gIGtleXM6IHtcbiAgICBoYXNUZXN0S2V5OiBib29sZWFuO1xuICAgIGhhc0xpdmVLZXk6IGJvb2xlYW47XG4gICAgdG90YWxBY3RpdmU6IG51bWJlcjtcbiAgfTtcbiAgbmV4dFN0ZXBzOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdHVzIGV4dGVuZHMgQXV0aGVudGljYXRlZENvbW1hbmQge1xuICBzdGF0aWMgZGVzY3JpcHRpb24gPVxuICAgIFwiU2hvdyBhY2NvdW50IHN0YXR1cyBkYXNoYm9hcmQgd2l0aCBjcmVkaXRzLCB1c2FnZSwgYW5kIGNhcGFiaWxpdGllc1wiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHN0YXR1c1wiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gc3RhdHVzIC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBmbGFncyA9IHtcbiAgICAuLi5BdXRoZW50aWNhdGVkQ29tbWFuZC5iYXNlRmxhZ3MsXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIEZldGNoIGNvbXByZWhlbnNpdmUgYWNjb3VudCBzdGF0dXNcbiAgICBjb25zdCBzdGF0dXMgPSBhd2FpdCBhcGlDbGllbnRcbiAgICAgIC5nZXQ8QWNjb3VudFN0YXR1c1Jlc3BvbnNlPihcIi9hcGkvY2xpL2FjY291bnQvc3RhdHVzXCIpXG4gICAgICAuY2F0Y2goKCkgPT4gbnVsbCk7XG5cbiAgICAvLyBGYWxsYmFjayBkYXRhIGlmIG5ldyBlbmRwb2ludCBub3QgYXZhaWxhYmxlXG4gICAgY29uc3QgW2NyZWRpdHMsIG1lc3NhZ2VzLCB3ZWJob29rcywga2V5c10gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICBhcGlDbGllbnRcbiAgICAgICAgLmdldDx7XG4gICAgICAgICAgYmFsYW5jZTogbnVtYmVyO1xuICAgICAgICAgIHJlc2VydmVkQmFsYW5jZTogbnVtYmVyO1xuICAgICAgICAgIGF2YWlsYWJsZUJhbGFuY2U6IG51bWJlcjtcbiAgICAgICAgfT4oXCIvYXBpL3YxL2FjY291bnQvY3JlZGl0c1wiKVxuICAgICAgICAuY2F0Y2goKCkgPT4gKHsgYmFsYW5jZTogMCwgcmVzZXJ2ZWRCYWxhbmNlOiAwLCBhdmFpbGFibGVCYWxhbmNlOiAwIH0pKSxcbiAgICAgIGFwaUNsaWVudFxuICAgICAgICAuZ2V0PHsgbWVzc2FnZXM6IGFueVtdOyB0b3RhbDogbnVtYmVyIH0+KFwiL2FwaS92MS9tZXNzYWdlc1wiLCB7XG4gICAgICAgICAgbGltaXQ6IDUsXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiAoeyBtZXNzYWdlczogW10sIHRvdGFsOiAwIH0pKSxcbiAgICAgIGFwaUNsaWVudC5nZXQ8YW55W10+KFwiL2FwaS92MS93ZWJob29rc1wiKS5jYXRjaCgoKSA9PiBbXSksXG4gICAgICBhcGlDbGllbnRcbiAgICAgICAgLmdldDx7IGtleXM6IGFueVtdIH0+KFwiL2FwaS92MS9hY2NvdW50L2tleXNcIilcbiAgICAgICAgLmNhdGNoKCgpID0+ICh7IGtleXM6IFtdIH0pKSxcbiAgICBdKTtcblxuICAgIGNvbnN0IGVtYWlsID1cbiAgICAgIHN0YXR1cz8uYWNjb3VudD8uZW1haWwgfHwgZ2V0Q29uZmlnVmFsdWUoXCJlbWFpbFwiKSB8fCBcIlVua25vd25cIjtcbiAgICBjb25zdCBhcGlNb2RlID0gZ2V0Q29uZmlnVmFsdWUoXCJlbnZpcm9ubWVudFwiKSB8fCBcInRlc3RcIjtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24oe1xuICAgICAgICBhY2NvdW50OiBzdGF0dXM/LmFjY291bnQgfHwgeyBlbWFpbCwgdGllcjogXCJzYW5kYm94XCIgfSxcbiAgICAgICAgdmVyaWZpY2F0aW9uOiBzdGF0dXM/LnZlcmlmaWNhdGlvbiB8fCBudWxsLFxuICAgICAgICBjYXBhYmlsaXRpZXM6IHN0YXR1cz8uY2FwYWJpbGl0aWVzIHx8IHsgcmVnaW9uczogW1wic2FuZGJveFwiXSB9LFxuICAgICAgICBjcmVkaXRzOiBzdGF0dXM/LmNyZWRpdHMgfHwge1xuICAgICAgICAgIGJhbGFuY2U6IGNyZWRpdHMuYmFsYW5jZSxcbiAgICAgICAgICBjYW5TZW5kTGl2ZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIGtleXM6IHN0YXR1cz8ua2V5cyB8fCB7XG4gICAgICAgICAgaGFzVGVzdEtleTogZmFsc2UsXG4gICAgICAgICAgaGFzTGl2ZUtleTogZmFsc2UsXG4gICAgICAgICAgdG90YWxBY3RpdmU6IGtleXMua2V5cz8uZmlsdGVyKChrOiBhbnkpID0+IGsuaXNBY3RpdmUpLmxlbmd0aCB8fCAwLFxuICAgICAgICB9LFxuICAgICAgICBuZXh0U3RlcHM6IHN0YXR1cz8ubmV4dFN0ZXBzIHx8IFtdLFxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQmVhdXRpZnVsIGRhc2hib2FyZCBvdXRwdXRcbiAgICBjb25zb2xlLmxvZygpO1xuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKGNvbG9ycy5wcmltYXJ5KFwiICBTZW5kbHkgQWNjb3VudCBTdGF0dXNcIikpKTtcbiAgICBjb25zb2xlLmxvZyhjb2xvcnMuZGltKFwiICBcIiArIFwi4pSAXCIucmVwZWF0KDUwKSkpO1xuICAgIGNvbnNvbGUubG9nKCk7XG5cbiAgICAvLyBBY2NvdW50ICYgVGllciBTZWN0aW9uXG4gICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoXCIgIEFjY291bnRcIikpO1xuICAgIGNvbnNvbGUubG9nKGAgICAgJHtjb2xvcnMuZGltKFwiRW1haWw6XCIpfSAgICAgICAgICR7ZW1haWx9YCk7XG5cbiAgICAvLyBTaG93IHRpZXIgd2l0aCBjb2xvciBjb2RpbmdcbiAgICBjb25zdCB0aWVyID0gc3RhdHVzPy5hY2NvdW50Py50aWVyIHx8IFwic2FuZGJveFwiO1xuICAgIGNvbnN0IHRpZXJEaXNwbGF5ID0ge1xuICAgICAgc2FuZGJveDogY29sb3JzLndhcm5pbmcoXCJTYW5kYm94XCIpICsgY29sb3JzLmRpbShcIiAodGVzdCBvbmx5KVwiKSxcbiAgICAgIGludGVybmF0aW9uYWw6XG4gICAgICAgIGNvbG9ycy5wcmltYXJ5KFwiSW50ZXJuYXRpb25hbFwiKSArIGNvbG9ycy5kaW0oXCIgKDkwKyBjb3VudHJpZXMpXCIpLFxuICAgICAgZG9tZXN0aWM6IGNvbG9ycy5zdWNjZXNzKFwiVVMgJiBDYW5hZGFcIikgKyBjb2xvcnMuZGltKFwiICh0b2xsLWZyZWUpXCIpLFxuICAgICAgZ2xvYmFsOiBjb2xvcnMuc3VjY2VzcyhcIkdsb2JhbFwiKSArIGNvbG9ycy5kaW0oXCIgKGZ1bGwgYWNjZXNzKVwiKSxcbiAgICB9O1xuICAgIGNvbnNvbGUubG9nKGAgICAgJHtjb2xvcnMuZGltKFwiVGllcjpcIil9ICAgICAgICAgICR7dGllckRpc3BsYXlbdGllcl19YCk7XG4gICAgY29uc29sZS5sb2coKTtcblxuICAgIC8vIFZlcmlmaWNhdGlvbiBTZWN0aW9uXG4gICAgaWYgKHN0YXR1cz8udmVyaWZpY2F0aW9uKSB7XG4gICAgICBjb25zb2xlLmxvZyhjb2xvcnMuYm9sZChcIiAgVmVyaWZpY2F0aW9uXCIpKTtcbiAgICAgIGNvbnN0IHYgPSBzdGF0dXMudmVyaWZpY2F0aW9uO1xuXG4gICAgICAvLyBTdGF0dXMgd2l0aCBjb2xvclxuICAgICAgY29uc3Qgc3RhdHVzQ29sb3JzOiBSZWNvcmQ8c3RyaW5nLCAoczogc3RyaW5nKSA9PiBzdHJpbmc+ID0ge1xuICAgICAgICBhcHByb3ZlZDogY29sb3JzLnN1Y2Nlc3MsXG4gICAgICAgIHZlcmlmaWVkOiBjb2xvcnMuc3VjY2VzcyxcbiAgICAgICAgcGVuZGluZzogY29sb3JzLndhcm5pbmcsXG4gICAgICAgIGluX3Byb2dyZXNzOiBjb2xvcnMud2FybmluZyxcbiAgICAgICAgcmVqZWN0ZWQ6IGNvbG9ycy5lcnJvcixcbiAgICAgIH07XG4gICAgICBjb25zdCBzdGF0dXNDb2xvciA9IHN0YXR1c0NvbG9yc1t2LnN0YXR1cyB8fCBcIlwiXSB8fCBjb2xvcnMuZGltO1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGAgICAgJHtjb2xvcnMuZGltKFwiU3RhdHVzOlwiKX0gICAgICAgICR7c3RhdHVzQ29sb3Iodi5zdGF0dXMgfHwgXCJ1bmtub3duXCIpfWAsXG4gICAgICApO1xuXG4gICAgICAvLyBUeXBlXG4gICAgICBjb25zdCB0eXBlTGFiZWxzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgICB0b2xsX2ZyZWU6IFwiVG9sbC1GcmVlIChVUy9DQSlcIixcbiAgICAgICAgaW50ZXJuYXRpb25hbDogXCJJbnRlcm5hdGlvbmFsXCIsXG4gICAgICAgIGJvdGg6IFwiR2xvYmFsIChVUy9DQSArIEludGwpXCIsXG4gICAgICB9O1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGAgICAgJHtjb2xvcnMuZGltKFwiVHlwZTpcIil9ICAgICAgICAgICR7dHlwZUxhYmVsc1t2LnR5cGUgfHwgXCJcIl0gfHwgdi50eXBlfWAsXG4gICAgICApO1xuXG4gICAgICAvLyBTaG93IHNlbmRlciBJRCBvciB0b2xsLWZyZWUgbnVtYmVyXG4gICAgICBpZiAodi5hbHBoYVNlbmRlcklkKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGAgICAgJHtjb2xvcnMuZGltKFwiU2VuZGVyIElEOlwiKX0gICAgICR7Y29sb3JzLnByaW1hcnkodi5hbHBoYVNlbmRlcklkKX1gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKHYudG9sbEZyZWVOdW1iZXIpIHtcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgYCAgICAke2NvbG9ycy5kaW0oXCJUb2xsLUZyZWU6XCIpfSAgICAgJHtjb2xvcnMucHJpbWFyeSh2LnRvbGxGcmVlTnVtYmVyKX1gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc29sZS5sb2coKTtcbiAgICB9XG5cbiAgICAvLyBDYXBhYmlsaXRpZXMgU2VjdGlvblxuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiICBTZW5kIENhcGFiaWxpdGllc1wiKSk7XG4gICAgY29uc3QgY2FwcyA9IHN0YXR1cz8uY2FwYWJpbGl0aWVzIHx8IHtcbiAgICAgIGNhblNlbmRTYW5kYm94OiB0cnVlLFxuICAgICAgY2FuU2VuZEludGVybmF0aW9uYWw6IGZhbHNlLFxuICAgICAgY2FuU2VuZERvbWVzdGljOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgLy8gU2FuZGJveFxuICAgIGNvbnN0IHNhbmRib3hJY29uID0gY2Fwcy5jYW5TZW5kU2FuZGJveFxuICAgICAgPyBjb2xvcnMuc3VjY2VzcyhcIuKck1wiKVxuICAgICAgOiBjb2xvcnMuZGltKFwi4peLXCIpO1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgYCAgICAke3NhbmRib3hJY29ufSAke2NvbG9ycy5kaW0oXCJTYW5kYm94XCIpfSAgICAgICAgVGVzdCBudW1iZXJzIG9ubHlgLFxuICAgICk7XG5cbiAgICAvLyBJbnRlcm5hdGlvbmFsXG4gICAgY29uc3QgaW50bEljb24gPSBjYXBzLmNhblNlbmRJbnRlcm5hdGlvbmFsXG4gICAgICA/IGNvbG9ycy5zdWNjZXNzKFwi4pyTXCIpXG4gICAgICA6IGNvbG9ycy5kaW0oXCLil4tcIik7XG4gICAgY29uc3QgaW50bExhYmVsID0gY2Fwcy5jYW5TZW5kSW50ZXJuYXRpb25hbFxuICAgICAgPyBcIjkwKyBjb3VudHJpZXNcIlxuICAgICAgOiBjb2xvcnMuZGltKFwiVXBncmFkZSB0byB1bmxvY2tcIik7XG4gICAgY29uc29sZS5sb2coYCAgICAke2ludGxJY29ufSAke2NvbG9ycy5kaW0oXCJJbnRlcm5hdGlvbmFsXCIpfSAgJHtpbnRsTGFiZWx9YCk7XG5cbiAgICAvLyBVUyAmIENhbmFkYVxuICAgIGNvbnN0IHVzSWNvbiA9IGNhcHMuY2FuU2VuZERvbWVzdGljID8gY29sb3JzLnN1Y2Nlc3MoXCLinJNcIikgOiBjb2xvcnMuZGltKFwi4peLXCIpO1xuICAgIGNvbnN0IHVzTGFiZWwgPSBjYXBzLmNhblNlbmREb21lc3RpY1xuICAgICAgPyBcIlR3by13YXkgbWVzc2FnaW5nXCJcbiAgICAgIDogY29sb3JzLmRpbShcIlVwZ3JhZGUgdG8gdW5sb2NrXCIpO1xuICAgIGNvbnNvbGUubG9nKGAgICAgJHt1c0ljb259ICR7Y29sb3JzLmRpbShcIlVTICYgQ2FuYWRhXCIpfSAgICAke3VzTGFiZWx9YCk7XG4gICAgY29uc29sZS5sb2coKTtcblxuICAgIC8vIENyZWRpdHMgU2VjdGlvblxuICAgIGNvbnN0IGNyZWRpdEJhbGFuY2UgPSBzdGF0dXM/LmNyZWRpdHM/LmJhbGFuY2UgPz8gY3JlZGl0cy5iYWxhbmNlID8/IDA7XG4gICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoXCIgIENyZWRpdHNcIikpO1xuICAgIGNvbnN0IGNyZWRpdENvbG9yID1cbiAgICAgIGNyZWRpdEJhbGFuY2UgPiAxMDBcbiAgICAgICAgPyBjb2xvcnMuc3VjY2Vzc1xuICAgICAgICA6IGNyZWRpdEJhbGFuY2UgPiAxMFxuICAgICAgICAgID8gY29sb3JzLndhcm5pbmdcbiAgICAgICAgICA6IGNvbG9ycy5lcnJvcjtcbiAgICBjb25zb2xlLmxvZyhcbiAgICAgIGAgICAgJHtjb2xvcnMuZGltKFwiQmFsYW5jZTpcIil9ICAgICAgICR7Y3JlZGl0Q29sb3IoY3JlZGl0QmFsYW5jZS50b0xvY2FsZVN0cmluZygpKX0gY3JlZGl0c2AsXG4gICAgKTtcbiAgICBpZiAoY3JlZGl0cy5yZXNlcnZlZEJhbGFuY2UgPiAwKSB7XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgYCAgICAke2NvbG9ycy5kaW0oXCJSZXNlcnZlZDpcIil9ICAgICAgJHtjb2xvcnMud2FybmluZyhjcmVkaXRzLnJlc2VydmVkQmFsYW5jZS50b0xvY2FsZVN0cmluZygpKX0gY3JlZGl0c2AsXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgLy8gUmVzb3VyY2VzIFNlY3Rpb25cbiAgICBjb25zdCBhY3RpdmVLZXlzID1cbiAgICAgIHN0YXR1cz8ua2V5cz8udG90YWxBY3RpdmUgPz9cbiAgICAgIGtleXMua2V5cz8uZmlsdGVyKChrOiBhbnkpID0+IGsuaXNBY3RpdmUpLmxlbmd0aCA/P1xuICAgICAgMDtcbiAgICBjb25zdCBhY3RpdmVXZWJob29rcyA9IHdlYmhvb2tzLmZpbHRlcigodzogYW55KSA9PiB3LmlzX2FjdGl2ZSkubGVuZ3RoO1xuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiICBSZXNvdXJjZXNcIikpO1xuICAgIGNvbnNvbGUubG9nKGAgICAgJHtjb2xvcnMuZGltKFwiQVBJIEtleXM6XCIpfSAgICAgICR7YWN0aXZlS2V5c30gYWN0aXZlYCk7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBgICAgICR7Y29sb3JzLmRpbShcIldlYmhvb2tzOlwiKX0gICAgICAke2FjdGl2ZVdlYmhvb2tzfSBjb25maWd1cmVkYCxcbiAgICApO1xuICAgIGNvbnNvbGUubG9nKCk7XG5cbiAgICAvLyBSZWNlbnQgQWN0aXZpdHlcbiAgICBpZiAobWVzc2FnZXMubWVzc2FnZXMgJiYgbWVzc2FnZXMubWVzc2FnZXMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoXCIgIFJlY2VudCBNZXNzYWdlc1wiKSk7XG4gICAgICBtZXNzYWdlcy5tZXNzYWdlcy5zbGljZSgwLCAzKS5mb3JFYWNoKChtc2c6IGFueSkgPT4ge1xuICAgICAgICBjb25zdCBtc2dTdGF0dXMgPSBtc2cuc3RhdHVzIHx8IFwidW5rbm93blwiO1xuICAgICAgICBjb25zdCBzdGF0dXNJY29uID1cbiAgICAgICAgICBtc2dTdGF0dXMgPT09IFwiZGVsaXZlcmVkXCJcbiAgICAgICAgICAgID8gY29sb3JzLnN1Y2Nlc3MoXCLinJNcIilcbiAgICAgICAgICAgIDogbXNnU3RhdHVzID09PSBcInNlbnRcIlxuICAgICAgICAgICAgICA/IGNvbG9ycy5wcmltYXJ5KFwi4oaSXCIpXG4gICAgICAgICAgICAgIDogbXNnU3RhdHVzID09PSBcImZhaWxlZFwiXG4gICAgICAgICAgICAgICAgPyBjb2xvcnMuZXJyb3IoXCLinJdcIilcbiAgICAgICAgICAgICAgICA6IGNvbG9ycy5kaW0oXCLil4tcIik7XG4gICAgICAgIGNvbnN0IHRvID0gbXNnLnRvIHx8IFwiVW5rbm93blwiO1xuICAgICAgICBjb25zdCB0aW1lID0gbXNnLmNyZWF0ZWRBdFxuICAgICAgICAgID8gZm9ybWF0UmVsYXRpdmVUaW1lKG1zZy5jcmVhdGVkQXQpXG4gICAgICAgICAgOiBcInJlY2VudGx5XCI7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGAgICAgJHtzdGF0dXNJY29ufSAke2NvbG9ycy5kaW0odG8uc2xpY2UoLTQpLnBhZFN0YXJ0KDgsIFwi4oCiXCIpKX0gJHtjb2xvcnMuZGltKG1zZ1N0YXR1cy5wYWRFbmQoMTApKX0gJHtjb2xvcnMuZGltKHRpbWUpfWAsXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICAgIGNvbnNvbGUubG9nKCk7XG4gICAgfVxuXG4gICAgLy8gTmV4dCBTdGVwcyAoaWYgYW55KVxuICAgIGlmIChzdGF0dXM/Lm5leHRTdGVwcyAmJiBzdGF0dXMubmV4dFN0ZXBzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKGNvbG9ycy53YXJuaW5nKFwiICBOZXh0IFN0ZXBzXCIpKSk7XG4gICAgICBzdGF0dXMubmV4dFN0ZXBzLmZvckVhY2goKHN0ZXAsIGkpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coYCAgICAke2NvbG9ycy53YXJuaW5nKGAke2kgKyAxfS5gKX0gJHtzdGVwfWApO1xuICAgICAgfSk7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgIH1cblxuICAgIC8vIFF1aWNrIEFjdGlvbnNcbiAgICBjb25zb2xlLmxvZyhjb2xvcnMuZGltKFwiICBRdWljayBBY3Rpb25zXCIpKTtcbiAgICBjb25zb2xlLmxvZyhgICAgICR7Y29sb3JzLmNvZGUoXCJzZW5kbHkgc21zIHNlbmRcIil9ICAgICAgU2VuZCBhIG1lc3NhZ2VgKTtcbiAgICBjb25zb2xlLmxvZyhgICAgICR7Y29sb3JzLmNvZGUoXCJzZW5kbHkga2V5cyBsaXN0XCIpfSAgICAgVmlldyBBUEkga2V5c2ApO1xuICAgIGlmICh0aWVyID09PSBcInNhbmRib3hcIikge1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGAgICAgJHtjb2xvcnMuY29kZShcInNlbmRseSBvbmJvYXJkaW5nXCIpfSAgICBVcGdyYWRlIHRvIHByb2R1Y3Rpb25gLFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc29sZS5sb2coKTtcbiAgfVxufVxuIl19
|