@colijnit/transaction 256.1.68 → 256.1.69
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/bundles/colijnit-transaction.umd.js +16 -16
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.metadata.json +1 -1
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-overview/transaction-quick-access-overview.component.js +11 -2
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-send-method-base.component.js +1 -13
- package/esm2015/lib/res/dictionary/dictionaries.js +7 -1
- package/esm2015/lib/transaction-version.js +3 -3
- package/fesm2015/colijnit-transaction.js +18 -15
- package/fesm2015/colijnit-transaction.js.map +1 -1
- package/lib/component/transaction-quick-access/transaction-quick-access-overview/transaction-quick-access-overview.component.d.ts +1 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-send-method-base.component.d.ts +0 -2
- package/lib/res/dictionary/dictionaries.d.ts +18913 -0
- package/package.json +1 -1
|
@@ -30,6 +30,14 @@ export class TransactionQuickAccessOverviewComponent extends TransactionQuickAcc
|
|
|
30
30
|
}
|
|
31
31
|
this.showSendMethodDialog = true;
|
|
32
32
|
}
|
|
33
|
+
loadDefaultPrinterName(reportId) {
|
|
34
|
+
this.transactionService.getDefaultPrinter(reportId, LayoutCode.OrderConfirmation).then((printerName) => {
|
|
35
|
+
if (printerName && this.printerList.find((printer) => printer.name === printerName)) {
|
|
36
|
+
this.defaultPrinterName = printerName;
|
|
37
|
+
this.changeDetector.detectChanges();
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
33
41
|
emailDocument(request) {
|
|
34
42
|
return __awaiter(this, void 0, void 0, function* () {
|
|
35
43
|
if (this.sendDocumentsComponent.selected) {
|
|
@@ -139,7 +147,8 @@ TransactionQuickAccessOverviewComponent.decorators = [
|
|
|
139
147
|
(additionalFileChangeEvent)="upsertDocument($event)"
|
|
140
148
|
(closeClick)="showSendMethodDialog = false"
|
|
141
149
|
(okClick)="handleSendMethodOkClick($event)"
|
|
142
|
-
|
|
150
|
+
[defaultPrinterName]="defaultPrinterName"
|
|
151
|
+
(loadDefaultPrinterName)="loadDefaultPrinterName($event)"
|
|
143
152
|
></co-send-method-dialog>
|
|
144
153
|
<co-digital-signature
|
|
145
154
|
[documentId]="signatureDocumentId"
|
|
@@ -153,4 +162,4 @@ TransactionQuickAccessOverviewComponent.propDecorators = {
|
|
|
153
162
|
sendDocumentsComponent: [{ type: ViewChild, args: [TransactionSendDocumentsComponent,] }],
|
|
154
163
|
showClass: [{ type: HostBinding, args: ["class.co-transaction-quick-access-overview",] }]
|
|
155
164
|
};
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW92ZXJ2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXF1aWNrLWFjY2Vzcy90cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtb3ZlcnZpZXcvdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW92ZXJ2aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQVUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzNGLE9BQU8sRUFBQyw2Q0FBNkMsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQ3JILE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3hILE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLG1FQUFtRSxDQUFDO0FBQ2xILE9BQU8sRUFBQyxxQ0FBcUMsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ3JJLE9BQU8sRUFBQyxxQ0FBcUMsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ3JJLE9BQU8sRUFBQyxtQ0FBbUMsRUFBQyxNQUFNLDhFQUE4RSxDQUFDO0FBQ2pJLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3BILE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHFFQUFxRSxDQUFDO0FBQ2hILE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3BILE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsd0NBQXdDLEVBQUMsTUFBTSw4RUFBOEUsQ0FBQztBQUN0SSxPQUFPLEVBQUMsd0NBQXdDLEVBQUMsTUFBTSw4RUFBOEUsQ0FBQztB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bUIsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO3FCQUM5QztvQkFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQzFDLENBQUMsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDO0tBQUE7SUFFZSxvQkFBb0I7O1lBQ2xDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLHFDQUFxQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pILENBQUM7S0FBQTtJQUVPLHVCQUF1QixDQUFDLE9BQTRIO1FBQzFKLE9BQU8sQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDM0UsQ0FBQzs7O1lBMUlGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0NBQXNDO2dCQUNoRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUNUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7cUNBR0UsU0FBUyxTQUFDLGlDQUFpQzt3QkFHM0MsV0FBVyxTQUFDLDRDQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvblByaW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1wcmludC5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25RdWlja0FjY2Vzc1NlbmRNZXRob2RCYXNlQ29tcG9uZW50fSBmcm9tICcuLi90cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtc2VuZC1tZXRob2QtYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VuZERvY3VtZW50c0NvbXBvbmVudH0gZnJvbSAnLi4vLi4vdHJhbnNhY3Rpb24tc2VuZC1kb2N1bWVudHMvdHJhbnNhY3Rpb24tc2VuZC1kb2N1bWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHtSZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnRpbmctZG9jdW1lbnQtcGRmLWJhc2UtcmVxdWVzdCc7XHJcbmltcG9ydCB7RW1haWxIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2VtYWlsLWhpc3RvcmljLW9yZGVyLWNvbmZpcm1hdGlvbi1yZXF1ZXN0JztcclxuaW1wb3J0IHtQcmludEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcHJpbnQtaGlzdG9yaWMtb3JkZXItY29uZmlybWF0aW9uLXJlcXVlc3QnO1xyXG5pbXBvcnQge1BkZkhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGRmLWhpc3RvcmljLW9yZGVyLWNvbmZpcm1hdGlvbi1yZXF1ZXN0JztcclxuaW1wb3J0IHtFbWFpbE9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2VtYWlsLW9yZGVyLWNvbmZpcm1hdGlvbi1yZXF1ZXN0JztcclxuaW1wb3J0IHtQZGZPcmRlckNvbmZpcm1hdGlvblJlcXVlc3R9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wZGYtb3JkZXItY29uZmlybWF0aW9uLXJlcXVlc3QnO1xyXG5pbXBvcnQge1ByaW50T3JkZXJDb25maXJtYXRpb25SZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcHJpbnQtb3JkZXItY29uZmlybWF0aW9uLXJlcXVlc3QnO1xyXG5pbXBvcnQge0NvRG9jdW1lbnR9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50JztcclxuaW1wb3J0IHtSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnRpbmctZG9jdW1lbnQtZW1haWwtc2lnbi1kb2MtYmFzZS1yZXF1ZXN0JztcclxuaW1wb3J0IHtSZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnRpbmctZG9jdW1lbnQtcHJpbnQtc2lnbi1kb2MtYmFzZS1yZXF1ZXN0JztcclxuaW1wb3J0IHtMYXlvdXRDb2RlfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9sYXlvdXQtY29kZS5lbnVtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLXF1aWNrLWFjY2Vzcy1vdmVydmlld1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tcXVpY2stc2VuZC1idXR0b25cclxuICAgICAgW2RlZmF1bHRNZXRob2RJY29uXT1cImRlZmF1bHRTZW5kTWV0aG9kSWNvblwiXHJcbiAgICAgIFtzaG93TG9hZGVyXT1cInNob3dMb2FkZXJcIlxyXG4gICAgICAoc2VuZEljb25DbGlja2VkKT1cImhhbmRsZVNlbmQoZGVmYXVsdFNlbmRNZXRob2QpXCJcclxuICAgICAgKG9wZW5TZW5kTWV0aG9kRGlhbG9nKT1cIm9wZW5TZW5kRGlhbG9nKClcIlxyXG4gICAgPjwvY28tcXVpY2stc2VuZC1idXR0b24+XHJcbiAgICA8Y28tdHJhbnNhY3Rpb24tc2VuZC1kb2N1bWVudHNcclxuICAgICAgW2hpc3RvcmljUmVwb3J0c109XCJoaXN0b3JpY1JlcG9ydHNcIlxyXG4gICAgICBbdHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnldPVwidHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkuU2FsZXNPcmRlck92ZXJ2aWV3XCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLXNlbmQtZG9jdW1lbnRzPlxyXG4gICAgPGNvLXNlbmQtbWV0aG9kLWRpYWxvZyAqbmdJZj1cInNob3dTZW5kTWV0aG9kRGlhbG9nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hlYWRlclRpdGxlXT1cIidWZXJ6ZW5kbWV0aG9kZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbcHJpbnRlckxpc3RdPVwicHJpbnRlckxpc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVmYXVsdFNlbmRNZXRob2RdPVwiZGVmYXVsdFNlbmRNZXRob2RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbdmlzaWJsZU1ldGhvZHNdPVwiW3NlbmRNZXRob2RUeXBlLlByaW50LCBzZW5kTWV0aG9kVHlwZS5FbWFpbCwgc2VuZE1ldGhvZFR5cGUuUGRmXVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWFpbEFkZHJlc3Nlc109XCJlbWFpbEFkZHJlc3Nlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlbWFpbExheW91dHNdPVwiZW1haWxMYXlvdXRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ByaW50TGF5b3V0c109XCJwcmludExheW91dHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNEb2NTaWduRW5hYmxlZF09XCJpc0RvY1NpZ25FbmFibGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzQWRkaXRpb25hbERvY0VuYWJsZWRdPVwiaXNBZGRpdGlvbmFsRG9jRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFthZGRpdGlvbmFsRmlsZUNvbnRlbnRzXT1cImFkZGl0aW9uYWxGaWxlQ29udGVudHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbYWRkaXRpb25hbEZpbGVOYW1lXT1cImFkZGl0aW9uYWxGaWxlTmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFsocmVwb3J0aW5nRG9jdW1lbnRFbWFpbFJlcXVlc3QpXT1cInJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhyZXBvcnRpbmdEb2N1bWVudFByaW50UmVxdWVzdCldPVwicmVwb3J0RG9jdW1lbnRQcmludFJlcXVlc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbKHJlcG9ydGluZ0RvY3VtZW50UGRmUmVxdWVzdCldPVwicmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFkZGl0aW9uYWxGaWxlQ2hhbmdlRXZlbnQpPVwidXBzZXJ0RG9jdW1lbnQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cInNob3dTZW5kTWV0aG9kRGlhbG9nID0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAob2tDbGljayk9XCJoYW5kbGVTZW5kTWV0aG9kT2tDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNob3dGaWxlUHJldmlldyk9XCJvblNob3dGaWxlUHJldmlldyhMYXlvdXRDb2RlLk9yZGVyQ29uZmlybWF0aW9uKVwiXHJcbiAgICA+PC9jby1zZW5kLW1ldGhvZC1kaWFsb2c+XHJcbiAgICA8Y28tZGlnaXRhbC1zaWduYXR1cmVcclxuICAgICAgW2RvY3VtZW50SWRdPVwic2lnbmF0dXJlRG9jdW1lbnRJZFwiXHJcbiAgICAgIChkb2N1bWVudFN0b3JlZCk9XCJjb21taXRBbmRSZWZyZXNoVHJhbnNhY3Rpb24oKVwiXHJcbiAgICA+PC9jby1kaWdpdGFsLXNpZ25hdHVyZT5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uUXVpY2tBY2Nlc3NPdmVydmlld0NvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uUXVpY2tBY2Nlc3NTZW5kTWV0aG9kQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBWaWV3Q2hpbGQoVHJhbnNhY3Rpb25TZW5kRG9jdW1lbnRzQ29tcG9uZW50KVxyXG4gIHB1YmxpYyBzZW5kRG9jdW1lbnRzQ29tcG9uZW50OiBUcmFuc2FjdGlvblNlbmREb2N1bWVudHNDb21wb25lbnQ7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLXF1aWNrLWFjY2Vzcy1vdmVydmlld1wiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZXBvcnREb2N1bWVudEVtYWlsUmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdCA9IG5ldyBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0KCk7XHJcbiAgcHVibGljIHJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0ID0gbmV3IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QoKTtcclxuICBwdWJsaWMgcmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0ID0gbmV3IFJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3QoKTtcclxuXHJcbiAgcHVibGljIG9wZW5TZW5kRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaXNBZGRpdGlvbmFsRG9jRW5hYmxlZCAmJiB0aGlzLmhpc3RvcmljUmVwb3J0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuZ2V0VGVybXNBbmRDb25kaXRpb25zRm9ybSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zaG93U2VuZE1ldGhvZERpYWxvZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYXN5bmMgZW1haWxEb2N1bWVudChyZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0KSB7XHJcbiAgICBpZiAodGhpcy5zZW5kRG9jdW1lbnRzQ29tcG9uZW50LnNlbGVjdGVkKSB7XHJcbiAgICAgIGNvbnN0IGVtYWlsSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3Q6IEVtYWlsSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QgPVxyXG4gICAgICAgIE9iamVjdC5hc3NpZ24obmV3IEVtYWlsSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QoKSwgcmVxdWVzdCk7XHJcbiAgICAgIHRoaXMuX3ByZXBhcmVIaXN0b3JpY1JlcXVlc3QoZW1haWxIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCk7XHJcbiAgICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmVtYWlsSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvbihlbWFpbEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KS50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgZW1haWxPcmRlckNvbmZpcm1hdGlvblJlcXVlc3Q6IEVtYWlsT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0ID1cclxuICAgICAgICBPYmplY3QuYXNzaWduKG5ldyBFbWFpbE9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCgpLCByZXF1ZXN0KTtcclxuICAgICAgY29uc3QgcmVzdWx0OiBDb0RvY3VtZW50IHwgYm9vbGVhbiA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmVtYWlsT3JkZXJDb25maXJtYXRpb24oZW1haWxPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QpO1xyXG4gICAgICBpZiAocmVzdWx0IGluc3RhbmNlb2YgQ29Eb2N1bWVudCkge1xyXG4gICAgICAgIHRoaXMuc2lnbmF0dXJlRG9jdW1lbnRJZCA9IHJlc3VsdC5kb2N1bWVudElkO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXREZWZhdWx0RW1haWxBZGRyZXNzTGlzdCgpOiBQcm9taXNlPHN0cmluZ1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0RGVmYXVsdEVtYWlsQWRkcmVzc0xpc3RGb3JPcmRlckNvbmZpcm1hdGlvbih0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRFbWFpbExheW91dHMoKTogUHJvbWlzZTxSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbFtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0T3JkZXJDb25maXJtYXRpb25FbWFpbExheW91dHModGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZ2V0UHJpbnRMYXlvdXRzKCk6IFByb21pc2U8UmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnRbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldE9yZGVyQ29uZmlybWF0aW9uUHJpbnRMYXlvdXRzKHRoaXMudHJhbnNhY3Rpb25JbmZvLnV1aWQpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFzeW5jIHBkZkRvY3VtZW50KHJlcXVlc3Q6IFBkZk9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHRoaXMuc2VuZERvY3VtZW50c0NvbXBvbmVudC5zZWxlY3RlZCkge1xyXG4gICAgICBjb25zdCBwZGZIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdDogUGRmSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QgPVxyXG4gICAgICAgIE9iamVjdC5hc3NpZ24obmV3IFBkZkhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KCksIHJlcXVlc3QpO1xyXG4gICAgICB0aGlzLl9wcmVwYXJlSGlzdG9yaWNSZXF1ZXN0KHBkZkhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KTtcclxuICAgICAgYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UucGRmSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvbihwZGZIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IHBkZk9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdDogUGRmT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0ID1cclxuICAgICAgICBPYmplY3QuYXNzaWduKG5ldyBQZGZPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QoKSwgcmVxdWVzdCk7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnBkZk9yZGVyQ29uZmlybWF0aW9uKHBkZk9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCkudGhlbigocmVzdWx0OiBDb0RvY3VtZW50IHwgYm9vbGVhbikgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBDb0RvY3VtZW50KSB7XHJcbiAgICAgICAgICB0aGlzLnNpZ25hdHVyZURvY3VtZW50SWQgPSByZXN1bHQuZG9jdW1lbnRJZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBwcmludERvY3VtZW50KHJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QpIHtcclxuICAgIGlmICh0aGlzLnNlbmREb2N1bWVudHNDb21wb25lbnQuc2VsZWN0ZWQpIHtcclxuICAgICAgY29uc3QgcHJpbnRIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdDogUHJpbnRIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCA9XHJcbiAgICAgICAgT2JqZWN0LmFzc2lnbihuZXcgUHJpbnRIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCgpLCByZXF1ZXN0KTtcclxuICAgICAgdGhpcy5fcHJlcGFyZUhpc3RvcmljUmVxdWVzdChwcmludEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KTtcclxuICAgICAgYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UucHJpbnRIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uKHByaW50SGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBwcmludE9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdDogUHJpbnRPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QgPVxyXG4gICAgICAgIE9iamVjdC5hc3NpZ24obmV3IFByaW50T3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KCksIHJlcXVlc3QpO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5wcmludE9yZGVyQ29uZmlybWF0aW9uKHByaW50T3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KS50aGVuKChyZXN1bHQ6IENvRG9jdW1lbnQgfCBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIENvRG9jdW1lbnQpIHtcclxuICAgICAgICAgIHRoaXMuc2lnbmF0dXJlRG9jdW1lbnRJZCA9IHJlc3VsdC5kb2N1bWVudElkO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFzeW5jIGdldERlZmF1bHRTZW5kTWV0aG9kKCk6IFByb21pc2U8bnVtYmVyPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0T3JkZXJDb25maXJtYXRpb25EZWZhdWx0U2VuZE1ldGhvZCh0aGlzLnRyYW5zYWN0aW9uSW5mby5yZWxhdGlvbi5yZWxhdGlvbklkKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3ByZXBhcmVIaXN0b3JpY1JlcXVlc3QocmVxdWVzdDogRW1haWxIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCB8IFByaW50SGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QgfCBQZGZIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCk6IHZvaWQge1xyXG4gICAgcmVxdWVzdC5yZXBvcnREYXRhSWQgPSB0aGlzLnNlbmREb2N1bWVudHNDb21wb25lbnQuYWN0aXZlUmVwb3J0LnJlcG9ydElkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IExheW91dENvZGUgPSBMYXlvdXRDb2RlO1xyXG59XHJcbiJdfQ==
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW92ZXJ2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXF1aWNrLWFjY2Vzcy90cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtb3ZlcnZpZXcvdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW92ZXJ2aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQVUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzNGLE9BQU8sRUFBQyw2Q0FBNkMsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQ3JILE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3hILE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLG1FQUFtRSxDQUFDO0FBQ2xILE9BQU8sRUFBQyxxQ0FBcUMsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ3JJLE9BQU8sRUFBQyxxQ0FBcUMsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ3JJLE9BQU8sRUFBQyxtQ0FBbUMsRUFBQyxNQUFNLDhFQUE4RSxDQUFDO0FBQ2pJLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3BILE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHFFQUFxRSxDQUFDO0FBQ2hILE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3BILE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsd0NBQXdDLEVBQUMsTUFBTSw4RUFBOEUsQ0FBQztBQUN0SSxPQUFPLEVBQUMsd0NBQXdDLEVBQUMsTUFBTSw4RUFBOEUsQ0FBQztB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dGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7UmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWx9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydC1sYXlvdXQtc2VsZWN0aW9uLWVtYWlsLmJvJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tcHJpbnQuYm8nO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUXVpY2tBY2Nlc3NTZW5kTWV0aG9kQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLXNlbmQtbWV0aG9kLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlbmREb2N1bWVudHNDb21wb25lbnR9IGZyb20gJy4uLy4uL3RyYW5zYWN0aW9uLXNlbmQtZG9jdW1lbnRzL3RyYW5zYWN0aW9uLXNlbmQtZG9jdW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7UmVwb3J0aW5nRG9jdW1lbnRQZGZCYXNlUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LXBkZi1iYXNlLXJlcXVlc3QnO1xyXG5pbXBvcnQge0VtYWlsSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3R9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9lbWFpbC1oaXN0b3JpYy1vcmRlci1jb25maXJtYXRpb24tcmVxdWVzdCc7XHJcbmltcG9ydCB7UHJpbnRIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3ByaW50LWhpc3RvcmljLW9yZGVyLWNvbmZpcm1hdGlvbi1yZXF1ZXN0JztcclxuaW1wb3J0IHtQZGZIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BkZi1oaXN0b3JpYy1vcmRlci1jb25maXJtYXRpb24tcmVxdWVzdCc7XHJcbmltcG9ydCB7RW1haWxPcmRlckNvbmZpcm1hdGlvblJlcXVlc3R9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9lbWFpbC1vcmRlci1jb25maXJtYXRpb24tcmVxdWVzdCc7XHJcbmltcG9ydCB7UGRmT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGRmLW9yZGVyLWNvbmZpcm1hdGlvbi1yZXF1ZXN0JztcclxuaW1wb3J0IHtQcmludE9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3ByaW50LW9yZGVyLWNvbmZpcm1hdGlvbi1yZXF1ZXN0JztcclxuaW1wb3J0IHtDb0RvY3VtZW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb2N1bWVudCc7XHJcbmltcG9ydCB7UmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LWVtYWlsLXNpZ24tZG9jLWJhc2UtcmVxdWVzdCc7XHJcbmltcG9ydCB7UmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LXByaW50LXNpZ24tZG9jLWJhc2UtcmVxdWVzdCc7XHJcbmltcG9ydCB7TGF5b3V0Q29kZX0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vbGF5b3V0LWNvZGUuZW51bSc7XHJcbmltcG9ydCB7UHJpbnRlcn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcHJpbnRlci5ibyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1xdWljay1hY2Nlc3Mtb3ZlcnZpZXdcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGNvLXF1aWNrLXNlbmQtYnV0dG9uXHJcbiAgICAgIFtkZWZhdWx0TWV0aG9kSWNvbl09XCJkZWZhdWx0U2VuZE1ldGhvZEljb25cIlxyXG4gICAgICBbc2hvd0xvYWRlcl09XCJzaG93TG9hZGVyXCJcclxuICAgICAgKHNlbmRJY29uQ2xpY2tlZCk9XCJoYW5kbGVTZW5kKGRlZmF1bHRTZW5kTWV0aG9kKVwiXHJcbiAgICAgIChvcGVuU2VuZE1ldGhvZERpYWxvZyk9XCJvcGVuU2VuZERpYWxvZygpXCJcclxuICAgID48L2NvLXF1aWNrLXNlbmQtYnV0dG9uPlxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLXNlbmQtZG9jdW1lbnRzXHJcbiAgICAgIFtoaXN0b3JpY1JlcG9ydHNdPVwiaGlzdG9yaWNSZXBvcnRzXCJcclxuICAgICAgW3RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5XT1cInRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlNhbGVzT3JkZXJPdmVydmlld1wiXHJcbiAgICA+PC9jby10cmFuc2FjdGlvbi1zZW5kLWRvY3VtZW50cz5cclxuICAgIDxjby1zZW5kLW1ldGhvZC1kaWFsb2cgKm5nSWY9XCJzaG93U2VuZE1ldGhvZERpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtoZWFkZXJUaXRsZV09XCInVmVyemVuZG1ldGhvZGUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ByaW50ZXJMaXN0XT1cInByaW50ZXJMaXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RlZmF1bHRTZW5kTWV0aG9kXT1cImRlZmF1bHRTZW5kTWV0aG9kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Zpc2libGVNZXRob2RzXT1cIltzZW5kTWV0aG9kVHlwZS5QcmludCwgc2VuZE1ldGhvZFR5cGUuRW1haWwsIHNlbmRNZXRob2RUeXBlLlBkZl1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbZW1haWxBZGRyZXNzZXNdPVwiZW1haWxBZGRyZXNzZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbZW1haWxMYXlvdXRzXT1cImVtYWlsTGF5b3V0c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwcmludExheW91dHNdPVwicHJpbnRMYXlvdXRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzRG9jU2lnbkVuYWJsZWRdPVwiaXNEb2NTaWduRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0FkZGl0aW9uYWxEb2NFbmFibGVkXT1cImlzQWRkaXRpb25hbERvY0VuYWJsZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbYWRkaXRpb25hbEZpbGVDb250ZW50c109XCJhZGRpdGlvbmFsRmlsZUNvbnRlbnRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FkZGl0aW9uYWxGaWxlTmFtZV09XCJhZGRpdGlvbmFsRmlsZU5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbKHJlcG9ydGluZ0RvY3VtZW50RW1haWxSZXF1ZXN0KV09XCJyZXBvcnREb2N1bWVudEVtYWlsUmVxdWVzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFsocmVwb3J0aW5nRG9jdW1lbnRQcmludFJlcXVlc3QpXT1cInJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhyZXBvcnRpbmdEb2N1bWVudFBkZlJlcXVlc3QpXT1cInJlcG9ydERvY3VtZW50UGRmUmVxdWVzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChhZGRpdGlvbmFsRmlsZUNoYW5nZUV2ZW50KT1cInVwc2VydERvY3VtZW50KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93U2VuZE1ldGhvZERpYWxvZyA9IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9rQ2xpY2spPVwiaGFuZGxlU2VuZE1ldGhvZE9rQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0UHJpbnRlck5hbWVdPVwiZGVmYXVsdFByaW50ZXJOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxvYWREZWZhdWx0UHJpbnRlck5hbWUpPVwibG9hZERlZmF1bHRQcmludGVyTmFtZSgkZXZlbnQpXCJcclxuICAgID48L2NvLXNlbmQtbWV0aG9kLWRpYWxvZz5cclxuICAgIDxjby1kaWdpdGFsLXNpZ25hdHVyZVxyXG4gICAgICBbZG9jdW1lbnRJZF09XCJzaWduYXR1cmVEb2N1bWVudElkXCJcclxuICAgICAgKGRvY3VtZW50U3RvcmVkKT1cImNvbW1pdEFuZFJlZnJlc2hUcmFuc2FjdGlvbigpXCJcclxuICAgID48L2NvLWRpZ2l0YWwtc2lnbmF0dXJlPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25RdWlja0FjY2Vzc092ZXJ2aWV3Q29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25RdWlja0FjY2Vzc1NlbmRNZXRob2RCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQFZpZXdDaGlsZChUcmFuc2FjdGlvblNlbmREb2N1bWVudHNDb21wb25lbnQpXHJcbiAgcHVibGljIHNlbmREb2N1bWVudHNDb21wb25lbnQ6IFRyYW5zYWN0aW9uU2VuZERvY3VtZW50c0NvbXBvbmVudDtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLW92ZXJ2aWV3XCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0ID0gbmV3IFJlcG9ydGluZ0RvY3VtZW50RW1haWxTaWduRG9jQmFzZVJlcXVlc3QoKTtcclxuICBwdWJsaWMgcmVwb3J0RG9jdW1lbnRQcmludFJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QgPSBuZXcgUmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdCgpO1xyXG4gIHB1YmxpYyByZXBvcnREb2N1bWVudFBkZlJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3QgPSBuZXcgUmVwb3J0aW5nRG9jdW1lbnRQZGZCYXNlUmVxdWVzdCgpO1xyXG5cclxuICBwdWJsaWMgb3BlblNlbmREaWFsb2coKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pc0FkZGl0aW9uYWxEb2NFbmFibGVkICYmIHRoaXMuaGlzdG9yaWNSZXBvcnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5nZXRUZXJtc0FuZENvbmRpdGlvbnNGb3JtKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2FkRGVmYXVsdFByaW50ZXJOYW1lKHJlcG9ydElkOiBudW1iZXIpIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldERlZmF1bHRQcmludGVyKHJlcG9ydElkLCBMYXlvdXRDb2RlLk9yZGVyQ29uZmlybWF0aW9uKS50aGVuKChwcmludGVyTmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGlmIChwcmludGVyTmFtZSAmJiB0aGlzLnByaW50ZXJMaXN0LmZpbmQoIChwcmludGVyOiBQcmludGVyKSA9PiBwcmludGVyLm5hbWUgPT09IHByaW50ZXJOYW1lKSkge1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdFByaW50ZXJOYW1lID0gcHJpbnRlck5hbWU7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFzeW5jIGVtYWlsRG9jdW1lbnQocmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdCkge1xyXG4gICAgaWYgKHRoaXMuc2VuZERvY3VtZW50c0NvbXBvbmVudC5zZWxlY3RlZCkge1xyXG4gICAgICBjb25zdCBlbWFpbEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0OiBFbWFpbEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0ID1cclxuICAgICAgICBPYmplY3QuYXNzaWduKG5ldyBFbWFpbEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KCksIHJlcXVlc3QpO1xyXG4gICAgICB0aGlzLl9wcmVwYXJlSGlzdG9yaWNSZXF1ZXN0KGVtYWlsSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QpO1xyXG4gICAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5lbWFpbEhpc3RvcmljT3JkZXJDb25maXJtYXRpb24oZW1haWxIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IGVtYWlsT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0OiBFbWFpbE9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCA9XHJcbiAgICAgICAgT2JqZWN0LmFzc2lnbihuZXcgRW1haWxPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QoKSwgcmVxdWVzdCk7XHJcbiAgICAgIGNvbnN0IHJlc3VsdDogQ29Eb2N1bWVudCB8IGJvb2xlYW4gPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5lbWFpbE9yZGVyQ29uZmlybWF0aW9uKGVtYWlsT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KTtcclxuICAgICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIENvRG9jdW1lbnQpIHtcclxuICAgICAgICB0aGlzLnNpZ25hdHVyZURvY3VtZW50SWQgPSByZXN1bHQuZG9jdW1lbnRJZDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZ2V0RGVmYXVsdEVtYWlsQWRkcmVzc0xpc3QoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldERlZmF1bHRFbWFpbEFkZHJlc3NMaXN0Rm9yT3JkZXJDb25maXJtYXRpb24odGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZ2V0RW1haWxMYXlvdXRzKCk6IFByb21pc2U8UmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWxbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldE9yZGVyQ29uZmlybWF0aW9uRW1haWxMYXlvdXRzKHRoaXMudHJhbnNhY3Rpb25JbmZvLnV1aWQpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGdldFByaW50TGF5b3V0cygpOiBQcm9taXNlPFJlcG9ydExheW91dFNlbGVjdGlvblByaW50W10+IHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRPcmRlckNvbmZpcm1hdGlvblByaW50TGF5b3V0cyh0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBwZGZEb2N1bWVudChyZXF1ZXN0OiBQZGZPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLnNlbmREb2N1bWVudHNDb21wb25lbnQuc2VsZWN0ZWQpIHtcclxuICAgICAgY29uc3QgcGRmSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3Q6IFBkZkhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0ID1cclxuICAgICAgICBPYmplY3QuYXNzaWduKG5ldyBQZGZIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCgpLCByZXF1ZXN0KTtcclxuICAgICAgdGhpcy5fcHJlcGFyZUhpc3RvcmljUmVxdWVzdChwZGZIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCk7XHJcbiAgICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnBkZkhpc3RvcmljT3JkZXJDb25maXJtYXRpb24ocGRmSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBwZGZPcmRlckNvbmZpcm1hdGlvblJlcXVlc3Q6IFBkZk9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCA9XHJcbiAgICAgICAgT2JqZWN0LmFzc2lnbihuZXcgUGRmT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KCksIHJlcXVlc3QpO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5wZGZPcmRlckNvbmZpcm1hdGlvbihwZGZPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QpLnRoZW4oKHJlc3VsdDogQ29Eb2N1bWVudCB8IGJvb2xlYW4pID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0IGluc3RhbmNlb2YgQ29Eb2N1bWVudCkge1xyXG4gICAgICAgICAgdGhpcy5zaWduYXR1cmVEb2N1bWVudElkID0gcmVzdWx0LmRvY3VtZW50SWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2hUcmFuc2FjdGlvbnMoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYXN5bmMgcHJpbnREb2N1bWVudChyZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0KSB7XHJcbiAgICBpZiAodGhpcy5zZW5kRG9jdW1lbnRzQ29tcG9uZW50LnNlbGVjdGVkKSB7XHJcbiAgICAgIGNvbnN0IHByaW50SGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3Q6IFByaW50SGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QgPVxyXG4gICAgICAgIE9iamVjdC5hc3NpZ24obmV3IFByaW50SGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QoKSwgcmVxdWVzdCk7XHJcbiAgICAgIHRoaXMuX3ByZXBhcmVIaXN0b3JpY1JlcXVlc3QocHJpbnRIaXN0b3JpY09yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCk7XHJcbiAgICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnByaW50SGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvbihwcmludEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0KS50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgcHJpbnRPcmRlckNvbmZpcm1hdGlvblJlcXVlc3Q6IFByaW50T3JkZXJDb25maXJtYXRpb25SZXF1ZXN0ID1cclxuICAgICAgICBPYmplY3QuYXNzaWduKG5ldyBQcmludE9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCgpLCByZXF1ZXN0KTtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UucHJpbnRPcmRlckNvbmZpcm1hdGlvbihwcmludE9yZGVyQ29uZmlybWF0aW9uUmVxdWVzdCkudGhlbigocmVzdWx0OiBDb0RvY3VtZW50IHwgYm9vbGVhbikgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBDb0RvY3VtZW50KSB7XHJcbiAgICAgICAgICB0aGlzLnNpZ25hdHVyZURvY3VtZW50SWQgPSByZXN1bHQuZG9jdW1lbnRJZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBnZXREZWZhdWx0U2VuZE1ldGhvZCgpOiBQcm9taXNlPG51bWJlcj4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldE9yZGVyQ29uZmlybWF0aW9uRGVmYXVsdFNlbmRNZXRob2QodGhpcy50cmFuc2FjdGlvbkluZm8ucmVsYXRpb24ucmVsYXRpb25JZCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wcmVwYXJlSGlzdG9yaWNSZXF1ZXN0KHJlcXVlc3Q6IEVtYWlsSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QgfCBQcmludEhpc3RvcmljT3JkZXJDb25maXJtYXRpb25SZXF1ZXN0IHwgUGRmSGlzdG9yaWNPcmRlckNvbmZpcm1hdGlvblJlcXVlc3QpOiB2b2lkIHtcclxuICAgIHJlcXVlc3QucmVwb3J0RGF0YUlkID0gdGhpcy5zZW5kRG9jdW1lbnRzQ29tcG9uZW50LmFjdGl2ZVJlcG9ydC5yZXBvcnRJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBMYXlvdXRDb2RlID0gTGF5b3V0Q29kZTtcclxufVxyXG4iXX0=
|
|
@@ -142,18 +142,6 @@ export class TransactionQuickAccessSendMethodBaseComponent extends TransactionHe
|
|
|
142
142
|
}
|
|
143
143
|
});
|
|
144
144
|
}
|
|
145
|
-
onShowFilePreview(layoutCode) {
|
|
146
|
-
let reportId = 0;
|
|
147
|
-
this.defaultPrinterName = undefined;
|
|
148
|
-
if (layoutCode) {
|
|
149
|
-
this.transactionService.getDefaultPrinter(reportId, layoutCode).then((printer) => {
|
|
150
|
-
if (printer) {
|
|
151
|
-
this.defaultPrinterName = printer;
|
|
152
|
-
this.changeDetector.detectChanges();
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
145
|
_prepareData() {
|
|
158
146
|
this._getPrinters();
|
|
159
147
|
this._getDefaultSendMethod();
|
|
@@ -233,4 +221,4 @@ TransactionQuickAccessSendMethodBaseComponent.ctorParameters = () => [
|
|
|
233
221
|
{ type: ChangeDetectorRef },
|
|
234
222
|
{ type: TransactionDialogService }
|
|
235
223
|
];
|
|
236
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLXNlbmQtbWV0aG9kLWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzL3RyYW5zYWN0aW9uLXF1aWNrLWFjY2Vzcy1zZW5kLW1ldGhvZC1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUduRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUUzRixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFFbEYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBUWxGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUdoRixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNsRixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUM3RyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztB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O1lBMUJsQixpQkFBaUI7WUFvQmpCLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvblByaW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1wcmludC5ibyc7XHJcbmltcG9ydCB7Q29tbXVuaWNhdGlvblR5cGV9IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9lbnVtL2NvbW11bmljYXRpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHtDb250YWN0T3B0aW9ufSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvY29udGFjdC1vcHRpb24uYm8nO1xyXG5pbXBvcnQge3NlbmRNZXRob2RzV2l0aEljb259IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRjb21wb25lbnRzJztcclxuaW1wb3J0IHtTZW5kTWV0aG9kVHlwZX0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvZW51bS9zZW5kLW1ldGhvZC10eXBlLmVudW0nO1xyXG5pbXBvcnQge1JlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3R9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydGluZy1kb2N1bWVudC1wZGYtYmFzZS1yZXF1ZXN0JztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnl9IGZyb20gJy4uLy4uL2VudW0vdHJhbnNhY3Rpb24tdHlwZS1jYXRlZ29yeS5lbnVtJztcclxuaW1wb3J0IHtQcmludGVyfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9wcmludGVyLmJvJztcclxuaW1wb3J0IHtcclxuICBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0XHJcbn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LWVtYWlsLXNpZ24tZG9jLWJhc2UtcmVxdWVzdCc7XHJcbmltcG9ydCB7XHJcbiAgUmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdFxyXG59IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydGluZy1kb2N1bWVudC1wcmludC1zaWduLWRvYy1iYXNlLXJlcXVlc3QnO1xyXG5pbXBvcnQge0xheW91dENvZGV9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2xheW91dC1jb2RlLmVudW0nO1xyXG5pbXBvcnQge0hpc3RvcmljUmVwb3J0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvaGlzdG9yaWMtcmVwb3J0LmJvJztcclxuaW1wb3J0IHtEaWFsb2dSZXNwb25zZUludGVyZmFjZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL2RpYWxvZy1yZXNwb25zZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRGlhbG9nU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2NyZWVuLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24taW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7QXBwUG9wdXBCdXR0b25UeXBlfSBmcm9tICcuLi9jb3JlL2VudW0vYXBwLXBvcHVwLWJ1dHRvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSGVhZGVyU2VydmljZX0gZnJvbSAnLi4vY29yZS9iYXNlL3NlcnZpY2UvdHJhbnNhY3Rpb24taGVhZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSAnLi4vdHJhbnNhY3Rpb24tc2VhcmNoL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSGVhZGVyQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWhlYWRlci1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7Q29Eb2N1bWVudH0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50XCI7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uUXVpY2tBY2Nlc3NTZW5kTWV0aG9kQmFzZUNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uSGVhZGVyQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcbiAgcHVibGljIHJlYWRvbmx5IHNlbmRNZXRob2RUeXBlOiB0eXBlb2YgU2VuZE1ldGhvZFR5cGUgPSBTZW5kTWV0aG9kVHlwZTtcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk6IHR5cGVvZiBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeSA9IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5O1xyXG5cclxuICBwdWJsaWMgcHJpbnRlckxpc3Q6IFByaW50ZXJbXSA9IFtdO1xyXG4gIHB1YmxpYyBlbWFpbExheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsW10gPSBbXTtcclxuICBwdWJsaWMgcHJpbnRMYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdID0gW107XHJcbiAgcHVibGljIGRlZmF1bHRTZW5kTWV0aG9kOiBzdHJpbmc7XHJcbiAgcHVibGljIGRlZmF1bHRTZW5kTWV0aG9kSWNvbjogc3RyaW5nO1xyXG4gIHB1YmxpYyBlbWFpbEFkZHJlc3Nlczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgc2hvd1NlbmRNZXRob2REaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VuZE1ldGhvZHMgPSBzZW5kTWV0aG9kc1dpdGhJY29uO1xyXG4gIHB1YmxpYyBzaWduYXR1cmVEb2N1bWVudElkOiBudW1iZXI7XHJcbiAgcHVibGljIGhpc3RvcmljUmVwb3J0czogSGlzdG9yaWNSZXBvcnRbXSA9IFtdO1xyXG4gIHB1YmxpYyBpc0RvY1NpZ25FbmFibGVkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBpc0FkZGl0aW9uYWxEb2NFbmFibGVkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBhZGRpdGlvbmFsRmlsZUNvbnRlbnRzOiBhbnkgPSAnJztcclxuICBwdWJsaWMgYWRkaXRpb25hbEZpbGVOYW1lOiBzdHJpbmcgPSAnJztcclxuICBwdWJsaWMgZGVmYXVsdFByaW50ZXJOYW1lOiBzdHJpbmc7XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZXBvcnREb2N1bWVudEVtYWlsUmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdDtcclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVwb3J0RG9jdW1lbnRQcmludFJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q7XHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlcG9ydERvY3VtZW50UGRmUmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRQZGZCYXNlUmVxdWVzdDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgc2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uSGVhZGVyU2VydmljZTogVHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHVibGljIHNjcmVlbkNvbmZpZ1NlcnZpY2U6IFRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBkaWN0aW9uYXJ5U2VydmljZTogRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJvdGVjdGVkIGRpYWxvZ1NlcnZpY2U6IFRyYW5zYWN0aW9uRGlhbG9nU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlLCB0cmFuc2FjdGlvbkV2ZW50U2VydmljZSwgaWNvbkNhY2hlU2VydmljZSwgc2NyZWVuQ29uZmlnU2VydmljZSwgaW1hZ2VTZXJ2aWNlLCBkaWN0aW9uYXJ5U2VydmljZSwgdHJhbnNhY3Rpb25TZXJ2aWNlLCBjaGFuZ2VEZXRlY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB0aGlzLl9wcmVwYXJlRGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRyYW5zYWN0aW9uU2V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXBvcnREb2N1bWVudEVtYWlsUmVxdWVzdC50cmFuc0lkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICB0aGlzLnJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0LnRyYW5zSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgIHRoaXMucmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0LnRyYW5zSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgIHRoaXMuX3ByZXBhcmVEYXRhKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVsYXRpb25TZXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVtYWlsQWRkcmVzc2VzLmxlbmd0aCA9IDA7XHJcbiAgICBjb25zdCBlbWFpbENvbnRhY3RPcHRpb25zOiBDb250YWN0T3B0aW9uW10gPSB0aGlzLnRyYW5zYWN0aW9uSGVhZGVyU2VydmljZS5yZWxhdGlvbi5jb250YWN0T3B0aW9ucy5maWx0ZXIoY28gPT4gY28udHlwZSA9PT0gQ29tbXVuaWNhdGlvblR5cGUuRW1haWwpO1xyXG4gICAgY29uc3QgZGVmYXVsdEVtYWlsQ29udGFjdE9wdGlvbjogQ29udGFjdE9wdGlvbiA9IGVtYWlsQ29udGFjdE9wdGlvbnMuZmluZChjbyA9PiBjby5sb3dlc3RTZXF1ZW5jZSk7XHJcbiAgICB0aGlzLmVtYWlsQWRkcmVzc2VzID0gZW1haWxDb250YWN0T3B0aW9ucy5tYXAoZSA9PiBlLnZhbHVlKTtcclxuICAgIHRoaXMuZ2V0RGVmYXVsdEVtYWlsQWRkcmVzc0xpc3QoKS50aGVuKChhZGRyZXNzZXM6IHN0cmluZ1tdKSA9PiB7XHJcbiAgICAgIGlmIChhZGRyZXNzZXMgJiYgYWRkcmVzc2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICB0aGlzLnJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0LnRvQWRkcmVzc2VzID0gYWRkcmVzc2VzLmpvaW4oJzsnKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0LnRvQWRkcmVzc2VzID0gZGVmYXVsdEVtYWlsQ29udGFjdE9wdGlvbiA/IGRlZmF1bHRFbWFpbENvbnRhY3RPcHRpb24udmFsdWUgOiAnJztcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGdldEhpc3RvcmljRG9jdW1lbnRzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0SGlzdG9yaWNEb2N1bWVudHModGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIExheW91dENvZGUuT3JkZXJDb25maXJtYXRpb24pXHJcbiAgICAgIC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICB0aGlzLmhpc3RvcmljUmVwb3J0cyA9IHJlc3VsdDtcclxuICAgICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlU2VuZE1ldGhvZE9rQ2xpY2sobWV0aG9kOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLmhpc3RvcmljUmVwb3J0cy5sZW5ndGggPiAwICYmIChtZXRob2QgPT09IFNlbmRNZXRob2RUeXBlLkVtYWlsIHx8IG1ldGhvZCA9PT0gU2VuZE1ldGhvZFR5cGUuUGRmIHx8IG1ldGhvZCA9PT0gU2VuZE1ldGhvZFR5cGUuV2ViU2VydmljZSkpIHtcclxuICAgICAgY29uc3QgcmVzcG9uc2U6IERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlID0gYXdhaXQgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dZZXNObygnUVVFU1RJT04nLCAnUVVFU1RJT05fRE9DVU1FTlRfQUxSRUFEWV9QUklOVEVEJyk7XHJcbiAgICAgIGlmIChyZXNwb25zZS5idXR0b24gPT09IEFwcFBvcHVwQnV0dG9uVHlwZS5ZZXMpIHtcclxuICAgICAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gZmFsc2U7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5oYW5kbGVTZW5kKG1ldGhvZCk7XHJcbiAgICAgICAgdGhpcy5fc2V0RGVmYXVsdE1ldGhvZChtZXRob2QpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gZmFsc2U7XHJcbiAgICAgIGF3YWl0IHRoaXMuaGFuZGxlU2VuZChtZXRob2QpO1xyXG4gICAgICB0aGlzLl9zZXREZWZhdWx0TWV0aG9kKG1ldGhvZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlU2VuZChtZXRob2Q6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYoIW1ldGhvZCkge1xyXG4gICAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2hvd0xvYWRlciA9IHRydWU7XHJcbiAgICAgIHN3aXRjaCAobWV0aG9kKSB7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5QcmludDpcclxuICAgICAgICAgIGF3YWl0IHRoaXMucHJpbnREb2N1bWVudCh0aGlzLnJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0KTtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5FbWFpbDpcclxuICAgICAgICAgIGF3YWl0IHRoaXMuZW1haWxEb2N1bWVudCh0aGlzLnJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0KTtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5QZGY6XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLnBkZkRvY3VtZW50KHRoaXMucmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0KTtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5XZWJTZXJ2aWNlOlxyXG4gICAgICAgICAgYXdhaXQgdGhpcy5fd2ViU2VydmljZURvY3VtZW50KCk7XHJcbiAgICAgICAgICB0aGlzLnNob3dMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB0aGlzLmdldEhpc3RvcmljRG9jdW1lbnRzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29tbWl0QW5kUmVmcmVzaFRyYW5zYWN0aW9uKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuY29tbWl0QW5kUmVmcmVzaFRyYW5zYWN0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0VGVybXNBbmRDb25kaXRpb25zRm9ybSgpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFRlcm1zQW5kQ29uZGl0aW9uc0Zvcm0odGhpcy50cmFuc2FjdGlvbkluZm8uaWQpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5hZGRpdGlvbmFsRmlsZUNvbnRlbnRzID0gcmVzdWx0O1xyXG4gICAgICB0aGlzLmFkZGl0aW9uYWxGaWxlTmFtZSA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uS2luZCArICdfJyArIHRoaXMudHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uTnIudG9TdHJpbmcoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwc2VydERvY3VtZW50KGRvYzogQ29Eb2N1bWVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcmVzcG9uc2U6IENvRG9jdW1lbnQgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5tZXJnZURvY3VtZW50T25UcmFuc2FjdGlvbih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZC50b1N0cmluZygpLCBkb2MpO1xyXG4gICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgIHRoaXMuc2hvd1NlbmRNZXRob2REaWFsb2cgPSBmYWxzZTtcclxuICAgICAgYXdhaXQgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dUb2FzdCgnREFUQV9TQVZFRCcsIHRydWUpO1xyXG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuaGlkZVRvYXN0QWZ0ZXJNcygyMDAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNob3dGaWxlUHJldmlldyhsYXlvdXRDb2RlPzogTGF5b3V0Q29kZSk6IHZvaWQge1xyXG4gICAgbGV0IHJlcG9ydElkOiBudW1iZXIgPSAwO1xyXG4gICAgdGhpcy5kZWZhdWx0UHJpbnRlck5hbWUgPSB1bmRlZmluZWQ7XHJcblxyXG5cclxuICAgIGlmKGxheW91dENvZGUpIHtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0RGVmYXVsdFByaW50ZXIocmVwb3J0SWQsIGxheW91dENvZGUpLnRoZW4oKHByaW50ZXI6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGlmIChwcmludGVyKSB7XHJcbiAgICAgICAgICB0aGlzLmRlZmF1bHRQcmludGVyTmFtZSA9IHByaW50ZXI7XHJcbiAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwcmludERvY3VtZW50KHJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QpO1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZW1haWxEb2N1bWVudChyZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0KTtcclxuXHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHBkZkRvY3VtZW50KHJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3QpO1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0RW1haWxMYXlvdXRzKCk6IFByb21pc2U8UmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWxbXT47XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRQcmludExheW91dHMoKTogUHJvbWlzZTxSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdPjtcclxuXHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldERlZmF1bHRFbWFpbEFkZHJlc3NMaXN0KCk6IFByb21pc2U8c3RyaW5nW10+O1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0RGVmYXVsdFNlbmRNZXRob2QoKTogUHJvbWlzZTxudW1iZXI+O1xyXG5cclxuICBwcml2YXRlIF9wcmVwYXJlRGF0YSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2dldFByaW50ZXJzKCk7XHJcbiAgICB0aGlzLl9nZXREZWZhdWx0U2VuZE1ldGhvZCgpO1xyXG4gICAgdGhpcy5fZ2V0RW1haWxMYXlvdXRzKCk7XHJcbiAgICB0aGlzLl9nZXRQcmludExheW91dHMoKTtcclxuICAgIHRoaXMuaXNEb2NTaWduRW5hYmxlZCA9IHRoaXMuc2NyZWVuQ29uZmlnU2VydmljZS5nZXRPYmplY3RDb25maWd1cmF0aW9uRm9yKHRoaXMuY2ZnTmFtZXMuSXNEb2NTaWduRW5hYmxlZCkuaW1tZWRpYXRlbHlWaXNpYmxlKCk7XHJcbiAgICB0aGlzLmlzQWRkaXRpb25hbERvY0VuYWJsZWQgPSB0aGlzLnNjcmVlbkNvbmZpZ1NlcnZpY2UuZ2V0T2JqZWN0Q29uZmlndXJhdGlvbkZvcih0aGlzLmNmZ05hbWVzLklzQWRkaXRpb25hbERvY0VuYWJsZWQpLmltbWVkaWF0ZWx5VmlzaWJsZSgpO1xyXG4gICAgdGhpcy5nZXRIaXN0b3JpY0RvY3VtZW50cygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0UHJpbnRlcnMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRQcmludGVycygpLnRoZW4oKHByaW50ZXJMaXN0OiBQcmludGVyW10pID0+IHtcclxuICAgICAgdGhpcy5wcmludGVyTGlzdCA9IHByaW50ZXJMaXN0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXREZWZhdWx0U2VuZE1ldGhvZCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0RGVmYXVsdFNlbmRNZXRob2QoKS50aGVuKChtZXRob2Q6IG51bWJlcikgPT4ge1xyXG4gICAgICBpZiAobWV0aG9kICE9PSBudWxsICYmIG1ldGhvZCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0RGVmYXVsdE1ldGhvZChtZXRob2QudG9TdHJpbmcoKSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF9zZXREZWZhdWx0TWV0aG9kKG1ldGhvZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBzZW5kTWV0aG9kID0gdGhpcy5zZW5kTWV0aG9kcy5maW5kKHNtID0+IHNtLmNvZGUgPT09IG1ldGhvZCk7XHJcbiAgICBpZiAoc2VuZE1ldGhvZCkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRTZW5kTWV0aG9kID0gc2VuZE1ldGhvZC5jb2RlO1xyXG4gICAgICB0aGlzLmRlZmF1bHRTZW5kTWV0aG9kSWNvbiA9IHNlbmRNZXRob2QuaWNvbjtcclxuICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRFbWFpbExheW91dHMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdldEVtYWlsTGF5b3V0cygpLnRoZW4oKGxheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsW10pID0+IHtcclxuICAgICAgdGhpcy5lbWFpbExheW91dHMgPSBsYXlvdXRzO1xyXG4gICAgICBpZiAodGhpcy5lbWFpbExheW91dHMgJiYgdGhpcy5lbWFpbExheW91dHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIGNvbnN0IGRlZmF1bHRMYXlvdXQ6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsID0gdGhpcy5lbWFpbExheW91dHMuZmluZChlID0+IGUuaXNEZWZhdWx0KTtcclxuICAgICAgICBpZiAoZGVmYXVsdExheW91dCkge1xyXG4gICAgICAgICAgdGhpcy5yZXBvcnREb2N1bWVudEVtYWlsUmVxdWVzdC5yZXBvcnRJZCA9IGRlZmF1bHRMYXlvdXQucmVwb3J0SWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldFByaW50TGF5b3V0cygpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0UHJpbnRMYXlvdXRzKCkudGhlbigobGF5b3V0czogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnRbXSkgPT4ge1xyXG4gICAgICB0aGlzLnByaW50TGF5b3V0cyA9IGxheW91dHM7XHJcbiAgICAgIGlmICh0aGlzLnByaW50TGF5b3V0cyAmJiB0aGlzLnByaW50TGF5b3V0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgY29uc3QgZGVmYXVsdExheW91dDogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnQgPSB0aGlzLnByaW50TGF5b3V0cy5maW5kKHAgPT4gcC5pc0RlZmF1bHQpO1xyXG4gICAgICAgIGlmIChkZWZhdWx0TGF5b3V0KSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5yZXBvcnREb2N1bWVudFByaW50UmVxdWVzdCkge1xyXG4gICAgICAgICAgICB0aGlzLnJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0LnJlcG9ydElkID0gZGVmYXVsdExheW91dC5yZXBvcnRJZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLnJlcG9ydERvY3VtZW50UGRmUmVxdWVzdCkge1xyXG4gICAgICAgICAgICB0aGlzLnJlcG9ydERvY3VtZW50UGRmUmVxdWVzdC5yZXBvcnRJZCA9IGRlZmF1bHRMYXlvdXQucmVwb3J0SWQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX3dlYlNlcnZpY2VEb2N1bWVudCgpIHtcclxuICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdlbmVyYXRlV2ViU2VydmljZU9yZGVyKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy5zZWFyY2hTZXJ2aWNlLnNlYXJjaFRyYW5zYWN0aW9ucygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
224
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzLXNlbmQtbWV0aG9kLWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tcXVpY2stYWNjZXNzL3RyYW5zYWN0aW9uLXF1aWNrLWFjY2Vzcy1zZW5kLW1ldGhvZC1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUduRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUUzRixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFFbEYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBUWxGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUdoRixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNsRixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUM3RyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztB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QkFDakIsSUFBSSxJQUFJLENBQUMsMEJBQTBCLEVBQUU7d0JBQ25DLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQztxQkFDbkU7b0JBQ0QsSUFBSSxJQUFJLENBQUMsd0JBQXdCLEVBQUU7d0JBQ2pDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQztxQkFDakU7aUJBQ0Y7YUFDRjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVhLG1CQUFtQjs7WUFDL0IsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUN2RixJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDMUMsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0tBQUE7OztZQS9ORixTQUFTOzs7WUFKRix3QkFBd0I7WUFEeEIsd0JBQXdCO1lBUHhCLHVCQUF1QjtZQUN2QixnQkFBZ0I7WUFDaEIscUNBQXFDO1lBQ3JDLHVCQUF1QjtZQUN2QixpQkFBaUI7WUFDakIsa0JBQWtCO1lBMUJsQixpQkFBaUI7WUFvQmpCLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvblByaW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1wcmludC5ibyc7XHJcbmltcG9ydCB7Q29tbXVuaWNhdGlvblR5cGV9IGZyb20gJ0Bjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9lbnVtL2NvbW11bmljYXRpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHtDb250YWN0T3B0aW9ufSBmcm9tICdAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvY29udGFjdC1vcHRpb24uYm8nO1xyXG5pbXBvcnQge3NlbmRNZXRob2RzV2l0aEljb259IGZyb20gJ0Bjb2xpam5pdC9zaGFyZWRjb21wb25lbnRzJztcclxuaW1wb3J0IHtTZW5kTWV0aG9kVHlwZX0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvZW51bS9zZW5kLW1ldGhvZC10eXBlLmVudW0nO1xyXG5pbXBvcnQge1JlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3R9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydGluZy1kb2N1bWVudC1wZGYtYmFzZS1yZXF1ZXN0JztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnl9IGZyb20gJy4uLy4uL2VudW0vdHJhbnNhY3Rpb24tdHlwZS1jYXRlZ29yeS5lbnVtJztcclxuaW1wb3J0IHtQcmludGVyfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9wcmludGVyLmJvJztcclxuaW1wb3J0IHtcclxuICBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0XHJcbn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LWVtYWlsLXNpZ24tZG9jLWJhc2UtcmVxdWVzdCc7XHJcbmltcG9ydCB7XHJcbiAgUmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdFxyXG59IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydGluZy1kb2N1bWVudC1wcmludC1zaWduLWRvYy1iYXNlLXJlcXVlc3QnO1xyXG5pbXBvcnQge0xheW91dENvZGV9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2xheW91dC1jb2RlLmVudW0nO1xyXG5pbXBvcnQge0hpc3RvcmljUmVwb3J0fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvaGlzdG9yaWMtcmVwb3J0LmJvJztcclxuaW1wb3J0IHtEaWFsb2dSZXNwb25zZUludGVyZmFjZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL2RpYWxvZy1yZXNwb25zZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRGlhbG9nU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2NyZWVuLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24taW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7QXBwUG9wdXBCdXR0b25UeXBlfSBmcm9tICcuLi9jb3JlL2VudW0vYXBwLXBvcHVwLWJ1dHRvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSGVhZGVyU2VydmljZX0gZnJvbSAnLi4vY29yZS9iYXNlL3NlcnZpY2UvdHJhbnNhY3Rpb24taGVhZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSAnLi4vdHJhbnNhY3Rpb24tc2VhcmNoL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSGVhZGVyQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWhlYWRlci1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7Q29Eb2N1bWVudH0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50XCI7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uUXVpY2tBY2Nlc3NTZW5kTWV0aG9kQmFzZUNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uSGVhZGVyQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcbiAgcHVibGljIHJlYWRvbmx5IHNlbmRNZXRob2RUeXBlOiB0eXBlb2YgU2VuZE1ldGhvZFR5cGUgPSBTZW5kTWV0aG9kVHlwZTtcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk6IHR5cGVvZiBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeSA9IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5O1xyXG5cclxuICBwdWJsaWMgcHJpbnRlckxpc3Q6IFByaW50ZXJbXSA9IFtdO1xyXG4gIHB1YmxpYyBlbWFpbExheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsW10gPSBbXTtcclxuICBwdWJsaWMgcHJpbnRMYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdID0gW107XHJcbiAgcHVibGljIGRlZmF1bHRTZW5kTWV0aG9kOiBzdHJpbmc7XHJcbiAgcHVibGljIGRlZmF1bHRTZW5kTWV0aG9kSWNvbjogc3RyaW5nO1xyXG4gIHB1YmxpYyBlbWFpbEFkZHJlc3Nlczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgc2hvd1NlbmRNZXRob2REaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VuZE1ldGhvZHMgPSBzZW5kTWV0aG9kc1dpdGhJY29uO1xyXG4gIHB1YmxpYyBzaWduYXR1cmVEb2N1bWVudElkOiBudW1iZXI7XHJcbiAgcHVibGljIGhpc3RvcmljUmVwb3J0czogSGlzdG9yaWNSZXBvcnRbXSA9IFtdO1xyXG4gIHB1YmxpYyBpc0RvY1NpZ25FbmFibGVkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBpc0FkZGl0aW9uYWxEb2NFbmFibGVkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBhZGRpdGlvbmFsRmlsZUNvbnRlbnRzOiBhbnkgPSAnJztcclxuICBwdWJsaWMgYWRkaXRpb25hbEZpbGVOYW1lOiBzdHJpbmcgPSAnJztcclxuICBwdWJsaWMgZGVmYXVsdFByaW50ZXJOYW1lOiBzdHJpbmc7XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZXBvcnREb2N1bWVudEVtYWlsUmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdDtcclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVwb3J0RG9jdW1lbnRQcmludFJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q7XHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlcG9ydERvY3VtZW50UGRmUmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRQZGZCYXNlUmVxdWVzdDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgc2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uSGVhZGVyU2VydmljZTogVHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHVibGljIHNjcmVlbkNvbmZpZ1NlcnZpY2U6IFRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBkaWN0aW9uYXJ5U2VydmljZTogRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJvdGVjdGVkIGRpYWxvZ1NlcnZpY2U6IFRyYW5zYWN0aW9uRGlhbG9nU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlLCB0cmFuc2FjdGlvbkV2ZW50U2VydmljZSwgaWNvbkNhY2hlU2VydmljZSwgc2NyZWVuQ29uZmlnU2VydmljZSwgaW1hZ2VTZXJ2aWNlLCBkaWN0aW9uYXJ5U2VydmljZSwgdHJhbnNhY3Rpb25TZXJ2aWNlLCBjaGFuZ2VEZXRlY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB0aGlzLl9wcmVwYXJlRGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRyYW5zYWN0aW9uU2V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXBvcnREb2N1bWVudEVtYWlsUmVxdWVzdC50cmFuc0lkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICB0aGlzLnJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0LnRyYW5zSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgIHRoaXMucmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0LnRyYW5zSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgIHRoaXMuX3ByZXBhcmVEYXRhKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVsYXRpb25TZXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVtYWlsQWRkcmVzc2VzLmxlbmd0aCA9IDA7XHJcbiAgICBjb25zdCBlbWFpbENvbnRhY3RPcHRpb25zOiBDb250YWN0T3B0aW9uW10gPSB0aGlzLnRyYW5zYWN0aW9uSGVhZGVyU2VydmljZS5yZWxhdGlvbi5jb250YWN0T3B0aW9ucy5maWx0ZXIoY28gPT4gY28udHlwZSA9PT0gQ29tbXVuaWNhdGlvblR5cGUuRW1haWwpO1xyXG4gICAgY29uc3QgZGVmYXVsdEVtYWlsQ29udGFjdE9wdGlvbjogQ29udGFjdE9wdGlvbiA9IGVtYWlsQ29udGFjdE9wdGlvbnMuZmluZChjbyA9PiBjby5sb3dlc3RTZXF1ZW5jZSk7XHJcbiAgICB0aGlzLmVtYWlsQWRkcmVzc2VzID0gZW1haWxDb250YWN0T3B0aW9ucy5tYXAoZSA9PiBlLnZhbHVlKTtcclxuICAgIHRoaXMuZ2V0RGVmYXVsdEVtYWlsQWRkcmVzc0xpc3QoKS50aGVuKChhZGRyZXNzZXM6IHN0cmluZ1tdKSA9PiB7XHJcbiAgICAgIGlmIChhZGRyZXNzZXMgJiYgYWRkcmVzc2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICB0aGlzLnJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0LnRvQWRkcmVzc2VzID0gYWRkcmVzc2VzLmpvaW4oJzsnKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0LnRvQWRkcmVzc2VzID0gZGVmYXVsdEVtYWlsQ29udGFjdE9wdGlvbiA/IGRlZmF1bHRFbWFpbENvbnRhY3RPcHRpb24udmFsdWUgOiAnJztcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGdldEhpc3RvcmljRG9jdW1lbnRzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0SGlzdG9yaWNEb2N1bWVudHModGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIExheW91dENvZGUuT3JkZXJDb25maXJtYXRpb24pXHJcbiAgICAgIC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICB0aGlzLmhpc3RvcmljUmVwb3J0cyA9IHJlc3VsdDtcclxuICAgICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlU2VuZE1ldGhvZE9rQ2xpY2sobWV0aG9kOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLmhpc3RvcmljUmVwb3J0cy5sZW5ndGggPiAwICYmIChtZXRob2QgPT09IFNlbmRNZXRob2RUeXBlLkVtYWlsIHx8IG1ldGhvZCA9PT0gU2VuZE1ldGhvZFR5cGUuUGRmIHx8IG1ldGhvZCA9PT0gU2VuZE1ldGhvZFR5cGUuV2ViU2VydmljZSkpIHtcclxuICAgICAgY29uc3QgcmVzcG9uc2U6IERpYWxvZ1Jlc3BvbnNlSW50ZXJmYWNlID0gYXdhaXQgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dZZXNObygnUVVFU1RJT04nLCAnUVVFU1RJT05fRE9DVU1FTlRfQUxSRUFEWV9QUklOVEVEJyk7XHJcbiAgICAgIGlmIChyZXNwb25zZS5idXR0b24gPT09IEFwcFBvcHVwQnV0dG9uVHlwZS5ZZXMpIHtcclxuICAgICAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gZmFsc2U7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5oYW5kbGVTZW5kKG1ldGhvZCk7XHJcbiAgICAgICAgdGhpcy5fc2V0RGVmYXVsdE1ldGhvZChtZXRob2QpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gZmFsc2U7XHJcbiAgICAgIGF3YWl0IHRoaXMuaGFuZGxlU2VuZChtZXRob2QpO1xyXG4gICAgICB0aGlzLl9zZXREZWZhdWx0TWV0aG9kKG1ldGhvZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlU2VuZChtZXRob2Q6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYoIW1ldGhvZCkge1xyXG4gICAgICB0aGlzLnNob3dTZW5kTWV0aG9kRGlhbG9nID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2hvd0xvYWRlciA9IHRydWU7XHJcbiAgICAgIHN3aXRjaCAobWV0aG9kKSB7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5QcmludDpcclxuICAgICAgICAgIGF3YWl0IHRoaXMucHJpbnREb2N1bWVudCh0aGlzLnJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0KTtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5FbWFpbDpcclxuICAgICAgICAgIGF3YWl0IHRoaXMuZW1haWxEb2N1bWVudCh0aGlzLnJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0KTtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5QZGY6XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLnBkZkRvY3VtZW50KHRoaXMucmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0KTtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBTZW5kTWV0aG9kVHlwZS5XZWJTZXJ2aWNlOlxyXG4gICAgICAgICAgYXdhaXQgdGhpcy5fd2ViU2VydmljZURvY3VtZW50KCk7XHJcbiAgICAgICAgICB0aGlzLnNob3dMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB0aGlzLmdldEhpc3RvcmljRG9jdW1lbnRzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29tbWl0QW5kUmVmcmVzaFRyYW5zYWN0aW9uKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuY29tbWl0QW5kUmVmcmVzaFRyYW5zYWN0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0VGVybXNBbmRDb25kaXRpb25zRm9ybSgpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFRlcm1zQW5kQ29uZGl0aW9uc0Zvcm0odGhpcy50cmFuc2FjdGlvbkluZm8uaWQpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgdGhpcy5hZGRpdGlvbmFsRmlsZUNvbnRlbnRzID0gcmVzdWx0O1xyXG4gICAgICB0aGlzLmFkZGl0aW9uYWxGaWxlTmFtZSA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uS2luZCArICdfJyArIHRoaXMudHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uTnIudG9TdHJpbmcoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwc2VydERvY3VtZW50KGRvYzogQ29Eb2N1bWVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcmVzcG9uc2U6IENvRG9jdW1lbnQgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5tZXJnZURvY3VtZW50T25UcmFuc2FjdGlvbih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZC50b1N0cmluZygpLCBkb2MpO1xyXG4gICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgIHRoaXMuc2hvd1NlbmRNZXRob2REaWFsb2cgPSBmYWxzZTtcclxuICAgICAgYXdhaXQgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dUb2FzdCgnREFUQV9TQVZFRCcsIHRydWUpO1xyXG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuaGlkZVRvYXN0QWZ0ZXJNcygyMDAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuXHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHByaW50RG9jdW1lbnQocmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdCk7XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBlbWFpbERvY3VtZW50KHJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50RW1haWxTaWduRG9jQmFzZVJlcXVlc3QpO1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcGRmRG9jdW1lbnQocmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRQZGZCYXNlUmVxdWVzdCk7XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRFbWFpbExheW91dHMoKTogUHJvbWlzZTxSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbFtdPjtcclxuXHJcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldFByaW50TGF5b3V0cygpOiBQcm9taXNlPFJlcG9ydExheW91dFNlbGVjdGlvblByaW50W10+O1xyXG5cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0RGVmYXVsdEVtYWlsQWRkcmVzc0xpc3QoKTogUHJvbWlzZTxzdHJpbmdbXT47XHJcblxyXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXREZWZhdWx0U2VuZE1ldGhvZCgpOiBQcm9taXNlPG51bWJlcj47XHJcblxyXG4gIHByaXZhdGUgX3ByZXBhcmVEYXRhKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZ2V0UHJpbnRlcnMoKTtcclxuICAgIHRoaXMuX2dldERlZmF1bHRTZW5kTWV0aG9kKCk7XHJcbiAgICB0aGlzLl9nZXRFbWFpbExheW91dHMoKTtcclxuICAgIHRoaXMuX2dldFByaW50TGF5b3V0cygpO1xyXG4gICAgdGhpcy5pc0RvY1NpZ25FbmFibGVkID0gdGhpcy5zY3JlZW5Db25maWdTZXJ2aWNlLmdldE9iamVjdENvbmZpZ3VyYXRpb25Gb3IodGhpcy5jZmdOYW1lcy5Jc0RvY1NpZ25FbmFibGVkKS5pbW1lZGlhdGVseVZpc2libGUoKTtcclxuICAgIHRoaXMuaXNBZGRpdGlvbmFsRG9jRW5hYmxlZCA9IHRoaXMuc2NyZWVuQ29uZmlnU2VydmljZS5nZXRPYmplY3RDb25maWd1cmF0aW9uRm9yKHRoaXMuY2ZnTmFtZXMuSXNBZGRpdGlvbmFsRG9jRW5hYmxlZCkuaW1tZWRpYXRlbHlWaXNpYmxlKCk7XHJcbiAgICB0aGlzLmdldEhpc3RvcmljRG9jdW1lbnRzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRQcmludGVycygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFByaW50ZXJzKCkudGhlbigocHJpbnRlckxpc3Q6IFByaW50ZXJbXSkgPT4ge1xyXG4gICAgICB0aGlzLnByaW50ZXJMaXN0ID0gcHJpbnRlckxpc3Q7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldERlZmF1bHRTZW5kTWV0aG9kKCk6IHZvaWQge1xyXG4gICAgdGhpcy5nZXREZWZhdWx0U2VuZE1ldGhvZCgpLnRoZW4oKG1ldGhvZDogbnVtYmVyKSA9PiB7XHJcbiAgICAgIGlmIChtZXRob2QgIT09IG51bGwgJiYgbWV0aG9kICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICB0aGlzLl9zZXREZWZhdWx0TWV0aG9kKG1ldGhvZC50b1N0cmluZygpKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX3NldERlZmF1bHRNZXRob2QobWV0aG9kOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IHNlbmRNZXRob2QgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gbWV0aG9kKTtcclxuICAgIGlmIChzZW5kTWV0aG9kKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdFNlbmRNZXRob2QgPSBzZW5kTWV0aG9kLmNvZGU7XHJcbiAgICAgIHRoaXMuZGVmYXVsdFNlbmRNZXRob2RJY29uID0gc2VuZE1ldGhvZC5pY29uO1xyXG4gICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldEVtYWlsTGF5b3V0cygpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0RW1haWxMYXlvdXRzKCkudGhlbigobGF5b3V0czogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWxbXSkgPT4ge1xyXG4gICAgICB0aGlzLmVtYWlsTGF5b3V0cyA9IGxheW91dHM7XHJcbiAgICAgIGlmICh0aGlzLmVtYWlsTGF5b3V0cyAmJiB0aGlzLmVtYWlsTGF5b3V0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgY29uc3QgZGVmYXVsdExheW91dDogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWwgPSB0aGlzLmVtYWlsTGF5b3V0cy5maW5kKGUgPT4gZS5pc0RlZmF1bHQpO1xyXG4gICAgICAgIGlmIChkZWZhdWx0TGF5b3V0KSB7XHJcbiAgICAgICAgICB0aGlzLnJlcG9ydERvY3VtZW50RW1haWxSZXF1ZXN0LnJlcG9ydElkID0gZGVmYXVsdExheW91dC5yZXBvcnRJZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0UHJpbnRMYXlvdXRzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5nZXRQcmludExheW91dHMoKS50aGVuKChsYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdKSA9PiB7XHJcbiAgICAgIHRoaXMucHJpbnRMYXlvdXRzID0gbGF5b3V0cztcclxuICAgICAgaWYgKHRoaXMucHJpbnRMYXlvdXRzICYmIHRoaXMucHJpbnRMYXlvdXRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBjb25zdCBkZWZhdWx0TGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludCA9IHRoaXMucHJpbnRMYXlvdXRzLmZpbmQocCA9PiBwLmlzRGVmYXVsdCk7XHJcbiAgICAgICAgaWYgKGRlZmF1bHRMYXlvdXQpIHtcclxuICAgICAgICAgIGlmICh0aGlzLnJlcG9ydERvY3VtZW50UHJpbnRSZXF1ZXN0KSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVwb3J0RG9jdW1lbnRQcmludFJlcXVlc3QucmVwb3J0SWQgPSBkZWZhdWx0TGF5b3V0LnJlcG9ydElkO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMucmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0KSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVwb3J0RG9jdW1lbnRQZGZSZXF1ZXN0LnJlcG9ydElkID0gZGVmYXVsdExheW91dC5yZXBvcnRJZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfd2ViU2VydmljZURvY3VtZW50KCkge1xyXG4gICAgYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2VuZXJhdGVXZWJTZXJ2aWNlT3JkZXIodGhpcy50cmFuc2FjdGlvbkluZm8uaWQpLnRoZW4oKCkgPT4ge1xyXG4gICAgICB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoVHJhbnNhY3Rpb25zKCk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|