@dsivd/prestations-ng 15.4.0 → 15.4.2-BETA1
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/CHANGELOG.md +16 -0
- package/dsivd-prestations-ng-v15.4.2-BETA1.tgz +0 -0
- package/esm2020/foehn-address/foehn-input-address.component.mjs +1 -1
- package/esm2020/foehn-autocomplete/foehn-autocomplete.component.mjs +27 -8
- package/esm2020/foehn-checkables/foehn-checkable-group.component.mjs +17 -17
- package/esm2020/foehn-checkables/foehn-select.component.mjs +3 -3
- package/esm2020/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.mjs +3 -3
- package/esm2020/gesdem-confirmation/gesdem-confirmation.component.mjs +4 -3
- package/esm2020/sdk-support-alert/support-alert.service.mjs +7 -4
- package/fesm2015/dsivd-prestations-ng.mjs +54 -31
- package/fesm2015/dsivd-prestations-ng.mjs.map +1 -1
- package/fesm2020/dsivd-prestations-ng.mjs +54 -31
- package/fesm2020/dsivd-prestations-ng.mjs.map +1 -1
- package/foehn-autocomplete/foehn-autocomplete.component.d.ts +10 -2
- package/foehn-checkables/foehn-checkable-group.component.d.ts +1 -1
- package/package.json +6 -6
- package/dsivd-prestations-ng-v15.4.0.tgz +0 -0
|
@@ -58,8 +58,9 @@ export class GesdemConfirmationComponent {
|
|
|
58
58
|
if (isBooleanDefined(routeData.showLinkToMyDemandes)) {
|
|
59
59
|
this.showLinkToMyDemandes = routeData.showLinkToMyDemandes;
|
|
60
60
|
}
|
|
61
|
-
if (isBooleanDefined(routeData.
|
|
62
|
-
this.
|
|
61
|
+
if (isBooleanDefined(routeData.demandeIsClosedOnTransmit)) {
|
|
62
|
+
this.demandeIsClosedOnTransmit =
|
|
63
|
+
routeData.demandeIsClosedOnTransmit;
|
|
63
64
|
}
|
|
64
65
|
if (isBooleanDefined(routeData.hideReference)) {
|
|
65
66
|
this.hideReference = routeData.hideReference;
|
|
@@ -195,4 +196,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
195
196
|
}], hideReference: [{
|
|
196
197
|
type: Input
|
|
197
198
|
}] } });
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWNvbmZpcm1hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZ2VzZGVtLWNvbmZpcm1hdGlvbi9nZXNkZW0tY29uZmlybWF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0tY29uZmlybWF0aW9uL2dlc2RlbS1jb25maXJtYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBTVIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBNEIsTUFBTSxNQUFNLENBQUM7QUFDakUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7O0FBSWhGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxLQUFjLEVBQVcsRUFBRSxDQUNqRCxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxLQUFLLENBQUM7QUFPdEMsTUFBTSxPQUFPLDJCQUEyQjtJQTJEcEMsWUFDYyxhQUFtQyxFQUNuQyxnQkFBa0MsRUFDbEMsY0FBOEIsRUFDOUIsaUJBQXVDLEVBQ3ZD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bnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgU2ltcGxlQ2hhbmdlLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlyc3QsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vZm9laG4tYnJlYWRjcnVtYi9icmVhZGNydW1iLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5QYWdlU2VydmljZSB9IGZyb20gJy4uL2ZvZWhuLXBhZ2UvZm9laG4tcGFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFNlcnZpY2VMb2NhdG9yIH0gZnJvbSAnLi4vc2VydmljZS1sb2NhdG9yJztcbmltcG9ydCB7IFNlc3Npb25JbmZvIH0gZnJvbSAnLi4vc2RrLXNlc3Npb24taW5mby9zZXNzaW9uLWluZm8uc2VydmljZSc7XG5pbXBvcnQgeyBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vZm9laG4tbmF2aWdhdGlvbi9mb2Vobi1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aW9uU3RhdHV0LCBHZXNkZW1TdGF0dXRVdGlscyB9IGZyb20gJy4uL2dlc2RlbS9nZXNkZW0tc3RhdHV0LXV0aWxzJztcbmltcG9ydCB7IFNka0RpY3Rpb25hcnlTZXJ2aWNlIH0gZnJvbSAnLi4vc2RrLWRpY3Rpb25hcnkvc2RrLWRpY3Rpb25hcnkuc2VydmljZSc7XG5pbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmNvbnN0IGlzQm9vbGVhbkRlZmluZWQgPSAodmFsdWU6IGJvb2xlYW4pOiBib29sZWFuID0+XG4gICAgdmFsdWUgPT09IHRydWUgfHwgdmFsdWUgPT09IGZhbHNlO1xuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnZ2VzZGVtLWNvbmZpcm1hdGlvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dlc2RlbS1jb25maXJtYXRpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEdlc2RlbUNvbmZpcm1hdGlvbkNvbXBvbmVudFxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KClcbiAgICByZWZlcmVuY2U6IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0UGFnZVRpdGxlID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgaGFzRW1haWxTZW50ID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGNsb3NlSHJlZjogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBzaG93RG93bmxvYWRQZGZSZWNhcEJ1dHRvbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHNob3dMaW5rVG9NeURlbWFuZGVzID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgZGVtYW5kZUlzQ2xvc2VkT25UcmFuc21pdCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBhY3Rpb25TdGF0dXQgPSBBY3Rpb25TdGF0dXQuVFJBTlNGRVJSRUQ7XG5cbiAgICBASW5wdXQoKVxuICAgIGNvbm5lY3RlZENvbmZpcm1hdGlvbk1lc3NhZ2UgPVxuICAgICAgICAnVm91cyBhdmV6IGVmZmVjdHXDqSBsYSBwcmVtacOocmUgw6l0YXBlIGRlIHZvdHJlIGTDqW1hcmNoZSBhdmVjIHN1Y2PDqHMgISc7XG5cbiAgICBASW5wdXQoKVxuICAgIGNvbm5lY3RlZENvbmZpcm1hdGlvbk1lc3NhZ2VJZkFiYW5kb25lZCA9XG4gICAgICAgIFwiTGEgZGVtYW5kZSDDoCBsYXF1ZWxsZSB2b3VzIGVzc2F5ZXogZCdhY2PDqWRlciBhIMOpdMOpIGFiYW5kb25uw6llLlwiO1xuXG4gICAgQElucHV0KClcbiAgICBkb3dubG9hZFBkZlJlY2FwQnV0dG9uVGV4dDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBjbG9zZUJ1dHRvblRleHQ6IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgYmFzZVVybFBkZiA9ICdhcGkvZG9jdW1lbnQvcGRmLyc7XG5cbiAgICBASW5wdXQoKVxuICAgIGhpZGVSZWZlcmVuY2UgPSBmYWxzZTtcblxuICAgIGlzQ29ubmVjdGVkQ3liZXI6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgZmlyc3RQYWdlTGluayA9ICcvJztcbiAgICB1cmxQZGY6IHN0cmluZztcbiAgICBjbG9zZUxpbmsgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4obnVsbCk7XG5cbiAgICBwcm90ZWN0ZWQgX2JyZWFkY3J1bWJFdmVudFNlcnZpY2U6IEJyZWFkY3J1bWJFdmVudFNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9mb2VoblBhZ2VTZXJ2aWNlOiBGb2VoblBhZ2VTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfc2Vzc2lvbkluZm86IFNlc3Npb25JbmZvO1xuICAgIHByb3RlY3RlZCBfbmF2aWdhdGlvbjogRm9laG5OYXZpZ2F0aW9uU2VydmljZTtcblxuICAgIHByaXZhdGUgZGF0YVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgcGFnZVRpdGxlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGdlc2RlbVNlcnZpY2U6IEdlc2RlbUhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgZm9laG5QYWdlU2VydmljZTogRm9laG5QYWdlU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBTZGtEaWN0aW9uYXJ5U2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIGxvY2F0aW9uOiBMb2NhdGlvblxuICAgICkge1xuICAgICAgICB0aGlzLl9icmVhZGNydW1iRXZlbnRTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFxuICAgICAgICAgICAgQnJlYWRjcnVtYkV2ZW50U2VydmljZVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9mb2VoblBhZ2VTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEZvZWhuUGFnZVNlcnZpY2UpO1xuICAgICAgICB0aGlzLl9zZXNzaW9uSW5mbyA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChTZXNzaW9uSW5mbyk7XG4gICAgICAgIHRoaXMuX25hdmlnYXRpb24gPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoRm9laG5OYXZpZ2F0aW9uU2VydmljZSk7XG5cbiAgICAgICAgY29uc3Qgcm91dGUgPSBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlLmdldFJvb3RSb3V0ZVJlY3Vyc2l2ZShcbiAgICAgICAgICAgIGFjdGl2YXRlZFJvdXRlLnNuYXBzaG90XG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX25hdmlnYXRpb24uaW5pdFJvdXRlKHJvdXRlKTtcblxuICAgICAgICAvLyBPdmVycmlkZSBmcm9tIHRoZSByb3V0aW5nLlxuICAgICAgICB0aGlzLmRhdGFTdWJzY3JpcHRpb24gPSB0aGlzLmFjdGl2YXRlZFJvdXRlLmRhdGEuc3Vic2NyaWJlKFxuICAgICAgICAgICAgcm91dGVEYXRhID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhc0VtYWlsU2VudCA9IHJvdXRlRGF0YS5oYXNFbWFpbFNlbnQgfHwgdGhpcy5oYXNFbWFpbFNlbnQ7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZUxpbmsubmV4dChcbiAgICAgICAgICAgICAgICAgICAgcm91dGVEYXRhLmNsb3NlSHJlZiB8fCB0aGlzLmNsb3NlTGluay5nZXRWYWx1ZSgpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3RlZENvbmZpcm1hdGlvbk1lc3NhZ2UgPVxuICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuY29ubmVjdGVkQ29uZmlybWF0aW9uTWVzc2FnZSB8fFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3RlZENvbmZpcm1hdGlvbk1lc3NhZ2U7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlSWZBYmFuZG9uZWQgPVxuICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuY29ubmVjdGVkQ29uZmlybWF0aW9uTWVzc2FnZUlmQWJhbmRvbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGVkQ29uZmlybWF0aW9uTWVzc2FnZUlmQWJhbmRvbmVkO1xuICAgICAgICAgICAgICAgIGlmIChpc0Jvb2xlYW5EZWZpbmVkKHJvdXRlRGF0YS5zaG93RG93bmxvYWRQZGZSZWNhcEJ1dHRvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93RG93bmxvYWRQZGZSZWNhcEJ1dHRvbiA9XG4gICAgICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuc2hvd0Rvd25sb2FkUGRmUmVjYXBCdXR0b247XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpc0Jvb2xlYW5EZWZpbmVkKHJvdXRlRGF0YS5zaG93TGlua1RvTXlEZW1hbmRlcykpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93TGlua1RvTXlEZW1hbmRlcyA9IHJvdXRlRGF0YS5zaG93TGlua1RvTXlEZW1hbmRlcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzQm9vbGVhbkRlZmluZWQocm91dGVEYXRhLnNob3dMaW5rVG9NeURlbWFuZGVzKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMaW5rVG9NeURlbWFuZGVzID0gcm91dGVEYXRhLnNob3dMaW5rVG9NeURlbWFuZGVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaXNCb29sZWFuRGVmaW5lZChyb3V0ZURhdGEuaGlkZVJlZmVyZW5jZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oaWRlUmVmZXJlbmNlID0gcm91dGVEYXRhLmhpZGVSZWZlcmVuY2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuZG93bmxvYWRQZGZSZWNhcEJ1dHRvblRleHQgPVxuICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuZG93bmxvYWRQZGZSZWNhcEJ1dHRvblRleHQgfHxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kb3dubG9hZFBkZlJlY2FwQnV0dG9uVGV4dCB8fFxuICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWNvbmZpcm1hdGlvbi5kb3dubG9hZC1wZGYtcmVjYXAtYnV0dG9uJztcbiAgICAgICAgICAgICAgICB0aGlzLmJhc2VVcmxQZGYgPSByb3V0ZURhdGEuYmFzZVVybFBkZiB8fCB0aGlzLmJhc2VVcmxQZGY7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZUJ1dHRvblRleHQgPVxuICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuY2xvc2VCdXR0b25UZXh0IHx8XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2xvc2VCdXR0b25UZXh0IHx8XG4gICAgICAgICAgICAgICAgICAgICdnZXNkZW0tY29uZmlybWF0aW9uLmV4aXQtYnV0dG9uJztcblxuICAgICAgICAgICAgICAgIC8vIGRlZmF1bHQgY2xvc2VMaW5rIGlmIG5vdCBieSBASW5wdXQgYW5kIG5vdCBieSByb3V0ZSBkYXRhXG4gICAgICAgICAgICAgICAgdGhpcy5mb2VoblBhZ2VTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5vbkV0YXBlSWRDaGFuZ2UoKVxuICAgICAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy9uby1uZXN0ZWQtc3Vic2NyaWJlXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoZXRhcGVJZCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY2xvc2VMaW5rLmdldFZhbHVlKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlTGluay5uZXh0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgaHR0cHM6Ly93d3cudmQuY2gvZ28udG8/cHJlc3RhdGlvbj0ke2V0YXBlSWR9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpc1RyYW5zZmVycmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5hY3Rpb25TdGF0dXQgJiYgdGhpcy5hY3Rpb25TdGF0dXQgPT09IEFjdGlvblN0YXR1dC5UUkFOU0ZFUlJFRFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpc0FiYW5kb25lZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uU3RhdHV0ICYmIHRoaXMuYWN0aW9uU3RhdHV0ID09PSBBY3Rpb25TdGF0dXQuQUJBTkRPTkVEXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGlzSW5Qcm9ncmVzcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICFHZXNkZW1TdGF0dXRVdGlscy5pc0ZpbmFsKHRoaXMuYWN0aW9uU3RhdHV0KTtcbiAgICB9XG5cbiAgICBnZXQgc3VjY2Vzc0xhYmVsRGljb0tleSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBpc0ZpcnN0QWN0aW9uID1cbiAgICAgICAgICAgIHRoaXMuZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2U/Lm1ldGE/LmN1cnJlbnRBY3Rpb24gPT09IDE7XG4gICAgICAgIHJldHVybiBpc0ZpcnN0QWN0aW9uXG4gICAgICAgICAgICA/ICdnZXNkZW0tY29uZmlybWF0aW9uLnN1Y2Nlc3MtbGFiZWwnXG4gICAgICAgICAgICA6ICdnZXNkZW0tY29uZmlybWF0aW9uLm5leHQtc3RlcC5zdWNjZXNzLWxhYmVsJztcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNoYW5nZTogU2ltcGxlQ2hhbmdlID0gY2hhbmdlcy5jbG9zZUhyZWY7XG4gICAgICAgIGlmIChjaGFuZ2UgJiYgY2hhbmdlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZUxpbmsubmV4dChjaGFuZ2UuY3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBsYXN0UmVzcG9uc2UgPSB0aGlzLmdlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlO1xuICAgICAgICBpZiAobGFzdFJlc3BvbnNlKSB7XG4gICAgICAgICAgICB0aGlzLnJlZmVyZW5jZSA9IGxhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZTtcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uU3RhdHV0ID1cbiAgICAgICAgICAgICAgICBBY3Rpb25TdGF0dXRbbGFzdFJlc3BvbnNlLm1ldGEuc3RhdHV0IGFzIEFjdGlvblN0YXR1dF07XG4gICAgICAgICAgICB0aGlzLnVybFBkZiA9IHRoaXMuYmFzZVVybFBkZiArIHRoaXMucmVmZXJlbmNlO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEFjdGlvbiA9IGxhc3RSZXNwb25zZS5tZXRhLmN1cnJlbnRBY3Rpb247XG4gICAgICAgICAgICBpZiAoISFjdXJyZW50QWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cmxQZGYgKz0gYC0ke2N1cnJlbnRBY3Rpb259YDtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5sb2NhdGlvbi5wYXRoKCkuaW5jbHVkZXMoYC8ke3RoaXMucmVmZXJlbmNlfS9gKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmdWxsUmVmZXJlbmNlVXJsID0gdGhpcy5sb2NhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgLnBhdGgoKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5yZWZlcmVuY2V9LSR7Y3VycmVudEFjdGlvbn1gXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvY2F0aW9uLnJlcGxhY2VTdGF0ZShmdWxsUmVmZXJlbmNlVXJsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGxhbmd1YWdlQ29kZSA9IGxhc3RSZXNwb25zZS5mb3JtLmxhbmd1YWdlO1xuICAgICAgICAgICAgdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5jaGFuZ2VMYW5ndWFnZShsYW5ndWFnZUNvZGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gV2hldGhlciB0aGUgdXNlciBoYXMgYSBjb250ZXh0IHdlIGNvbnNpZGVyIGl0IGFzIGNvbm5lY3RlZC5cbiAgICAgICAgdGhpcy5pc0Nvbm5lY3RlZEN5YmVyID0gdGhpcy5fc2Vzc2lvbkluZm8uZGF0YS5waXBlKFxuICAgICAgICAgICAgbWFwKHVzZXJJbmZvID0+ICEhdXNlckluZm8gJiYgISF1c2VySW5mby5jb250ZXh0KVxuICAgICAgICApO1xuXG4gICAgICAgIGlmICh0aGlzLnNldFBhZ2VUaXRsZSkge1xuICAgICAgICAgICAgdGhpcy5wYWdlVGl0bGVTdWJzY3JpcHRpb24gPSB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmdldEtleSgnZ2VzZGVtLWNvbmZpcm1hdGlvbi50aXRsZScpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSh0aXRsZSA9PiB0aGlzLl9mb2VoblBhZ2VTZXJ2aWNlLnNldFBhZ2VUaXRsZSh0aXRsZSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5maXJzdFBhZ2VMaW5rID0gdGhpcy5nZXRGaXJzdFBhZ2VMaW5rKCk7XG5cbiAgICAgICAgdGhpcy5fYnJlYWRjcnVtYkV2ZW50U2VydmljZS5za2lwTGVhdmluZ0FsZXJ0QmVjYXVzZURlbWFuZElzVHJhbnNtaXR0ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kYXRhU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5wYWdlVGl0bGVTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYXNDb25uZWN0ZWRDb250ZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBoYXNDb25mTWVzc2FnZSA9XG4gICAgICAgICAgICB0aGlzLmlzVHJhbnNmZXJyZWQgJiYgISF0aGlzLmNvbm5lY3RlZENvbmZpcm1hdGlvbk1lc3NhZ2U7XG4gICAgICAgIGNvbnN0IGhhc0FiYW5kb25lZENvbmZNZXNzYWdlID1cbiAgICAgICAgICAgICF0aGlzLmlzVHJhbnNmZXJyZWQgJiZcbiAgICAgICAgICAgICEhdGhpcy5jb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlSWZBYmFuZG9uZWQ7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIGhhc0NvbmZNZXNzYWdlIHx8XG4gICAgICAgICAgICBoYXNBYmFuZG9uZWRDb25mTWVzc2FnZSB8fFxuICAgICAgICAgICAgISF0aGlzLnNob3dMaW5rVG9NeURlbWFuZGVzXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaXJzdFBhZ2VMaW5rKCk6IHN0cmluZyB7XG4gICAgICAgIGxldCBsaW5rID0gJy8nO1xuICAgICAgICBjb25zdCBmaXJzdFBhZ2UgPSB0aGlzLl9uYXZpZ2F0aW9uLmdldEZpcnN0Um91dGUoKTtcbiAgICAgICAgaWYgKHRoaXMuZ2VzZGVtU2VydmljZS5wcmVmaXgpIHtcbiAgICAgICAgICAgIGxpbmsgKz0gYCR7dGhpcy5nZXNkZW1TZXJ2aWNlLnByZWZpeH0vYDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBgJHtsaW5rICsgdGhpcy5yZWZlcmVuY2V9LyR7Zmlyc3RQYWdlLnBhdGh9YDtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyIG10LTVcIiAqbmdJZj1cInJlZmVyZW5jZSAmJiAhaXNJblByb2dyZXNzXCI+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImFsZXJ0IHRleHQtY2VudGVyIG1iLTJcIlxuICAgICAgICBbbmdDbGFzc109XCJpc1RyYW5zZmVycmVkID8gJ2FsZXJ0LXN1Y2Nlc3MnIDogJ2FsZXJ0LWRhbmdlcidcIlxuICAgID5cbiAgICAgICAgPHAgY2xhc3M9XCJoMlwiPlxuICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICBpc1RyYW5zZmVycmVkXG4gICAgICAgICAgICAgICAgICAgID8gKHN1Y2Nlc3NMYWJlbERpY29LZXkgfCBmcm9tRGljdGlvbmFyeSlcbiAgICAgICAgICAgICAgICAgICAgOiAoJ2dlc2RlbS1jb25maXJtYXRpb24uYWJvcnQtbGFiZWwnIHwgZnJvbURpY3Rpb25hcnkpXG4gICAgICAgICAgICB9fVxuICAgICAgICA8L3A+XG4gICAgICAgIDxkbCAqbmdJZj1cIiFoaWRlUmVmZXJlbmNlXCI+XG4gICAgICAgICAgICA8ZHQgY2xhc3M9XCJmb250LXdlaWdodC1saWdodFwiPlxuICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgICdnZXNkZW0tY29uZmlybWF0aW9uLnJlZmVyZW5jZS10aXRsZS5sYWJlbCcgfCBmcm9tRGljdGlvbmFyeVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA8L2R0PlxuICAgICAgICAgICAgPGRkIGlkPVwibnVtRGVtYW5kZVwiIGNsYXNzPVwiaDQgZC1ibG9jayBtdC0zXCI+e3sgcmVmZXJlbmNlIH19PC9kZD5cbiAgICAgICAgPC9kbD5cbiAgICAgICAgPHAgKm5nSWY9XCJoYXNFbWFpbFNlbnQgJiYgIShpc0Nvbm5lY3RlZEN5YmVyIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICB7eyAnZ2VzZGVtLWNvbmZpcm1hdGlvbi5tYWlsLXNlbnQubGFiZWwnIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgPC9wPlxuICAgIDwvZGl2PlxuXG4gICAgPHNwYW5cbiAgICAgICAgW2lubmVySFRNTF09XCInZ2VzZGVtLWNvbmZpcm1hdGlvbi5leHRyYS1jb250ZW50JyB8IGZyb21EaWN0aW9uYXJ5XCJcbiAgICA+PC9zcGFuPlxuXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImNvbC1tZC0xMiB2ZC1oaWdobGlnaHRcIlxuICAgICAgICAqbmdJZj1cIihpc0Nvbm5lY3RlZEN5YmVyIHwgYXN5bmMpICYmIGhhc0Nvbm5lY3RlZENvbnRlbnQoKVwiXG4gICAgPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5cbiAgICAgICAgICAgIEluZm9ybWF0aW9uIHN1aXRlIMOgIGxhIHRyYW5zbWlzc2lvbiBkZSB2b3RyZSBkZW1hbmRlXG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xXCI+XG4gICAgICAgICAgICAgICAgPGZvZWhuLWljb24taW5mby1jaXJjbGUgY2xhc3M9XCJoM1wiPjwvZm9laG4taWNvbi1pbmZvLWNpcmNsZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMVwiPlxuICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBpc1RyYW5zZmVycmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBjb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBjb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlSWZBYmFuZG9uZWRcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+PC9wPlxuICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgIGlkPVwibGlua1RvVHJlYXRlZERlbWFuZGVzXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNob3dMaW5rVG9NeURlbWFuZGVzICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAoZGVtYW5kZUlzQ2xvc2VkT25UcmFuc21pdCB8fCBpc0FiYW5kb25lZClcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIFZvdXMgcG91dmV6IGNvbnN1bHRlciB2b3RyZSBkZW1hbmRlIGVuIGNsaXF1YW50IHN1ciA6XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIvMTAwMDAyL2RlbWFuZGVzL3NlYXJjaC9NSU5FL1RSRUFURURcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIE1lcyBub3V2ZWxsZXMgZGVtYW5kZXMgdHJhaXTDqWVzXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cFxuICAgICAgICAgICAgICAgICAgICBpZD1cImxpbmtUb0luUHJvZ3Jlc3NEZW1hbmRlc1wiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzaG93TGlua1RvTXlEZW1hbmRlcyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIWRlbWFuZGVJc0Nsb3NlZE9uVHJhbnNtaXQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFpc0FiYW5kb25lZFxuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgVm91cyBwb3V2ZXogc3VpdnJlIGwnYXZhbmNlbWVudCBkdSB0cmFpdGVtZW50IGRlIHZvdHJlXG4gICAgICAgICAgICAgICAgICAgIGRlbWFuZGUgZW4gY2xpcXVhbnQgc3VyIDpcbiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cIi8xMDAwMDIvZGVtYW5kZXMvc2VhcmNoL01JTkUvSU5fUFJPR1JFU1NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIE1lcyBkZW1hbmRlcyBlbiBjb3VycyBkZSB0cmFpdGVtZW50XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbGlzdC11bnN0eWxlZCBkLW1kLWZsZXggcC0wIG10LTRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTAgbXItbWQtYXV0byBtci1tZC0yIG1iLTIgbXQtMlwiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cInNob3dEb3dubG9hZFBkZlJlY2FwQnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbaHJlZl09XCJ1cmxQZGZcIlxuICAgICAgICAgICAgICAgIGlkPVwidGVsZWNoYXJnZXJCdG5cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgdy0xMDBcIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwiVMOpbMOpY2hhcmdlciBsZSBQREZcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGRvd25sb2FkUGRmUmVjYXBCdXR0b25UZXh0IHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJtci0wIG1sLW1kLWF1dG8gbWItMiBtdC0yXCJcbiAgICAgICAgICAgICpuZ0lmPVwiIShpc0Nvbm5lY3RlZEN5YmVyIHwgYXN5bmMpICYmIGNsb3NlTGluayB8IGFzeW5jIGFzIGxpbmtcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8YSBbaHJlZl09XCJsaW5rXCIgaWQ9XCJ0ZXJtaW5lckJ0blwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHctMTAwXCI+XG4gICAgICAgICAgICAgICAge3sgY2xvc2VCdXR0b25UZXh0IHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJtci0wIG1sLW1kLWF1dG8gbWItMiBtdC0yXCJcbiAgICAgICAgICAgICpuZ0lmPVwiISEoaXNDb25uZWN0ZWRDeWJlciB8IGFzeW5jKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgaHJlZj1cIi8xMDAwMTgvbG9nb3V0XCJcbiAgICAgICAgICAgICAgICBpZD1cImxvZ291dEJ0blwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgdy0xMDBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7ICdnZXNkZW0tY29uZmlybWF0aW9uLmxvZ291dC1idXR0b24nIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImNvbnRhaW5lciBtdC01XCIgKm5nSWY9XCIhaGlkZVJlZmVyZW5jZSAmJiByZWZlcmVuY2UgJiYgaXNJblByb2dyZXNzXCI+XG4gICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm8gdGV4dC1jZW50ZXIgbWItMlwiPlxuICAgICAgICA8cCBjbGFzcz1cImgyXCI+RGVtYW5kZSBlbiBjb3VyczwvcD5cbiAgICAgICAgPGRsPlxuICAgICAgICAgICAgPGR0IGNsYXNzPVwiZm9udC13ZWlnaHQtbGlnaHRcIj5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWNvbmZpcm1hdGlvbi5yZWZlcmVuY2UtdGl0bGUubGFiZWwnIHwgZnJvbURpY3Rpb25hcnlcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPC9kdD5cbiAgICAgICAgICAgIDxkZCBpZD1cIm51bURlbWFuZGVFbkNvdXJzXCIgY2xhc3M9XCJoNCBkLWJsb2NrIG10LTNcIj5cbiAgICAgICAgICAgICAgICB7eyByZWZlcmVuY2UgfX1cbiAgICAgICAgICAgIDwvZGQ+XG4gICAgICAgIDwvZGw+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIHZkLWhpZ2hsaWdodFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTFcIj5cbiAgICAgICAgICAgICAgICA8Zm9laG4taWNvbi1pbmZvLWNpcmNsZSBjbGFzcz1cImgzXCI+PC9mb2Vobi1pY29uLWluZm8tY2lyY2xlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTExXCI+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIFZvdXMgcG91dmV6IHJlcHJlbmRyZSB2b3RyZSBkZW1hbmRlIGVuIGNsaXF1YW50IHN1ciBsZSBsaWVuXG4gICAgICAgICAgICAgICAgICAgIGNpLWRlc3NvdXNcbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cImZpcnN0UGFnZUxpbmtcIj5SZXByZW5kcmUgbWEgZGVtYW5kZTwvYT5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWNvbmZpcm1hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZ2VzZGVtLWNvbmZpcm1hdGlvbi9nZXNkZW0tY29uZmlybWF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0tY29uZmlybWF0aW9uL2dlc2RlbS1jb25maXJtYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBTVIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBNEIsTUFBTSxNQUFNLENBQUM7QUFDakUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7O0FBSWhGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxLQUFjLEVBQVcsRUFBRSxDQUNqRCxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxLQUFLLENBQUM7QUFPdEMsTUFBTSxPQUFPLDJCQUEyQjtJQTJEcEMsWUFDYyxhQUFtQyxFQUNuQyxnQkFBa0MsRUFDbEMsY0FBOEIsRUFDOUIsaUJBQXVDLEVBQ3ZD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Q29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBTaW1wbGVDaGFuZ2UsXG4gICAgU2ltcGxlQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBHZXNkZW1IYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL2dlc2RlbS9nZXNkZW0taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEJyZWFkY3J1bWJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi9mb2Vobi1icmVhZGNydW1iL2JyZWFkY3J1bWItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBGb2VoblBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vZm9laG4tcGFnZS9mb2Vobi1wYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2VydmljZUxvY2F0b3IgfSBmcm9tICcuLi9zZXJ2aWNlLWxvY2F0b3InO1xuaW1wb3J0IHsgU2Vzc2lvbkluZm8gfSBmcm9tICcuLi9zZGstc2Vzc2lvbi1pbmZvL3Nlc3Npb24taW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9mb2Vobi1uYXZpZ2F0aW9uL2ZvZWhuLW5hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBBY3Rpb25TdGF0dXQsIEdlc2RlbVN0YXR1dFV0aWxzIH0gZnJvbSAnLi4vZ2VzZGVtL2dlc2RlbS1zdGF0dXQtdXRpbHMnO1xuaW1wb3J0IHsgU2RrRGljdGlvbmFyeVNlcnZpY2UgfSBmcm9tICcuLi9zZGstZGljdGlvbmFyeS9zZGstZGljdGlvbmFyeS5zZXJ2aWNlJztcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuY29uc3QgaXNCb29sZWFuRGVmaW5lZCA9ICh2YWx1ZTogYm9vbGVhbik6IGJvb2xlYW4gPT5cbiAgICB2YWx1ZSA9PT0gdHJ1ZSB8fCB2YWx1ZSA9PT0gZmFsc2U7XG5cbkBDb21wb25lbnQoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdnZXNkZW0tY29uZmlybWF0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZ2VzZGVtLWNvbmZpcm1hdGlvbi5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgR2VzZGVtQ29uZmlybWF0aW9uQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKVxuICAgIHJlZmVyZW5jZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBzZXRQYWdlVGl0bGUgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBoYXNFbWFpbFNlbnQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgY2xvc2VIcmVmOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHNob3dEb3dubG9hZFBkZlJlY2FwQnV0dG9uID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgc2hvd0xpbmtUb015RGVtYW5kZXMgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBkZW1hbmRlSXNDbG9zZWRPblRyYW5zbWl0ID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGFjdGlvblN0YXR1dCA9IEFjdGlvblN0YXR1dC5UUkFOU0ZFUlJFRDtcblxuICAgIEBJbnB1dCgpXG4gICAgY29ubmVjdGVkQ29uZmlybWF0aW9uTWVzc2FnZSA9XG4gICAgICAgICdWb3VzIGF2ZXogZWZmZWN0dcOpIGxhIHByZW1pw6hyZSDDqXRhcGUgZGUgdm90cmUgZMOpbWFyY2hlIGF2ZWMgc3VjY8OocyAhJztcblxuICAgIEBJbnB1dCgpXG4gICAgY29ubmVjdGVkQ29uZmlybWF0aW9uTWVzc2FnZUlmQWJhbmRvbmVkID1cbiAgICAgICAgXCJMYSBkZW1hbmRlIMOgIGxhcXVlbGxlIHZvdXMgZXNzYXlleiBkJ2FjY8OpZGVyIGEgw6l0w6kgYWJhbmRvbm7DqWUuXCI7XG5cbiAgICBASW5wdXQoKVxuICAgIGRvd25sb2FkUGRmUmVjYXBCdXR0b25UZXh0OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIGNsb3NlQnV0dG9uVGV4dDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBiYXNlVXJsUGRmID0gJ2FwaS9kb2N1bWVudC9wZGYvJztcblxuICAgIEBJbnB1dCgpXG4gICAgaGlkZVJlZmVyZW5jZSA9IGZhbHNlO1xuXG4gICAgaXNDb25uZWN0ZWRDeWJlcjogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBmaXJzdFBhZ2VMaW5rID0gJy8nO1xuICAgIHVybFBkZjogc3RyaW5nO1xuICAgIGNsb3NlTGluayA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihudWxsKTtcblxuICAgIHByb3RlY3RlZCBfYnJlYWRjcnVtYkV2ZW50U2VydmljZTogQnJlYWRjcnVtYkV2ZW50U2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2ZvZWhuUGFnZVNlcnZpY2U6IEZvZWhuUGFnZVNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9zZXNzaW9uSW5mbzogU2Vzc2lvbkluZm87XG4gICAgcHJvdGVjdGVkIF9uYXZpZ2F0aW9uOiBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlO1xuXG4gICAgcHJpdmF0ZSBkYXRhU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJpdmF0ZSBwYWdlVGl0bGVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgZ2VzZGVtU2VydmljZTogR2VzZGVtSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBmb2VoblBhZ2VTZXJ2aWNlOiBGb2VoblBhZ2VTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IFNka0RpY3Rpb25hcnlTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgbG9jYXRpb246IExvY2F0aW9uXG4gICAgKSB7XG4gICAgICAgIHRoaXMuX2JyZWFkY3J1bWJFdmVudFNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoXG4gICAgICAgICAgICBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX2ZvZWhuUGFnZVNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoRm9laG5QYWdlU2VydmljZSk7XG4gICAgICAgIHRoaXMuX3Nlc3Npb25JbmZvID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFNlc3Npb25JbmZvKTtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbiA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChGb2Vobk5hdmlnYXRpb25TZXJ2aWNlKTtcblxuICAgICAgICBjb25zdCByb3V0ZSA9IEZvZWhuTmF2aWdhdGlvblNlcnZpY2UuZ2V0Um9vdFJvdXRlUmVjdXJzaXZlKFxuICAgICAgICAgICAgYWN0aXZhdGVkUm91dGUuc25hcHNob3RcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5pbml0Um91dGUocm91dGUpO1xuXG4gICAgICAgIC8vIE92ZXJyaWRlIGZyb20gdGhlIHJvdXRpbmcuXG4gICAgICAgIHRoaXMuZGF0YVN1YnNjcmlwdGlvbiA9IHRoaXMuYWN0aXZhdGVkUm91dGUuZGF0YS5zdWJzY3JpYmUoXG4gICAgICAgICAgICByb3V0ZURhdGEgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFzRW1haWxTZW50ID0gcm91dGVEYXRhLmhhc0VtYWlsU2VudCB8fCB0aGlzLmhhc0VtYWlsU2VudDtcbiAgICAgICAgICAgICAgICB0aGlzLmNsb3NlTGluay5uZXh0KFxuICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuY2xvc2VIcmVmIHx8IHRoaXMuY2xvc2VMaW5rLmdldFZhbHVlKClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGVkQ29uZmlybWF0aW9uTWVzc2FnZSA9XG4gICAgICAgICAgICAgICAgICAgIHJvdXRlRGF0YS5jb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlIHx8XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGVkQ29uZmlybWF0aW9uTWVzc2FnZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3RlZENvbmZpcm1hdGlvbk1lc3NhZ2VJZkFiYW5kb25lZCA9XG4gICAgICAgICAgICAgICAgICAgIHJvdXRlRGF0YS5jb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlSWZBYmFuZG9uZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlSWZBYmFuZG9uZWQ7XG4gICAgICAgICAgICAgICAgaWYgKGlzQm9vbGVhbkRlZmluZWQocm91dGVEYXRhLnNob3dEb3dubG9hZFBkZlJlY2FwQnV0dG9uKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dEb3dubG9hZFBkZlJlY2FwQnV0dG9uID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlRGF0YS5zaG93RG93bmxvYWRQZGZSZWNhcEJ1dHRvbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGlzQm9vbGVhbkRlZmluZWQocm91dGVEYXRhLnNob3dMaW5rVG9NeURlbWFuZGVzKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMaW5rVG9NeURlbWFuZGVzID0gcm91dGVEYXRhLnNob3dMaW5rVG9NeURlbWFuZGVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaXNCb29sZWFuRGVmaW5lZChyb3V0ZURhdGEuZGVtYW5kZUlzQ2xvc2VkT25UcmFuc21pdCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZW1hbmRlSXNDbG9zZWRPblRyYW5zbWl0ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlRGF0YS5kZW1hbmRlSXNDbG9zZWRPblRyYW5zbWl0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaXNCb29sZWFuRGVmaW5lZChyb3V0ZURhdGEuaGlkZVJlZmVyZW5jZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oaWRlUmVmZXJlbmNlID0gcm91dGVEYXRhLmhpZGVSZWZlcmVuY2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuZG93bmxvYWRQZGZSZWNhcEJ1dHRvblRleHQgPVxuICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuZG93bmxvYWRQZGZSZWNhcEJ1dHRvblRleHQgfHxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kb3dubG9hZFBkZlJlY2FwQnV0dG9uVGV4dCB8fFxuICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWNvbmZpcm1hdGlvbi5kb3dubG9hZC1wZGYtcmVjYXAtYnV0dG9uJztcbiAgICAgICAgICAgICAgICB0aGlzLmJhc2VVcmxQZGYgPSByb3V0ZURhdGEuYmFzZVVybFBkZiB8fCB0aGlzLmJhc2VVcmxQZGY7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZUJ1dHRvblRleHQgPVxuICAgICAgICAgICAgICAgICAgICByb3V0ZURhdGEuY2xvc2VCdXR0b25UZXh0IHx8XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2xvc2VCdXR0b25UZXh0IHx8XG4gICAgICAgICAgICAgICAgICAgICdnZXNkZW0tY29uZmlybWF0aW9uLmV4aXQtYnV0dG9uJztcblxuICAgICAgICAgICAgICAgIC8vIGRlZmF1bHQgY2xvc2VMaW5rIGlmIG5vdCBieSBASW5wdXQgYW5kIG5vdCBieSByb3V0ZSBkYXRhXG4gICAgICAgICAgICAgICAgdGhpcy5mb2VoblBhZ2VTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5vbkV0YXBlSWRDaGFuZ2UoKVxuICAgICAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy9uby1uZXN0ZWQtc3Vic2NyaWJlXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoZXRhcGVJZCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY2xvc2VMaW5rLmdldFZhbHVlKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlTGluay5uZXh0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgaHR0cHM6Ly93d3cudmQuY2gvZ28udG8/cHJlc3RhdGlvbj0ke2V0YXBlSWR9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpc1RyYW5zZmVycmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5hY3Rpb25TdGF0dXQgJiYgdGhpcy5hY3Rpb25TdGF0dXQgPT09IEFjdGlvblN0YXR1dC5UUkFOU0ZFUlJFRFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpc0FiYW5kb25lZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uU3RhdHV0ICYmIHRoaXMuYWN0aW9uU3RhdHV0ID09PSBBY3Rpb25TdGF0dXQuQUJBTkRPTkVEXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGlzSW5Qcm9ncmVzcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICFHZXNkZW1TdGF0dXRVdGlscy5pc0ZpbmFsKHRoaXMuYWN0aW9uU3RhdHV0KTtcbiAgICB9XG5cbiAgICBnZXQgc3VjY2Vzc0xhYmVsRGljb0tleSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBpc0ZpcnN0QWN0aW9uID1cbiAgICAgICAgICAgIHRoaXMuZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2U/Lm1ldGE/LmN1cnJlbnRBY3Rpb24gPT09IDE7XG4gICAgICAgIHJldHVybiBpc0ZpcnN0QWN0aW9uXG4gICAgICAgICAgICA/ICdnZXNkZW0tY29uZmlybWF0aW9uLnN1Y2Nlc3MtbGFiZWwnXG4gICAgICAgICAgICA6ICdnZXNkZW0tY29uZmlybWF0aW9uLm5leHQtc3RlcC5zdWNjZXNzLWxhYmVsJztcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNoYW5nZTogU2ltcGxlQ2hhbmdlID0gY2hhbmdlcy5jbG9zZUhyZWY7XG4gICAgICAgIGlmIChjaGFuZ2UgJiYgY2hhbmdlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZUxpbmsubmV4dChjaGFuZ2UuY3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBsYXN0UmVzcG9uc2UgPSB0aGlzLmdlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlO1xuICAgICAgICBpZiAobGFzdFJlc3BvbnNlKSB7XG4gICAgICAgICAgICB0aGlzLnJlZmVyZW5jZSA9IGxhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZTtcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uU3RhdHV0ID1cbiAgICAgICAgICAgICAgICBBY3Rpb25TdGF0dXRbbGFzdFJlc3BvbnNlLm1ldGEuc3RhdHV0IGFzIEFjdGlvblN0YXR1dF07XG4gICAgICAgICAgICB0aGlzLnVybFBkZiA9IHRoaXMuYmFzZVVybFBkZiArIHRoaXMucmVmZXJlbmNlO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEFjdGlvbiA9IGxhc3RSZXNwb25zZS5tZXRhLmN1cnJlbnRBY3Rpb247XG4gICAgICAgICAgICBpZiAoISFjdXJyZW50QWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cmxQZGYgKz0gYC0ke2N1cnJlbnRBY3Rpb259YDtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5sb2NhdGlvbi5wYXRoKCkuaW5jbHVkZXMoYC8ke3RoaXMucmVmZXJlbmNlfS9gKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmdWxsUmVmZXJlbmNlVXJsID0gdGhpcy5sb2NhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgLnBhdGgoKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5yZWZlcmVuY2V9LSR7Y3VycmVudEFjdGlvbn1gXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvY2F0aW9uLnJlcGxhY2VTdGF0ZShmdWxsUmVmZXJlbmNlVXJsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGxhbmd1YWdlQ29kZSA9IGxhc3RSZXNwb25zZS5mb3JtLmxhbmd1YWdlO1xuICAgICAgICAgICAgdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5jaGFuZ2VMYW5ndWFnZShsYW5ndWFnZUNvZGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gV2hldGhlciB0aGUgdXNlciBoYXMgYSBjb250ZXh0IHdlIGNvbnNpZGVyIGl0IGFzIGNvbm5lY3RlZC5cbiAgICAgICAgdGhpcy5pc0Nvbm5lY3RlZEN5YmVyID0gdGhpcy5fc2Vzc2lvbkluZm8uZGF0YS5waXBlKFxuICAgICAgICAgICAgbWFwKHVzZXJJbmZvID0+ICEhdXNlckluZm8gJiYgISF1c2VySW5mby5jb250ZXh0KVxuICAgICAgICApO1xuXG4gICAgICAgIGlmICh0aGlzLnNldFBhZ2VUaXRsZSkge1xuICAgICAgICAgICAgdGhpcy5wYWdlVGl0bGVTdWJzY3JpcHRpb24gPSB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLmdldEtleSgnZ2VzZGVtLWNvbmZpcm1hdGlvbi50aXRsZScpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSh0aXRsZSA9PiB0aGlzLl9mb2VoblBhZ2VTZXJ2aWNlLnNldFBhZ2VUaXRsZSh0aXRsZSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5maXJzdFBhZ2VMaW5rID0gdGhpcy5nZXRGaXJzdFBhZ2VMaW5rKCk7XG5cbiAgICAgICAgdGhpcy5fYnJlYWRjcnVtYkV2ZW50U2VydmljZS5za2lwTGVhdmluZ0FsZXJ0QmVjYXVzZURlbWFuZElzVHJhbnNtaXR0ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kYXRhU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5wYWdlVGl0bGVTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYXNDb25uZWN0ZWRDb250ZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBoYXNDb25mTWVzc2FnZSA9XG4gICAgICAgICAgICB0aGlzLmlzVHJhbnNmZXJyZWQgJiYgISF0aGlzLmNvbm5lY3RlZENvbmZpcm1hdGlvbk1lc3NhZ2U7XG4gICAgICAgIGNvbnN0IGhhc0FiYW5kb25lZENvbmZNZXNzYWdlID1cbiAgICAgICAgICAgICF0aGlzLmlzVHJhbnNmZXJyZWQgJiZcbiAgICAgICAgICAgICEhdGhpcy5jb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlSWZBYmFuZG9uZWQ7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIGhhc0NvbmZNZXNzYWdlIHx8XG4gICAgICAgICAgICBoYXNBYmFuZG9uZWRDb25mTWVzc2FnZSB8fFxuICAgICAgICAgICAgISF0aGlzLnNob3dMaW5rVG9NeURlbWFuZGVzXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaXJzdFBhZ2VMaW5rKCk6IHN0cmluZyB7XG4gICAgICAgIGxldCBsaW5rID0gJy8nO1xuICAgICAgICBjb25zdCBmaXJzdFBhZ2UgPSB0aGlzLl9uYXZpZ2F0aW9uLmdldEZpcnN0Um91dGUoKTtcbiAgICAgICAgaWYgKHRoaXMuZ2VzZGVtU2VydmljZS5wcmVmaXgpIHtcbiAgICAgICAgICAgIGxpbmsgKz0gYCR7dGhpcy5nZXNkZW1TZXJ2aWNlLnByZWZpeH0vYDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBgJHtsaW5rICsgdGhpcy5yZWZlcmVuY2V9LyR7Zmlyc3RQYWdlLnBhdGh9YDtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyIG10LTVcIiAqbmdJZj1cInJlZmVyZW5jZSAmJiAhaXNJblByb2dyZXNzXCI+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImFsZXJ0IHRleHQtY2VudGVyIG1iLTJcIlxuICAgICAgICBbbmdDbGFzc109XCJpc1RyYW5zZmVycmVkID8gJ2FsZXJ0LXN1Y2Nlc3MnIDogJ2FsZXJ0LWRhbmdlcidcIlxuICAgID5cbiAgICAgICAgPHAgY2xhc3M9XCJoMlwiPlxuICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICBpc1RyYW5zZmVycmVkXG4gICAgICAgICAgICAgICAgICAgID8gKHN1Y2Nlc3NMYWJlbERpY29LZXkgfCBmcm9tRGljdGlvbmFyeSlcbiAgICAgICAgICAgICAgICAgICAgOiAoJ2dlc2RlbS1jb25maXJtYXRpb24uYWJvcnQtbGFiZWwnIHwgZnJvbURpY3Rpb25hcnkpXG4gICAgICAgICAgICB9fVxuICAgICAgICA8L3A+XG4gICAgICAgIDxkbCAqbmdJZj1cIiFoaWRlUmVmZXJlbmNlXCI+XG4gICAgICAgICAgICA8ZHQgY2xhc3M9XCJmb250LXdlaWdodC1saWdodFwiPlxuICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgICdnZXNkZW0tY29uZmlybWF0aW9uLnJlZmVyZW5jZS10aXRsZS5sYWJlbCcgfCBmcm9tRGljdGlvbmFyeVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA8L2R0PlxuICAgICAgICAgICAgPGRkIGlkPVwibnVtRGVtYW5kZVwiIGNsYXNzPVwiaDQgZC1ibG9jayBtdC0zXCI+e3sgcmVmZXJlbmNlIH19PC9kZD5cbiAgICAgICAgPC9kbD5cbiAgICAgICAgPHAgKm5nSWY9XCJoYXNFbWFpbFNlbnQgJiYgIShpc0Nvbm5lY3RlZEN5YmVyIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICB7eyAnZ2VzZGVtLWNvbmZpcm1hdGlvbi5tYWlsLXNlbnQubGFiZWwnIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgPC9wPlxuICAgIDwvZGl2PlxuXG4gICAgPHNwYW5cbiAgICAgICAgW2lubmVySFRNTF09XCInZ2VzZGVtLWNvbmZpcm1hdGlvbi5leHRyYS1jb250ZW50JyB8IGZyb21EaWN0aW9uYXJ5XCJcbiAgICA+PC9zcGFuPlxuXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImNvbC1tZC0xMiB2ZC1oaWdobGlnaHRcIlxuICAgICAgICAqbmdJZj1cIihpc0Nvbm5lY3RlZEN5YmVyIHwgYXN5bmMpICYmIGhhc0Nvbm5lY3RlZENvbnRlbnQoKVwiXG4gICAgPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5cbiAgICAgICAgICAgIEluZm9ybWF0aW9uIHN1aXRlIMOgIGxhIHRyYW5zbWlzc2lvbiBkZSB2b3RyZSBkZW1hbmRlXG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xXCI+XG4gICAgICAgICAgICAgICAgPGZvZWhuLWljb24taW5mby1jaXJjbGUgY2xhc3M9XCJoM1wiPjwvZm9laG4taWNvbi1pbmZvLWNpcmNsZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMVwiPlxuICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBpc1RyYW5zZmVycmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBjb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBjb25uZWN0ZWRDb25maXJtYXRpb25NZXNzYWdlSWZBYmFuZG9uZWRcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+PC9wPlxuICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgIGlkPVwibGlua1RvVHJlYXRlZERlbWFuZGVzXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNob3dMaW5rVG9NeURlbWFuZGVzICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAoZGVtYW5kZUlzQ2xvc2VkT25UcmFuc21pdCB8fCBpc0FiYW5kb25lZClcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIFZvdXMgcG91dmV6IGNvbnN1bHRlciB2b3RyZSBkZW1hbmRlIGVuIGNsaXF1YW50IHN1ciA6XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIvMTAwMDAyL2RlbWFuZGVzL3NlYXJjaC9NSU5FL1RSRUFURURcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIE1lcyBub3V2ZWxsZXMgZGVtYW5kZXMgdHJhaXTDqWVzXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cFxuICAgICAgICAgICAgICAgICAgICBpZD1cImxpbmtUb0luUHJvZ3Jlc3NEZW1hbmRlc1wiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzaG93TGlua1RvTXlEZW1hbmRlcyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIWRlbWFuZGVJc0Nsb3NlZE9uVHJhbnNtaXQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFpc0FiYW5kb25lZFxuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgVm91cyBwb3V2ZXogc3VpdnJlIGwnYXZhbmNlbWVudCBkdSB0cmFpdGVtZW50IGRlIHZvdHJlXG4gICAgICAgICAgICAgICAgICAgIGRlbWFuZGUgZW4gY2xpcXVhbnQgc3VyIDpcbiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cIi8xMDAwMDIvZGVtYW5kZXMvc2VhcmNoL01JTkUvSU5fUFJPR1JFU1NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIE1lcyBkZW1hbmRlcyBlbiBjb3VycyBkZSB0cmFpdGVtZW50XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbGlzdC11bnN0eWxlZCBkLW1kLWZsZXggcC0wIG10LTRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTAgbXItbWQtYXV0byBtci1tZC0yIG1iLTIgbXQtMlwiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cInNob3dEb3dubG9hZFBkZlJlY2FwQnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbaHJlZl09XCJ1cmxQZGZcIlxuICAgICAgICAgICAgICAgIGlkPVwidGVsZWNoYXJnZXJCdG5cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgdy0xMDBcIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwiVMOpbMOpY2hhcmdlciBsZSBQREZcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGRvd25sb2FkUGRmUmVjYXBCdXR0b25UZXh0IHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJtci0wIG1sLW1kLWF1dG8gbWItMiBtdC0yXCJcbiAgICAgICAgICAgICpuZ0lmPVwiIShpc0Nvbm5lY3RlZEN5YmVyIHwgYXN5bmMpICYmIGNsb3NlTGluayB8IGFzeW5jIGFzIGxpbmtcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8YSBbaHJlZl09XCJsaW5rXCIgaWQ9XCJ0ZXJtaW5lckJ0blwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHctMTAwXCI+XG4gICAgICAgICAgICAgICAge3sgY2xvc2VCdXR0b25UZXh0IHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJtci0wIG1sLW1kLWF1dG8gbWItMiBtdC0yXCJcbiAgICAgICAgICAgICpuZ0lmPVwiISEoaXNDb25uZWN0ZWRDeWJlciB8IGFzeW5jKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgaHJlZj1cIi8xMDAwMTgvbG9nb3V0XCJcbiAgICAgICAgICAgICAgICBpZD1cImxvZ291dEJ0blwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgdy0xMDBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7ICdnZXNkZW0tY29uZmlybWF0aW9uLmxvZ291dC1idXR0b24nIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImNvbnRhaW5lciBtdC01XCIgKm5nSWY9XCIhaGlkZVJlZmVyZW5jZSAmJiByZWZlcmVuY2UgJiYgaXNJblByb2dyZXNzXCI+XG4gICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm8gdGV4dC1jZW50ZXIgbWItMlwiPlxuICAgICAgICA8cCBjbGFzcz1cImgyXCI+RGVtYW5kZSBlbiBjb3VyczwvcD5cbiAgICAgICAgPGRsPlxuICAgICAgICAgICAgPGR0IGNsYXNzPVwiZm9udC13ZWlnaHQtbGlnaHRcIj5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWNvbmZpcm1hdGlvbi5yZWZlcmVuY2UtdGl0bGUubGFiZWwnIHwgZnJvbURpY3Rpb25hcnlcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPC9kdD5cbiAgICAgICAgICAgIDxkZCBpZD1cIm51bURlbWFuZGVFbkNvdXJzXCIgY2xhc3M9XCJoNCBkLWJsb2NrIG10LTNcIj5cbiAgICAgICAgICAgICAgICB7eyByZWZlcmVuY2UgfX1cbiAgICAgICAgICAgIDwvZGQ+XG4gICAgICAgIDwvZGw+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIHZkLWhpZ2hsaWdodFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTFcIj5cbiAgICAgICAgICAgICAgICA8Zm9laG4taWNvbi1pbmZvLWNpcmNsZSBjbGFzcz1cImgzXCI+PC9mb2Vobi1pY29uLWluZm8tY2lyY2xlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTExXCI+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIFZvdXMgcG91dmV6IHJlcHJlbmRyZSB2b3RyZSBkZW1hbmRlIGVuIGNsaXF1YW50IHN1ciBsZSBsaWVuXG4gICAgICAgICAgICAgICAgICAgIGNpLWRlc3NvdXNcbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cImZpcnN0UGFnZUxpbmtcIj5SZXByZW5kcmUgbWEgZGVtYW5kZTwvYT5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, combineLatest, merge } from 'rxjs';
|
|
3
|
-
import { filter, map, shareReplay, switchMap, throttleTime } from 'rxjs/operators';
|
|
2
|
+
import { BehaviorSubject, combineLatest, merge, of } from 'rxjs';
|
|
3
|
+
import { catchError, filter, map, shareReplay, switchMap, throttleTime } from 'rxjs/operators';
|
|
4
4
|
import { NavigationStart } from '@angular/router';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/common/http";
|
|
@@ -50,7 +50,10 @@ export class SupportAlertService {
|
|
|
50
50
|
// Only if an url is defined
|
|
51
51
|
filter(([url]) => !!url),
|
|
52
52
|
// Load the alerts from the server.
|
|
53
|
-
switchMap(([url]) => this.http.get(url))
|
|
53
|
+
switchMap(([url]) => this.http.get(url).pipe(catchError((e) => {
|
|
54
|
+
console.error('Unable to get support alerts, returning an empty array', e);
|
|
55
|
+
return of([]);
|
|
56
|
+
}))), map(supportAlerts => (!!supportAlerts ? supportAlerts : [])),
|
|
54
57
|
// Ensures that observables that depend on this one don't re-trigger an http call.
|
|
55
58
|
shareReplay(1));
|
|
56
59
|
this.hasAlerts = this.allAlerts.pipe(map(alerts => !!alerts.length));
|
|
@@ -111,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
111
114
|
providedIn: 'root'
|
|
112
115
|
}]
|
|
113
116
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.Router }]; } });
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC1hbGVydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL3Nkay1zdXBwb3J0LWFsZXJ0L3N1cHBvcnQtYWxlcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFDSCxlQUFlLEVBQ2YsYUFBYSxFQUNiLEtBQUssRUFHUixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFDSCxNQUFNLEVBQ04sR0FBRyxFQUNILFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxFQUNmLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGVBQWUsRUFBVSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBRTFELDhCQUE4QjtBQUM5QixNQUFNLFdBQVcsR0FBRyxlQUFlLENBQUM7QUFFcEM7O0dBRUc7QUFDSCxNQUFNLHdCQUF3QixHQUFHLENBQUMsR0FBYSxFQUFRLEVBQUU7SUFDckQsSUFBSTtRQUNBLFlBQVksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztLQUMxRDtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1IsMkNBQTJDO0tBQzlDO0FBQ0wsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLDZCQUE2QixHQUFHLEdBQWEsRUFBRTtJQUNqRCxJQUFJO1FBQ0EsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2YsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztLQUNuQztJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1IsK0RBQStEO1FB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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3VwcG9ydEFsZXJ0IH0gZnJvbSAnLi9zdXBwb3J0LWFsZXJ0Lm1vZGVsJztcbmltcG9ydCB7XG4gICAgQmVoYXZpb3JTdWJqZWN0LFxuICAgIGNvbWJpbmVMYXRlc3QsXG4gICAgbWVyZ2UsXG4gICAgT2JzZXJ2YWJsZSxcbiAgICBTdWJzY3JpcHRpb25cbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgICBmaWx0ZXIsXG4gICAgbWFwLFxuICAgIHNoYXJlUmVwbGF5LFxuICAgIHN3aXRjaE1hcCxcbiAgICB0aHJvdHRsZVRpbWVcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG4vLyBTaGFyZWQgYmV0d2VlbiBwcmVzdGF0aW9ucy5cbmNvbnN0IFNUT1JBR0VfS0VZID0gJ2hpZGRlbi1hbGVydHMnO1xuXG4vKipcbiAqIEBwYXJhbSBpZHMgYWxlcnQgaWRzIHRvIGJlIGRpc21pc3NlZFxuICovXG5jb25zdCBwZXJzaXN0RGlzbWlzc2VkQWxlcnRJZHMgPSAoaWRzOiBudW1iZXJbXSk6IHZvaWQgPT4ge1xuICAgIHRyeSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFNUT1JBR0VfS0VZLCBKU09OLnN0cmluZ2lmeShpZHMpKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIE5vdGhpbmcgaW4gY2FzZSB0aGUgbG9jYWwgc3RvcmFnZSBmYWlscy5cbiAgICB9XG59O1xuXG4vKipcbiAqIEByZXR1cm5zIGFycmF5XG4gKi9cbmNvbnN0IGdldFBlcnNpc3RlZERpc21pc3NlZEFsZXJ0SWRzID0gKCk6IG51bWJlcltdID0+IHtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBzdG9yYWdlVmFsdWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShTVE9SQUdFX0tFWSk7XG4gICAgICAgIGlmICghc3RvcmFnZVZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShzdG9yYWdlVmFsdWUpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgLy8gSW4gY2FzZSB0aGUgc3RvcmFnZSBmYWlscywgd2UgZG9uJ3Qgd2FudCB0byBpbXBhY3QgdGhlIHVzZXIuXG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFN1cHBvcnRBbGVydFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxsQWxlcnRzOiBPYnNlcnZhYmxlPFN1cHBvcnRBbGVydFtdPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpc3BsYXlhYmxlQWxlcnRzOiBPYnNlcnZhYmxlPFN1cHBvcnRBbGVydFtdPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc0FsZXJ0czogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc0hpZGRlbkFsZXJ0czogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc0F0TGVhc3RPbmVCbG9ja2luZ0FsZXJ0OiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGlkZGVuQWxlcnRJZHMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcltdPihcbiAgICAgICAgZ2V0UGVyc2lzdGVkRGlzbWlzc2VkQWxlcnRJZHMoKVxuICAgICk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBoaWRkZW5BbGVydElkc1N1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZnJlc2hUcmlnZ2VyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcblxuICAgIHByaXZhdGUgc3VwcG9ydEFsZXJ0VXJsID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge1xuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uVHJpZ2dlciA9IHRoaXMucm91dGVyLmV2ZW50cy5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydClcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCByZWZyZXNoQWxlcnRzVHJpZ2dlckFuZE5hdmlnYXRpb24gPSBtZXJnZShcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFRyaWdnZXIsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uVHJpZ2dlclxuICAgICAgICApLnBpcGUodGhyb3R0bGVUaW1lKDMgKiA2MCAqIDEwMDApKTtcblxuICAgICAgICB0aGlzLmFsbEFsZXJ0cyA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgdGhpcy5zdXBwb3J0QWxlcnRVcmwsXG4gICAgICAgICAgICByZWZyZXNoQWxlcnRzVHJpZ2dlckFuZE5hdmlnYXRpb25cbiAgICAgICAgXSkucGlwZShcbiAgICAgICAgICAgIC8vIE9ubHkgaWYgYW4gdXJsIGlzIGRlZmluZWRcbiAgICAgICAgICAgIGZpbHRlcigoW3VybF0pID0+ICEhdXJsKSxcbiAgICAgICAgICAgIC8vIExvYWQgdGhlIGFsZXJ0cyBmcm9tIHRoZSBzZXJ2ZXIuXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKFt1cmxdKSA9PiB0aGlzLmh0dHAuZ2V0PFN1cHBvcnRBbGVydFtdPih1cmwpKSxcbiAgICAgICAgICAgIG1hcChzdXBwb3J0QWxlcnRzID0+ICghIXN1cHBvcnRBbGVydHMgPyBzdXBwb3J0QWxlcnRzIDogW10pKSxcbiAgICAgICAgICAgIC8vIEVuc3VyZXMgdGhhdCBvYnNlcnZhYmxlcyB0aGF0IGRlcGVuZCBvbiB0aGlzIG9uZSBkb24ndCByZS10cmlnZ2VyIGFuIGh0dHAgY2FsbC5cbiAgICAgICAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5oYXNBbGVydHMgPSB0aGlzLmFsbEFsZXJ0cy5waXBlKG1hcChhbGVydHMgPT4gISFhbGVydHMubGVuZ3RoKSk7XG5cbiAgICAgICAgdGhpcy5oYXNBdExlYXN0T25lQmxvY2tpbmdBbGVydCA9IHRoaXMuYWxsQWxlcnRzLnBpcGUoXG4gICAgICAgICAgICBtYXAoYWxlcnRzID0+IGFsZXJ0cy5zb21lKGFsZXJ0ID0+IGFsZXJ0LmJsb2NraW5nKSlcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmRpc3BsYXlhYmxlQWxlcnRzID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICB0aGlzLmFsbEFsZXJ0cyxcbiAgICAgICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHNcbiAgICAgICAgXSkucGlwZShcbiAgICAgICAgICAgIC8vIEZpbHRlciB0aGUgYWxlcnRzIHRoYXQgYXJlIGhpZGRlbiBieSB0aGUgdXNlciwgcGVyIElkLlxuICAgICAgICAgICAgbWFwKChbYWxlcnRzLCBoaWRkZW5BbGVydHNJZF0pID0+XG4gICAgICAgICAgICAgICAgLy8gQWx3YXlzIGRpc3BsYXkgdGhlIGJsb2NraW5nIGFsZXJ0cywgaW4gY2FzZSB0aGUgYWxlcnQgaXMgaGlkZGVuIGJ1dCBlZGl0ZWQuXG4gICAgICAgICAgICAgICAgYWxlcnRzLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgYWxlcnQgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIGFsZXJ0LmJsb2NraW5nIHx8ICFoaWRkZW5BbGVydHNJZC5pbmNsdWRlcyhhbGVydC5pZClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5oYXNIaWRkZW5BbGVydHMgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMuYWxsQWxlcnRzLFxuICAgICAgICAgICAgdGhpcy5kaXNwbGF5YWJsZUFsZXJ0c1xuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgbWFwKFxuICAgICAgICAgICAgICAgIChbYWxsQWxlcnRzLCBkaXNwbGF5YWJsZUFsZXJ0c10pID0+XG4gICAgICAgICAgICAgICAgICAgIGFsbEFsZXJ0cy5sZW5ndGggIT09IGRpc3BsYXlhYmxlQWxlcnRzLmxlbmd0aFxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuXG4gICAgICAgIC8vIFBlcnNpc3QgdGhlIGlkcyB0aGF0IGFyZSBkaXNtaXNzZWQuXG4gICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHNTdWJzY3JpcHRpb25zID0gdGhpcy5oaWRkZW5BbGVydElkcy5zdWJzY3JpYmUoXG4gICAgICAgICAgICBwZXJzaXN0RGlzbWlzc2VkQWxlcnRJZHNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oaWRkZW5BbGVydElkc1N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBzZXRTdXBwb3J0QWxlcnRVcmwoc3VwcG9ydEFsZXJ0VXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdXBwb3J0QWxlcnRVcmwubmV4dChzdXBwb3J0QWxlcnRVcmwpO1xuICAgIH1cblxuICAgIGhpZGVBbGVydChhbGVydDogU3VwcG9ydEFsZXJ0KTogdm9pZCB7XG4gICAgICAgIGlmICghYWxlcnQuYmxvY2tpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHMubmV4dChbXG4gICAgICAgICAgICAgICAgYWxlcnQuaWQsXG4gICAgICAgICAgICAgICAgLi4udGhpcy5oaWRkZW5BbGVydElkcy5nZXRWYWx1ZSgpXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlc3RvcmVBbGxBbGVydHMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHMubmV4dChbXSk7XG4gICAgfVxuXG4gICAgcmVmcmVzaEFsZXJ0cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoVHJpZ2dlci5uZXh0KHRydWUpO1xuICAgIH1cblxuICAgIGdldERpc3BsYXlhYmxlQWxlcnRzKCk6IE9ic2VydmFibGU8U3VwcG9ydEFsZXJ0W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheWFibGVBbGVydHM7XG4gICAgfVxuXG4gICAgZ2V0SGFzQWxlcnRzKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNBbGVydHM7XG4gICAgfVxuXG4gICAgZ2V0SGFzSGlkZGVuQWxlcnRzKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNIaWRkZW5BbGVydHM7XG4gICAgfVxuXG4gICAgZ2V0SGFzQXRMZWFzdE9uZUJsb2NraW5nQWxlcnQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0F0TGVhc3RPbmVCbG9ja2luZ0FsZXJ0O1xuICAgIH1cbn1cbiJdfQ==
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC1hbGVydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL3Nkay1zdXBwb3J0LWFsZXJ0L3N1cHBvcnQtYWxlcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFDSCxlQUFlLEVBQ2YsYUFBYSxFQUNiLEtBQUssRUFFTCxFQUFFLEVBRUwsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0gsVUFBVSxFQUNWLE1BQU0sRUFDTixHQUFHLEVBQ0gsV0FBVyxFQUNYLFNBQVMsRUFDVCxZQUFZLEVBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsZUFBZSxFQUFVLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFFMUQsOEJBQThCO0FBQzlCLE1BQU0sV0FBVyxHQUFHLGVBQWUsQ0FBQztBQUVwQzs7R0FFRztBQUNILE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxHQUFhLEVBQVEsRUFBRTtJQUNyRCxJQUFJO1FBQ0EsWUFBWSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQzFEO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDUiwyQ0FBMkM7S0FDOUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sNkJBQTZCLEdBQUcsR0FBYSxFQUFFO0lBQ2pELElBQUk7UUFDQSxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDZixPQUFPLEVBQUUsQ0FBQztTQUNiO1FBRUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQ25DO0lBQUMsT0FBTyxDQUFD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LENBQUM7SUFDaEMsQ0FBQztJQUVELDZCQUE2QjtRQUN6QixPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQztJQUMzQyxDQUFDOztpSEExSFEsbUJBQW1CO3FIQUFuQixtQkFBbUIsY0FGaEIsTUFBTTs0RkFFVCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdXBwb3J0QWxlcnQgfSBmcm9tICcuL3N1cHBvcnQtYWxlcnQubW9kZWwnO1xuaW1wb3J0IHtcbiAgICBCZWhhdmlvclN1YmplY3QsXG4gICAgY29tYmluZUxhdGVzdCxcbiAgICBtZXJnZSxcbiAgICBPYnNlcnZhYmxlLFxuICAgIG9mLFxuICAgIFN1YnNjcmlwdGlvblxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge1xuICAgIGNhdGNoRXJyb3IsXG4gICAgZmlsdGVyLFxuICAgIG1hcCxcbiAgICBzaGFyZVJlcGxheSxcbiAgICBzd2l0Y2hNYXAsXG4gICAgdGhyb3R0bGVUaW1lXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE5hdmlnYXRpb25TdGFydCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuLy8gU2hhcmVkIGJldHdlZW4gcHJlc3RhdGlvbnMuXG5jb25zdCBTVE9SQUdFX0tFWSA9ICdoaWRkZW4tYWxlcnRzJztcblxuLyoqXG4gKiBAcGFyYW0gaWRzIGFsZXJ0IGlkcyB0byBiZSBkaXNtaXNzZWRcbiAqL1xuY29uc3QgcGVyc2lzdERpc21pc3NlZEFsZXJ0SWRzID0gKGlkczogbnVtYmVyW10pOiB2b2lkID0+IHtcbiAgICB0cnkge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShTVE9SQUdFX0tFWSwgSlNPTi5zdHJpbmdpZnkoaWRzKSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAvLyBOb3RoaW5nIGluIGNhc2UgdGhlIGxvY2FsIHN0b3JhZ2UgZmFpbHMuXG4gICAgfVxufTtcblxuLyoqXG4gKiBAcmV0dXJucyBhcnJheVxuICovXG5jb25zdCBnZXRQZXJzaXN0ZWREaXNtaXNzZWRBbGVydElkcyA9ICgpOiBudW1iZXJbXSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3Qgc3RvcmFnZVZhbHVlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oU1RPUkFHRV9LRVkpO1xuICAgICAgICBpZiAoIXN0b3JhZ2VWYWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RvcmFnZVZhbHVlKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIEluIGNhc2UgdGhlIHN0b3JhZ2UgZmFpbHMsIHdlIGRvbid0IHdhbnQgdG8gaW1wYWN0IHRoZSB1c2VyLlxuICAgICAgICByZXR1cm4gW107XG4gICAgfVxufTtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTdXBwb3J0QWxlcnRTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsbEFsZXJ0czogT2JzZXJ2YWJsZTxTdXBwb3J0QWxlcnRbXT47XG4gICAgcHJpdmF0ZSByZWFkb25seSBkaXNwbGF5YWJsZUFsZXJ0czogT2JzZXJ2YWJsZTxTdXBwb3J0QWxlcnRbXT47XG4gICAgcHJpdmF0ZSByZWFkb25seSBoYXNBbGVydHM6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgcHJpdmF0ZSByZWFkb25seSBoYXNIaWRkZW5BbGVydHM6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgcHJpdmF0ZSByZWFkb25seSBoYXNBdExlYXN0T25lQmxvY2tpbmdBbGVydDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhpZGRlbkFsZXJ0SWRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXJbXT4oXG4gICAgICAgIGdldFBlcnNpc3RlZERpc21pc3NlZEFsZXJ0SWRzKClcbiAgICApO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGlkZGVuQWxlcnRJZHNTdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb247XG4gICAgcHJpdmF0ZSByZWFkb25seSByZWZyZXNoVHJpZ2dlciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG5cbiAgICBwcml2YXRlIHN1cHBvcnRBbGVydFVybCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICAgICAgY29uc3QgbmF2aWdhdGlvblRyaWdnZXIgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICAgICAgICAgIGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgcmVmcmVzaEFsZXJ0c1RyaWdnZXJBbmROYXZpZ2F0aW9uID0gbWVyZ2UoXG4gICAgICAgICAgICB0aGlzLnJlZnJlc2hUcmlnZ2VyLFxuICAgICAgICAgICAgbmF2aWdhdGlvblRyaWdnZXJcbiAgICAgICAgKS5waXBlKHRocm90dGxlVGltZSgzICogNjAgKiAxMDAwKSk7XG5cbiAgICAgICAgdGhpcy5hbGxBbGVydHMgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMuc3VwcG9ydEFsZXJ0VXJsLFxuICAgICAgICAgICAgcmVmcmVzaEFsZXJ0c1RyaWdnZXJBbmROYXZpZ2F0aW9uXG4gICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgICAvLyBPbmx5IGlmIGFuIHVybCBpcyBkZWZpbmVkXG4gICAgICAgICAgICBmaWx0ZXIoKFt1cmxdKSA9PiAhIXVybCksXG4gICAgICAgICAgICAvLyBMb2FkIHRoZSBhbGVydHMgZnJvbSB0aGUgc2VydmVyLlxuICAgICAgICAgICAgc3dpdGNoTWFwKChbdXJsXSkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmh0dHAuZ2V0PFN1cHBvcnRBbGVydFtdPih1cmwpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IHVua25vd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1VuYWJsZSB0byBnZXQgc3VwcG9ydCBhbGVydHMsIHJldHVybmluZyBhbiBlbXB0eSBhcnJheScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZihbXSk7XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG1hcChzdXBwb3J0QWxlcnRzID0+ICghIXN1cHBvcnRBbGVydHMgPyBzdXBwb3J0QWxlcnRzIDogW10pKSxcbiAgICAgICAgICAgIC8vIEVuc3VyZXMgdGhhdCBvYnNlcnZhYmxlcyB0aGF0IGRlcGVuZCBvbiB0aGlzIG9uZSBkb24ndCByZS10cmlnZ2VyIGFuIGh0dHAgY2FsbC5cbiAgICAgICAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5oYXNBbGVydHMgPSB0aGlzLmFsbEFsZXJ0cy5waXBlKG1hcChhbGVydHMgPT4gISFhbGVydHMubGVuZ3RoKSk7XG5cbiAgICAgICAgdGhpcy5oYXNBdExlYXN0T25lQmxvY2tpbmdBbGVydCA9IHRoaXMuYWxsQWxlcnRzLnBpcGUoXG4gICAgICAgICAgICBtYXAoYWxlcnRzID0+IGFsZXJ0cy5zb21lKGFsZXJ0ID0+IGFsZXJ0LmJsb2NraW5nKSlcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmRpc3BsYXlhYmxlQWxlcnRzID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICB0aGlzLmFsbEFsZXJ0cyxcbiAgICAgICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHNcbiAgICAgICAgXSkucGlwZShcbiAgICAgICAgICAgIC8vIEZpbHRlciB0aGUgYWxlcnRzIHRoYXQgYXJlIGhpZGRlbiBieSB0aGUgdXNlciwgcGVyIElkLlxuICAgICAgICAgICAgbWFwKChbYWxlcnRzLCBoaWRkZW5BbGVydHNJZF0pID0+XG4gICAgICAgICAgICAgICAgLy8gQWx3YXlzIGRpc3BsYXkgdGhlIGJsb2NraW5nIGFsZXJ0cywgaW4gY2FzZSB0aGUgYWxlcnQgaXMgaGlkZGVuIGJ1dCBlZGl0ZWQuXG4gICAgICAgICAgICAgICAgYWxlcnRzLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgYWxlcnQgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIGFsZXJ0LmJsb2NraW5nIHx8ICFoaWRkZW5BbGVydHNJZC5pbmNsdWRlcyhhbGVydC5pZClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5oYXNIaWRkZW5BbGVydHMgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMuYWxsQWxlcnRzLFxuICAgICAgICAgICAgdGhpcy5kaXNwbGF5YWJsZUFsZXJ0c1xuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgbWFwKFxuICAgICAgICAgICAgICAgIChbYWxsQWxlcnRzLCBkaXNwbGF5YWJsZUFsZXJ0c10pID0+XG4gICAgICAgICAgICAgICAgICAgIGFsbEFsZXJ0cy5sZW5ndGggIT09IGRpc3BsYXlhYmxlQWxlcnRzLmxlbmd0aFxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuXG4gICAgICAgIC8vIFBlcnNpc3QgdGhlIGlkcyB0aGF0IGFyZSBkaXNtaXNzZWQuXG4gICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHNTdWJzY3JpcHRpb25zID0gdGhpcy5oaWRkZW5BbGVydElkcy5zdWJzY3JpYmUoXG4gICAgICAgICAgICBwZXJzaXN0RGlzbWlzc2VkQWxlcnRJZHNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oaWRkZW5BbGVydElkc1N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBzZXRTdXBwb3J0QWxlcnRVcmwoc3VwcG9ydEFsZXJ0VXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdXBwb3J0QWxlcnRVcmwubmV4dChzdXBwb3J0QWxlcnRVcmwpO1xuICAgIH1cblxuICAgIGhpZGVBbGVydChhbGVydDogU3VwcG9ydEFsZXJ0KTogdm9pZCB7XG4gICAgICAgIGlmICghYWxlcnQuYmxvY2tpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHMubmV4dChbXG4gICAgICAgICAgICAgICAgYWxlcnQuaWQsXG4gICAgICAgICAgICAgICAgLi4udGhpcy5oaWRkZW5BbGVydElkcy5nZXRWYWx1ZSgpXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlc3RvcmVBbGxBbGVydHMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGlkZGVuQWxlcnRJZHMubmV4dChbXSk7XG4gICAgfVxuXG4gICAgcmVmcmVzaEFsZXJ0cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoVHJpZ2dlci5uZXh0KHRydWUpO1xuICAgIH1cblxuICAgIGdldERpc3BsYXlhYmxlQWxlcnRzKCk6IE9ic2VydmFibGU8U3VwcG9ydEFsZXJ0W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheWFibGVBbGVydHM7XG4gICAgfVxuXG4gICAgZ2V0SGFzQWxlcnRzKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNBbGVydHM7XG4gICAgfVxuXG4gICAgZ2V0SGFzSGlkZGVuQWxlcnRzKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNIaWRkZW5BbGVydHM7XG4gICAgfVxuXG4gICAgZ2V0SGFzQXRMZWFzdE9uZUJsb2NraW5nQWxlcnQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0F0TGVhc3RPbmVCbG9ja2luZ0FsZXJ0O1xuICAgIH1cbn1cbiJdfQ==
|