@vendasta/meetings 0.99.2 → 0.99.3
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/esm2020/lib/_internal/interfaces/shared.interface.mjs +1 -1
- package/esm2020/lib/_internal/objects/shared.mjs +4 -1
- package/esm2020/lib/guest/guest.service.mjs +1 -1
- package/esm2020/lib/shared/host-user.mjs +3 -2
- package/fesm2015/vendasta-meetings.mjs +5 -1
- package/fesm2015/vendasta-meetings.mjs.map +1 -1
- package/fesm2020/vendasta-meetings.mjs +5 -1
- package/fesm2020/vendasta-meetings.mjs.map +1 -1
- package/lib/_internal/interfaces/shared.interface.d.ts +1 -0
- package/lib/_internal/objects/shared.d.ts +1 -0
- package/lib/shared/host-user.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21lZXRpbmdzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbnRlcmZhY2VzL3NoYXJlZC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0IHsgVGltZVpvbmVJbnRlcmZhY2UsIFRpbWVPZkRheUludGVyZmFjZSB9IGZyb20gJy4vJztcbmltcG9ydCAqIGFzIGUgZnJvbSAnLi4vZW51bXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFuc3dlckludGVyZmFjZSB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG4gICAgdHlwZT86IGUuRm9ybUZpZWxkVHlwZTtcbiAgICBhbnN3ZXI/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbnN3ZXJzSW50ZXJmYWNlIHtcbiAgICBmb3JtQW5zd2Vycz86IEFuc3dlckludGVyZmFjZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbGVuZGFyQXBwbGljYXRpb25Db250ZXh0RW50cnlJbnRlcmZhY2Uge1xuICAgIGtleT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdHRhY2htZW50SW50ZXJmYWNlIHtcbiAgICBmaWxlVGl0bGU/OiBzdHJpbmc7XG4gICAgZmlsZVVybD86IHN0cmluZztcbiAgICBmaWxlVHlwZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdHRlbmRlZUludGVyZmFjZSB7XG4gICAgZmlyc3ROYW1lPzogc3RyaW5nO1xuICAgIGxhc3ROYW1lPzogc3RyaW5nO1xuICAgIGVtYWlsPzogc3RyaW5nO1xuICAgIHBob25lTnVtYmVyPzogc3RyaW5nO1xuICAgIHRpbWVab25lPzogc3RyaW5nO1xuICAgIGlzUHJpbWFyeT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FsZW5kYXJJbnRlcmZhY2Uge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuICAgIGRpc3BsYXlQcm9maWxlVXJsPzogc3RyaW5nO1xuICAgIGRpc3BsYXlMb2dvVXJsPzogc3RyaW5nO1xuICAgIGJvb2tpbmdVcmw/OiBzdHJpbmc7XG4gICAgc2x1Zz86IHN0cmluZztcbiAgICBleHRlcm5hbElkPzogc3RyaW5nO1xuICAgIGNyZWF0b3JVc2VySWQ/OiBzdHJpbmc7XG4gICAgaG9zdFVzZXJJZHM/OiBzdHJpbmdbXTtcbiAgICBhcHBsaWNhdGlvbkNvbnRleHQ/OiB7W2tleTogc3RyaW5nXTogc3RyaW5nfTtcbiAgICBjYWxlbmRhclR5cGU/OiBlLkNhbGVuZGFyVHlwZTtcbiAgICBlbmNvZGVkQXBwbGljYXRpb25Db250ZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhY3RJbnRlcmZhY2Uge1xuICAgIGZpcnN0TmFtZT86IHN0cmluZztcbiAgICBsYXN0TmFtZT86IHN0cmluZztcbiAgICBwaG9uZU51bWJlcj86IHN0cmluZztcbiAgICBlbWFpbD86IHN0cmluZztcbiAgICB0aW1lWm9uZT86ICBUaW1lWm9uZUludGVyZmFjZTtcbiAgICBpc1ByaW1hcnk/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhvc3RJbnRlcmZhY2Uge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuICAgIGRpc3BsYXlQcm9maWxlVXJsPzogc3RyaW5nO1xuICAgIGRpc3BsYXlMb2dvVXJsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhvc3RVc2VySW50ZXJmYWNlIHtcbiAgICB1c2VySWQ/OiBzdHJpbmc7XG4gICAgZGlzcGxheU5hbWU/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21lZXRpbmdzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbnRlcmZhY2VzL3NoYXJlZC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0IHsgVGltZVpvbmVJbnRlcmZhY2UsIFRpbWVPZkRheUludGVyZmFjZSB9IGZyb20gJy4vJztcbmltcG9ydCAqIGFzIGUgZnJvbSAnLi4vZW51bXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFuc3dlckludGVyZmFjZSB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG4gICAgdHlwZT86IGUuRm9ybUZpZWxkVHlwZTtcbiAgICBhbnN3ZXI/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbnN3ZXJzSW50ZXJmYWNlIHtcbiAgICBmb3JtQW5zd2Vycz86IEFuc3dlckludGVyZmFjZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbGVuZGFyQXBwbGljYXRpb25Db250ZXh0RW50cnlJbnRlcmZhY2Uge1xuICAgIGtleT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdHRhY2htZW50SW50ZXJmYWNlIHtcbiAgICBmaWxlVGl0bGU/OiBzdHJpbmc7XG4gICAgZmlsZVVybD86IHN0cmluZztcbiAgICBmaWxlVHlwZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdHRlbmRlZUludGVyZmFjZSB7XG4gICAgZmlyc3ROYW1lPzogc3RyaW5nO1xuICAgIGxhc3ROYW1lPzogc3RyaW5nO1xuICAgIGVtYWlsPzogc3RyaW5nO1xuICAgIHBob25lTnVtYmVyPzogc3RyaW5nO1xuICAgIHRpbWVab25lPzogc3RyaW5nO1xuICAgIGlzUHJpbWFyeT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FsZW5kYXJJbnRlcmZhY2Uge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuICAgIGRpc3BsYXlQcm9maWxlVXJsPzogc3RyaW5nO1xuICAgIGRpc3BsYXlMb2dvVXJsPzogc3RyaW5nO1xuICAgIGJvb2tpbmdVcmw/OiBzdHJpbmc7XG4gICAgc2x1Zz86IHN0cmluZztcbiAgICBleHRlcm5hbElkPzogc3RyaW5nO1xuICAgIGNyZWF0b3JVc2VySWQ/OiBzdHJpbmc7XG4gICAgaG9zdFVzZXJJZHM/OiBzdHJpbmdbXTtcbiAgICBhcHBsaWNhdGlvbkNvbnRleHQ/OiB7W2tleTogc3RyaW5nXTogc3RyaW5nfTtcbiAgICBjYWxlbmRhclR5cGU/OiBlLkNhbGVuZGFyVHlwZTtcbiAgICBlbmNvZGVkQXBwbGljYXRpb25Db250ZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhY3RJbnRlcmZhY2Uge1xuICAgIGZpcnN0TmFtZT86IHN0cmluZztcbiAgICBsYXN0TmFtZT86IHN0cmluZztcbiAgICBwaG9uZU51bWJlcj86IHN0cmluZztcbiAgICBlbWFpbD86IHN0cmluZztcbiAgICB0aW1lWm9uZT86ICBUaW1lWm9uZUludGVyZmFjZTtcbiAgICBpc1ByaW1hcnk/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhvc3RJbnRlcmZhY2Uge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuICAgIGRpc3BsYXlQcm9maWxlVXJsPzogc3RyaW5nO1xuICAgIGRpc3BsYXlMb2dvVXJsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhvc3RVc2VySW50ZXJmYWNlIHtcbiAgICB1c2VySWQ/OiBzdHJpbmc7XG4gICAgZGlzcGxheU5hbWU/OiBzdHJpbmc7XG4gICAgaXNDb25maWd1cmVkPzogYm9vbGVhbjtcbiAgICBpc0Nvbm5lY3RlZD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnZWRSZXF1ZXN0T3B0aW9uc0ludGVyZmFjZSB7XG4gICAgY3Vyc29yPzogc3RyaW5nO1xuICAgIHBhZ2VTaXplPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YUludGVyZmFjZSB7XG4gICAgbmV4dEN1cnNvcj86IHN0cmluZztcbiAgICBoYXNNb3JlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVmZXJlbmNlc0ludGVyZmFjZSB7XG4gICAgdGltZXpvbmU/OiAgVGltZVpvbmVJbnRlcmZhY2U7XG4gICAgbWVldGluZ0ludGVncmF0aW9uPzogZS5NZWV0aW5nU291cmNlO1xuICAgIGF2YWlsYWJpbGl0eUluY3JlbWVudD86IG51bWJlcjtcbiAgICBidWZmZXJEdXJhdGlvbkFmdGVyTWVldGluZz86IG51bWJlcjtcbiAgICBub3RpY2VUaW1lPzogbnVtYmVyO1xuICAgIGNhbGVuZGFyU2x1Zz86IHN0cmluZztcbiAgICBidWZmZXJEdXJhdGlvbkJlZm9yZU1lZXRpbmc/OiBudW1iZXI7XG4gICAgY2FsZW5kYXJJbnRlZ3JhdGlvbj86IGUuQ2FsZW5kYXJTb3VyY2U7XG4gICAgb25Cb2FyZGluZ1N0YXRlPzogZS5PbkJvYXJkaW5nU3RhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGltZVJhbmdlSW50ZXJmYWNlIHtcbiAgICBmcm9tPzogIFRpbWVPZkRheUludGVyZmFjZTtcbiAgICB0bz86ICBUaW1lT2ZEYXlJbnRlcmZhY2U7XG59XG5cbiJdfQ==
|
|
@@ -294,6 +294,9 @@ export class HostUser {
|
|
|
294
294
|
if (typeof this.isConfigured !== 'undefined') {
|
|
295
295
|
toReturn['isConfigured'] = this.isConfigured;
|
|
296
296
|
}
|
|
297
|
+
if (typeof this.isConnected !== 'undefined') {
|
|
298
|
+
toReturn['isConnected'] = this.isConnected;
|
|
299
|
+
}
|
|
297
300
|
return toReturn;
|
|
298
301
|
}
|
|
299
302
|
}
|
|
@@ -443,4 +446,4 @@ export class TimeRange {
|
|
|
443
446
|
return toReturn;
|
|
444
447
|
}
|
|
445
448
|
}
|
|
446
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWVldGluZ3Nfc2RrL3NyYy9saWIvX2ludGVybmFsL29iamVjdHMvc2hhcmVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxDQUFDLE1BQU0sVUFBVSxDQUFDO0FBRTlCLE1BQU0sVUFBVSxpQkFBaUIsQ0FBSSxPQUFZLEVBQUUsS0FBYTtJQUM5RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtRQUM3QixPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sT0FBTyxNQUFNO0lBTWYsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7UUFDckIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLElBQUksRUFBRTtZQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQWtCLENBQUMsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQUM7UUFDM0YsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUEwQjtRQUNsQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLEVBQUUsS0FBSyxXQUFXLEVBQUU7WUFBQyxR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S0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxFQUFVLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7U0FBQztRQUMzSSxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIE9iamVjdHMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCAqIGFzIGkgZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBUaW1lWm9uZSwgVGltZU9mRGF5IH0gZnJvbSAnLi8nO1xuaW1wb3J0ICogYXMgZSBmcm9tICcuLi9lbnVtcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnVtU3RyaW5nVG9WYWx1ZTxFPihlbnVtUmVmOiBhbnksIHZhbHVlOiBzdHJpbmcpOiBFIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbiAgcmV0dXJuIGVudW1SZWZbdmFsdWVdO1xufVxuXG5leHBvcnQgY2xhc3MgQW5zd2VyIGltcGxlbWVudHMgaS5BbnN3ZXJJbnRlcmZhY2Uge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICB0eXBlOiBlLkZvcm1GaWVsZFR5cGU7XG4gICAgYW5zd2VyOiBzdHJpbmdbXTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEFuc3dlciB7XG4gICAgICAgIGxldCBtID0gbmV3IEFuc3dlcigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by50eXBlKSB7bS50eXBlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5Gb3JtRmllbGRUeXBlPihlLkZvcm1GaWVsZFR5cGUsIHByb3RvLnR5cGUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BbnN3ZXJJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaWQnXSA9IHRoaXMuaWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubGFiZWwgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2xhYmVsJ10gPSB0aGlzLmxhYmVsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnR5cGUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3R5cGUnXSA9IHRoaXMudHlwZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5hbnN3ZXIgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Fuc3dlciddID0gdGhpcy5hbnN3ZXI7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQW5zd2VycyBpbXBsZW1lbnRzIGkuQW5zd2Vyc0ludGVyZmFjZSB7XG4gICAgZm9ybUFuc3dlcnM6IEFuc3dlcltdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQW5zd2VycyB7XG4gICAgICAgIGxldCBtID0gbmV3IEFuc3dlcnMoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uZm9ybUFuc3dlcnMpIHttLmZvcm1BbnN3ZXJzID0gcHJvdG8uZm9ybUFuc3dlcnMubWFwKEFuc3dlci5mcm9tUHJvdG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BbnN3ZXJzSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZm9ybUFuc3dlcnMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuZm9ybUFuc3dlcnMgIT09IG51bGwpIHt0b1JldHVyblsnZm9ybUFuc3dlcnMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuZm9ybUFuc3dlcnMgPyAodGhpcy5mb3JtQW5zd2VycyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5mb3JtQW5zd2Vyczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDYWxlbmRhckFwcGxpY2F0aW9uQ29udGV4dEVudHJ5IGltcGxlbWVudHMgaS5DYWxlbmRhckFwcGxpY2F0aW9uQ29udGV4dEVudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQ2FsZW5kYXJBcHBsaWNhdGlvbkNvbnRleHRFbnRyeSB7XG4gICAgICAgIGxldCBtID0gbmV3IENhbGVuZGFyQXBwbGljYXRpb25Db250ZXh0RW50cnkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkNhbGVuZGFyQXBwbGljYXRpb25Db250ZXh0RW50cnlJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5rZXkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2tleSddID0gdGhpcy5rZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3ZhbHVlJ10gPSB0aGlzLnZhbHVlO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEF0dGFjaG1lbnQgaW1wbGVtZW50cyBpLkF0dGFjaG1lbnRJbnRlcmZhY2Uge1xuICAgIGZpbGVUaXRsZTogc3RyaW5nO1xuICAgIGZpbGVVcmw6IHN0cmluZztcbiAgICBmaWxlVHlwZTogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQXR0YWNobWVudCB7XG4gICAgICAgIGxldCBtID0gbmV3IEF0dGFjaG1lbnQoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkF0dGFjaG1lbnRJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5maWxlVGl0bGUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2ZpbGVUaXRsZSddID0gdGhpcy5maWxlVGl0bGU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZmlsZVVybCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZmlsZVVybCddID0gdGhpcy5maWxlVXJsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmZpbGVUeXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmaWxlVHlwZSddID0gdGhpcy5maWxlVHlwZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBdHRlbmRlZSBpbXBsZW1lbnRzIGkuQXR0ZW5kZWVJbnRlcmZhY2Uge1xuICAgIGZpcnN0TmFtZTogc3RyaW5nO1xuICAgIGxhc3ROYW1lOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbiAgICBwaG9uZU51bWJlcjogc3RyaW5nO1xuICAgIHRpbWVab25lOiBzdHJpbmc7XG4gICAgaXNQcmltYXJ5OiBib29sZWFuO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQXR0ZW5kZWUge1xuICAgICAgICBsZXQgbSA9IG5ldyBBdHRlbmRlZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQXR0ZW5kZWVJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5maXJzdE5hbWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2ZpcnN0TmFtZSddID0gdGhpcy5maXJzdE5hbWU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubGFzdE5hbWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2xhc3ROYW1lJ10gPSB0aGlzLmxhc3ROYW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVtYWlsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlbWFpbCddID0gdGhpcy5lbWFpbDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5waG9uZU51bWJlciAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncGhvbmVOdW1iZXInXSA9IHRoaXMucGhvbmVOdW1iZXI7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudGltZVpvbmUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3RpbWVab25lJ10gPSB0aGlzLnRpbWVab25lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmlzUHJpbWFyeSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaXNQcmltYXJ5J10gPSB0aGlzLmlzUHJpbWFyeTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDYWxlbmRhciBpbXBsZW1lbnRzIGkuQ2FsZW5kYXJJbnRlcmZhY2Uge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgICBkaXNwbGF5UHJvZmlsZVVybDogc3RyaW5nO1xuICAgIGRpc3BsYXlMb2dvVXJsOiBzdHJpbmc7XG4gICAgYm9va2luZ1VybDogc3RyaW5nO1xuICAgIHNsdWc6IHN0cmluZztcbiAgICBleHRlcm5hbElkOiBzdHJpbmc7XG4gICAgY3JlYXRvclVzZXJJZDogc3RyaW5nO1xuICAgIGhvc3RVc2VySWRzOiBzdHJpbmdbXTtcbiAgICBhcHBsaWNhdGlvbkNvbnRleHQ6IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9O1xuICAgIGNhbGVuZGFyVHlwZTogZS5DYWxlbmRhclR5cGU7XG4gICAgZW5jb2RlZEFwcGxpY2F0aW9uQ29udGV4dDogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQ2FsZW5kYXIge1xuICAgICAgICBsZXQgbSA9IG5ldyBDYWxlbmRhcigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5hcHBsaWNhdGlvbkNvbnRleHQpIHttLmFwcGxpY2F0aW9uQ29udGV4dCA9IE9iamVjdC5rZXlzKHByb3RvLmFwcGxpY2F0aW9uQ29udGV4dCkucmVkdWNlPGFueT4oKG9iaiwgaykgPT4geyBvYmpba10gPSBwcm90by5hcHBsaWNhdGlvbkNvbnRleHRba107IHJldHVybiBvYmo7IH0sIHt9KTt9XG4gICAgICAgIGlmIChwcm90by5jYWxlbmRhclR5cGUpIHttLmNhbGVuZGFyVHlwZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuQ2FsZW5kYXJUeXBlPihlLkNhbGVuZGFyVHlwZSwgcHJvdG8uY2FsZW5kYXJUeXBlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQ2FsZW5kYXJJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaWQnXSA9IHRoaXMuaWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzcGxheU5hbWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Rpc3BsYXlOYW1lJ10gPSB0aGlzLmRpc3BsYXlOYW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlQcm9maWxlVXJsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydkaXNwbGF5UHJvZmlsZVVybCddID0gdGhpcy5kaXNwbGF5UHJvZmlsZVVybDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kaXNwbGF5TG9nb1VybCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZGlzcGxheUxvZ29VcmwnXSA9IHRoaXMuZGlzcGxheUxvZ29Vcmw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYm9va2luZ1VybCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYm9va2luZ1VybCddID0gdGhpcy5ib29raW5nVXJsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNsdWcgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3NsdWcnXSA9IHRoaXMuc2x1Zzt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5leHRlcm5hbElkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydleHRlcm5hbElkJ10gPSB0aGlzLmV4dGVybmFsSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY3JlYXRvclVzZXJJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY3JlYXRvclVzZXJJZCddID0gdGhpcy5jcmVhdG9yVXNlcklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmhvc3RVc2VySWRzICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydob3N0VXNlcklkcyddID0gdGhpcy5ob3N0VXNlcklkczt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5hcHBsaWNhdGlvbkNvbnRleHQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuYXBwbGljYXRpb25Db250ZXh0ICE9PSBudWxsKSB7dG9SZXR1cm5bJ2FwcGxpY2F0aW9uQ29udGV4dCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5hcHBsaWNhdGlvbkNvbnRleHQgPyAodGhpcy5hcHBsaWNhdGlvbkNvbnRleHQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuYXBwbGljYXRpb25Db250ZXh0O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNhbGVuZGFyVHlwZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY2FsZW5kYXJUeXBlJ10gPSB0aGlzLmNhbGVuZGFyVHlwZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5lbmNvZGVkQXBwbGljYXRpb25Db250ZXh0ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlbmNvZGVkQXBwbGljYXRpb25Db250ZXh0J10gPSB0aGlzLmVuY29kZWRBcHBsaWNhdGlvbkNvbnRleHQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29udGFjdCBpbXBsZW1lbnRzIGkuQ29udGFjdEludGVyZmFjZSB7XG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XG4gICAgbGFzdE5hbWU6IHN0cmluZztcbiAgICBwaG9uZU51bWJlcjogc3RyaW5nO1xuICAgIGVtYWlsOiBzdHJpbmc7XG4gICAgdGltZVpvbmU6ICBUaW1lWm9uZTtcbiAgICBpc1ByaW1hcnk6IGJvb2xlYW47XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDb250YWN0IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ29udGFjdCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by50aW1lWm9uZSkge20udGltZVpvbmUgPSAgVGltZVpvbmUuZnJvbVByb3RvKHByb3RvLnRpbWVab25lKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQ29udGFjdEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmZpcnN0TmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZmlyc3ROYW1lJ10gPSB0aGlzLmZpcnN0TmFtZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYXN0TmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbGFzdE5hbWUnXSA9IHRoaXMubGFzdE5hbWU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGhvbmVOdW1iZXIgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3Bob25lTnVtYmVyJ10gPSB0aGlzLnBob25lTnVtYmVyO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVtYWlsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlbWFpbCddID0gdGhpcy5lbWFpbDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy50aW1lWm9uZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy50aW1lWm9uZSAhPT0gbnVsbCkge3RvUmV0dXJuWyd0aW1lWm9uZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy50aW1lWm9uZSA/ICh0aGlzLnRpbWVab25lIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnRpbWVab25lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmlzUHJpbWFyeSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaXNQcmltYXJ5J10gPSB0aGlzLmlzUHJpbWFyeTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBIb3N0IGltcGxlbWVudHMgaS5Ib3N0SW50ZXJmYWNlIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgZGlzcGxheVByb2ZpbGVVcmw6IHN0cmluZztcbiAgICBkaXNwbGF5TG9nb1VybDogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogSG9zdCB7XG4gICAgICAgIGxldCBtID0gbmV3IEhvc3QoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkhvc3RJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaWQnXSA9IHRoaXMuaWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzcGxheU5hbWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Rpc3BsYXlOYW1lJ10gPSB0aGlzLmRpc3BsYXlOYW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlQcm9maWxlVXJsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydkaXNwbGF5UHJvZmlsZVVybCddID0gdGhpcy5kaXNwbGF5UHJvZmlsZVVybDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kaXNwbGF5TG9nb1VybCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZGlzcGxheUxvZ29VcmwnXSA9IHRoaXMuZGlzcGxheUxvZ29Vcmw7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgSG9zdFVzZXIgaW1wbGVtZW50cyBpLkhvc3RVc2VySW50ZXJmYWNlIHtcbiAgICB1c2VySWQ6IHN0cmluZztcbiAgICBkaXNwbGF5TmFtZTogc3RyaW5nO1xuICAgIGlzQ29uZmlndXJlZDogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEhvc3RVc2VyIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgSG9zdFVzZXIoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkhvc3RVc2VySW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXNlcklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd1c2VySWQnXSA9IHRoaXMudXNlcklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlOYW1lICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydkaXNwbGF5TmFtZSddID0gdGhpcy5kaXNwbGF5TmFtZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pc0NvbmZpZ3VyZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2lzQ29uZmlndXJlZCddID0gdGhpcy5pc0NvbmZpZ3VyZWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFnZWRSZXF1ZXN0T3B0aW9ucyBpbXBsZW1lbnRzIGkuUGFnZWRSZXF1ZXN0T3B0aW9uc0ludGVyZmFjZSB7XG4gICAgY3Vyc29yOiBzdHJpbmc7XG4gICAgcGFnZVNpemU6IG51bWJlcjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFBhZ2VkUmVxdWVzdE9wdGlvbnMge1xuICAgICAgICBsZXQgbSA9IG5ldyBQYWdlZFJlcXVlc3RPcHRpb25zKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnBhZ2VTaXplKSB7bS5wYWdlU2l6ZSA9IHBhcnNlSW50KHByb3RvLnBhZ2VTaXplLCAxMCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlBhZ2VkUmVxdWVzdE9wdGlvbnNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jdXJzb3IgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2N1cnNvciddID0gdGhpcy5jdXJzb3I7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFnZVNpemUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3BhZ2VTaXplJ10gPSB0aGlzLnBhZ2VTaXplO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSBpbXBsZW1lbnRzIGkuUGFnZWRSZXNwb25zZU1ldGFkYXRhSW50ZXJmYWNlIHtcbiAgICBuZXh0Q3Vyc29yOiBzdHJpbmc7XG4gICAgaGFzTW9yZTogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSB7XG4gICAgICAgIGxldCBtID0gbmV3IFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuUGFnZWRSZXNwb25zZU1ldGFkYXRhSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubmV4dEN1cnNvciAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbmV4dEN1cnNvciddID0gdGhpcy5uZXh0Q3Vyc29yO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmhhc01vcmUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2hhc01vcmUnXSA9IHRoaXMuaGFzTW9yZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQcmVmZXJlbmNlcyBpbXBsZW1lbnRzIGkuUHJlZmVyZW5jZXNJbnRlcmZhY2Uge1xuICAgIHRpbWV6b25lOiAgVGltZVpvbmU7XG4gICAgbWVldGluZ0ludGVncmF0aW9uOiBlLk1lZXRpbmdTb3VyY2U7XG4gICAgYXZhaWxhYmlsaXR5SW5jcmVtZW50OiBudW1iZXI7XG4gICAgYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmc6IG51bWJlcjtcbiAgICBub3RpY2VUaW1lOiBudW1iZXI7XG4gICAgY2FsZW5kYXJTbHVnOiBzdHJpbmc7XG4gICAgYnVmZmVyRHVyYXRpb25CZWZvcmVNZWV0aW5nOiBudW1iZXI7XG4gICAgY2FsZW5kYXJJbnRlZ3JhdGlvbjogZS5DYWxlbmRhclNvdXJjZTtcbiAgICBvbkJvYXJkaW5nU3RhdGU6IGUuT25Cb2FyZGluZ1N0YXRlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogUHJlZmVyZW5jZXMge1xuICAgICAgICBsZXQgbSA9IG5ldyBQcmVmZXJlbmNlcygpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by50aW1lem9uZSkge20udGltZXpvbmUgPSAgVGltZVpvbmUuZnJvbVByb3RvKHByb3RvLnRpbWV6b25lKTt9XG4gICAgICAgIGlmIChwcm90by5tZWV0aW5nSW50ZWdyYXRpb24pIHttLm1lZXRpbmdJbnRlZ3JhdGlvbiA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuTWVldGluZ1NvdXJjZT4oZS5NZWV0aW5nU291cmNlLCBwcm90by5tZWV0aW5nSW50ZWdyYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLmF2YWlsYWJpbGl0eUluY3JlbWVudCkge20uYXZhaWxhYmlsaXR5SW5jcmVtZW50ID0gcGFyc2VJbnQocHJvdG8uYXZhaWxhYmlsaXR5SW5jcmVtZW50LCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8uYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmcpIHttLmJ1ZmZlckR1cmF0aW9uQWZ0ZXJNZWV0aW5nID0gcGFyc2VJbnQocHJvdG8uYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmcsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5ub3RpY2VUaW1lKSB7bS5ub3RpY2VUaW1lID0gcGFyc2VJbnQocHJvdG8ubm90aWNlVGltZSwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLmJ1ZmZlckR1cmF0aW9uQmVmb3JlTWVldGluZykge20uYnVmZmVyRHVyYXRpb25CZWZvcmVNZWV0aW5nID0gcGFyc2VJbnQocHJvdG8uYnVmZmVyRHVyYXRpb25CZWZvcmVNZWV0aW5nLCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8uY2FsZW5kYXJJbnRlZ3JhdGlvbikge20uY2FsZW5kYXJJbnRlZ3JhdGlvbiA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuQ2FsZW5kYXJTb3VyY2U+KGUuQ2FsZW5kYXJTb3VyY2UsIHByb3RvLmNhbGVuZGFySW50ZWdyYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLm9uQm9hcmRpbmdTdGF0ZSkge20ub25Cb2FyZGluZ1N0YXRlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5PbkJvYXJkaW5nU3RhdGU+KGUuT25Cb2FyZGluZ1N0YXRlLCBwcm90by5vbkJvYXJkaW5nU3RhdGUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5QcmVmZXJlbmNlc0ludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnRpbWV6b25lICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnRpbWV6b25lICE9PSBudWxsKSB7dG9SZXR1cm5bJ3RpbWV6b25lJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnRpbWV6b25lID8gKHRoaXMudGltZXpvbmUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudGltZXpvbmU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWVldGluZ0ludGVncmF0aW9uICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydtZWV0aW5nSW50ZWdyYXRpb24nXSA9IHRoaXMubWVldGluZ0ludGVncmF0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmF2YWlsYWJpbGl0eUluY3JlbWVudCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYXZhaWxhYmlsaXR5SW5jcmVtZW50J10gPSB0aGlzLmF2YWlsYWJpbGl0eUluY3JlbWVudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5idWZmZXJEdXJhdGlvbkFmdGVyTWVldGluZyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmcnXSA9IHRoaXMuYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmc7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubm90aWNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbm90aWNlVGltZSddID0gdGhpcy5ub3RpY2VUaW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNhbGVuZGFyU2x1ZyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY2FsZW5kYXJTbHVnJ10gPSB0aGlzLmNhbGVuZGFyU2x1Zzt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5idWZmZXJEdXJhdGlvbkJlZm9yZU1lZXRpbmcgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2J1ZmZlckR1cmF0aW9uQmVmb3JlTWVldGluZyddID0gdGhpcy5idWZmZXJEdXJhdGlvbkJlZm9yZU1lZXRpbmc7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY2FsZW5kYXJJbnRlZ3JhdGlvbiAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY2FsZW5kYXJJbnRlZ3JhdGlvbiddID0gdGhpcy5jYWxlbmRhckludGVncmF0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9uQm9hcmRpbmdTdGF0ZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnb25Cb2FyZGluZ1N0YXRlJ10gPSB0aGlzLm9uQm9hcmRpbmdTdGF0ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUaW1lUmFuZ2UgaW1wbGVtZW50cyBpLlRpbWVSYW5nZUludGVyZmFjZSB7XG4gICAgZnJvbTogIFRpbWVPZkRheTtcbiAgICB0bzogIFRpbWVPZkRheTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFRpbWVSYW5nZSB7XG4gICAgICAgIGxldCBtID0gbmV3IFRpbWVSYW5nZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5mcm9tKSB7bS5mcm9tID0gIFRpbWVPZkRheS5mcm9tUHJvdG8ocHJvdG8uZnJvbSk7fVxuICAgICAgICBpZiAocHJvdG8udG8pIHttLnRvID0gIFRpbWVPZkRheS5mcm9tUHJvdG8ocHJvdG8udG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5UaW1lUmFuZ2VJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5mcm9tICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmZyb20gIT09IG51bGwpIHt0b1JldHVyblsnZnJvbSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5mcm9tID8gKHRoaXMuZnJvbSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5mcm9tO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnRvICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnRvICE9PSBudWxsKSB7dG9SZXR1cm5bJ3RvJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnRvID8gKHRoaXMudG8gYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudG87fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
|
|
449
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWVldGluZ3Nfc2RrL3NyYy9saWIvX2ludGVybmFsL29iamVjdHMvc2hhcmVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxDQUFDLE1BQU0sVUFBVSxDQUFDO0FBRTlCLE1BQU0sVUFBVSxpQkFBaUIsQ0FBSSxPQUFZLEVBQUUsS0FBYTtJQUM5RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtRQUM3QixPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sT0FBTyxNQUFNO0lBTWYsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7UUFDckIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLElBQUksRUFBRTtZQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQWtCLENBQUMsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQUM7UUFDM0YsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUEwQjtRQUNsQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLEVBQUUsS0FBSyxXQUFXLEVBQUU7WUFBQyxR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Q0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUFDO1FBQ3ZKLElBQUksT0FBTyxJQUFJLENBQUMsRUFBRSxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsRUFBRSxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLEVBQVUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUFDO1FBQzNJLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0ICogYXMgaSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFRpbWVab25lLCBUaW1lT2ZEYXkgfSBmcm9tICcuLyc7XG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBBbnN3ZXIgaW1wbGVtZW50cyBpLkFuc3dlckludGVyZmFjZSB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIHR5cGU6IGUuRm9ybUZpZWxkVHlwZTtcbiAgICBhbnN3ZXI6IHN0cmluZ1tdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQW5zd2VyIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQW5zd2VyKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnR5cGUpIHttLnR5cGUgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLkZvcm1GaWVsZFR5cGU+KGUuRm9ybUZpZWxkVHlwZSwgcHJvdG8udHlwZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFuc3dlckludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmlkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpZCddID0gdGhpcy5pZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYWJlbCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbGFiZWwnXSA9IHRoaXMubGFiZWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudHlwZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndHlwZSddID0gdGhpcy50eXBlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFuc3dlciAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYW5zd2VyJ10gPSB0aGlzLmFuc3dlcjt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBbnN3ZXJzIGltcGxlbWVudHMgaS5BbnN3ZXJzSW50ZXJmYWNlIHtcbiAgICBmb3JtQW5zd2VyczogQW5zd2VyW107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBbnN3ZXJzIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQW5zd2VycygpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5mb3JtQW5zd2Vycykge20uZm9ybUFuc3dlcnMgPSBwcm90by5mb3JtQW5zd2Vycy5tYXAoQW5zd2VyLmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFuc3dlcnNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5mb3JtQW5zd2VycyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5mb3JtQW5zd2VycyAhPT0gbnVsbCkge3RvUmV0dXJuWydmb3JtQW5zd2VycyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5mb3JtQW5zd2VycyA/ICh0aGlzLmZvcm1BbnN3ZXJzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmZvcm1BbnN3ZXJzO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIENhbGVuZGFyQXBwbGljYXRpb25Db250ZXh0RW50cnkgaW1wbGVtZW50cyBpLkNhbGVuZGFyQXBwbGljYXRpb25Db250ZXh0RW50cnlJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDYWxlbmRhckFwcGxpY2F0aW9uQ29udGV4dEVudHJ5IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ2FsZW5kYXJBcHBsaWNhdGlvbkNvbnRleHRFbnRyeSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQ2FsZW5kYXJBcHBsaWNhdGlvbkNvbnRleHRFbnRyeUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmtleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsna2V5J10gPSB0aGlzLmtleTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndmFsdWUnXSA9IHRoaXMudmFsdWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXR0YWNobWVudCBpbXBsZW1lbnRzIGkuQXR0YWNobWVudEludGVyZmFjZSB7XG4gICAgZmlsZVRpdGxlOiBzdHJpbmc7XG4gICAgZmlsZVVybDogc3RyaW5nO1xuICAgIGZpbGVUeXBlOiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBdHRhY2htZW50IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQXR0YWNobWVudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQXR0YWNobWVudEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmZpbGVUaXRsZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZmlsZVRpdGxlJ10gPSB0aGlzLmZpbGVUaXRsZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5maWxlVXJsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmaWxlVXJsJ10gPSB0aGlzLmZpbGVVcmw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZmlsZVR5cGUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2ZpbGVUeXBlJ10gPSB0aGlzLmZpbGVUeXBlO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEF0dGVuZGVlIGltcGxlbWVudHMgaS5BdHRlbmRlZUludGVyZmFjZSB7XG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XG4gICAgbGFzdE5hbWU6IHN0cmluZztcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIHBob25lTnVtYmVyOiBzdHJpbmc7XG4gICAgdGltZVpvbmU6IHN0cmluZztcbiAgICBpc1ByaW1hcnk6IGJvb2xlYW47XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBdHRlbmRlZSB7XG4gICAgICAgIGxldCBtID0gbmV3IEF0dGVuZGVlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BdHRlbmRlZUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmZpcnN0TmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZmlyc3ROYW1lJ10gPSB0aGlzLmZpcnN0TmFtZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5sYXN0TmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbGFzdE5hbWUnXSA9IHRoaXMubGFzdE5hbWU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZW1haWwgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2VtYWlsJ10gPSB0aGlzLmVtYWlsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnBob25lTnVtYmVyICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydwaG9uZU51bWJlciddID0gdGhpcy5waG9uZU51bWJlcjt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy50aW1lWm9uZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndGltZVpvbmUnXSA9IHRoaXMudGltZVpvbmU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaXNQcmltYXJ5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpc1ByaW1hcnknXSA9IHRoaXMuaXNQcmltYXJ5O31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIENhbGVuZGFyIGltcGxlbWVudHMgaS5DYWxlbmRhckludGVyZmFjZSB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBkaXNwbGF5TmFtZTogc3RyaW5nO1xuICAgIGRpc3BsYXlQcm9maWxlVXJsOiBzdHJpbmc7XG4gICAgZGlzcGxheUxvZ29Vcmw6IHN0cmluZztcbiAgICBib29raW5nVXJsOiBzdHJpbmc7XG4gICAgc2x1Zzogc3RyaW5nO1xuICAgIGV4dGVybmFsSWQ6IHN0cmluZztcbiAgICBjcmVhdG9yVXNlcklkOiBzdHJpbmc7XG4gICAgaG9zdFVzZXJJZHM6IHN0cmluZ1tdO1xuICAgIGFwcGxpY2F0aW9uQ29udGV4dDoge1trZXk6IHN0cmluZ106IHN0cmluZ307XG4gICAgY2FsZW5kYXJUeXBlOiBlLkNhbGVuZGFyVHlwZTtcbiAgICBlbmNvZGVkQXBwbGljYXRpb25Db250ZXh0OiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDYWxlbmRhciB7XG4gICAgICAgIGxldCBtID0gbmV3IENhbGVuZGFyKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmFwcGxpY2F0aW9uQ29udGV4dCkge20uYXBwbGljYXRpb25Db250ZXh0ID0gT2JqZWN0LmtleXMocHJvdG8uYXBwbGljYXRpb25Db250ZXh0KS5yZWR1Y2U8YW55Pigob2JqLCBrKSA9PiB7IG9ialtrXSA9IHByb3RvLmFwcGxpY2F0aW9uQ29udGV4dFtrXTsgcmV0dXJuIG9iajsgfSwge30pO31cbiAgICAgICAgaWYgKHByb3RvLmNhbGVuZGFyVHlwZSkge20uY2FsZW5kYXJUeXBlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5DYWxlbmRhclR5cGU+KGUuQ2FsZW5kYXJUeXBlLCBwcm90by5jYWxlbmRhclR5cGUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5DYWxlbmRhckludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmlkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpZCddID0gdGhpcy5pZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kaXNwbGF5TmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZGlzcGxheU5hbWUnXSA9IHRoaXMuZGlzcGxheU5hbWU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzcGxheVByb2ZpbGVVcmwgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Rpc3BsYXlQcm9maWxlVXJsJ10gPSB0aGlzLmRpc3BsYXlQcm9maWxlVXJsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlMb2dvVXJsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydkaXNwbGF5TG9nb1VybCddID0gdGhpcy5kaXNwbGF5TG9nb1VybDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5ib29raW5nVXJsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydib29raW5nVXJsJ10gPSB0aGlzLmJvb2tpbmdVcmw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc2x1ZyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnc2x1ZyddID0gdGhpcy5zbHVnO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmV4dGVybmFsSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2V4dGVybmFsSWQnXSA9IHRoaXMuZXh0ZXJuYWxJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jcmVhdG9yVXNlcklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjcmVhdG9yVXNlcklkJ10gPSB0aGlzLmNyZWF0b3JVc2VySWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaG9zdFVzZXJJZHMgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2hvc3RVc2VySWRzJ10gPSB0aGlzLmhvc3RVc2VySWRzO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFwcGxpY2F0aW9uQ29udGV4dCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5hcHBsaWNhdGlvbkNvbnRleHQgIT09IG51bGwpIHt0b1JldHVyblsnYXBwbGljYXRpb25Db250ZXh0J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmFwcGxpY2F0aW9uQ29udGV4dCA/ICh0aGlzLmFwcGxpY2F0aW9uQ29udGV4dCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5hcHBsaWNhdGlvbkNvbnRleHQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY2FsZW5kYXJUeXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydjYWxlbmRhclR5cGUnXSA9IHRoaXMuY2FsZW5kYXJUeXBlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVuY29kZWRBcHBsaWNhdGlvbkNvbnRleHQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2VuY29kZWRBcHBsaWNhdGlvbkNvbnRleHQnXSA9IHRoaXMuZW5jb2RlZEFwcGxpY2F0aW9uQ29udGV4dDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb250YWN0IGltcGxlbWVudHMgaS5Db250YWN0SW50ZXJmYWNlIHtcbiAgICBmaXJzdE5hbWU6IHN0cmluZztcbiAgICBsYXN0TmFtZTogc3RyaW5nO1xuICAgIHBob25lTnVtYmVyOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbiAgICB0aW1lWm9uZTogIFRpbWVab25lO1xuICAgIGlzUHJpbWFyeTogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IENvbnRhY3Qge1xuICAgICAgICBsZXQgbSA9IG5ldyBDb250YWN0KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnRpbWVab25lKSB7bS50aW1lWm9uZSA9ICBUaW1lWm9uZS5mcm9tUHJvdG8ocHJvdG8udGltZVpvbmUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5Db250YWN0SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZmlyc3ROYW1lICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmaXJzdE5hbWUnXSA9IHRoaXMuZmlyc3ROYW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmxhc3ROYW1lICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydsYXN0TmFtZSddID0gdGhpcy5sYXN0TmFtZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5waG9uZU51bWJlciAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncGhvbmVOdW1iZXInXSA9IHRoaXMucGhvbmVOdW1iZXI7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZW1haWwgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2VtYWlsJ10gPSB0aGlzLmVtYWlsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnRpbWVab25lICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnRpbWVab25lICE9PSBudWxsKSB7dG9SZXR1cm5bJ3RpbWVab25lJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnRpbWVab25lID8gKHRoaXMudGltZVpvbmUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudGltZVpvbmU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaXNQcmltYXJ5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpc1ByaW1hcnknXSA9IHRoaXMuaXNQcmltYXJ5O31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEhvc3QgaW1wbGVtZW50cyBpLkhvc3RJbnRlcmZhY2Uge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgICBkaXNwbGF5UHJvZmlsZVVybDogc3RyaW5nO1xuICAgIGRpc3BsYXlMb2dvVXJsOiBzdHJpbmc7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBIb3N0IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgSG9zdCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuSG9zdEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmlkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpZCddID0gdGhpcy5pZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kaXNwbGF5TmFtZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZGlzcGxheU5hbWUnXSA9IHRoaXMuZGlzcGxheU5hbWU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzcGxheVByb2ZpbGVVcmwgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Rpc3BsYXlQcm9maWxlVXJsJ10gPSB0aGlzLmRpc3BsYXlQcm9maWxlVXJsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlMb2dvVXJsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydkaXNwbGF5TG9nb1VybCddID0gdGhpcy5kaXNwbGF5TG9nb1VybDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBIb3N0VXNlciBpbXBsZW1lbnRzIGkuSG9zdFVzZXJJbnRlcmZhY2Uge1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgaXNDb25maWd1cmVkOiBib29sZWFuO1xuICAgIGlzQ29ubmVjdGVkOiBib29sZWFuO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogSG9zdFVzZXIge1xuICAgICAgICBsZXQgbSA9IG5ldyBIb3N0VXNlcigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuSG9zdFVzZXJJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51c2VySWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3VzZXJJZCddID0gdGhpcy51c2VySWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzcGxheU5hbWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Rpc3BsYXlOYW1lJ10gPSB0aGlzLmRpc3BsYXlOYW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmlzQ29uZmlndXJlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaXNDb25maWd1cmVkJ10gPSB0aGlzLmlzQ29uZmlndXJlZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pc0Nvbm5lY3RlZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaXNDb25uZWN0ZWQnXSA9IHRoaXMuaXNDb25uZWN0ZWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFnZWRSZXF1ZXN0T3B0aW9ucyBpbXBsZW1lbnRzIGkuUGFnZWRSZXF1ZXN0T3B0aW9uc0ludGVyZmFjZSB7XG4gICAgY3Vyc29yOiBzdHJpbmc7XG4gICAgcGFnZVNpemU6IG51bWJlcjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFBhZ2VkUmVxdWVzdE9wdGlvbnMge1xuICAgICAgICBsZXQgbSA9IG5ldyBQYWdlZFJlcXVlc3RPcHRpb25zKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnBhZ2VTaXplKSB7bS5wYWdlU2l6ZSA9IHBhcnNlSW50KHByb3RvLnBhZ2VTaXplLCAxMCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlBhZ2VkUmVxdWVzdE9wdGlvbnNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jdXJzb3IgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2N1cnNvciddID0gdGhpcy5jdXJzb3I7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucGFnZVNpemUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3BhZ2VTaXplJ10gPSB0aGlzLnBhZ2VTaXplO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSBpbXBsZW1lbnRzIGkuUGFnZWRSZXNwb25zZU1ldGFkYXRhSW50ZXJmYWNlIHtcbiAgICBuZXh0Q3Vyc29yOiBzdHJpbmc7XG4gICAgaGFzTW9yZTogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSB7XG4gICAgICAgIGxldCBtID0gbmV3IFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuUGFnZWRSZXNwb25zZU1ldGFkYXRhSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubmV4dEN1cnNvciAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbmV4dEN1cnNvciddID0gdGhpcy5uZXh0Q3Vyc29yO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmhhc01vcmUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2hhc01vcmUnXSA9IHRoaXMuaGFzTW9yZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQcmVmZXJlbmNlcyBpbXBsZW1lbnRzIGkuUHJlZmVyZW5jZXNJbnRlcmZhY2Uge1xuICAgIHRpbWV6b25lOiAgVGltZVpvbmU7XG4gICAgbWVldGluZ0ludGVncmF0aW9uOiBlLk1lZXRpbmdTb3VyY2U7XG4gICAgYXZhaWxhYmlsaXR5SW5jcmVtZW50OiBudW1iZXI7XG4gICAgYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmc6IG51bWJlcjtcbiAgICBub3RpY2VUaW1lOiBudW1iZXI7XG4gICAgY2FsZW5kYXJTbHVnOiBzdHJpbmc7XG4gICAgYnVmZmVyRHVyYXRpb25CZWZvcmVNZWV0aW5nOiBudW1iZXI7XG4gICAgY2FsZW5kYXJJbnRlZ3JhdGlvbjogZS5DYWxlbmRhclNvdXJjZTtcbiAgICBvbkJvYXJkaW5nU3RhdGU6IGUuT25Cb2FyZGluZ1N0YXRlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogUHJlZmVyZW5jZXMge1xuICAgICAgICBsZXQgbSA9IG5ldyBQcmVmZXJlbmNlcygpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by50aW1lem9uZSkge20udGltZXpvbmUgPSAgVGltZVpvbmUuZnJvbVByb3RvKHByb3RvLnRpbWV6b25lKTt9XG4gICAgICAgIGlmIChwcm90by5tZWV0aW5nSW50ZWdyYXRpb24pIHttLm1lZXRpbmdJbnRlZ3JhdGlvbiA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuTWVldGluZ1NvdXJjZT4oZS5NZWV0aW5nU291cmNlLCBwcm90by5tZWV0aW5nSW50ZWdyYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLmF2YWlsYWJpbGl0eUluY3JlbWVudCkge20uYXZhaWxhYmlsaXR5SW5jcmVtZW50ID0gcGFyc2VJbnQocHJvdG8uYXZhaWxhYmlsaXR5SW5jcmVtZW50LCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8uYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmcpIHttLmJ1ZmZlckR1cmF0aW9uQWZ0ZXJNZWV0aW5nID0gcGFyc2VJbnQocHJvdG8uYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmcsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5ub3RpY2VUaW1lKSB7bS5ub3RpY2VUaW1lID0gcGFyc2VJbnQocHJvdG8ubm90aWNlVGltZSwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLmJ1ZmZlckR1cmF0aW9uQmVmb3JlTWVldGluZykge20uYnVmZmVyRHVyYXRpb25CZWZvcmVNZWV0aW5nID0gcGFyc2VJbnQocHJvdG8uYnVmZmVyRHVyYXRpb25CZWZvcmVNZWV0aW5nLCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8uY2FsZW5kYXJJbnRlZ3JhdGlvbikge20uY2FsZW5kYXJJbnRlZ3JhdGlvbiA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuQ2FsZW5kYXJTb3VyY2U+KGUuQ2FsZW5kYXJTb3VyY2UsIHByb3RvLmNhbGVuZGFySW50ZWdyYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLm9uQm9hcmRpbmdTdGF0ZSkge20ub25Cb2FyZGluZ1N0YXRlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5PbkJvYXJkaW5nU3RhdGU+KGUuT25Cb2FyZGluZ1N0YXRlLCBwcm90by5vbkJvYXJkaW5nU3RhdGUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5QcmVmZXJlbmNlc0ludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnRpbWV6b25lICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnRpbWV6b25lICE9PSBudWxsKSB7dG9SZXR1cm5bJ3RpbWV6b25lJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnRpbWV6b25lID8gKHRoaXMudGltZXpvbmUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudGltZXpvbmU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWVldGluZ0ludGVncmF0aW9uICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydtZWV0aW5nSW50ZWdyYXRpb24nXSA9IHRoaXMubWVldGluZ0ludGVncmF0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmF2YWlsYWJpbGl0eUluY3JlbWVudCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYXZhaWxhYmlsaXR5SW5jcmVtZW50J10gPSB0aGlzLmF2YWlsYWJpbGl0eUluY3JlbWVudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5idWZmZXJEdXJhdGlvbkFmdGVyTWVldGluZyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmcnXSA9IHRoaXMuYnVmZmVyRHVyYXRpb25BZnRlck1lZXRpbmc7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubm90aWNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbm90aWNlVGltZSddID0gdGhpcy5ub3RpY2VUaW1lO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNhbGVuZGFyU2x1ZyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY2FsZW5kYXJTbHVnJ10gPSB0aGlzLmNhbGVuZGFyU2x1Zzt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5idWZmZXJEdXJhdGlvbkJlZm9yZU1lZXRpbmcgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2J1ZmZlckR1cmF0aW9uQmVmb3JlTWVldGluZyddID0gdGhpcy5idWZmZXJEdXJhdGlvbkJlZm9yZU1lZXRpbmc7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY2FsZW5kYXJJbnRlZ3JhdGlvbiAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY2FsZW5kYXJJbnRlZ3JhdGlvbiddID0gdGhpcy5jYWxlbmRhckludGVncmF0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9uQm9hcmRpbmdTdGF0ZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnb25Cb2FyZGluZ1N0YXRlJ10gPSB0aGlzLm9uQm9hcmRpbmdTdGF0ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUaW1lUmFuZ2UgaW1wbGVtZW50cyBpLlRpbWVSYW5nZUludGVyZmFjZSB7XG4gICAgZnJvbTogIFRpbWVPZkRheTtcbiAgICB0bzogIFRpbWVPZkRheTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFRpbWVSYW5nZSB7XG4gICAgICAgIGxldCBtID0gbmV3IFRpbWVSYW5nZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5mcm9tKSB7bS5mcm9tID0gIFRpbWVPZkRheS5mcm9tUHJvdG8ocHJvdG8uZnJvbSk7fVxuICAgICAgICBpZiAocHJvdG8udG8pIHttLnRvID0gIFRpbWVPZkRheS5mcm9tUHJvdG8ocHJvdG8udG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5UaW1lUmFuZ2VJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5mcm9tICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmZyb20gIT09IG51bGwpIHt0b1JldHVyblsnZnJvbSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5mcm9tID8gKHRoaXMuZnJvbSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5mcm9tO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnRvICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnRvICE9PSBudWxsKSB7dG9SZXR1cm5bJ3RvJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnRvID8gKHRoaXMudG8gYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudG87fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
|
|
@@ -95,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
|
|
|
95
95
|
type: Injectable,
|
|
96
96
|
args: [{ providedIn: 'root' }]
|
|
97
97
|
}], ctorParameters: function () { return [{ type: i1.MeetingGuestApiService }]; } });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Vlc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21lZXRpbmdzX3Nkay9zcmMvbGliL2d1ZXN0L2d1ZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFTLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBSUgsc0JBQXNCLEVBSXpCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBQyxHQUFHLEVBQUUsS0FBSyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUNILFlBQVksRUFDWixlQUFlLEVBRWYsV0FBVyxFQUlYLGtCQUFrQixFQUVsQixlQUFlLEVBQ2xCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBQyxXQUFXLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBbUN0RSxNQUFNLE9BQU8sWUFBWTtJQUVyQixZQUNZLGVBQXVDO1FBQXZDLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtJQUNoRCxDQUFDO0lBRUosY0FBYyxDQUFDLEdBSWQ7UUFDRyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDaEQsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQzVCLE9BQU8sRUFBaUIsQ0FBQzthQUM1QjtZQUNELE9BQU8sa0JBQWtCLENBQUM7Z0JBQ3RCLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSTtnQkFDdkUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxZQUFZO2dCQUM1QixjQUFjLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQ2hDLFFBQVEsRUFBRSxHQUFHLENBQUMs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dCI6WyJpbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENhbGVuZGFySW50ZXJmYWNlLFxuICAgIENvbnRhY3QsIEdldEdyb3VwUmVzcG9uc2UsXG4gICAgR3Vlc3RJc0hvc3RDb25maWd1cmVkUmVzcG9uc2UsXG4gICAgTWVldGluZ0d1ZXN0QXBpU2VydmljZSxcbiAgICBNZWV0aW5nTG9jYXRpb25UeXBlLFxuICAgIFRlYW1FdmVudE1lZXRpbmdUeXBlLFxuICAgIFRpbWVab25lSW50ZXJmYWNlXG59IGZyb20gJy4uL19pbnRlcm5hbCc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIG1hcFRvfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICAgIGFuc3dlcnNUb0FQSSxcbiAgICBDYWxlbmRhckZyb21BcGksXG4gICAgSG9zdCxcbiAgICBIb3N0RnJvbUFwaSxcbiAgICBNZWV0aW5nRm9ybSxcbiAgICBNZWV0aW5nTWV0YWRhdGEsXG4gICAgTWVldGluZ1R5cGUsXG4gICAgTWVldGluZ1R5cGVGcm9tQXBpLFxuICAgIFRpbWVTcGFuLFxuICAgIFRpbWVTcGFuRnJvbUFwaVxufSBmcm9tICcuLi9zaGFyZWQnO1xuaW1wb3J0IHtFbnZpcm9ubWVudCwgb25Qcm9kdWN0aW9uR2xvYmFsfSBmcm9tIFwiLi4vc2hhcmVkL2Vudmlyb25tZW50XCI7XG5pbXBvcnQge0dldFNlcnZpY2VSZXNwb25zZX0gZnJvbSBcIi4uL19pbnRlcm5hbC9vYmplY3RzL21lZXRpbmctZ3Vlc3RcIjtcblxuZXhwb3J0IGludGVyZmFjZSBCb29rTWVldGluZ1Jlc3BvbnNlIHtcbiAgICBtZWV0aW5nSWQ6IHN0cmluZztcbiAgICBob3N0SWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCb29rZWRNZWV0aW5nSW5mbyB7XG4gICAgc3RhcnQ6IERhdGU7XG4gICAgZW5kOiBEYXRlO1xuICAgIHRpbWVab25lOiBUaW1lWm9uZUludGVyZmFjZTtcbiAgICBtZWV0aW5nVHlwZUlkOiBzdHJpbmc7XG4gICAgbG9jYXRpb246IHN0cmluZztcbiAgICBsb2NhdGlvbkd1aWRlbGluZTogc3RyaW5nO1xuICAgIGxvY2F0aW9uVHlwZTogTWVldGluZ0xvY2F0aW9uVHlwZTtcbiAgICBtZWV0aW5nVHlwZTogVGVhbUV2ZW50TWVldGluZ1R5cGU7XG4gICAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgICBjYWxlbmRhcklkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR3Vlc3RTZXJ2aWNlSW50ZXJmYWNlIHtcbiAgICBnZXRCb29rZWRNZWV0aW5nSW5mbyhtZWV0aW5nSWQ6IHN0cmluZywgYXV0aFRva2VuOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEJvb2tlZE1lZXRpbmdJbmZvPlxuXG4gICAgbGlzdE1lZXRpbmdUeXBlcyhyZXE6IHtcbiAgICAgICAgaG9zdElkOiBzdHJpbmcsXG4gICAgICAgIHRpbWVab25lPzogVGltZVpvbmVJbnRlcmZhY2UsXG4gICAgICAgIG1ldGFkYXRhPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgICAgIHNsdWc/OiBzdHJpbmcsXG4gICAgfSk6IE9ic2VydmFibGU8TWVldGluZ1R5cGVbXT5cblxuICAgIGlzSG9zdENvbmZpZ3VyZWQocmVxOiB7IGhvc3RJZDogc3RyaW5nIH0pOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG59XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEd1ZXN0U2VydmljZSBpbXBsZW1lbnRzIEd1ZXN0U2VydmljZUludGVyZmFjZSB7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBndWVzdEFQSVNlcnZpY2U6IE1lZXRpbmdHdWVzdEFwaVNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgZ2V0TWVldGluZ1R5cGUocmVxOiB7XG4gICAgICAgIGNhbGVuZGFyU2x1Zzogc3RyaW5nLFxuICAgICAgICBtZWV0aW5nVHlwZVNsdWc6IHN0cmluZyxcbiAgICAgICAgbWV0YWRhdGE/OiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfSxcbiAgICB9KTogT2JzZXJ2YWJsZTxNZWV0aW5nVHlwZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ndWVzdEFQSVNlcnZpY2UuZ2V0TWVldGluZ1R5cGUocmVxKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3AgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghcmVzcCB8fCAhcmVzcC5tZWV0aW5nVHlwZSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge30gYXMgTWVldGluZ1R5cGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBNZWV0aW5nVHlwZUZyb21BcGkoe1xuICAgICAgICAgICAgICAgICAgICBlbnZpcm9ubWVudDogb25Qcm9kdWN0aW9uR2xvYmFsKCkgPyBFbnZpcm9ubWVudC5QUk9EIDogRW52aXJvbm1lbnQuREVNTyxcbiAgICAgICAgICAgICAgICAgICAgY2FsZW5kYXJJZDogcmVxLmNhbGVuZGFyU2x1ZyxcbiAgICAgICAgICAgICAgICAgICAgbWVldGluZ1R5cGVBcGk6IHJlc3AubWVldGluZ1R5cGUsXG4gICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhOiByZXEubWV0YWRhdGEsXG4gICAgICAgICAgICAgICAgICAgIGNhbGVuZGFyU2x1ZzogcmVxLmNhbGVuZGFyU2x1ZyxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgbGlzdE1lZXRpbmdUeXBlcyhyZXE6IHtcbiAgICAgICAgaG9zdElkOiBzdHJpbmcsXG4gICAgICAgIG1ldGFkYXRhPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgICAgIC8vIGRlcHJlY2F0ZWQ6IHVudXNlZCBmaWVsZC5cbiAgICAgICAgdGltZVpvbmU/OiBUaW1lWm9uZUludGVyZmFjZSxcbiAgICAgICAgY2FsZW5kYXJTbHVnPzogc3RyaW5nLFxuICAgIH0pOiBPYnNlcnZhYmxlPE1lZXRpbmdUeXBlW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmxpc3RNZWV0aW5nVHlwZXMocmVxKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3AgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghcmVzcCB8fCAhcmVzcC5tZWV0aW5nVHlwZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzcC5tZWV0aW5nVHlwZXMubWFwKG10ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE1lZXRpbmdUeXBlRnJvbUFwaSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnZpcm9ubWVudDogb25Qcm9kdWN0aW9uR2xvYmFsKCkgPyBFbnZpcm9ubWVudC5QUk9EIDogRW52aXJvbm1lbnQuREVNTyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGVuZGFySWQ6IHJlcS5ob3N0SWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZWV0aW5nVHlwZUFwaTogbXQsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YTogcmVxLm1ldGFkYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsZW5kYXJTbHVnOiByZXEuY2FsZW5kYXJTbHVnLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICB9XG5cbiAgICBsaXN0QXZhaWxhYmxlVGltZVNsb3RzKHJlcToge1xuICAgICAgICBob3N0SWQ6IHN0cmluZyxcbiAgICAgICAgbWVldGluZ1R5cGVJZDogc3RyaW5nLFxuICAgICAgICB0aW1lU3BhbjogVGltZVNwYW4sXG4gICAgICAgIHRpbWVab25lOiBUaW1lWm9uZUludGVyZmFjZSxcbiAgICAgICAgdXNlcklkPzogc3RyaW5nLFxuICAgIH0pOiBPYnNlcnZhYmxlPFRpbWVTcGFuW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmxpc3RBdmFpbGFibGVUaW1lU2xvdHMocmVxKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3AgPT4gcmVzcC50aW1lU2xvdHMgPyByZXNwLnRpbWVTbG90cy5tYXAodHMgPT4gVGltZVNwYW5Gcm9tQXBpKHRzKSkgOiBbXSlcbiAgICAgICAgKVxuICAgIH1cblxuICAgIGJvb2tNZWV0aW5nKHJlcToge1xuICAgICAgICAgICAgICAgICAgICBob3N0SWQ6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgbWVldGluZ1R5cGVJZDogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICBzdGFydDogRGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgY29tbWVudDogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YT86IE1lZXRpbmdNZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgYXR0ZW5kZWVzOiAoT21pdDxDb250YWN0LCAnZnJvbVByb3RvJyB8ICd0b0FwaUpzb24nIHwgJ2NvbnN0cnVjdG9yJyB8ICd0aW1lWm9uZSc+ICYgeyB0aW1lWm9uZTogVGltZVpvbmVJbnRlcmZhY2UgfSlbXSxcbiAgICAgICAgICAgICAgICAgICAgZm9ybUFuc3dlcnM/OiBNZWV0aW5nRm9ybSxcbiAgICAgICAgICAgICAgICAgICAgcmVjYXB0Y2hhVG9rZW46IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgIHVzZXJJZD86IHN0cmluZyxcbiAgICAgICAgICAgICAgICB9XG4gICAgKTogT2JzZXJ2YWJsZTxCb29rTWVldGluZ1Jlc3BvbnNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmd1ZXN0QVBJU2VydmljZS5ib29rTWVldGluZyh7XG4gICAgICAgICAgICAuLi5yZXEsXG4gICAgICAgICAgICBhdHRlbmRlZXM6IHJlcS5hdHRlbmRlZXMsXG4gICAgICAgICAgICBmb3JtQW5zd2VyczogYW5zd2Vyc1RvQVBJKHJlcS5mb3JtQW5zd2VycyksXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNhbmNlbE1lZXRpbmcocmVxOiB7IGF1dGhUb2tlbjogc3RyaW5nLCBtZWV0aW5nSWQ6IHN0cmluZywgY2FuY2VsbGF0aW9uUmVhc29uOiBzdHJpbmcgfSk6IE9ic2VydmFibGU8bnVsbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ndWVzdEFQSVNlcnZpY2UuY2FuY2VsTWVldGluZyhyZXEpLnBpcGUobWFwVG8obnVsbCkpO1xuICAgIH1cblxuICAgIHJlc2NoZWR1bGVNZWV0aW5nKHJlcTogeyBhdXRoVG9rZW46IHN0cmluZywgbWVldGluZ0lkOiBzdHJpbmcsIHN0YXJ0OiBEYXRlLCB0aW1lWm9uZT86IFRpbWVab25lSW50ZXJmYWNlLCBsb2NhdGlvbj86IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxudWxsPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmd1ZXN0QVBJU2VydmljZS5yZXNjaGVkdWxlTWVldGluZyhyZXEpLnBpcGUobWFwVG8obnVsbCkpO1xuICAgIH1cblxuICAgIC8vIGdldEhvc3QgcmV0dXJucyBhbiBpbmRpdmlkdWFsIGhvc3QgYnkgdGhlaXIgaG9zdElkXG4gICAgZ2V0SG9zdChyZXE6IHsgaG9zdElkOiBzdHJpbmcgfSk6IE9ic2VydmFibGU8SG9zdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ndWVzdEFQSVNlcnZpY2UuZ2V0SG9zdChyZXEpLnBpcGUobWFwKHJlc3AgPT4gSG9zdEZyb21BcGkocmVzcC5ob3N0KSkpXG4gICAgfVxuXG4gICAgLy8gZ2V0Q2FsZW5kYXIgcmV0dXJucyBhIENhbGVuZGFyLCB3aGljaCBtYXkgcmVwcmVzZW50IGFuIGluZGl2aWR1YWwgaG9zdCBPUiBhIGdyb3VwaW5nIG9mIGhvc3RzIChJLmUuLCBhIHRlYW0pXG4gICAgZ2V0Q2FsZW5kYXIocmVxOiB7IGNhbGVuZGFySWQ6IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxDYWxlbmRhckludGVyZmFjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ndWVzdEFQSVNlcnZpY2UuZ2V0Q2FsZW5kYXIocmVxKS5waXBlKG1hcChyZXNwID0+IENhbGVuZGFyRnJvbUFwaShyZXNwLmNhbGVuZGFyKSkpXG4gICAgfVxuXG4gICAgZ2V0Qm9va2VkTWVldGluZ0luZm8obWVldGluZ0lkOiBzdHJpbmcsIGF1dGhUb2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxCb29rZWRNZWV0aW5nSW5mbz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ndWVzdEFQSVNlcnZpY2UuZ2V0R3Vlc3RCb29rZWRNZWV0aW5nKHtcbiAgICAgICAgICAgIG1lZXRpbmdJZDogbWVldGluZ0lkLCBhdXRoVG9rZW46IGF1dGhUb2tlbixcbiAgICAgICAgfSkucGlwZShcbiAgICAgICAgICAgIG1hcChyZXNwID0+ICg8Qm9va2VkTWVldGluZ0luZm8+e1xuICAgICAgICAgICAgICAgIHN0YXJ0OiByZXNwLnN0YXJ0VGltZSxcbiAgICAgICAgICAgICAgICBlbmQ6IHJlc3AuZW5kVGltZSxcbiAgICAgICAgICAgICAgICB0aW1lWm9uZTogcmVzcC50aW1lWm9uZSxcbiAgICAgICAgICAgICAgICBtZWV0aW5nVHlwZUlkOiByZXNwLm1lZXRpbmdUeXBlSWQsXG4gICAgICAgICAgICAgICAgbG9jYXRpb246IHJlc3AubG9jYXRpb24sXG4gICAgICAgICAgICAgICAgbG9jYXRpb25HdWlkZWxpbmU6IHJlc3AubG9jYXRpb25HdWlkZWxpbmUsXG4gICAgICAgICAgICAgICAgbG9jYXRpb25UeXBlOiByZXNwLmxvY2F0aW9uVHlwZSxcbiAgICAgICAgICAgICAgICBtZWV0aW5nVHlwZTogcmVzcC5tZWV0aW5nVHlwZSxcbiAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogcmVzcC5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgICBjYWxlbmRhcklkOiByZXNwLmNhbGVuZGFySWQsXG4gICAgICAgICAgICB9KSlcbiAgICAgICAgKVxuICAgIH1cblxuICAgIGlzSG9zdENvbmZpZ3VyZWQocmVxOiB7IGhvc3RJZDogc3RyaW5nIH0pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmlzSG9zdENvbmZpZ3VyZWQocmVxKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwOiBHdWVzdElzSG9zdENvbmZpZ3VyZWRSZXNwb25zZSkgPT4gcmVzcC5pc0NvbmZpZ3VyZWQpXG4gICAgICAgICk7XG4gICAgfVxuICAgIGdldEdyb3VwKHJlcTogeyBncm91cElkOiBzdHJpbmcsc2x1Zzogc3RyaW5nIH0pOiBPYnNlcnZhYmxlPEdldEdyb3VwUmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmdldEdyb3VwKHJlcSk7XG4gICAgfVxuICAgIGdldFNlcnZpY2UocmVxOiB7IHNlcnZpY2VJZDogc3RyaW5nLHNsdWc6IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxHZXRTZXJ2aWNlUmVzcG9uc2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmdldFNlcnZpY2UocmVxKTtcbiAgICB9XG59XG4iXX0=
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Vlc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21lZXRpbmdzX3Nkay9zcmMvbGliL2d1ZXN0L2d1ZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBSUgsc0JBQXNCLEVBSXpCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBQyxHQUFHLEVBQUUsS0FBSyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUNILFlBQVksRUFDWixlQUFlLEVBRWYsV0FBVyxFQUlYLGtCQUFrQixFQUVsQixlQUFlLEVBQ2xCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBQyxXQUFXLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBbUN0RSxNQUFNLE9BQU8sWUFBWTtJQUVyQixZQUNZLGVBQXVDO1FBQXZDLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtJQUNoRCxDQUFDO0lBRUosY0FBYyxDQUFDLEdBSWQ7UUFDRyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDaEQsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQzVCLE9BQU8sRUFBaUIsQ0FBQzthQUM1QjtZQUNELE9BQU8sa0JBQWtCLENBQUM7Z0JBQ3RCLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSTtnQkFDdkUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxZQUFZO2dCQUM1QixjQUFjLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQ2hDLFFBQVEsRUFBRSxHQUFHLENBQUMs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dCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDYWxlbmRhckludGVyZmFjZSxcbiAgICBDb250YWN0LCBHZXRHcm91cFJlc3BvbnNlLFxuICAgIEd1ZXN0SXNIb3N0Q29uZmlndXJlZFJlc3BvbnNlLFxuICAgIE1lZXRpbmdHdWVzdEFwaVNlcnZpY2UsXG4gICAgTWVldGluZ0xvY2F0aW9uVHlwZSxcbiAgICBUZWFtRXZlbnRNZWV0aW5nVHlwZSxcbiAgICBUaW1lWm9uZUludGVyZmFjZVxufSBmcm9tICcuLi9faW50ZXJuYWwnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBtYXBUb30gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgICBhbnN3ZXJzVG9BUEksXG4gICAgQ2FsZW5kYXJGcm9tQXBpLFxuICAgIEhvc3QsXG4gICAgSG9zdEZyb21BcGksXG4gICAgTWVldGluZ0Zvcm0sXG4gICAgTWVldGluZ01ldGFkYXRhLFxuICAgIE1lZXRpbmdUeXBlLFxuICAgIE1lZXRpbmdUeXBlRnJvbUFwaSxcbiAgICBUaW1lU3BhbixcbiAgICBUaW1lU3BhbkZyb21BcGlcbn0gZnJvbSAnLi4vc2hhcmVkJztcbmltcG9ydCB7RW52aXJvbm1lbnQsIG9uUHJvZHVjdGlvbkdsb2JhbH0gZnJvbSBcIi4uL3NoYXJlZC9lbnZpcm9ubWVudFwiO1xuaW1wb3J0IHtHZXRTZXJ2aWNlUmVzcG9uc2V9IGZyb20gXCIuLi9faW50ZXJuYWwvb2JqZWN0cy9tZWV0aW5nLWd1ZXN0XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm9va01lZXRpbmdSZXNwb25zZSB7XG4gICAgbWVldGluZ0lkOiBzdHJpbmc7XG4gICAgaG9zdElkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm9va2VkTWVldGluZ0luZm8ge1xuICAgIHN0YXJ0OiBEYXRlO1xuICAgIGVuZDogRGF0ZTtcbiAgICB0aW1lWm9uZTogVGltZVpvbmVJbnRlcmZhY2U7XG4gICAgbWVldGluZ1R5cGVJZDogc3RyaW5nO1xuICAgIGxvY2F0aW9uOiBzdHJpbmc7XG4gICAgbG9jYXRpb25HdWlkZWxpbmU6IHN0cmluZztcbiAgICBsb2NhdGlvblR5cGU6IE1lZXRpbmdMb2NhdGlvblR5cGU7XG4gICAgbWVldGluZ1R5cGU6IFRlYW1FdmVudE1lZXRpbmdUeXBlO1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgY2FsZW5kYXJJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEd1ZXN0U2VydmljZUludGVyZmFjZSB7XG4gICAgZ2V0Qm9va2VkTWVldGluZ0luZm8obWVldGluZ0lkOiBzdHJpbmcsIGF1dGhUb2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxCb29rZWRNZWV0aW5nSW5mbz5cblxuICAgIGxpc3RNZWV0aW5nVHlwZXMocmVxOiB7XG4gICAgICAgIGhvc3RJZDogc3RyaW5nLFxuICAgICAgICB0aW1lWm9uZT86IFRpbWVab25lSW50ZXJmYWNlLFxuICAgICAgICBtZXRhZGF0YT86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9LFxuICAgICAgICBzbHVnPzogc3RyaW5nLFxuICAgIH0pOiBPYnNlcnZhYmxlPE1lZXRpbmdUeXBlW10+XG5cbiAgICBpc0hvc3RDb25maWd1cmVkKHJlcTogeyBob3N0SWQ6IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxib29sZWFuPlxufVxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBHdWVzdFNlcnZpY2UgaW1wbGVtZW50cyBHdWVzdFNlcnZpY2VJbnRlcmZhY2Uge1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZ3Vlc3RBUElTZXJ2aWNlOiBNZWV0aW5nR3Vlc3RBcGlTZXJ2aWNlLFxuICAgICkge31cblxuICAgIGdldE1lZXRpbmdUeXBlKHJlcToge1xuICAgICAgICBjYWxlbmRhclNsdWc6IHN0cmluZyxcbiAgICAgICAgbWVldGluZ1R5cGVTbHVnOiBzdHJpbmcsXG4gICAgICAgIG1ldGFkYXRhPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgfSk6IE9ic2VydmFibGU8TWVldGluZ1R5cGU+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmdldE1lZXRpbmdUeXBlKHJlcSkucGlwZShcbiAgICAgICAgICAgIG1hcChyZXNwID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXJlc3AgfHwgIXJlc3AubWVldGluZ1R5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHt9IGFzIE1lZXRpbmdUeXBlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gTWVldGluZ1R5cGVGcm9tQXBpKHtcbiAgICAgICAgICAgICAgICAgICAgZW52aXJvbm1lbnQ6IG9uUHJvZHVjdGlvbkdsb2JhbCgpID8gRW52aXJvbm1lbnQuUFJPRCA6IEVudmlyb25tZW50LkRFTU8sXG4gICAgICAgICAgICAgICAgICAgIGNhbGVuZGFySWQ6IHJlcS5jYWxlbmRhclNsdWcsXG4gICAgICAgICAgICAgICAgICAgIG1lZXRpbmdUeXBlQXBpOiByZXNwLm1lZXRpbmdUeXBlLFxuICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YTogcmVxLm1ldGFkYXRhLFxuICAgICAgICAgICAgICAgICAgICBjYWxlbmRhclNsdWc6IHJlcS5jYWxlbmRhclNsdWcsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGxpc3RNZWV0aW5nVHlwZXMocmVxOiB7XG4gICAgICAgIGhvc3RJZDogc3RyaW5nLFxuICAgICAgICBtZXRhZGF0YT86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9LFxuICAgICAgICAvLyBkZXByZWNhdGVkOiB1bnVzZWQgZmllbGQuXG4gICAgICAgIHRpbWVab25lPzogVGltZVpvbmVJbnRlcmZhY2UsXG4gICAgICAgIGNhbGVuZGFyU2x1Zz86IHN0cmluZyxcbiAgICB9KTogT2JzZXJ2YWJsZTxNZWV0aW5nVHlwZVtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmd1ZXN0QVBJU2VydmljZS5saXN0TWVldGluZ1R5cGVzKHJlcSkucGlwZShcbiAgICAgICAgICAgIG1hcChyZXNwID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXJlc3AgfHwgIXJlc3AubWVldGluZ1R5cGVzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3AubWVldGluZ1R5cGVzLm1hcChtdCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBNZWV0aW5nVHlwZUZyb21BcGkoe1xuICAgICAgICAgICAgICAgICAgICAgICAgZW52aXJvbm1lbnQ6IG9uUHJvZHVjdGlvbkdsb2JhbCgpID8gRW52aXJvbm1lbnQuUFJPRCA6IEVudmlyb25tZW50LkRFTU8sXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxlbmRhcklkOiByZXEuaG9zdElkLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWVldGluZ1R5cGVBcGk6IG10LFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJlcS5tZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGVuZGFyU2x1ZzogcmVxLmNhbGVuZGFyU2x1ZyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgfVxuXG4gICAgbGlzdEF2YWlsYWJsZVRpbWVTbG90cyhyZXE6IHtcbiAgICAgICAgaG9zdElkOiBzdHJpbmcsXG4gICAgICAgIG1lZXRpbmdUeXBlSWQ6IHN0cmluZyxcbiAgICAgICAgdGltZVNwYW46IFRpbWVTcGFuLFxuICAgICAgICB0aW1lWm9uZTogVGltZVpvbmVJbnRlcmZhY2UsXG4gICAgICAgIHVzZXJJZD86IHN0cmluZyxcbiAgICB9KTogT2JzZXJ2YWJsZTxUaW1lU3BhbltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmd1ZXN0QVBJU2VydmljZS5saXN0QXZhaWxhYmxlVGltZVNsb3RzKHJlcSkucGlwZShcbiAgICAgICAgICAgIG1hcChyZXNwID0+IHJlc3AudGltZVNsb3RzID8gcmVzcC50aW1lU2xvdHMubWFwKHRzID0+IFRpbWVTcGFuRnJvbUFwaSh0cykpIDogW10pXG4gICAgICAgIClcbiAgICB9XG5cbiAgICBib29rTWVldGluZyhyZXE6IHtcbiAgICAgICAgICAgICAgICAgICAgaG9zdElkOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgIG1lZXRpbmdUeXBlSWQ6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IERhdGUsXG4gICAgICAgICAgICAgICAgICAgIGNvbW1lbnQ6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE/OiBNZWV0aW5nTWV0YWRhdGEsXG4gICAgICAgICAgICAgICAgICAgIGF0dGVuZGVlczogKE9taXQ8Q29udGFjdCwgJ2Zyb21Qcm90bycgfCAndG9BcGlKc29uJyB8ICdjb25zdHJ1Y3RvcicgfCAndGltZVpvbmUnPiAmIHsgdGltZVpvbmU6IFRpbWVab25lSW50ZXJmYWNlIH0pW10sXG4gICAgICAgICAgICAgICAgICAgIGZvcm1BbnN3ZXJzPzogTWVldGluZ0Zvcm0sXG4gICAgICAgICAgICAgICAgICAgIHJlY2FwdGNoYVRva2VuOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uPzogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICB1c2VySWQ/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgfVxuICAgICk6IE9ic2VydmFibGU8Qm9va01lZXRpbmdSZXNwb25zZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ndWVzdEFQSVNlcnZpY2UuYm9va01lZXRpbmcoe1xuICAgICAgICAgICAgLi4ucmVxLFxuICAgICAgICAgICAgYXR0ZW5kZWVzOiByZXEuYXR0ZW5kZWVzLFxuICAgICAgICAgICAgZm9ybUFuc3dlcnM6IGFuc3dlcnNUb0FQSShyZXEuZm9ybUFuc3dlcnMpLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBjYW5jZWxNZWV0aW5nKHJlcTogeyBhdXRoVG9rZW46IHN0cmluZywgbWVldGluZ0lkOiBzdHJpbmcsIGNhbmNlbGxhdGlvblJlYXNvbjogc3RyaW5nIH0pOiBPYnNlcnZhYmxlPG51bGw+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmNhbmNlbE1lZXRpbmcocmVxKS5waXBlKG1hcFRvKG51bGwpKTtcbiAgICB9XG5cbiAgICByZXNjaGVkdWxlTWVldGluZyhyZXE6IHsgYXV0aFRva2VuOiBzdHJpbmcsIG1lZXRpbmdJZDogc3RyaW5nLCBzdGFydDogRGF0ZSwgdGltZVpvbmU/OiBUaW1lWm9uZUludGVyZmFjZSwgbG9jYXRpb24/OiBzdHJpbmcgfSk6IE9ic2VydmFibGU8bnVsbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ndWVzdEFQSVNlcnZpY2UucmVzY2hlZHVsZU1lZXRpbmcocmVxKS5waXBlKG1hcFRvKG51bGwpKTtcbiAgICB9XG5cbiAgICAvLyBnZXRIb3N0IHJldHVybnMgYW4gaW5kaXZpZHVhbCBob3N0IGJ5IHRoZWlyIGhvc3RJZFxuICAgIGdldEhvc3QocmVxOiB7IGhvc3RJZDogc3RyaW5nIH0pOiBPYnNlcnZhYmxlPEhvc3Q+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmdldEhvc3QocmVxKS5waXBlKG1hcChyZXNwID0+IEhvc3RGcm9tQXBpKHJlc3AuaG9zdCkpKVxuICAgIH1cblxuICAgIC8vIGdldENhbGVuZGFyIHJldHVybnMgYSBDYWxlbmRhciwgd2hpY2ggbWF5IHJlcHJlc2VudCBhbiBpbmRpdmlkdWFsIGhvc3QgT1IgYSBncm91cGluZyBvZiBob3N0cyAoSS5lLiwgYSB0ZWFtKVxuICAgIGdldENhbGVuZGFyKHJlcTogeyBjYWxlbmRhcklkOiBzdHJpbmcgfSk6IE9ic2VydmFibGU8Q2FsZW5kYXJJbnRlcmZhY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmdldENhbGVuZGFyKHJlcSkucGlwZShtYXAocmVzcCA9PiBDYWxlbmRhckZyb21BcGkocmVzcC5jYWxlbmRhcikpKVxuICAgIH1cblxuICAgIGdldEJvb2tlZE1lZXRpbmdJbmZvKG1lZXRpbmdJZDogc3RyaW5nLCBhdXRoVG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8Qm9va2VkTWVldGluZ0luZm8+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3Vlc3RBUElTZXJ2aWNlLmdldEd1ZXN0Qm9va2VkTWVldGluZyh7XG4gICAgICAgICAgICBtZWV0aW5nSWQ6IG1lZXRpbmdJZCwgYXV0aFRva2VuOiBhdXRoVG9rZW4sXG4gICAgICAgIH0pLnBpcGUoXG4gICAgICAgICAgICBtYXAocmVzcCA9PiAoPEJvb2tlZE1lZXRpbmdJbmZvPntcbiAgICAgICAgICAgICAgICBzdGFydDogcmVzcC5zdGFydFRpbWUsXG4gICAgICAgICAgICAgICAgZW5kOiByZXNwLmVuZFRpbWUsXG4gICAgICAgICAgICAgICAgdGltZVpvbmU6IHJlc3AudGltZVpvbmUsXG4gICAgICAgICAgICAgICAgbWVldGluZ1R5cGVJZDogcmVzcC5tZWV0aW5nVHlwZUlkLFxuICAgICAgICAgICAgICAgIGxvY2F0aW9uOiByZXNwLmxvY2F0aW9uLFxuICAgICAgICAgICAgICAgIGxvY2F0aW9uR3VpZGVsaW5lOiByZXNwLmxvY2F0aW9uR3VpZGVsaW5lLFxuICAgICAgICAgICAgICAgIGxvY2F0aW9uVHlwZTogcmVzcC5sb2NhdGlvblR5cGUsXG4gICAgICAgICAgICAgICAgbWVldGluZ1R5cGU6IHJlc3AubWVldGluZ1R5cGUsXG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6IHJlc3AuZGlzcGxheU5hbWUsXG4gICAgICAgICAgICAgICAgY2FsZW5kYXJJZDogcmVzcC5jYWxlbmRhcklkLFxuICAgICAgICAgICAgfSkpXG4gICAgICAgIClcbiAgICB9XG5cbiAgICBpc0hvc3RDb25maWd1cmVkKHJlcTogeyBob3N0SWQ6IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmd1ZXN0QVBJU2VydmljZS5pc0hvc3RDb25maWd1cmVkKHJlcSkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcDogR3Vlc3RJc0hvc3RDb25maWd1cmVkUmVzcG9uc2UpID0+IHJlc3AuaXNDb25maWd1cmVkKVxuICAgICAgICApO1xuICAgIH1cbiAgICBnZXRHcm91cChyZXE6IHsgZ3JvdXBJZDogc3RyaW5nLHNsdWc6IHN0cmluZyB9KTogT2JzZXJ2YWJsZTxHZXRHcm91cFJlc3BvbnNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmd1ZXN0QVBJU2VydmljZS5nZXRHcm91cChyZXEpO1xuICAgIH1cbiAgICBnZXRTZXJ2aWNlKHJlcTogeyBzZXJ2aWNlSWQ6IHN0cmluZyxzbHVnOiBzdHJpbmcgfSk6IE9ic2VydmFibGU8R2V0U2VydmljZVJlc3BvbnNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmd1ZXN0QVBJU2VydmljZS5nZXRTZXJ2aWNlKHJlcSk7XG4gICAgfVxufVxuIl19
|
|
@@ -2,7 +2,8 @@ export function hostUserFromApi(hostUser) {
|
|
|
2
2
|
return {
|
|
3
3
|
userId: hostUser.userId || '',
|
|
4
4
|
displayName: hostUser.displayName || '',
|
|
5
|
-
isConfigured: hostUser.isConfigured || false
|
|
5
|
+
isConfigured: hostUser.isConfigured || false,
|
|
6
|
+
isConnected: hostUser.isConnected || false,
|
|
6
7
|
};
|
|
7
8
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdC11c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbWVldGluZ3Nfc2RrL3NyYy9saWIvc2hhcmVkL2hvc3QtdXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsZUFBZSxDQUFDLFFBQTJCO0lBQ3ZELE9BQU87UUFDSCxNQUFNLEVBQUUsUUFBUSxDQUFDLE1BQU0sSUFBSSxFQUFFO1FBQzdCLFdBQVcsRUFBRSxRQUFRLENBQUMsV0FBVyxJQUFJLEVBQUU7UUFDdkMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZLElBQUksS0FBSztRQUM1QyxXQUFXLEVBQUUsUUFBUSxDQUFDLFdBQVcsSUFBSSxLQUFLO0tBQzdDLENBQUE7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtIb3N0VXNlckludGVyZmFjZX0gZnJvbSAnLi4vX2ludGVybmFsJztcbmV4cG9ydCB0eXBlIEhvc3RVc2VyID0gUmVxdWlyZWQ8SG9zdFVzZXJJbnRlcmZhY2U+XG5leHBvcnQgZnVuY3Rpb24gaG9zdFVzZXJGcm9tQXBpKGhvc3RVc2VyOiBIb3N0VXNlckludGVyZmFjZSkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHVzZXJJZDogaG9zdFVzZXIudXNlcklkIHx8ICcnLFxuICAgICAgICBkaXNwbGF5TmFtZTogaG9zdFVzZXIuZGlzcGxheU5hbWUgfHwgJycsXG4gICAgICAgIGlzQ29uZmlndXJlZDogaG9zdFVzZXIuaXNDb25maWd1cmVkIHx8IGZhbHNlLFxuICAgICAgICBpc0Nvbm5lY3RlZDogaG9zdFVzZXIuaXNDb25uZWN0ZWQgfHwgZmFsc2UsXG4gICAgfVxufVxuIl19
|
|
@@ -1624,6 +1624,9 @@ class HostUser {
|
|
|
1624
1624
|
if (typeof this.isConfigured !== 'undefined') {
|
|
1625
1625
|
toReturn['isConfigured'] = this.isConfigured;
|
|
1626
1626
|
}
|
|
1627
|
+
if (typeof this.isConnected !== 'undefined') {
|
|
1628
|
+
toReturn['isConnected'] = this.isConnected;
|
|
1629
|
+
}
|
|
1627
1630
|
return toReturn;
|
|
1628
1631
|
}
|
|
1629
1632
|
}
|
|
@@ -6124,7 +6127,8 @@ function hostUserFromApi(hostUser) {
|
|
|
6124
6127
|
return {
|
|
6125
6128
|
userId: hostUser.userId || '',
|
|
6126
6129
|
displayName: hostUser.displayName || '',
|
|
6127
|
-
isConfigured: hostUser.isConfigured || false
|
|
6130
|
+
isConfigured: hostUser.isConfigured || false,
|
|
6131
|
+
isConnected: hostUser.isConnected || false,
|
|
6128
6132
|
};
|
|
6129
6133
|
}
|
|
6130
6134
|
|