ngx-histaff-alpha 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -146,11 +146,13 @@ export class AppInitializationService {
|
|
|
146
146
|
let body1;
|
|
147
147
|
let body2;
|
|
148
148
|
let body3;
|
|
149
|
+
let body4;
|
|
149
150
|
this.subscriptions.push(this.ssoProcessing$.pipe(filter(x => !x)).subscribe(x => {
|
|
150
151
|
this.subscriptions.push(zip([
|
|
151
152
|
this.mls.readAllMini(),
|
|
152
153
|
this.routingService.readAllFunctionWithAllActions(),
|
|
153
154
|
this.routingService.getIgnorePaths(),
|
|
155
|
+
this.appService.get(api.PORTAL_ROUTE_READ_ALL_MINI)
|
|
154
156
|
]).pipe(catchError(val => of(`The app caught: ${val}`))).subscribe(responses => {
|
|
155
157
|
console.log("appInitialize() zip() done");
|
|
156
158
|
const x1 = responses[0];
|
|
@@ -237,4 +239,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
237
239
|
providedIn: 'root'
|
|
238
240
|
}]
|
|
239
241
|
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.MultiLanguageService }, { type: i3.LayoutService }, { type: i4.OrganizationService }, { type: i5.RoutingService }, { type: i6.AppConfigService }, { type: i7.AppService }] });
|
|
240
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWluaXRpYWxpemF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9zZXJ2aWNlcy9hcHAtaW5pdGlhbGl6YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF3QixNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFnQixNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFXbEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7QUFLN0MsTUFBTSxPQUFPLHdCQUF3QjtJQWFuQyxZQUNVLFdBQXdCLEVBQ3hCLEdBQXlCLEVBQ3pCLGFBQTRCLEVBQzVCLG1CQUF3QyxFQUN4QyxjQUE4QixFQUM5QixnQkFBa0MsRUFDbEMsVUFBc0I7UUFOdEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsUUFBRyxHQUFILEdBQUcsQ0FBc0I7UUFDekIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBbEJoQyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQ25ELG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDcEQsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBRW5DLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQUNwQyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUVoQyxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBbUIs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QUFBOzZCQUNMO3lCQUNGO29CQUVILENBQUMsQ0FBQyxDQUNILENBQUE7Z0JBR0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtZQUVILENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUM3RDtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUMsQ0FBQTtTQUNoRDtJQUVILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQTtJQUMvQyxDQUFDOzhHQTlTVSx3QkFBd0I7a0hBQXhCLHdCQUF3QixjQUZ2QixNQUFNOzsyRkFFUCx3QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCB6aXAsIGNhdGNoRXJyb3IsIG9mLCBTdWJzY3JpcHRpb24sIGZpbHRlciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4vYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuL211bHRpLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi9sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2FwcC1jb25maWcuc2VydmljZSc7XHJcbmltcG9ydCB7IElGb3JtYXRlZFJlc3BvbnNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9JRm9ybWF0ZWRSZXNwb25zZSc7XHJcbmltcG9ydCB7IElBdXRoRGF0YSB9IGZyb20gJy4uL2ludGVyZmFjZXMvSUF1dGhEYXRhJztcclxuaW1wb3J0IHsgUm91dGluZ1NlcnZpY2UgfSBmcm9tICcuL3JvdXRpbmcuc2VydmljZSc7XHJcbmltcG9ydCB7IE9yZ2FuaXphdGlvblNlcnZpY2UgfSBmcm9tICcuL29yZ2FuaXphdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUV2ZXJ5VHJlZVN0YXR1cyB9IGZyb20gJy4uL2xpYnJhcmllcy9zZXJ2aWNlcy9yZWN1cnNpdmUuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcFNlcnZpY2UgfSBmcm9tICcuL2FwcC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgYXBpIH0gZnJvbSAnYWxwaGEtZ2xvYmFsLWNvbnN0YW50cyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBJbml0aWFsaXphdGlvblNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gXHJcbiAgaW5pdGlhbGl6aW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgc3NvUHJvY2Vzc2luZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHByaW1hcnlJbml0aWFsaXplZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHN0b3JlU2Vzc2lvbk9rOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHBlbmRpbmdBdXRoRGF0YSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElBdXRoRGF0YSB8IG51bGw+KG51bGwpO1xyXG5cclxuICBzc29GYWlsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgbWxzOiBNdWx0aUxhbmd1YWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuICAgIHByaXZhdGUgb3JnYW5pemF0aW9uU2VydmljZTogT3JnYW5pemF0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGluZ1NlcnZpY2U6IFJvdXRpbmdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlXHJcbiAgKSB7XHJcblxyXG4gIH1cclxuXHJcblxyXG4gIGFwcEluaXRpYWxpemUoKTogdm9pZCB7XHJcblxyXG4gICAgY29uc3QgdG9DYW1lbCA9IChvOiBhbnkpOiBhbnkgPT4ge1xyXG4gICAgICB2YXIgbmV3Tywgb3JpZ0tleSwgbmV3S2V5LCB2YWx1ZVxyXG4gICAgICBpZiAobyBpbnN0YW5jZW9mIEFycmF5KSB7XHJcbiAgICAgICAgcmV0dXJuIG8ubWFwKGZ1bmN0aW9uICh2YWx1ZSkge1xyXG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICB2YWx1ZSA9IHRvQ2FtZWwodmFsdWUpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gdmFsdWVcclxuICAgICAgICB9KVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIG5ld08gPSB7fVxyXG4gICAgICAgIGZvciAob3JpZ0tleSBpbiBvKSB7XHJcbiAgICAgICAgICBpZiAoby5oYXNPd25Qcm9wZXJ0eShvcmlnS2V5KSkge1xyXG4gICAgICAgICAgICBuZXdLZXkgPSAob3JpZ0tleS5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKSArIG9yaWdLZXkuc2xpY2UoMSkgfHwgb3JpZ0tleSkudG9TdHJpbmcoKVxyXG4gICAgICAgICAgICB2YWx1ZSA9IG9bb3JpZ0tleV1cclxuICAgICAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkgfHwgKHZhbHVlICE9PSBudWxsICYmIHZhbHVlLmNvbnN0cnVjdG9yID09PSBPYmplY3QpKSB7XHJcbiAgICAgICAgICAgICAgdmFsdWUgPSB0b0NhbWVsKHZhbHVlKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIChuZXdPIGFzIGFueSlbbmV3S2V5XSA9IHZhbHVlXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBuZXdPXHJcbiAgICB9XHJcblxyXG4gICAgdHJ5IHtcclxuXHJcbiAgICAgIGZldGNoKCcuLi8uLi9hc3NldHMvYXBwLmNvbmZpZy5qc29uJykudGhlbihyZXMgPT4gcmVzLmpzb24oKSkudGhlbigoe1xyXG5cclxuICAgICAgICBBUFBfVFlQRSxcclxuICAgICAgICBCQVNFX1VSTCwgICAgIFxyXG4gICAgICAgIEdPTElWRV9VUkwsXHJcbiAgICAgICAgREVCVUdfRU5BQkxFRCxcclxuXHJcbiAgICAgICAgTE9HT19MT0dJTixcclxuICAgICAgICBMT0dPX0hFQURFUixcclxuICAgICAgICBIT01FX0JBQ0tHUk9VTkRfSU1BR0UsIFxyXG5cclxuICAgICAgICBPQVVUSDJPSURDX0VOQUJMRUQsXHJcbiAgICAgICAgT0FVVEgyT0lEQ19DTElFTlRfSUQsXHJcblxyXG4gICAgICAgIFNBTUwyQURGU19FTkFCTEVELCBcclxuICAgICAgICBTQU1MMkFERlNfSURQLCBcclxuICAgICAgICBTQU1MMkFERlNfSURFTlRJRklFUixcclxuICAgICAgICBTQU1MMkFERlNfV0FfU0lHTklOLFxyXG4gICAgICAgIFNBTUwyQURGU19XQV9TSUdOT1VULFxyXG4gICAgICAgIFNBTUwyQURGU19XUkVQTFksXHJcblxyXG4gICAgICAgIEhBTkdGSVJFX1BBVEgsXHJcbiAgICAgICAgU1RBVElDX0ZPTERFUixcclxuICAgICAgICBBVkFUQVJfRk9MREVSLFxyXG5cclxuICAgICAgfSkgPT4ge1xyXG5cclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQVBQX1RZUEUgPSBBUFBfVFlQRTtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQkFTRV9VUkwgPSBCQVNFX1VSTDtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuR09MSVZFX1VSTCA9IEdPTElWRV9VUkw7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkRFQlVHX0VOQUJMRUQgPSBERUJVR19FTkFCTEVEO1xyXG5cclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuTE9HT19MT0dJTiA9IExPR09fTE9HSU47XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkxPR09fSEVBREVSID0gTE9HT19IRUFERVI7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkhPTUVfQkFDS0dST1VORF9JTUFHRSA9IEhPTUVfQkFDS0dST1VORF9JTUFHRTtcclxuXHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLk9BVVRIMk9JRENfRU5BQkxFRCA9IE9BVVRIMk9JRENfRU5BQkxFRDtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuT0FVVEgyT0lEQ19DTElFTlRfSUQgPSBPQVVUSDJPSURDX0NMSUVOVF9JRDtcclxuXHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLlNBTUwyQURGU19FTkFCTEVEID0gU0FNTDJBREZTX0VOQUJMRUQ7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLlNBTUwyQURGU19JRFAgPSBTQU1MMkFERlNfSURQO1xyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfSURFTlRJRklFUiA9IFNBTUwyQURGU19JREVOVElGSUVSO1xyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfV0FfU0lHTklOID0gU0FNTDJBREZTX1dBX1NJR05JTjtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX1dBX1NJR05PVVQgPSBTQU1MMkFERlNfV0FfU0lHTk9VVDtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX1dSRVBMWSA9IFNBTUwyQURGU19XUkVQTFk7XHJcblxyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5IQU5HRklSRV9QQVRIID0gSEFOR0ZJUkVfUEFUSDtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU1RBVElDX0ZPTERFUiA9IFNUQVRJQ19GT0xERVI7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkFWQVRBUl9GT0xERVIgPSBBVkFUQVJfRk9MREVSO1xyXG5cclxuICAgICAgICBjb25zdCBwYXJhbXMgPSAobmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZikpLnNlYXJjaFBhcmFtcztcclxuICAgICAgICBjb25zdCBsb2NhbCA9IHBhcmFtcy5nZXQoXCJsb2NhbFwiKTtcclxuXHJcbiAgICAgICAgaWYgKFNBTUwyQURGU19FTkFCTEVEICYmICFsb2NhbCkge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLnNzb0ZhaWxlZCkge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICBjb25zdCB0b2tlbiA9IHBhcmFtcy5nZXQoXCJ0b2tlblwiKTtcclxuICAgICAgICAgICAgICBpZiAodG9rZW4gIT09IG51bGwpIHtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLmFwcFNlcnZpY2UuZ2V0KGFwaS5TWVNfU0hPUlRfTElWRURfVE9LRU5fTE9HSU4gKyBcIj90b2tlbj1cIiArIHRva2VuKS5zdWJzY3JpYmUoeCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHgub2sgJiYgeC5zdGF0dXMgPT09IDIwMCAmJiB4LmJvZHk/LnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29uc3QgYm9keTogSUZvcm1hdGVkUmVzcG9uc2UgPSB4LmJvZHlcclxuICAgICAgICAgICAgICAgICAgICAgIGlmIChib2R5LnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBlbmRpbmdBdXRoRGF0YSQubmV4dCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uYm9keS5pbm5lckJvZHksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbG9naW5UaW1lOiBuZXcgRGF0ZSgpLmdldFRpbWUoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNzb0ZhaWxlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3NvUHJvY2Vzc2luZyQubmV4dChmYWxzZSk7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGlmICghIWxvY2FsU3RvcmFnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsZWZ0YmFyUmVkdWNlZFN0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsZWZ0YmFyUmVkdWNlZCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsZWZ0YmFyUmVkdWNlZCA9IEpTT04ucGFyc2UobGVmdGJhclJlZHVjZWRTdHJpbmchKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UubGVmdGJhclJlZHVjZWQkLm5leHQoISFsZWZ0YmFyUmVkdWNlZCk7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm91dGluZ0hpc3RvcnlTdHJpbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgncm91dGluZ0hpc3RvcnknKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEhcm91dGluZ0hpc3RvcnlTdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByb3V0aW5nSGlzdG9yeSA9IEpTT04ucGFyc2Uocm91dGluZ0hpc3RvcnlTdHJpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2Uucm91dGluZ0hpc3RvcnkkLm5leHQocm91dGluZ0hpc3RvcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY29yZU9yZ1RyZWVTdGF0dXNTdHJpbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImNvcmVPcmdUcmVlU3RhdHVzXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29yZU9yZ1RyZWVTdGF0dXNTdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzYXZlZE9iamVjdDogSUV2ZXJ5VHJlZVN0YXR1cyA9IEpTT04ucGFyc2UoY29yZU9yZ1RyZWVTdGF0dXNTdHJpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub3JnYW5pemF0aW9uU2VydmljZS5zdGF0dXMkLm5leHQoc2F2ZWRPYmplY3QpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxpemluZyQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSwgMjAwKVxyXG4gICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgKVxyXG4gICAgXHJcbiAgICBcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIEFMV0FZUyBSRURJUkVDVCBUTyBUSEUgQU5HVUxBUiBBUFBMSUNBVElPTiBMT0dJTiBQQUdFIElGIE5PIFNFU1NJT04gRk9VTkQgKD9sb2NhbD0xKVxyXG4gICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBgJHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX0lERU5USUZJRVJ9P2xvY2FsPTFgO1xyXG5cclxuICAgICAgICAgICAgICAgIC8qXHJcblxyXG4gICAgICAgICAgICAgICAgLy9JRiBUSEUgQU5HVUxBUiBBUFBMSUNBVElPTiBMT0dJTiBQQUdFIElTIE5PVCBNQU5EQVRPUlkgPT4gQ0FMTCBTQU1MMi4wIElkUFxyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IGNvZGVWZXJpZmllciA9IHRoaXMuYXV0aFNlcnZpY2UuZ2VuZXJhdGVSYW5kb21Db2RlVmVyaWZpZXIoNDMpO1xyXG4gICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJjb2RlVmVyaWZpZXJcIiwgY29kZVZlcmlmaWVyKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2VuZXJhdGVDb2RlQ2hhbGxlbmdlRnJvbVZlcmlmaWVyKGNvZGVWZXJpZmllcikudGhlbihjb2RlQ2hhbGxlbmdlID0+IHtcclxuICAgICAgICAgICAgICAgICAgY29uc3QgYXV0aG9yaXphdGlvblVybCA9IGAke3RoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfSURQfT9gICtcclxuICAgICAgICAgICAgICAgICAgICBgd3RyZWFsbT0ke3RoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfSURFTlRJRklFUn1gICtcclxuICAgICAgICAgICAgICAgICAgICBgJndhPSR7dGhpcy5hcHBDb25maWdTZXJ2aWNlLlNBTUwyQURGU19XQV9TSUdOSU4gfHwgJ3dzaWduaW4xLjAnfWAgKyBcclxuICAgICAgICAgICAgICAgICAgICBgJndyZXBseT0ke3RoaXMuYXBwQ29uZmlnU2VydmljZS5CQVNFX1VSTH0ke3RoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfV1JFUExZfWAgKyBcclxuICAgICAgICAgICAgICAgICAgICBgJndjdHg9JHtjb2RlQ2hhbGxlbmdlfWBcclxuICAgICAgICAgICAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxlcnQoYXV0aG9yaXphdGlvblVybCk7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYXV0aG9yaXphdGlvblVybDtcclxuXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICovXHJcblxyXG5cclxuICAgICAgICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnNzb1Byb2Nlc3NpbmckLm5leHQoZmFsc2UpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IGJvZHkxOiBJRm9ybWF0ZWRSZXNwb25zZTtcclxuICAgICAgICBsZXQgYm9keTI6IElGb3JtYXRlZFJlc3BvbnNlO1xyXG4gICAgICAgIGxldCBib2R5MzogSUZvcm1hdGVkUmVzcG9uc2U7XHJcblxyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgICAgdGhpcy5zc29Qcm9jZXNzaW5nJC5waXBlKFxyXG4gICAgICAgICAgICBmaWx0ZXIoeCA9PiAheClcclxuICAgICAgICAgICkuc3Vic2NyaWJlKHggPT4ge1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgICAgICAgemlwKFtcclxuICAgICAgICAgICAgICAgIHRoaXMubWxzLnJlYWRBbGxNaW5pKCksXHJcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLnJlYWRBbGxGdW5jdGlvbldpdGhBbGxBY3Rpb25zKCksXHJcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLmdldElnbm9yZVBhdGhzKCksXHJcbiAgICAgICAgICAgICAgXSkucGlwZShcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IodmFsID0+IG9mKGBUaGUgYXBwIGNhdWdodDogJHt2YWx9YCkpXHJcbiAgICAgICAgICAgICAgKS5zdWJzY3JpYmUocmVzcG9uc2VzID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImFwcEluaXRpYWxpemUoKSB6aXAoKSBkb25lXCIpXHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgeDEgPSByZXNwb25zZXNbMF07XHJcbiAgICAgICAgICAgICAgICBpZiAoeDEub2sgJiYgeDEuc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgYm9keTEgPSB4MS5ib2R5XHJcbiAgICAgICAgICAgICAgICAgIGlmIChib2R5MS5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1scy5kYXRhJC5uZXh0KGJvZHkxLmlubmVyQm9keSk7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCB4MiA9IHRvQ2FtZWwocmVzcG9uc2VzWzFdKTtcclxuICAgICAgICAgICAgICAgIGlmICh4Mi5vayAmJiB4Mi5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICBib2R5MiA9IHgyLmJvZHlcclxuICAgICAgICAgICAgICAgICAgaWYgKGJvZHkyLnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UuZnVsbEZ1bmN0aW9ucyQubmV4dChib2R5Mi5pbm5lckJvZHkpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29uc3QgeDMgPSByZXNwb25zZXNbMl07XHJcbiAgICAgICAgICAgICAgICBpZiAoeDMub2sgJiYgeDMuc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgYm9keTMgPSB4My5ib2R5XHJcbiAgICAgICAgICAgICAgICAgIGlmIChib2R5My5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLmlnbm9yZWRQYXRocyQubmV4dChib2R5My5pbm5lckJvZHkpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGJvZHkxPy5zdGF0dXNDb2RlID09PSAyMDAgJiYgYm9keTI/LnN0YXR1c0NvZGUgPT09IDIwMCAmJiBib2R5Mz8uc3RhdHVzQ29kZSA9PT0gMjAwKSB7XHJcblxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnByaW1hcnlJbml0aWFsaXplZCA9IHRydWU7XHJcblxyXG4gICAgICAgICAgICAgICAgICBpZiAoISFPQVVUSDJPSURDX0VOQUJMRUQgJiYgISF0aGlzLnBlbmRpbmdBdXRoRGF0YSQudmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlU2Vzc2lvbk9rID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLm5leHQodGhpcy5wZW5kaW5nQXV0aERhdGEkLnZhbHVlKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnBlbmRpbmdBdXRoRGF0YSQubmV4dChudWxsKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmF1dGhlbnRpY2F0ZWQkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS50cnlSZXN0b3JlU2Vzc2lvbigpXHJcbiAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKHggPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHgub2sgJiYgeC5zdGF0dXMgPT09IDIwMCAmJiB4LmJvZHk/LnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJvZHk6IElGb3JtYXRlZFJlc3BvbnNlID0geC5ib2R5XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJvZHkuc3RhdHVzQ29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdBdXRoRGF0YTogSUF1dGhEYXRhID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5ib2R5LmlubmVyQm9keSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9naW5UaW1lOiBuZXcgRGF0ZSgpLmdldFRpbWUoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdG9yZVNlc3Npb25PayA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLm5leHQobmV3QXV0aERhdGEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEhbG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsZWZ0YmFyUmVkdWNlZFN0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsZWZ0YmFyUmVkdWNlZCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGVmdGJhclJlZHVjZWQgPSBKU09OLnBhcnNlKGxlZnRiYXJSZWR1Y2VkU3RyaW5nISlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5sZWZ0YmFyUmVkdWNlZCQubmV4dCghIWxlZnRiYXJSZWR1Y2VkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByb3V0aW5nSGlzdG9yeVN0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdyb3V0aW5nSGlzdG9yeScpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEhcm91dGluZ0hpc3RvcnlTdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm91dGluZ0hpc3RvcnkgPSBKU09OLnBhcnNlKHJvdXRpbmdIaXN0b3J5U3RyaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5yb3V0aW5nSGlzdG9yeSQubmV4dChyb3V0aW5nSGlzdG9yeSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY29yZU9yZ1RyZWVTdGF0dXNTdHJpbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImNvcmVPcmdUcmVlU3RhdHVzXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvcmVPcmdUcmVlU3RhdHVzU3RyaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNhdmVkT2JqZWN0OiBJRXZlcnlUcmVlU3RhdHVzID0gSlNPTi5wYXJzZShjb3JlT3JnVHJlZVN0YXR1c1N0cmluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub3JnYW5pemF0aW9uU2VydmljZS5zdGF0dXMkLm5leHQoc2F2ZWRPYmplY3QpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxpemluZyQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIwMClcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIClcclxuXHJcblxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApXHJcblxyXG4gICAgICB9KS5jYXRjaChlID0+IGNvbnNvbGUubG9nKFwiZmV0Y2ggYXBwLmNvbmZpZy5qc29uIGVycm9yXCIsIGUpKVxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICBjb25zb2xlLmxvZyhcImFwcEluaXRpYWxpemUoKSB6aXAoKSBlcnJvcjogXCIsIGUpXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMubWFwKHggPT4geD8udW5zdWJzY3JpYmUoKSlcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
242
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWluaXRpYWxpemF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9zZXJ2aWNlcy9hcHAtaW5pdGlhbGl6YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF3QixNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFnQixNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFXbEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7QUFLN0MsTUFBTSxPQUFPLHdCQUF3QjtJQWFuQyxZQUNVLFdBQXdCLEVBQ3hCLEdBQXlCLEVBQ3pCLGFBQTRCLEVBQzVCLG1CQUF3QyxFQUN4QyxjQUE4QixFQUM5QixnQkFBa0MsRUFDbEMsVUFBc0I7UUFOdEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsUUFBRyxHQUFILEdBQUcsQ0FBc0I7UUFDekIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBbEJoQyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQ25ELG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDcEQsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBRW5DLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQUNwQyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUVoQyxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBbUIs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QWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0NBQ2pDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtnQ0FFVCxDQUFDLENBQUMsQ0FBQTs2QkFDTDt5QkFDRjtvQkFFSCxDQUFDLENBQUMsQ0FDSCxDQUFBO2dCQUdILENBQUMsQ0FBQyxDQUNILENBQUE7WUFFSCxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7U0FDN0Q7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsK0JBQStCLEVBQUUsQ0FBQyxDQUFDLENBQUE7U0FDaEQ7SUFFSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDL0MsQ0FBQzs4R0FoVFUsd0JBQXdCO2tIQUF4Qix3QkFBd0IsY0FGdkIsTUFBTTs7MkZBRVAsd0JBQXdCO2tCQUhwQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgemlwLCBjYXRjaEVycm9yLCBvZiwgU3Vic2NyaXB0aW9uLCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4vbGF5b3V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJRm9ybWF0ZWRSZXNwb25zZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvSUZvcm1hdGVkUmVzcG9uc2UnO1xyXG5pbXBvcnQgeyBJQXV0aERhdGEgfSBmcm9tICcuLi9pbnRlcmZhY2VzL0lBdXRoRGF0YSc7XHJcbmltcG9ydCB7IFJvdXRpbmdTZXJ2aWNlIH0gZnJvbSAnLi9yb3V0aW5nLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBPcmdhbml6YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9vcmdhbml6YXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IElFdmVyeVRyZWVTdGF0dXMgfSBmcm9tICcuLi9saWJyYXJpZXMvc2VydmljZXMvcmVjdXJzaXZlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBTZXJ2aWNlIH0gZnJvbSAnLi9hcHAuc2VydmljZSc7XHJcbmltcG9ydCB7IGFwaSB9IGZyb20gJ2FscGhhLWdsb2JhbC1jb25zdGFudHMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwSW5pdGlhbGl6YXRpb25TZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuIFxyXG4gIGluaXRpYWxpemluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xyXG4gIHNzb1Byb2Nlc3NpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcclxuICBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBwcmltYXJ5SW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBzdG9yZVNlc3Npb25PazogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwZW5kaW5nQXV0aERhdGEkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJQXV0aERhdGEgfCBudWxsPihudWxsKTtcclxuXHJcbiAgc3NvRmFpbGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1sczogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG9yZ2FuaXphdGlvblNlcnZpY2U6IE9yZ2FuaXphdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRpbmdTZXJ2aWNlOiBSb3V0aW5nU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBwU2VydmljZTogQXBwU2VydmljZVxyXG4gICkge1xyXG5cclxuICB9XHJcblxyXG5cclxuICBhcHBJbml0aWFsaXplKCk6IHZvaWQge1xyXG5cclxuICAgIGNvbnN0IHRvQ2FtZWwgPSAobzogYW55KTogYW55ID0+IHtcclxuICAgICAgdmFyIG5ld08sIG9yaWdLZXksIG5ld0tleSwgdmFsdWVcclxuICAgICAgaWYgKG8gaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAgIHJldHVybiBvLm1hcChmdW5jdGlvbiAodmFsdWUpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIpIHtcclxuICAgICAgICAgICAgdmFsdWUgPSB0b0NhbWVsKHZhbHVlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIHZhbHVlXHJcbiAgICAgICAgfSlcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBuZXdPID0ge31cclxuICAgICAgICBmb3IgKG9yaWdLZXkgaW4gbykge1xyXG4gICAgICAgICAgaWYgKG8uaGFzT3duUHJvcGVydHkob3JpZ0tleSkpIHtcclxuICAgICAgICAgICAgbmV3S2V5ID0gKG9yaWdLZXkuY2hhckF0KDApLnRvTG93ZXJDYXNlKCkgKyBvcmlnS2V5LnNsaWNlKDEpIHx8IG9yaWdLZXkpLnRvU3RyaW5nKClcclxuICAgICAgICAgICAgdmFsdWUgPSBvW29yaWdLZXldXHJcbiAgICAgICAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEFycmF5IHx8ICh2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZS5jb25zdHJ1Y3RvciA9PT0gT2JqZWN0KSkge1xyXG4gICAgICAgICAgICAgIHZhbHVlID0gdG9DYW1lbCh2YWx1ZSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAobmV3TyBhcyBhbnkpW25ld0tleV0gPSB2YWx1ZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbmV3T1xyXG4gICAgfVxyXG5cclxuICAgIHRyeSB7XHJcblxyXG4gICAgICBmZXRjaCgnLi4vLi4vYXNzZXRzL2FwcC5jb25maWcuanNvbicpLnRoZW4ocmVzID0+IHJlcy5qc29uKCkpLnRoZW4oKHtcclxuXHJcbiAgICAgICAgQVBQX1RZUEUsXHJcbiAgICAgICAgQkFTRV9VUkwsICAgICBcclxuICAgICAgICBHT0xJVkVfVVJMLFxyXG4gICAgICAgIERFQlVHX0VOQUJMRUQsXHJcblxyXG4gICAgICAgIExPR09fTE9HSU4sXHJcbiAgICAgICAgTE9HT19IRUFERVIsXHJcbiAgICAgICAgSE9NRV9CQUNLR1JPVU5EX0lNQUdFLCBcclxuXHJcbiAgICAgICAgT0FVVEgyT0lEQ19FTkFCTEVELFxyXG4gICAgICAgIE9BVVRIMk9JRENfQ0xJRU5UX0lELFxyXG5cclxuICAgICAgICBTQU1MMkFERlNfRU5BQkxFRCwgXHJcbiAgICAgICAgU0FNTDJBREZTX0lEUCwgXHJcbiAgICAgICAgU0FNTDJBREZTX0lERU5USUZJRVIsXHJcbiAgICAgICAgU0FNTDJBREZTX1dBX1NJR05JTixcclxuICAgICAgICBTQU1MMkFERlNfV0FfU0lHTk9VVCxcclxuICAgICAgICBTQU1MMkFERlNfV1JFUExZLFxyXG5cclxuICAgICAgICBIQU5HRklSRV9QQVRILFxyXG4gICAgICAgIFNUQVRJQ19GT0xERVIsXHJcbiAgICAgICAgQVZBVEFSX0ZPTERFUixcclxuXHJcbiAgICAgIH0pID0+IHtcclxuXHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkFQUF9UWVBFID0gQVBQX1RZUEU7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkJBU0VfVVJMID0gQkFTRV9VUkw7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkdPTElWRV9VUkwgPSBHT0xJVkVfVVJMO1xyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5ERUJVR19FTkFCTEVEID0gREVCVUdfRU5BQkxFRDtcclxuXHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLkxPR09fTE9HSU4gPSBMT0dPX0xPR0lOO1xyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5MT0dPX0hFQURFUiA9IExPR09fSEVBREVSO1xyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5IT01FX0JBQ0tHUk9VTkRfSU1BR0UgPSBIT01FX0JBQ0tHUk9VTkRfSU1BR0U7XHJcblxyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5PQVVUSDJPSURDX0VOQUJMRUQgPSBPQVVUSDJPSURDX0VOQUJMRUQ7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLk9BVVRIMk9JRENfQ0xJRU5UX0lEID0gT0FVVEgyT0lEQ19DTElFTlRfSUQ7XHJcblxyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfRU5BQkxFRCA9IFNBTUwyQURGU19FTkFCTEVEO1xyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfSURQID0gU0FNTDJBREZTX0lEUDtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX0lERU5USUZJRVIgPSBTQU1MMkFERlNfSURFTlRJRklFUjtcclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX1dBX1NJR05JTiA9IFNBTUwyQURGU19XQV9TSUdOSU47XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLlNBTUwyQURGU19XQV9TSUdOT1VUID0gU0FNTDJBREZTX1dBX1NJR05PVVQ7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLlNBTUwyQURGU19XUkVQTFkgPSBTQU1MMkFERlNfV1JFUExZO1xyXG5cclxuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuSEFOR0ZJUkVfUEFUSCA9IEhBTkdGSVJFX1BBVEg7XHJcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLlNUQVRJQ19GT0xERVIgPSBTVEFUSUNfRk9MREVSO1xyXG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5BVkFUQVJfRk9MREVSID0gQVZBVEFSX0ZPTERFUjtcclxuXHJcbiAgICAgICAgY29uc3QgcGFyYW1zID0gKG5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpKS5zZWFyY2hQYXJhbXM7XHJcbiAgICAgICAgY29uc3QgbG9jYWwgPSBwYXJhbXMuZ2V0KFwibG9jYWxcIik7XHJcblxyXG4gICAgICAgIGlmIChTQU1MMkFERlNfRU5BQkxFRCAmJiAhbG9jYWwpIHtcclxuICAgICAgICAgIGlmICghdGhpcy5zc29GYWlsZWQpIHtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgY29uc3QgdG9rZW4gPSBwYXJhbXMuZ2V0KFwidG9rZW5cIik7XHJcbiAgICAgICAgICAgICAgaWYgKHRva2VuICE9PSBudWxsKSB7XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgdGhpcy5hcHBTZXJ2aWNlLmdldChhcGkuU1lTX1NIT1JUX0xJVkVEX1RPS0VOX0xPR0lOICsgXCI/dG9rZW49XCIgKyB0b2tlbikuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh4Lm9rICYmIHguc3RhdHVzID09PSAyMDAgJiYgeC5ib2R5Py5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJvZHk6IElGb3JtYXRlZFJlc3BvbnNlID0geC5ib2R5XHJcbiAgICAgICAgICAgICAgICAgICAgICBpZiAoYm9keS5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wZW5kaW5nQXV0aERhdGEkLm5leHQoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC4uLmJvZHkuaW5uZXJCb2R5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxvZ2luVGltZTogbmV3IERhdGUoKS5nZXRUaW1lKClcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5zc29GYWlsZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNzb1Byb2Nlc3NpbmckLm5leHQoZmFsc2UpO1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBpZiAoISFsb2NhbFN0b3JhZ2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGVmdGJhclJlZHVjZWRTdHJpbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGVmdGJhclJlZHVjZWQnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGVmdGJhclJlZHVjZWQgPSBKU09OLnBhcnNlKGxlZnRiYXJSZWR1Y2VkU3RyaW5nISlcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRiYXJSZWR1Y2VkJC5uZXh0KCEhbGVmdGJhclJlZHVjZWQpO1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRpbmdIaXN0b3J5U3RyaW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JvdXRpbmdIaXN0b3J5Jyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghIXJvdXRpbmdIaXN0b3J5U3RyaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm91dGluZ0hpc3RvcnkgPSBKU09OLnBhcnNlKHJvdXRpbmdIaXN0b3J5U3RyaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLnJvdXRpbmdIaXN0b3J5JC5uZXh0KHJvdXRpbmdIaXN0b3J5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvcmVPcmdUcmVlU3RhdHVzU3RyaW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb3JlT3JnVHJlZVN0YXR1c1wiKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvcmVPcmdUcmVlU3RhdHVzU3RyaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2F2ZWRPYmplY3Q6IElFdmVyeVRyZWVTdGF0dXMgPSBKU09OLnBhcnNlKGNvcmVPcmdUcmVlU3RhdHVzU3RyaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9yZ2FuaXphdGlvblNlcnZpY2Uuc3RhdHVzJC5uZXh0KHNhdmVkT2JqZWN0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsaXppbmckLm5leHQoZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIDIwMClcclxuICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIClcclxuICAgIFxyXG4gICAgXHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBBTFdBWVMgUkVESVJFQ1QgVE8gVEhFIEFOR1VMQVIgQVBQTElDQVRJT04gTE9HSU4gUEFHRSBJRiBOTyBTRVNTSU9OIEZPVU5EICg/bG9jYWw9MSlcclxuICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYCR7dGhpcy5hcHBDb25maWdTZXJ2aWNlLlNBTUwyQURGU19JREVOVElGSUVSfT9sb2NhbD0xYDtcclxuXHJcbiAgICAgICAgICAgICAgICAvKlxyXG5cclxuICAgICAgICAgICAgICAgIC8vSUYgVEhFIEFOR1VMQVIgQVBQTElDQVRJT04gTE9HSU4gUEFHRSBJUyBOT1QgTUFOREFUT1JZID0+IENBTEwgU0FNTDIuMCBJZFBcclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCBjb2RlVmVyaWZpZXIgPSB0aGlzLmF1dGhTZXJ2aWNlLmdlbmVyYXRlUmFuZG9tQ29kZVZlcmlmaWVyKDQzKTtcclxuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwiY29kZVZlcmlmaWVyXCIsIGNvZGVWZXJpZmllcik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdlbmVyYXRlQ29kZUNoYWxsZW5nZUZyb21WZXJpZmllcihjb2RlVmVyaWZpZXIpLnRoZW4oY29kZUNoYWxsZW5nZSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGF1dGhvcml6YXRpb25VcmwgPSBgJHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX0lEUH0/YCArXHJcbiAgICAgICAgICAgICAgICAgICAgYHd0cmVhbG09JHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX0lERU5USUZJRVJ9YCArXHJcbiAgICAgICAgICAgICAgICAgICAgYCZ3YT0ke3RoaXMuYXBwQ29uZmlnU2VydmljZS5TQU1MMkFERlNfV0FfU0lHTklOIHx8ICd3c2lnbmluMS4wJ31gICsgXHJcbiAgICAgICAgICAgICAgICAgICAgYCZ3cmVwbHk9JHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQkFTRV9VUkx9JHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuU0FNTDJBREZTX1dSRVBMWX1gICsgXHJcbiAgICAgICAgICAgICAgICAgICAgYCZ3Y3R4PSR7Y29kZUNoYWxsZW5nZX1gXHJcbiAgICAgICAgICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KGF1dGhvcml6YXRpb25VcmwpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGF1dGhvcml6YXRpb25Vcmw7XHJcblxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAqL1xyXG5cclxuXHJcbiAgICAgICAgICAgICAgfVxyXG4gIFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zc29Qcm9jZXNzaW5nJC5uZXh0KGZhbHNlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBib2R5MTogSUZvcm1hdGVkUmVzcG9uc2U7XHJcbiAgICAgICAgbGV0IGJvZHkyOiBJRm9ybWF0ZWRSZXNwb25zZTtcclxuICAgICAgICBsZXQgYm9keTM6IElGb3JtYXRlZFJlc3BvbnNlO1xyXG4gICAgICAgIGxldCBib2R5NDogSUZvcm1hdGVkUmVzcG9uc2U7XHJcblxyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgICAgdGhpcy5zc29Qcm9jZXNzaW5nJC5waXBlKFxyXG4gICAgICAgICAgICBmaWx0ZXIoeCA9PiAheClcclxuICAgICAgICAgICkuc3Vic2NyaWJlKHggPT4ge1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgICAgICAgemlwKFtcclxuICAgICAgICAgICAgICAgIHRoaXMubWxzLnJlYWRBbGxNaW5pKCksXHJcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLnJlYWRBbGxGdW5jdGlvbldpdGhBbGxBY3Rpb25zKCksXHJcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLmdldElnbm9yZVBhdGhzKCksXHJcbiAgICAgICAgICAgICAgICB0aGlzLmFwcFNlcnZpY2UuZ2V0KGFwaS5QT1JUQUxfUk9VVEVfUkVBRF9BTExfTUlOSSlcclxuICAgICAgICAgICAgICBdKS5waXBlKFxyXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcih2YWwgPT4gb2YoYFRoZSBhcHAgY2F1Z2h0OiAke3ZhbH1gKSlcclxuICAgICAgICAgICAgICApLnN1YnNjcmliZShyZXNwb25zZXMgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiYXBwSW5pdGlhbGl6ZSgpIHppcCgpIGRvbmVcIilcclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCB4MSA9IHJlc3BvbnNlc1swXTtcclxuICAgICAgICAgICAgICAgIGlmICh4MS5vayAmJiB4MS5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICBib2R5MSA9IHgxLmJvZHlcclxuICAgICAgICAgICAgICAgICAgaWYgKGJvZHkxLnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWxzLmRhdGEkLm5leHQoYm9keTEuaW5uZXJCb2R5KTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IHgyID0gdG9DYW1lbChyZXNwb25zZXNbMV0pO1xyXG4gICAgICAgICAgICAgICAgaWYgKHgyLm9rICYmIHgyLnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgIGJvZHkyID0geDIuYm9keVxyXG4gICAgICAgICAgICAgICAgICBpZiAoYm9keTIuc3RhdHVzQ29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5mdWxsRnVuY3Rpb25zJC5uZXh0KGJvZHkyLmlubmVyQm9keSk7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCB4MyA9IHJlc3BvbnNlc1syXTtcclxuICAgICAgICAgICAgICAgIGlmICh4My5vayAmJiB4My5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICBib2R5MyA9IHgzLmJvZHlcclxuICAgICAgICAgICAgICAgICAgaWYgKGJvZHkzLnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UuaWdub3JlZFBhdGhzJC5uZXh0KGJvZHkzLmlubmVyQm9keSk7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoYm9keTE/LnN0YXR1c0NvZGUgPT09IDIwMCAmJiBib2R5Mj8uc3RhdHVzQ29kZSA9PT0gMjAwICYmIGJvZHkzPy5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgIHRoaXMucHJpbWFyeUluaXRpYWxpemVkID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgIGlmICghIU9BVVRIMk9JRENfRU5BQkxFRCAmJiAhIXRoaXMucGVuZGluZ0F1dGhEYXRhJC52YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcmVTZXNzaW9uT2sgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQubmV4dCh0aGlzLnBlbmRpbmdBdXRoRGF0YSQudmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGVuZGluZ0F1dGhEYXRhJC5uZXh0KG51bGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuYXV0aGVudGljYXRlZCQubmV4dCh0cnVlKTtcclxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnRyeVJlc3RvcmVTZXNzaW9uKClcclxuICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoeCA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoeC5vayAmJiB4LnN0YXR1cyA9PT0gMjAwICYmIHguYm9keT8uc3RhdHVzQ29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYm9keTogSUZvcm1hdGVkUmVzcG9uc2UgPSB4LmJvZHlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYm9keS5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG5ld0F1dGhEYXRhOiBJQXV0aERhdGEgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLmJvZHkuaW5uZXJCb2R5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dpblRpbWU6IG5ldyBEYXRlKCkuZ2V0VGltZSgpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlU2Vzc2lvbk9rID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQubmV4dChuZXdBdXRoRGF0YSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoISFsb2NhbFN0b3JhZ2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxlZnRiYXJSZWR1Y2VkU3RyaW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xlZnRiYXJSZWR1Y2VkJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsZWZ0YmFyUmVkdWNlZCA9IEpTT04ucGFyc2UobGVmdGJhclJlZHVjZWRTdHJpbmchKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRiYXJSZWR1Y2VkJC5uZXh0KCEhbGVmdGJhclJlZHVjZWQpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRpbmdIaXN0b3J5U3RyaW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JvdXRpbmdIaXN0b3J5Jyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoISFyb3V0aW5nSGlzdG9yeVN0cmluZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByb3V0aW5nSGlzdG9yeSA9IEpTT04ucGFyc2Uocm91dGluZ0hpc3RvcnlTdHJpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLnJvdXRpbmdIaXN0b3J5JC5uZXh0KHJvdXRpbmdIaXN0b3J5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb3JlT3JnVHJlZVN0YXR1c1N0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiY29yZU9yZ1RyZWVTdGF0dXNcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29yZU9yZ1RyZWVTdGF0dXNTdHJpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2F2ZWRPYmplY3Q6IElFdmVyeVRyZWVTdGF0dXMgPSBKU09OLnBhcnNlKGNvcmVPcmdUcmVlU3RhdHVzU3RyaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vcmdhbml6YXRpb25TZXJ2aWNlLnN0YXR1cyQubmV4dChzYXZlZE9iamVjdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbGl6aW5nJC5uZXh0KGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSwgMjAwKVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG5cclxuXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIClcclxuXHJcbiAgICAgIH0pLmNhdGNoKGUgPT4gY29uc29sZS5sb2coXCJmZXRjaCBhcHAuY29uZmlnLmpzb24gZXJyb3JcIiwgZSkpXHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiYXBwSW5pdGlhbGl6ZSgpIHppcCgpIGVycm9yOiBcIiwgZSlcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5tYXAoeCA9PiB4Py51bnN1YnNjcmliZSgpKVxyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -1968,11 +1968,13 @@ class AppInitializationService {
|
|
|
1968
1968
|
let body1;
|
|
1969
1969
|
let body2;
|
|
1970
1970
|
let body3;
|
|
1971
|
+
let body4;
|
|
1971
1972
|
this.subscriptions.push(this.ssoProcessing$.pipe(filter(x => !x)).subscribe(x => {
|
|
1972
1973
|
this.subscriptions.push(zip([
|
|
1973
1974
|
this.mls.readAllMini(),
|
|
1974
1975
|
this.routingService.readAllFunctionWithAllActions(),
|
|
1975
1976
|
this.routingService.getIgnorePaths(),
|
|
1977
|
+
this.appService.get(api.PORTAL_ROUTE_READ_ALL_MINI)
|
|
1976
1978
|
]).pipe(catchError(val => of(`The app caught: ${val}`))).subscribe(responses => {
|
|
1977
1979
|
console.log("appInitialize() zip() done");
|
|
1978
1980
|
const x1 = responses[0];
|