client-core-services 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/services/api/auth/auth.service.mjs +5 -5
- package/esm2020/lib/services/data-share/data-share.service.mjs +5 -14
- package/esm2020/lib/services/env/serverHostList.mjs +2 -1
- package/fesm2015/client-core-services.mjs +9 -17
- package/fesm2015/client-core-services.mjs.map +1 -1
- package/fesm2020/client-core-services.mjs +9 -17
- package/fesm2020/client-core-services.mjs.map +1 -1
- package/lib/services/data-share/data-share.service.d.ts +2 -7
- package/package.json +1 -1
|
@@ -48,10 +48,10 @@ export class AuthService {
|
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
resetData() {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
this.
|
|
54
|
-
this.
|
|
51
|
+
this.storageService.removeDataFormStorage();
|
|
52
|
+
this.apiService.resetMenuData();
|
|
53
|
+
this.apiService.resetTempData();
|
|
54
|
+
this.apiService.resetGridData();
|
|
55
55
|
this.envService.setRequestType('PUBLIC');
|
|
56
56
|
this.apiCallService.getApplicationAllSettings();
|
|
57
57
|
}
|
|
@@ -497,4 +497,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
497
497
|
providedIn: 'root'
|
|
498
498
|
}]
|
|
499
499
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EnvService }, { type: i3.ApiService }, { type: i4.StorageService }, { type: i5.Router }, { type: i6.EncryptionService }, { type: i7.CommonFunctionService }, { type: i8.CoreFunctionService }, { type: i9.AuthDataShareService }, { type: i10.ApiCallService }]; } });
|
|
500
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9hcGkvYXV0aC9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUluRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7Ozs7Ozs7Ozs7O0FBWXJGLE1BQU0sT0FBTyxXQUFXO0lBR3RCLFlBQ1UsSUFBZ0IsRUFDaEIsVUFBc0IsRUFDdEIsVUFBc0IsRUFDdEIsY0FBOEIsRUFDOUIsTUFBYyxFQUNkLGlCQUFvQyxFQUNwQyxxQkFBNEMsRUFDNUMsbUJBQXdDLEVBQ3hDLG9CQUEwQyxFQUMxQyxjQUE4QjtRQVQ5QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBQ3BDLENBQUM7SUFHTCxRQUFRO0lBRVIsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFZO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELGNBQWMsQ0FB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QkFBZ0IsQ0FBQyxDQUFDO2dCQUNuRCxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDL0MsUUFBUSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7Z0JBQzVCLFFBQVEsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDO2dCQUM5QixRQUFRLENBQUMsR0FBRyxHQUFHLG9CQUFvQixDQUFDO2dCQUNwQyxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRTtvQkFDdkIsUUFBUSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ3hDO2dCQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQy9EO1FBQ0gsQ0FBQyxFQUNELENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDUixRQUFRLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDN0IsUUFBUSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7WUFDMUIsUUFBUSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7WUFDN0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsQ0FDRixDQUFBO0lBQ0gsQ0FBQzs7eUdBaGVVLFdBQVc7NkdBQVgsV0FBVyxjQUZWLE1BQU07NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcGlDYWxsU2VydmljZSB9IGZyb20gJy4vLi4vLi4vYXBpL2FwaS1jYWxsL2FwaS1jYWxsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRW52U2VydmljZSB9IGZyb20gJy4uLy4uL2Vudi9lbnYuc2VydmljZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc3RvcmFnZS9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdG9yYWdlVG9rZW5TdGF0dXMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvc3RvcmFnZS10b2tlbi1zdGF0dXMuZW51bSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEVuY3J5cHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZW5jcnlwdGlvbi9lbmNyeXB0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21tb25GdW5jdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24tdXRpbHMvY29tbW9uLWZ1bmN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb3JlRnVuY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tbW9uLXV0aWxzL2NvcmUtZnVuY3Rpb24vY29yZS1mdW5jdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aERhdGFTaGFyZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9kYXRhLXNoYXJlL2F1dGgtZGF0YS1zaGFyZS9hdXRoLWRhdGEtc2hhcmUuc2VydmljZSc7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2UgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIGVudlNlcnZpY2U6IEVudlNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFwaVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGVuY3J5cHRpb25TZXJ2aWNlOiBFbmNyeXB0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgY29tbW9uRnVuY3Rpb25TZXJ2aWNlOiBDb21tb25GdW5jdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvcmVGdW5jdGlvblNlcnZpY2U6IENvcmVGdW5jdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGF1dGhEYXRhU2hhcmVTZXJ2aWNlOiBBdXRoRGF0YVNoYXJlU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBpQ2FsbFNlcnZpY2U6IEFwaUNhbGxTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG5cclxuICB9XHJcblxyXG4gIExvZ291dChwYXlsb2FkOiBhbnkpIHtcclxuICAgIHRoaXMucmVzZXREYXRhKCk7XHJcbiAgICB0aGlzLmxvZ091dFJlZGlyZWN0aW9uKCk7XHJcbiAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnJlc3RTZXR0aW5nTW9kdWxlKCdsb2dnZWRfb3V0Jyk7XHJcbiAgfVxyXG4gIFNlc3Npb25FeHBpcmVkKHBheWxvYWQ/OiBhbnkpIHtcclxuICAgIGxldCByZXNwb25zZSA9IHtcclxuICAgICAgc3RhdHVzOiAnJyxcclxuICAgICAgY2xhc3M6ICcnLFxyXG4gICAgICBtc2c6ICcnXHJcbiAgICB9O1xyXG4gICAgdGhpcy5yZXNldERhdGEoKTtcclxuICAgIHRoaXMubG9nT3V0UmVkaXJlY3Rpb24oKTtcclxuICAgIHJlc3BvbnNlLmNsYXNzID0gXCJiZy1pbmZvXCI7XHJcbiAgICByZXNwb25zZS5zdGF0dXMgPSBcInN1Y2Nlc3NcIjtcclxuICAgIHJlc3BvbnNlLm1zZyA9IFwiU2Vzc2lvbiBFeHBpcmVkLCBLaW5kbHkgTG9naW4gQWdhaW4uXCI7XHJcbiAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFNlc3Npb25FeHBpcmVkKHJlc3BvbnNlKTtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmNoZWNrUGxhdEZvcm0oKSAhPSAnbW9iaWxlJykge1xyXG4gICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnJlc3RTZXR0aW5nTW9kdWxlKCdsb2dnZWRfb3V0Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlc2V0RGF0YSgpIHtcclxuICAgIC8vIHRoaXMuc3RvcmFnZVNlcnZpY2UuUmVtb3ZlSWRUb2tlbigpO1xyXG4gICAgLy8gdGhpcy5zdG9yYWdlU2VydmljZS5SZW1vdmVFeHBpcmVzSW4oKTtcclxuICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0QXV0aGVudGljYXRpb24oZmFsc2UpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXV0aC9sb2dpbiddKTtcclxuICAgIHRoaXMuZW52U2VydmljZS5zZXRSZXF1ZXN0VHlwZSgnUFVCTElDJyk7XHJcbiAgICB0aGlzLmFwaUNhbGxTZXJ2aWNlLmdldEFwcGxpY2F0aW9uQWxsU2V0dGluZ3MoKTtcclxuICB9XHJcbiAgbG9nT3V0UmVkaXJlY3Rpb24oKSB7XHJcbiAgICBpZiAodGhpcy5lbnZTZXJ2aWNlLmNoZWNrUmVkaXJlY3Rpb25VcmwoKSkge1xyXG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHRoaXMuZW52U2VydmljZS5jaGVja1JlZGlyZWN0aW9uVXJsKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlZGlyZWN0VG9TaWduUGFnZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnb3RUb1NpZ25pblBhZ2UoKSB7XHJcbiAgICB0aGlzLnJlc2V0RGF0YSgpXHJcbiAgICB0aGlzLnJlZGlyZWN0VG9TaWduUGFnZSgpO1xyXG4gIH1cclxuXHJcbiAgR2V0VXNlckluZm9Gcm9tVG9rZW4ocGF5bG9hZDogYW55LCBsb2dpblJlZGlyZWN0Pzogc3RyaW5nKSB7XHJcbiAgICBsZXQgcmVzcG9uc2UgPSB7XHJcbiAgICAgIHN0YXR1czogJycsXHJcbiAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgbXNnOiAnJ1xyXG4gICAgfTtcclxuICAgIGxldCBhcGkgPSBcIlwiO1xyXG4gICAgbGV0IHJlcUJvZHkgPSB7fTtcclxuICAgIGlmIChwYXlsb2FkICYmIHBheWxvYWQucm9sZU5hbWUgJiYgcGF5bG9hZC5yb2xlTmFtZSAhPSAnJykge1xyXG4gICAgICBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnR0VUX1VTRVJfUEVSTUlTU0lPTicpICsgXCIvXCIgKyBwYXlsb2FkLnJvbGVOYW1lO1xyXG4gICAgICByZXFCb2R5ID0geyBrZXk6IHBheWxvYWQudG9rZW4gfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGFwaSA9IHRoaXMuZW52U2VydmljZS5nZXRBdXRoQXBpKCdHRVRfVVNFUl9QRVJNSVNTSU9OJykgKyBcIi9cIiArIG51bGw7XHJcbiAgICAgIHJlcUJvZHkgPSB7IGtleTogcGF5bG9hZCB9O1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaHR0cC5wb3N0KGFwaSwgcmVxQm9keSkuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzcERhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YS51c2VyKSB7XHJcbiAgICAgICAgICBsZXQgbW9kaWZ5RGF0YSA9IHRoaXMuY29yZUZ1bmN0aW9uU2VydmljZS5nZXRNb2R1bGVzRnJvbU1hcE9iamVjdChyZXNwRGF0YSk7XHJcbiAgICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLlNldFVzZXJJbmZvKG1vZGlmeURhdGEpO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5HZXRVc2VySW5mbygpO1xyXG4gICAgICAgICAgdGhpcy5lbnZTZXJ2aWNlLnNldFJlcXVlc3RUeXBlKCdQUklWQVRFJyk7XHJcbiAgICAgICAgICB0aGlzLmFwaUNhbGxTZXJ2aWNlLmdldEFwcGxpY2F0aW9uQWxsU2V0dGluZ3MoKTtcclxuICAgICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2UucmVzdFNldHRpbmdNb2R1bGUoJ2xvZ2dlZF9pbicpO1xyXG4gICAgICAgICAgdGhpcy5hcGlTZXJ2aWNlLmdpdFZlcnNpb24oJycpO1xyXG4gICAgICAgICAgdGhpcy5hcGlDYWxsU2VydmljZS5nZXRVc2VyUHJlZnJlcmVuY2UocmVzcERhdGEudXNlcik7XHJcbiAgICAgICAgICAvLyB0aGlzLmFwaUNhbGxTZXJ2aWNlLmdldFVzZXJOb3RpZmljYXRpb24oMSk7XHJcbiAgICAgICAgICB0aGlzLnJlZGlyZWN0aW9uV2l0aE1lbnVUeXBlKGxvZ2luUmVkaXJlY3QpO1xyXG4gICAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gXCJzdWNjZXNzXCI7XHJcbiAgICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFVzZXJJbmZvKHJlc3BvbnNlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5lbnZTZXJ2aWNlLnNldFJlcXVlc3RUeXBlKCdQVUJMSUMnKTtcclxuICAgICAgICAgIHRoaXMucmVkaXJlY3RUb1NpZ25QYWdlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09IDQwMykge1xyXG4gICAgICAgICAgdGhpcy5lbnZTZXJ2aWNlLnNldFJlcXVlc3RUeXBlKCdQVUJMSUMnKTtcclxuICAgICAgICAgIHRoaXMucmVkaXJlY3RUb1NpZ25QYWdlKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChlcnJvciAmJiBlcnJvci5zdGF0dXMgPT0gNDAzKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdVc2VybmFtZSBwYXNzd29yZCBkb2VzIG5vdCBtYXRjaC4nO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChlcnJvciAmJiBlcnJvci5lcnJvciAmJiBlcnJvci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLmVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ2Vycm9yJztcclxuICAgICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcbiAgICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFVzZXJJbmZvKHJlc3BvbnNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcbiAgcmVkaXJlY3Rpb25XaXRoTWVudVR5cGUobG9naW5SZWRpcmVjdFVybD86IHN0cmluZykge1xyXG4gICAgY29uc3QgbWVudVR5cGUgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLkdldE1lbnVUeXBlKCk7XHJcbiAgICBjb25zdCByZWRpcmVjdFVybCA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0UmVkaXJlY3RVcmwoKTtcclxuICAgIGNvbnN0IGNoaWxkV2luZG93VXJsID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRDaGlsZFdpbmRvd1VybCgpO1xyXG4gICAgbGV0IHJvdXRlID0gJy9kYXNoYm9hcmQnO1xyXG4gICAgaWYgKG1lbnVUeXBlID09ICdIb3Jpem9udGFsJykge1xyXG4gICAgICByb3V0ZSA9ICcvaG9tZSc7XHJcbiAgICB9XHJcbiAgICBpZiAocmVkaXJlY3RVcmwgJiYgcmVkaXJlY3RVcmwgIT0gJycgJiYgcmVkaXJlY3RVcmwgIT0gJy8nKSB7XHJcbiAgICAgIHJvdXRlID0gcmVkaXJlY3RVcmw7XHJcbiAgICB9IGVsc2UgaWYgKGNoaWxkV2luZG93VXJsICYmIGNoaWxkV2luZG93VXJsICE9ICcnICYmIGNoaWxkV2luZG93VXJsICE9ICcvJykge1xyXG4gICAgICByb3V0ZSA9IGNoaWxkV2luZG93VXJsO1xyXG4gICAgfSBlbHNlIGlmIChsb2dpblJlZGlyZWN0VXJsICYmIGxvZ2luUmVkaXJlY3RVcmwgIT0gJycgJiYgbG9naW5SZWRpcmVjdFVybCAhPSAnLycpIHtcclxuICAgICAgcm91dGUgPSBsb2dpblJlZGlyZWN0VXJsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3JvdXRlXSk7XHJcbiAgfVxyXG4gIHJlZGlyZWN0VG9TaWduUGFnZSgpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3NpZ25pbiddKTtcclxuICB9XHJcbiAgU2lnbmluKHBheWxvYWQ6IGFueSkge1xyXG4gICAgbGV0IHJlc3BvbnNlID0ge1xyXG4gICAgICBzdGF0dXM6ICcnLFxyXG4gICAgICBjbGFzczogJycsXHJcbiAgICAgIG1zZzogJycsXHJcbiAgICAgIG1lc3NhZ2U6ICcnLFxyXG4gICAgICB3cm9uZ0xvZ2luQXR0ZW1wdDogMFxyXG4gICAgfTtcclxuICAgIGxldCBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnQVVfU0lHTklOJyk7XHJcbiAgICB0aGlzLmh0dHAucG9zdChhcGksIHRoaXMuZW5jcnlwdGlvblNlcnZpY2UuZW5jcnlwdFJlcXVlc3QocGF5bG9hZCkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BEYXRhOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcERhdGEgJiYgcmVzcERhdGFbJ3Rva2VuJ10pIHtcclxuICAgICAgICAgIGNvbnN0IGNvZ25pdG9JZFRva2VuID0gcmVzcERhdGFbJ3Rva2VuJ107XHJcbiAgICAgICAgICBjb25zdCBjb2duaXRvRXhwaXJlc0luID0gODY0MDA7XHJcbiAgICAgICAgICAvLyBjb25zdCBjb2duaXRvRXhwaXJlc0luID0gNDIwO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRFeHBpcmVzSW4oY29nbml0b0V4cGlyZXNJbik7XHJcbiAgICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLlNldElkVG9rZW4oY29nbml0b0lkVG9rZW4pO1xyXG4gICAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ3N1Y2Nlc3MnO1xyXG4gICAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctc3VjY2Vzcyc7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSAnTG9naW4gIFN1Y2Nlc3NmdWwuJztcclxuICAgICAgICAgIGlmIChyZXNwRGF0YVsnbWVzc2FnZSddKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm1lc3NhZ2UgPSByZXNwRGF0YVsnbWVzc2FnZSddO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRBdXRoZW50aWNhdGlvbih0cnVlKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWydtZXNzYWdlJ10pIHtcclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdlcnJvcic7XHJcbiAgICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1kYW5nZXInO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gcmVzcERhdGFbJ21lc3NhZ2UnXTtcclxuICAgICAgICAgIHJlc3BvbnNlLndyb25nTG9naW5BdHRlbXB0ID0gcmVzcERhdGE/Lndyb25nTG9naW5BdHRlbXB0O1xyXG4gICAgICAgIH0gZWxzZSBpZiAocmVzcERhdGEuaGFzT3duUHJvcGVydHkoJ2Vycm9yJykpIHtcclxuICAgICAgICAgIGlmIChyZXNwRGF0YVtcImVycm9yXCJdID09IFwibm90X2NvbmZpcm1lZFwiKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdVc2VyIE5vdCBDb25maXJtZWQgJztcclxuICAgICAgICAgIH0gZWxzZSBpZiAocmVzcERhdGFbXCJlcnJvclwiXSA9PSBcInVzZXJfbmFtZV9wYXNzd29yZF9kb2VzX25vdF9tYXRjaFwiKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdVc2VybmFtZSBwYXNzd29yZCBkb2VzIG5vdCBtYXRjaCAnO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVzcG9uc2UubXNnID0gJ1VzZXJuYW1lIHBhc3N3b3JkIGRvZXMgbm90IG1hdGNoICc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctZGFuZ2VyJztcclxuICAgICAgICAgIHJlc3BvbnNlLndyb25nTG9naW5BdHRlbXB0ID0gcmVzcERhdGE/Lndyb25nTG9naW5BdHRlbXB0O1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFNpZ25pblJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yICYmIGVycm9yLnN0YXR1cyA9PSA0MDMpIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiU2lnbiBJbiBmaXJzdCBlcnJvciBoYW5kbGluZy5cIiArIEpTT04uc3RyaW5naWZ5KGVycm9yKSk7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSAnVXNlcm5hbWUgcGFzc3dvcmQgZG9lcyBub3QgbWF0Y2guJztcclxuICAgICAgICB9IGVsc2UgaWYgKGVycm9yICYmIGVycm9yLmVycm9yICYmIGVycm9yLmVycm9yLm1lc3NhZ2UpIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiU2lnbiBJbiBTZWNvbmcgZXJyb3IgaGFuZGxpbmcuXCIgKyBKU09OLnN0cmluZ2lmeShlcnJvcikpO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICAgIHJlc3BvbnNlLndyb25nTG9naW5BdHRlbXB0ID0gZXJyb3IuZXJyb3I/Lndyb25nTG9naW5BdHRlbXB0O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIlNpZ24gSW4gVGhpcmQgZXJyb3IgaGFuZGxpbmcuXCIgKyBKU09OLnN0cmluZ2lmeShlcnJvcikpO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IubWVzc2FnZTtcclxuICAgICAgICAgIHJlc3BvbnNlLndyb25nTG9naW5BdHRlbXB0ID0gZXJyb3I/Lndyb25nTG9naW5BdHRlbXB0O1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcblxyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0U2lnbmluUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gIFNpZ251cChwYXlsb2FkOiBhbnkpIHtcclxuICAgIGxldCByZXNwb25zZSA9IHtcclxuICAgICAgc3RhdHVzOiAnJyxcclxuICAgICAgY2xhc3M6ICcnLFxyXG4gICAgICBtc2c6ICcnLFxyXG4gICAgICBhcHBQcmVzZW50QWxlcnQ6IGZhbHNlLFxyXG4gICAgICBhdXRvTG9naW46IGZhbHNlLFxyXG4gICAgICBwYXlsb2FkOiB7fVxyXG4gICAgfTtcclxuICAgIGxldCBuZXdQYXlsb2FkOiBhbnkgPSAnJztcclxuICAgIGxldCBpc0h5YnJpZFBsYXRmb3JtID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5zdG9yYWdlU2VydmljZS5jaGVja1BsYXRGb3JtKCkgPT0gJ21vYmlsZScpIHtcclxuICAgICAgaXNIeWJyaWRQbGF0Zm9ybSA9IHRydWU7XHJcbiAgICAgIG5ld1BheWxvYWQgPSBwYXlsb2FkLmRhdGE7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBuZXdQYXlsb2FkID0gcGF5bG9hZDtcclxuICAgIH1cclxuICAgIGxldCBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnQVVfU0lHTlVQJyk7XHJcbiAgICB0aGlzLmh0dHAucG9zdChhcGksIHRoaXMuZW5jcnlwdGlvblNlcnZpY2UuZW5jcnlwdFJlcXVlc3QobmV3UGF5bG9hZCkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BEYXRhOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcERhdGEgJiYgcmVzcERhdGFbJ21lc3NhZ2UnXSA9PSAnVXNlciByZWdpc3RlcmVkIHN1Y2Nlc3NmdWxseScpIHtcclxuICAgICAgICAgIGlmIChwYXlsb2FkLmF1dG9sb2dpbiAmJiBpc0h5YnJpZFBsYXRmb3JtKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdTdWNjZXNzZnVsbHkgUmVnaXN0ZXJlZC4nO1xyXG4gICAgICAgICAgICByZXNwb25zZS5hdXRvTG9naW4gPSBwYXlsb2FkLmF1dG9sb2dpbjtcclxuICAgICAgICAgICAgcmVzcG9uc2UucGF5bG9hZCA9IHsgdXNlcklkOiBuZXdQYXlsb2FkLnVzZXJJZCwgcGFzc3dvcmQ6IG5ld1BheWxvYWQucGFzc3dvcmQgfTtcclxuICAgICAgICAgICAgLy8gdGhpcy5TaWduaW4oYXBwUGF5bG9hZCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5lbnZTZXJ2aWNlLmdldFZlcmlmeVR5cGUoKSA9PSAnbW9iaWxlJykge1xyXG4gICAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdPVFAgaGFzIGJlZW4gc2VudCB0byB5b3VyIHJlZ2lzdGVyZWQgTW9iaWxlIG5vLic7XHJcbiAgICAgICAgICAgICAgcmVzcG9uc2UucGF5bG9hZCA9IHsgdXNlcklkOiBuZXdQYXlsb2FkLnVzZXJJZCwgcGFzc3dvcmQ6IG5ld1BheWxvYWQucGFzc3dvcmQgfTtcclxuICAgICAgICAgICAgICBpZiAoaXNIeWJyaWRQbGF0Zm9ybSkge1xyXG4gICAgICAgICAgICAgICAgcmVzcG9uc2UuYXBwUHJlc2VudEFsZXJ0ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXlsb2FkLnJlZGlyZWN0aW9uICsnLycrcGF5bG9hZC5kYXRhLnVzZXJJZF0pO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ290cF92YXJpZnknKycvJytwYXlsb2FkLnVzZXJJZF0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBpZiAobmV3UGF5bG9hZC5hZG1pbikge1xyXG4gICAgICAgICAgICAgICAgcmVzcG9uc2UubXNnID0gJ0EgdmVyaWZpY2F0aW9uIGxpbmsgaGFzIGJlZW4gc2VudCB0byB5b3VyIGVtYWlsIGFjY291bnQuIElmIG5vdCByZWNlaXZlZCwgcGxlYXNlIGNvbm5lY3QgdG8gYWRtaW4gdG8gdmVyaWZ5IHlvdXIgZW1haWwuJztcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcmVzcG9uc2UubXNnID0gJ0EgdmVyaWZpY2F0aW9uIGxpbmsgaGFzIGJlZW4gc2VudCB0byB5b3VyIGVtYWlsIGFjY291bnQuIHBsZWFzZSBjbGljayBvbiB0aGUgbGluayB0byB2ZXJpZnkgeW91ciBlbWFpbCBhbmQgY29udGludWUgdGhlIHJlZ2lzdHJhdGlvbiBwcm9jZXNzLic7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHJlc3BvbnNlLmFwcFByZXNlbnRBbGVydCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWydtZXNzYWdlJ10pIHtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IHJlc3BEYXRhWydtZXNzYWdlJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdzdWNjZXNzJztcclxuICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1zdWNjZXNzJztcclxuICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFNpZ25VcFJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yICYmIGVycm9yLmVycm9yICYmIGVycm9yLmVycm9yLm1lc3NhZ2UpIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiU2lnbiBJbiBTZWNvbmcgZXJyb3IgaGFuZGxpbmcuXCIgKyBKU09OLnN0cmluZ2lmeShlcnJvcikpO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJTaWduIEluIFRoaXJkIGVycm9yIGhhbmRsaW5nLlwiICsgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdlcnJvcic7XHJcbiAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctZGFuZ2VyJztcclxuICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFNpZ25VcFJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxuICBUcnlGb3Jnb3RQYXNzd29yZChwYXlsb2FkOiBhbnkpIHtcclxuICAgIGxldCByZXNwb25zZSA9IHtcclxuICAgICAgc3RhdHVzOiAnJyxcclxuICAgICAgY2xhc3M6ICcnLFxyXG4gICAgICBtc2c6ICcnXHJcbiAgICB9O1xyXG4gICAgbGV0IGFwaSA9IHRoaXMuZW52U2VydmljZS5nZXRBdXRoQXBpKCdBVVRIX0ZPUkdFVF9QQVNTV09SRCcpO1xyXG4gICAgdGhpcy5odHRwLnBvc3QoYXBpLCB0aGlzLmVuY3J5cHRpb25TZXJ2aWNlLmVuY3J5cHRSZXF1ZXN0KHBheWxvYWQpKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXNwRGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWydtZXNzYWdlJ10pIHtcclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdzdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLXN1Y2Nlc3MnO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gcmVzcERhdGFbJ21lc3NhZ2UnXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRGb3Jnb3QocmVzcG9uc2UpO1xyXG4gICAgICB9LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICBpZiAoZXJyb3IgJiYgZXJyb3IuZXJyb3IgJiYgZXJyb3IuZXJyb3IubWVzc2FnZSkge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ2Vycm9yJztcclxuICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1kYW5nZXInO1xyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0Rm9yZ290KHJlc3BvbnNlKTtcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxuICBTYXZlTmV3UGFzc3dvcmQocGF5bG9hZDogYW55KSB7XHJcbiAgICBsZXQgcmVzcG9uc2UgPSB7XHJcbiAgICAgIHN0YXR1czogJycsXHJcbiAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgbXNnOiAnJ1xyXG4gICAgfTtcclxuICAgIGxldCBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnQVVUSF9SRVNFVF9QQVNTV09SRCcpO1xyXG4gICAgdGhpcy5odHRwLnBvc3QoYXBpLCB0aGlzLmVuY3J5cHRpb25TZXJ2aWNlLmVuY3J5cHRSZXF1ZXN0KHBheWxvYWQpKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXNwRGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWydtZXNzYWdlJ10pIHtcclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdzdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLXN1Y2Nlc3MnO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gcmVzcERhdGFbJ21lc3NhZ2UnXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5yZXNldFBhc3N3b3JkKHJlc3BvbnNlKTtcclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yICYmIGVycm9yLmVycm9yICYmIGVycm9yLmVycm9yLm1lc3NhZ2UpIHtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLmVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdlcnJvcic7XHJcbiAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctZGFuZ2VyJztcclxuICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnJlc2V0UGFzc3dvcmQocmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gIFJlc2V0UGFzcyhwYXlsb2FkOiBhbnkpIHtcclxuICAgIGxldCBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnUkVTRVRfUEFTU1dPUkQnKTtcclxuICAgIHRoaXMuaHR0cC5wb3N0KGFwaSwgdGhpcy5lbmNyeXB0aW9uU2VydmljZS5lbmNyeXB0UmVxdWVzdChwYXlsb2FkKSkuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzcERhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YS5oYXNPd25Qcm9wZXJ0eSgnc3VjY2VzcycpKSB7XHJcbiAgICAgICAgICAvLyB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uubm90aWZ5KFwiYmctc3VjY2Vzc1wiLCBcIiBOZXcgUGFzc3dvcmQgU2V0ICBTdWNjZXNzZnVsbHkuXCIpO1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYWRtaW4nXSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChyZXNwRGF0YS5oYXNPd25Qcm9wZXJ0eSgnZXJyb3InKSkge1xyXG4gICAgICAgICAgaWYgKHJlc3BEYXRhW1wiZXJyb3JcIl0gPT0gXCJub3RfY29uZmlybWVkXCIpIHtcclxuICAgICAgICAgICAgLy8gdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLm5vdGlmeShcImJnLWRhbmdlclwiLCBcIlVzZXIgTm90IENvbmZpcm1lZCBcIik7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3BEYXRhW1wiZXJyb3JcIl0gPT0gXCJ1c2VyX25hbWVfcGFzc3dvcmRfZG9lc19ub3RfbWF0Y2hcIikge1xyXG4gICAgICAgICAgICAvLyB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uubm90aWZ5KFwiYmctZGFuZ2VyXCIsIFwiVXNlcm5hbWUgcGFzc3dvcmQgZG9lcyBub3QgbWF0Y2ggXCIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgLy8gdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLm5vdGlmeShcImJnLWRhbmdlclwiLCBlcnJvci5tZXNzYWdlKTtcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxuICBUcnlWZXJpZnkocGF5bG9hZDogb2JqZWN0KSB7XHJcbiAgICBjb25zb2xlLmxvZyhwYXlsb2FkKTtcclxuICB9XHJcbiAgY2hhbmdlUGFzc3dvcmQocGF5bG9hZDogYW55KSB7XHJcbiAgICBsZXQgcmVzcG9uc2UgPSB7XHJcbiAgICAgIHN0YXR1czogJycsXHJcbiAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgbXNnOiAnJ1xyXG4gICAgfTtcclxuICAgIGxldCBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnQVVUSF9DSEFOR0VfUEFTU1dPUkQnKVxyXG4gICAgdGhpcy5odHRwLnBvc3QoYXBpLCB0aGlzLmVuY3J5cHRpb25TZXJ2aWNlLmVuY3J5cHRSZXF1ZXN0KHBheWxvYWQpKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXNwRGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWydtZXNzYWdlJ10pIHtcclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdzdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLXN1Y2Nlc3MnO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gcmVzcERhdGFbJ21lc3NhZ2UnXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRDaGFuZ2VQd2QocmVzcG9uc2UpO1xyXG4gICAgICB9LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICBpZiAoZXJyb3IgJiYgZXJyb3Iuc3RhdHVzID09IDQwMykge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gXCJJbnZhbGlkIGN1cnJlbnQgcGFzc3dvcmQuXCI7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlcnJvciAmJiBlcnJvci5lcnJvciAmJiBlcnJvci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5lcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRDaGFuZ2VQd2QocmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gIHVzZXJWYXJpZnkocGF5bG9hZDogYW55KSB7XHJcbiAgICBsZXQgcmVzcG9uc2UgPSB7XHJcbiAgICAgIHN0YXR1czogJycsXHJcbiAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgbXNnOiAnJyxcclxuICAgICAgYXV0b0xvZ2luOiBmYWxzZSxcclxuICAgIH07XHJcbiAgICBsZXQgbmV3UGF5bG9hZDogYW55ID0gJyc7XHJcbiAgICBsZXQgaXNIeWJyaWRQbGF0Zm9ybSA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuc3RvcmFnZVNlcnZpY2UuY2hlY2tQbGF0Rm9ybSgpID09ICdtb2JpbGUnKSB7XHJcbiAgICAgIGlzSHlicmlkUGxhdGZvcm0gPSB0cnVlO1xyXG4gICAgICBuZXdQYXlsb2FkID0gcGF5bG9hZC5kYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbmV3UGF5bG9hZCA9IHBheWxvYWQ7XHJcbiAgICB9XHJcbiAgICBsZXQgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ1VTRVJfVkFSSUZZJyk7XHJcbiAgICB0aGlzLmh0dHAucG9zdChhcGksIHRoaXMuZW5jcnlwdGlvblNlcnZpY2UuZW5jcnlwdFJlcXVlc3QobmV3UGF5bG9hZCkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BEYXRhOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcERhdGEgJiYgcmVzcERhdGFbJ21lc3NhZ2UnXSA9PSBcIlVzZXIgaGFzIGJlZW4gdmVyaWZpZWQgc3VjY2Vzc2Z1bGx5XCIpIHtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IHJlc3BEYXRhWydtZXNzYWdlJ107XHJcbiAgICAgICAgICBpZiAocGF5bG9hZC5hdXRvbG9naW4pIHtcclxuICAgICAgICAgICAgcmVzcG9uc2UuYXV0b0xvZ2luID0gcGF5bG9hZC5hdXRvbG9naW47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAvLyBpZih0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFZlcmlmeVR5cGUoKSA9PSAnbW9iaWxlJyl7XHJcbiAgICAgICAgICAvLyB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YVsnbWVzc2FnZSddKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSByZXNwRGF0YVsnbWVzc2FnZSddO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnc3VjY2Vzcyc7XHJcbiAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctc3VjY2Vzcyc7XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRPdHBSZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvciAmJiBlcnJvci5lcnJvciAmJiBlcnJvci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5lcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRPdHBSZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcbiAgY2hlY2tJZFRva2VuU3RhdHVzKCkge1xyXG4gICAgbGV0IHN0YXR1c1dpdGhNc2cgPSB7XHJcbiAgICAgIFwic3RhdHVzXCI6IGZhbHNlLFxyXG4gICAgICBcIm1zZ1wiOiBcIlwiXHJcbiAgICB9O1xyXG4gICAgaWYgKHRoaXMuc3RvcmFnZVNlcnZpY2UgIT0gbnVsbCAmJiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLkdldElkVG9rZW4oKSAhPSBudWxsKSB7XHJcbiAgICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLkdldElkVG9rZW5TdGF0dXMoKSA9PSBTdG9yYWdlVG9rZW5TdGF0dXMuSURfVE9LRU5fQUNUSVZFKSB7XHJcbiAgICAgICAgc3RhdHVzV2l0aE1zZy5zdGF0dXMgPSB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHN0YXR1c1dpdGhNc2cuc3RhdHVzID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5TZXNzaW9uRXhwaXJlZCgpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzdGF0dXNXaXRoTXNnLnN0YXR1cyA9IGZhbHNlO1xyXG4gICAgICBzdGF0dXNXaXRoTXNnLm1zZyA9IFwiWW91ciBhcmUgYWxyZWFkeSBsb2dvdXQgISEhXCI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3RhdHVzV2l0aE1zZztcclxuICB9XHJcbiAgY2hlY2tBcHBsaWNhdGlvblNldHRpbmcoKSB7XHJcbiAgICBsZXQgZXhpc3RzID0gZmFsc2U7XHJcbiAgICBsZXQgYXBwbGljYXRpb25TZXR0aW5nID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRBcHBsaWNhdGlvblNldHRpbmcoKTtcclxuICAgIGlmIChhcHBsaWNhdGlvblNldHRpbmcpIHtcclxuICAgICAgZXhpc3RzID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGV4aXN0cyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGV4aXN0cztcclxuICB9XHJcblxyXG4gIGF1dGhlbnRpY2F0ZVVzZXIocGF5bG9hZDogYW55KSB7XHJcbiAgICBsZXQgcmVzcG9uc2UgPSB7XHJcbiAgICAgIHN0YXR1czogJycsXHJcbiAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgbXNnOiAnJyxcclxuICAgICAgbWVzc2FnZTogJydcclxuICAgIH07XHJcbiAgICBsZXQgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ1RXT19GQUNUT1JfQVVUSEVOVElDQVRJT04nKTtcclxuICAgIHRoaXMuaHR0cC5wb3N0KGFwaSwgdGhpcy5lbmNyeXB0aW9uU2VydmljZS5lbmNyeXB0UmVxdWVzdChwYXlsb2FkKSkuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzcERhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YVsndG9rZW4nXSkge1xyXG4gICAgICAgICAgY29uc3QgY29nbml0b0lkVG9rZW4gPSByZXNwRGF0YVsndG9rZW4nXTtcclxuICAgICAgICAgIGNvbnN0IGNvZ25pdG9FeHBpcmVzSW4gPSA4NjQwMDtcclxuICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0RXhwaXJlc0luKGNvZ25pdG9FeHBpcmVzSW4pO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5TZXRJZFRva2VuKGNvZ25pdG9JZFRva2VuKTtcclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdzdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLXN1Y2Nlc3MnO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gJ0xvZ2luICBTdWNjZXNzZnVsLic7XHJcbiAgICAgICAgICBpZiAocmVzcERhdGFbJ21lc3NhZ2UnXSkge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tZXNzYWdlID0gcmVzcERhdGFbJ21lc3NhZ2UnXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0QXV0aGVudGljYXRpb24odHJ1ZSk7XHJcbiAgICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldEF1dGhlbnRpY2F0aW9uUmVzcG9uY2UocmVzcG9uc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IubWVzc2FnZTtcclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRBdXRoZW50aWNhdGlvblJlc3BvbmNlKHJlc3BvbnNlKTtcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
500
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9hcGkvYXV0aC9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUluRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7Ozs7Ozs7Ozs7O0FBWXJGLE1BQU0sT0FBTyxXQUFXO0lBR3RCLFlBQ1UsSUFBZ0IsRUFDaEIsVUFBc0IsRUFDdEIsVUFBc0IsRUFDdEIsY0FBOEIsRUFDOUIsTUFBYyxFQUNkLGlCQUFvQyxFQUNwQyxxQkFBNEMsRUFDNUMsbUJBQXdDLEVBQ3hDLG9CQUEwQyxFQUMxQyxjQUE4QjtRQVQ5QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBQ3BDLENBQUM7SUFHTCxRQUFRO0lBRVIsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFZO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELGNBQWMsQ0FB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QUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2dCQUNuRCxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDL0MsUUFBUSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7Z0JBQzVCLFFBQVEsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDO2dCQUM5QixRQUFRLENBQUMsR0FBRyxHQUFHLG9CQUFvQixDQUFDO2dCQUNwQyxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRTtvQkFDdkIsUUFBUSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ3hDO2dCQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQy9EO1FBQ0gsQ0FBQyxFQUNELENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDUixRQUFRLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDN0IsUUFBUSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7WUFDMUIsUUFBUSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7WUFDN0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsQ0FDRixDQUFBO0lBQ0gsQ0FBQzs7eUdBaGVVLFdBQVc7NkdBQVgsV0FBVyxjQUZWLE1BQU07NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcGlDYWxsU2VydmljZSB9IGZyb20gJy4vLi4vLi4vYXBpL2FwaS1jYWxsL2FwaS1jYWxsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRW52U2VydmljZSB9IGZyb20gJy4uLy4uL2Vudi9lbnYuc2VydmljZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc3RvcmFnZS9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdG9yYWdlVG9rZW5TdGF0dXMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvZW51bXMvc3RvcmFnZS10b2tlbi1zdGF0dXMuZW51bSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEVuY3J5cHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZW5jcnlwdGlvbi9lbmNyeXB0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21tb25GdW5jdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24tdXRpbHMvY29tbW9uLWZ1bmN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb3JlRnVuY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tbW9uLXV0aWxzL2NvcmUtZnVuY3Rpb24vY29yZS1mdW5jdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aERhdGFTaGFyZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9kYXRhLXNoYXJlL2F1dGgtZGF0YS1zaGFyZS9hdXRoLWRhdGEtc2hhcmUuc2VydmljZSc7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2UgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIGVudlNlcnZpY2U6IEVudlNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFwaVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGVuY3J5cHRpb25TZXJ2aWNlOiBFbmNyeXB0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgY29tbW9uRnVuY3Rpb25TZXJ2aWNlOiBDb21tb25GdW5jdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvcmVGdW5jdGlvblNlcnZpY2U6IENvcmVGdW5jdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGF1dGhEYXRhU2hhcmVTZXJ2aWNlOiBBdXRoRGF0YVNoYXJlU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBpQ2FsbFNlcnZpY2U6IEFwaUNhbGxTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG5cclxuICB9XHJcblxyXG4gIExvZ291dChwYXlsb2FkOiBhbnkpIHtcclxuICAgIHRoaXMucmVzZXREYXRhKCk7XHJcbiAgICB0aGlzLmxvZ091dFJlZGlyZWN0aW9uKCk7XHJcbiAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnJlc3RTZXR0aW5nTW9kdWxlKCdsb2dnZWRfb3V0Jyk7XHJcbiAgfVxyXG4gIFNlc3Npb25FeHBpcmVkKHBheWxvYWQ/OiBhbnkpIHtcclxuICAgIGxldCByZXNwb25zZSA9IHtcclxuICAgICAgc3RhdHVzOiAnJyxcclxuICAgICAgY2xhc3M6ICcnLFxyXG4gICAgICBtc2c6ICcnXHJcbiAgICB9O1xyXG4gICAgdGhpcy5yZXNldERhdGEoKTtcclxuICAgIHRoaXMubG9nT3V0UmVkaXJlY3Rpb24oKTtcclxuICAgIHJlc3BvbnNlLmNsYXNzID0gXCJiZy1pbmZvXCI7XHJcbiAgICByZXNwb25zZS5zdGF0dXMgPSBcInN1Y2Nlc3NcIjtcclxuICAgIHJlc3BvbnNlLm1zZyA9IFwiU2Vzc2lvbiBFeHBpcmVkLCBLaW5kbHkgTG9naW4gQWdhaW4uXCI7XHJcbiAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFNlc3Npb25FeHBpcmVkKHJlc3BvbnNlKTtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmNoZWNrUGxhdEZvcm0oKSAhPSAnbW9iaWxlJykge1xyXG4gICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnJlc3RTZXR0aW5nTW9kdWxlKCdsb2dnZWRfb3V0Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlc2V0RGF0YSgpIHtcclxuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlRGF0YUZvcm1TdG9yYWdlKCk7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2UucmVzZXRNZW51RGF0YSgpO1xyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLnJlc2V0VGVtcERhdGEoKTtcclxuICAgIHRoaXMuYXBpU2VydmljZS5yZXNldEdyaWREYXRhKCk7XHJcbiAgICB0aGlzLmVudlNlcnZpY2Uuc2V0UmVxdWVzdFR5cGUoJ1BVQkxJQycpO1xyXG4gICAgdGhpcy5hcGlDYWxsU2VydmljZS5nZXRBcHBsaWNhdGlvbkFsbFNldHRpbmdzKCk7XHJcbiAgfVxyXG4gIGxvZ091dFJlZGlyZWN0aW9uKCkge1xyXG4gICAgaWYgKHRoaXMuZW52U2VydmljZS5jaGVja1JlZGlyZWN0aW9uVXJsKCkpIHtcclxuICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB0aGlzLmVudlNlcnZpY2UuY2hlY2tSZWRpcmVjdGlvblVybCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5yZWRpcmVjdFRvU2lnblBhZ2UoKTtcclxuICAgIH1cclxuICB9XHJcbiAgZ290VG9TaWduaW5QYWdlKCkge1xyXG4gICAgdGhpcy5yZXNldERhdGEoKVxyXG4gICAgdGhpcy5yZWRpcmVjdFRvU2lnblBhZ2UoKTtcclxuICB9XHJcblxyXG4gIEdldFVzZXJJbmZvRnJvbVRva2VuKHBheWxvYWQ6IGFueSwgbG9naW5SZWRpcmVjdD86IHN0cmluZykge1xyXG4gICAgbGV0IHJlc3BvbnNlID0ge1xyXG4gICAgICBzdGF0dXM6ICcnLFxyXG4gICAgICBjbGFzczogJycsXHJcbiAgICAgIG1zZzogJydcclxuICAgIH07XHJcbiAgICBsZXQgYXBpID0gXCJcIjtcclxuICAgIGxldCByZXFCb2R5ID0ge307XHJcbiAgICBpZiAocGF5bG9hZCAmJiBwYXlsb2FkLnJvbGVOYW1lICYmIHBheWxvYWQucm9sZU5hbWUgIT0gJycpIHtcclxuICAgICAgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ0dFVF9VU0VSX1BFUk1JU1NJT04nKSArIFwiL1wiICsgcGF5bG9hZC5yb2xlTmFtZTtcclxuICAgICAgcmVxQm9keSA9IHsga2V5OiBwYXlsb2FkLnRva2VuIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnR0VUX1VTRVJfUEVSTUlTU0lPTicpICsgXCIvXCIgKyBudWxsO1xyXG4gICAgICByZXFCb2R5ID0geyBrZXk6IHBheWxvYWQgfTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmh0dHAucG9zdChhcGksIHJlcUJvZHkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BEYXRhOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcERhdGEgJiYgcmVzcERhdGEudXNlcikge1xyXG4gICAgICAgICAgbGV0IG1vZGlmeURhdGEgPSB0aGlzLmNvcmVGdW5jdGlvblNlcnZpY2UuZ2V0TW9kdWxlc0Zyb21NYXBPYmplY3QocmVzcERhdGEpO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5TZXRVc2VySW5mbyhtb2RpZnlEYXRhKTtcclxuICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UuR2V0VXNlckluZm8oKTtcclxuICAgICAgICAgIHRoaXMuZW52U2VydmljZS5zZXRSZXF1ZXN0VHlwZSgnUFJJVkFURScpO1xyXG4gICAgICAgICAgdGhpcy5hcGlDYWxsU2VydmljZS5nZXRBcHBsaWNhdGlvbkFsbFNldHRpbmdzKCk7XHJcbiAgICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnJlc3RTZXR0aW5nTW9kdWxlKCdsb2dnZWRfaW4nKTtcclxuICAgICAgICAgIHRoaXMuYXBpU2VydmljZS5naXRWZXJzaW9uKCcnKTtcclxuICAgICAgICAgIHRoaXMuYXBpQ2FsbFNlcnZpY2UuZ2V0VXNlclByZWZyZXJlbmNlKHJlc3BEYXRhLnVzZXIpO1xyXG4gICAgICAgICAgLy8gdGhpcy5hcGlDYWxsU2VydmljZS5nZXRVc2VyTm90aWZpY2F0aW9uKDEpO1xyXG4gICAgICAgICAgdGhpcy5yZWRpcmVjdGlvbldpdGhNZW51VHlwZShsb2dpblJlZGlyZWN0KTtcclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9IFwic3VjY2Vzc1wiO1xyXG4gICAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRVc2VySW5mbyhyZXNwb25zZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZW52U2VydmljZS5zZXRSZXF1ZXN0VHlwZSgnUFVCTElDJyk7XHJcbiAgICAgICAgICB0aGlzLnJlZGlyZWN0VG9TaWduUGFnZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PSA0MDMpIHtcclxuICAgICAgICAgIHRoaXMuZW52U2VydmljZS5zZXRSZXF1ZXN0VHlwZSgnUFVCTElDJyk7XHJcbiAgICAgICAgICB0aGlzLnJlZGlyZWN0VG9TaWduUGFnZSgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAoZXJyb3IgJiYgZXJyb3Iuc3RhdHVzID09IDQwMykge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tc2cgPSAnVXNlcm5hbWUgcGFzc3dvcmQgZG9lcyBub3QgbWF0Y2guJztcclxuICAgICAgICAgIH0gZWxzZSBpZiAoZXJyb3IgJiYgZXJyb3IuZXJyb3IgJiYgZXJyb3IuZXJyb3IubWVzc2FnZSkge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5lcnJvci5tZXNzYWdlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IubWVzc2FnZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdlcnJvcic7XHJcbiAgICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1kYW5nZXInO1xyXG4gICAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRVc2VySW5mbyhyZXNwb25zZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gIHJlZGlyZWN0aW9uV2l0aE1lbnVUeXBlKGxvZ2luUmVkaXJlY3RVcmw/OiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IG1lbnVUeXBlID0gdGhpcy5zdG9yYWdlU2VydmljZS5HZXRNZW51VHlwZSgpO1xyXG4gICAgY29uc3QgcmVkaXJlY3RVcmwgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFJlZGlyZWN0VXJsKCk7XHJcbiAgICBjb25zdCBjaGlsZFdpbmRvd1VybCA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0Q2hpbGRXaW5kb3dVcmwoKTtcclxuICAgIGxldCByb3V0ZSA9ICcvZGFzaGJvYXJkJztcclxuICAgIGlmIChtZW51VHlwZSA9PSAnSG9yaXpvbnRhbCcpIHtcclxuICAgICAgcm91dGUgPSAnL2hvbWUnO1xyXG4gICAgfVxyXG4gICAgaWYgKHJlZGlyZWN0VXJsICYmIHJlZGlyZWN0VXJsICE9ICcnICYmIHJlZGlyZWN0VXJsICE9ICcvJykge1xyXG4gICAgICByb3V0ZSA9IHJlZGlyZWN0VXJsO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZFdpbmRvd1VybCAmJiBjaGlsZFdpbmRvd1VybCAhPSAnJyAmJiBjaGlsZFdpbmRvd1VybCAhPSAnLycpIHtcclxuICAgICAgcm91dGUgPSBjaGlsZFdpbmRvd1VybDtcclxuICAgIH0gZWxzZSBpZiAobG9naW5SZWRpcmVjdFVybCAmJiBsb2dpblJlZGlyZWN0VXJsICE9ICcnICYmIGxvZ2luUmVkaXJlY3RVcmwgIT0gJy8nKSB7XHJcbiAgICAgIHJvdXRlID0gbG9naW5SZWRpcmVjdFVybDtcclxuICAgIH1cclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtyb3V0ZV0pO1xyXG4gIH1cclxuICByZWRpcmVjdFRvU2lnblBhZ2UoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9zaWduaW4nXSk7XHJcbiAgfVxyXG4gIFNpZ25pbihwYXlsb2FkOiBhbnkpIHtcclxuICAgIGxldCByZXNwb25zZSA9IHtcclxuICAgICAgc3RhdHVzOiAnJyxcclxuICAgICAgY2xhc3M6ICcnLFxyXG4gICAgICBtc2c6ICcnLFxyXG4gICAgICBtZXNzYWdlOiAnJyxcclxuICAgICAgd3JvbmdMb2dpbkF0dGVtcHQ6IDBcclxuICAgIH07XHJcbiAgICBsZXQgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ0FVX1NJR05JTicpO1xyXG4gICAgdGhpcy5odHRwLnBvc3QoYXBpLCB0aGlzLmVuY3J5cHRpb25TZXJ2aWNlLmVuY3J5cHRSZXF1ZXN0KHBheWxvYWQpKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXNwRGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWyd0b2tlbiddKSB7XHJcbiAgICAgICAgICBjb25zdCBjb2duaXRvSWRUb2tlbiA9IHJlc3BEYXRhWyd0b2tlbiddO1xyXG4gICAgICAgICAgY29uc3QgY29nbml0b0V4cGlyZXNJbiA9IDg2NDAwO1xyXG4gICAgICAgICAgLy8gY29uc3QgY29nbml0b0V4cGlyZXNJbiA9IDQyMDtcclxuICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0RXhwaXJlc0luKGNvZ25pdG9FeHBpcmVzSW4pO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5TZXRJZFRva2VuKGNvZ25pdG9JZFRva2VuKTtcclxuICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdzdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLXN1Y2Nlc3MnO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gJ0xvZ2luICBTdWNjZXNzZnVsLic7XHJcbiAgICAgICAgICBpZiAocmVzcERhdGFbJ21lc3NhZ2UnXSkge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tZXNzYWdlID0gcmVzcERhdGFbJ21lc3NhZ2UnXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0QXV0aGVudGljYXRpb24odHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YVsnbWVzc2FnZSddKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctZGFuZ2VyJztcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IHJlc3BEYXRhWydtZXNzYWdlJ107XHJcbiAgICAgICAgICByZXNwb25zZS53cm9uZ0xvZ2luQXR0ZW1wdCA9IHJlc3BEYXRhPy53cm9uZ0xvZ2luQXR0ZW1wdDtcclxuICAgICAgICB9IGVsc2UgaWYgKHJlc3BEYXRhLmhhc093blByb3BlcnR5KCdlcnJvcicpKSB7XHJcbiAgICAgICAgICBpZiAocmVzcERhdGFbXCJlcnJvclwiXSA9PSBcIm5vdF9jb25maXJtZWRcIikge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tc2cgPSAnVXNlciBOb3QgQ29uZmlybWVkICc7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3BEYXRhW1wiZXJyb3JcIl0gPT0gXCJ1c2VyX25hbWVfcGFzc3dvcmRfZG9lc19ub3RfbWF0Y2hcIikge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tc2cgPSAnVXNlcm5hbWUgcGFzc3dvcmQgZG9lcyBub3QgbWF0Y2ggJztcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdVc2VybmFtZSBwYXNzd29yZCBkb2VzIG5vdCBtYXRjaCAnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ2Vycm9yJztcclxuICAgICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcbiAgICAgICAgICByZXNwb25zZS53cm9uZ0xvZ2luQXR0ZW1wdCA9IHJlc3BEYXRhPy53cm9uZ0xvZ2luQXR0ZW1wdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRTaWduaW5SZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvciAmJiBlcnJvci5zdGF0dXMgPT0gNDAzKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIlNpZ24gSW4gZmlyc3QgZXJyb3IgaGFuZGxpbmcuXCIgKyBKU09OLnN0cmluZ2lmeShlcnJvcikpO1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gJ1VzZXJuYW1lIHBhc3N3b3JkIGRvZXMgbm90IG1hdGNoLic7XHJcbiAgICAgICAgfSBlbHNlIGlmIChlcnJvciAmJiBlcnJvci5lcnJvciAmJiBlcnJvci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIlNpZ24gSW4gU2Vjb25nIGVycm9yIGhhbmRsaW5nLlwiICsgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLmVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgICByZXNwb25zZS53cm9uZ0xvZ2luQXR0ZW1wdCA9IGVycm9yLmVycm9yPy53cm9uZ0xvZ2luQXR0ZW1wdDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJTaWduIEluIFRoaXJkIGVycm9yIGhhbmRsaW5nLlwiICsgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgICByZXNwb25zZS53cm9uZ0xvZ2luQXR0ZW1wdCA9IGVycm9yPy53cm9uZ0xvZ2luQXR0ZW1wdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ2Vycm9yJztcclxuICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1kYW5nZXInO1xyXG5cclxuICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldFNpZ25pblJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxuICBTaWdudXAocGF5bG9hZDogYW55KSB7XHJcbiAgICBsZXQgcmVzcG9uc2UgPSB7XHJcbiAgICAgIHN0YXR1czogJycsXHJcbiAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgbXNnOiAnJyxcclxuICAgICAgYXBwUHJlc2VudEFsZXJ0OiBmYWxzZSxcclxuICAgICAgYXV0b0xvZ2luOiBmYWxzZSxcclxuICAgICAgcGF5bG9hZDoge31cclxuICAgIH07XHJcbiAgICBsZXQgbmV3UGF5bG9hZDogYW55ID0gJyc7XHJcbiAgICBsZXQgaXNIeWJyaWRQbGF0Zm9ybSA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuc3RvcmFnZVNlcnZpY2UuY2hlY2tQbGF0Rm9ybSgpID09ICdtb2JpbGUnKSB7XHJcbiAgICAgIGlzSHlicmlkUGxhdGZvcm0gPSB0cnVlO1xyXG4gICAgICBuZXdQYXlsb2FkID0gcGF5bG9hZC5kYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbmV3UGF5bG9hZCA9IHBheWxvYWQ7XHJcbiAgICB9XHJcbiAgICBsZXQgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ0FVX1NJR05VUCcpO1xyXG4gICAgdGhpcy5odHRwLnBvc3QoYXBpLCB0aGlzLmVuY3J5cHRpb25TZXJ2aWNlLmVuY3J5cHRSZXF1ZXN0KG5ld1BheWxvYWQpKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXNwRGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWydtZXNzYWdlJ10gPT0gJ1VzZXIgcmVnaXN0ZXJlZCBzdWNjZXNzZnVsbHknKSB7XHJcbiAgICAgICAgICBpZiAocGF5bG9hZC5hdXRvbG9naW4gJiYgaXNIeWJyaWRQbGF0Zm9ybSkge1xyXG4gICAgICAgICAgICByZXNwb25zZS5tc2cgPSAnU3VjY2Vzc2Z1bGx5IFJlZ2lzdGVyZWQuJztcclxuICAgICAgICAgICAgcmVzcG9uc2UuYXV0b0xvZ2luID0gcGF5bG9hZC5hdXRvbG9naW47XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLnBheWxvYWQgPSB7IHVzZXJJZDogbmV3UGF5bG9hZC51c2VySWQsIHBhc3N3b3JkOiBuZXdQYXlsb2FkLnBhc3N3b3JkIH07XHJcbiAgICAgICAgICAgIC8vIHRoaXMuU2lnbmluKGFwcFBheWxvYWQpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZW52U2VydmljZS5nZXRWZXJpZnlUeXBlKCkgPT0gJ21vYmlsZScpIHtcclxuICAgICAgICAgICAgICByZXNwb25zZS5tc2cgPSAnT1RQIGhhcyBiZWVuIHNlbnQgdG8geW91ciByZWdpc3RlcmVkIE1vYmlsZSBuby4nO1xyXG4gICAgICAgICAgICAgIHJlc3BvbnNlLnBheWxvYWQgPSB7IHVzZXJJZDogbmV3UGF5bG9hZC51c2VySWQsIHBhc3N3b3JkOiBuZXdQYXlsb2FkLnBhc3N3b3JkIH07XHJcbiAgICAgICAgICAgICAgaWYgKGlzSHlicmlkUGxhdGZvcm0pIHtcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlLmFwcFByZXNlbnRBbGVydCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcGF5bG9hZC5yZWRpcmVjdGlvbiArJy8nK3BheWxvYWQuZGF0YS51c2VySWRdKTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy8gdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydvdHBfdmFyaWZ5JysnLycrcGF5bG9hZC51c2VySWRdKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgaWYgKG5ld1BheWxvYWQuYWRtaW4pIHtcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdBIHZlcmlmaWNhdGlvbiBsaW5rIGhhcyBiZWVuIHNlbnQgdG8geW91ciBlbWFpbCBhY2NvdW50LiBJZiBub3QgcmVjZWl2ZWQsIHBsZWFzZSBjb25uZWN0IHRvIGFkbWluIHRvIHZlcmlmeSB5b3VyIGVtYWlsLic7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdBIHZlcmlmaWNhdGlvbiBsaW5rIGhhcyBiZWVuIHNlbnQgdG8geW91ciBlbWFpbCBhY2NvdW50LiBwbGVhc2UgY2xpY2sgb24gdGhlIGxpbmsgdG8gdmVyaWZ5IHlvdXIgZW1haWwgYW5kIGNvbnRpbnVlIHRoZSByZWdpc3RyYXRpb24gcHJvY2Vzcy4nO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICByZXNwb25zZS5hcHBQcmVzZW50QWxlcnQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YVsnbWVzc2FnZSddKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSByZXNwRGF0YVsnbWVzc2FnZSddO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnc3VjY2Vzcyc7XHJcbiAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctc3VjY2Vzcyc7XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRTaWduVXBSZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvciAmJiBlcnJvci5lcnJvciAmJiBlcnJvci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIlNpZ24gSW4gU2Vjb25nIGVycm9yIGhhbmRsaW5nLlwiICsgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLmVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiU2lnbiBJbiBUaGlyZCBlcnJvciBoYW5kbGluZy5cIiArIEpTT04uc3RyaW5naWZ5KGVycm9yKSk7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRTaWduVXBSZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcbiAgVHJ5Rm9yZ290UGFzc3dvcmQocGF5bG9hZDogYW55KSB7XHJcbiAgICBsZXQgcmVzcG9uc2UgPSB7XHJcbiAgICAgIHN0YXR1czogJycsXHJcbiAgICAgIGNsYXNzOiAnJyxcclxuICAgICAgbXNnOiAnJ1xyXG4gICAgfTtcclxuICAgIGxldCBhcGkgPSB0aGlzLmVudlNlcnZpY2UuZ2V0QXV0aEFwaSgnQVVUSF9GT1JHRVRfUEFTU1dPUkQnKTtcclxuICAgIHRoaXMuaHR0cC5wb3N0KGFwaSwgdGhpcy5lbmNyeXB0aW9uU2VydmljZS5lbmNyeXB0UmVxdWVzdChwYXlsb2FkKSkuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzcERhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YVsnbWVzc2FnZSddKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnc3VjY2Vzcyc7XHJcbiAgICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1zdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IHJlc3BEYXRhWydtZXNzYWdlJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0Rm9yZ290KHJlc3BvbnNlKTtcclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yICYmIGVycm9yLmVycm9yICYmIGVycm9yLmVycm9yLm1lc3NhZ2UpIHtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLmVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9ICdlcnJvcic7XHJcbiAgICAgICAgcmVzcG9uc2UuY2xhc3MgPSAnYmctZGFuZ2VyJztcclxuICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldEZvcmdvdChyZXNwb25zZSk7XHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcbiAgU2F2ZU5ld1Bhc3N3b3JkKHBheWxvYWQ6IGFueSkge1xyXG4gICAgbGV0IHJlc3BvbnNlID0ge1xyXG4gICAgICBzdGF0dXM6ICcnLFxyXG4gICAgICBjbGFzczogJycsXHJcbiAgICAgIG1zZzogJydcclxuICAgIH07XHJcbiAgICBsZXQgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ0FVVEhfUkVTRVRfUEFTU1dPUkQnKTtcclxuICAgIHRoaXMuaHR0cC5wb3N0KGFwaSwgdGhpcy5lbmNyeXB0aW9uU2VydmljZS5lbmNyeXB0UmVxdWVzdChwYXlsb2FkKSkuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzcERhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YVsnbWVzc2FnZSddKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnc3VjY2Vzcyc7XHJcbiAgICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1zdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IHJlc3BEYXRhWydtZXNzYWdlJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2UucmVzZXRQYXNzd29yZChyZXNwb25zZSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvciAmJiBlcnJvci5lcnJvciAmJiBlcnJvci5lcnJvci5tZXNzYWdlKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5lcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnZXJyb3InO1xyXG4gICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLWRhbmdlcic7XHJcbiAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5yZXNldFBhc3N3b3JkKHJlc3BvbnNlKTtcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxuICBSZXNldFBhc3MocGF5bG9hZDogYW55KSB7XHJcbiAgICBsZXQgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ1JFU0VUX1BBU1NXT1JEJyk7XHJcbiAgICB0aGlzLmh0dHAucG9zdChhcGksIHRoaXMuZW5jcnlwdGlvblNlcnZpY2UuZW5jcnlwdFJlcXVlc3QocGF5bG9hZCkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BEYXRhOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcERhdGEgJiYgcmVzcERhdGEuaGFzT3duUHJvcGVydHkoJ3N1Y2Nlc3MnKSkge1xyXG4gICAgICAgICAgLy8gdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLm5vdGlmeShcImJnLXN1Y2Nlc3NcIiwgXCIgTmV3IFBhc3N3b3JkIFNldCAgU3VjY2Vzc2Z1bGx5LlwiKTtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2FkbWluJ10pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAocmVzcERhdGEuaGFzT3duUHJvcGVydHkoJ2Vycm9yJykpIHtcclxuICAgICAgICAgIGlmIChyZXNwRGF0YVtcImVycm9yXCJdID09IFwibm90X2NvbmZpcm1lZFwiKSB7XHJcbiAgICAgICAgICAgIC8vIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5ub3RpZnkoXCJiZy1kYW5nZXJcIiwgXCJVc2VyIE5vdCBDb25maXJtZWQgXCIpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChyZXNwRGF0YVtcImVycm9yXCJdID09IFwidXNlcl9uYW1lX3Bhc3N3b3JkX2RvZXNfbm90X21hdGNoXCIpIHtcclxuICAgICAgICAgICAgLy8gdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLm5vdGlmeShcImJnLWRhbmdlclwiLCBcIlVzZXJuYW1lIHBhc3N3b3JkIGRvZXMgbm90IG1hdGNoIFwiKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIC8vIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5ub3RpZnkoXCJiZy1kYW5nZXJcIiwgZXJyb3IubWVzc2FnZSk7XHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcbiAgVHJ5VmVyaWZ5KHBheWxvYWQ6IG9iamVjdCkge1xyXG4gICAgY29uc29sZS5sb2cocGF5bG9hZCk7XHJcbiAgfVxyXG4gIGNoYW5nZVBhc3N3b3JkKHBheWxvYWQ6IGFueSkge1xyXG4gICAgbGV0IHJlc3BvbnNlID0ge1xyXG4gICAgICBzdGF0dXM6ICcnLFxyXG4gICAgICBjbGFzczogJycsXHJcbiAgICAgIG1zZzogJydcclxuICAgIH07XHJcbiAgICBsZXQgYXBpID0gdGhpcy5lbnZTZXJ2aWNlLmdldEF1dGhBcGkoJ0FVVEhfQ0hBTkdFX1BBU1NXT1JEJylcclxuICAgIHRoaXMuaHR0cC5wb3N0KGFwaSwgdGhpcy5lbmNyeXB0aW9uU2VydmljZS5lbmNyeXB0UmVxdWVzdChwYXlsb2FkKSkuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzcERhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwRGF0YSAmJiByZXNwRGF0YVsnbWVzc2FnZSddKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnc3VjY2Vzcyc7XHJcbiAgICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1zdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IHJlc3BEYXRhWydtZXNzYWdlJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0Q2hhbmdlUHdkKHJlc3BvbnNlKTtcclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yICYmIGVycm9yLnN0YXR1cyA9PSA0MDMpIHtcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9IFwiSW52YWxpZCBjdXJyZW50IHBhc3N3b3JkLlwiO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZXJyb3IgJiYgZXJyb3IuZXJyb3IgJiYgZXJyb3IuZXJyb3IubWVzc2FnZSkge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ2Vycm9yJztcclxuICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1kYW5nZXInO1xyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0Q2hhbmdlUHdkKHJlc3BvbnNlKTtcclxuICAgICAgfVxyXG4gICAgKVxyXG4gIH1cclxuICB1c2VyVmFyaWZ5KHBheWxvYWQ6IGFueSkge1xyXG4gICAgbGV0IHJlc3BvbnNlID0ge1xyXG4gICAgICBzdGF0dXM6ICcnLFxyXG4gICAgICBjbGFzczogJycsXHJcbiAgICAgIG1zZzogJycsXHJcbiAgICAgIGF1dG9Mb2dpbjogZmFsc2UsXHJcbiAgICB9O1xyXG4gICAgbGV0IG5ld1BheWxvYWQ6IGFueSA9ICcnO1xyXG4gICAgbGV0IGlzSHlicmlkUGxhdGZvcm0gPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmNoZWNrUGxhdEZvcm0oKSA9PSAnbW9iaWxlJykge1xyXG4gICAgICBpc0h5YnJpZFBsYXRmb3JtID0gdHJ1ZTtcclxuICAgICAgbmV3UGF5bG9hZCA9IHBheWxvYWQuZGF0YTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5ld1BheWxvYWQgPSBwYXlsb2FkO1xyXG4gICAgfVxyXG4gICAgbGV0IGFwaSA9IHRoaXMuZW52U2VydmljZS5nZXRBdXRoQXBpKCdVU0VSX1ZBUklGWScpO1xyXG4gICAgdGhpcy5odHRwLnBvc3QoYXBpLCB0aGlzLmVuY3J5cHRpb25TZXJ2aWNlLmVuY3J5cHRSZXF1ZXN0KG5ld1BheWxvYWQpKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXNwRGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BEYXRhICYmIHJlc3BEYXRhWydtZXNzYWdlJ10gPT0gXCJVc2VyIGhhcyBiZWVuIHZlcmlmaWVkIHN1Y2Nlc3NmdWxseVwiKSB7XHJcbiAgICAgICAgICByZXNwb25zZS5tc2cgPSByZXNwRGF0YVsnbWVzc2FnZSddO1xyXG4gICAgICAgICAgaWYgKHBheWxvYWQuYXV0b2xvZ2luKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLmF1dG9Mb2dpbiA9IHBheWxvYWQuYXV0b2xvZ2luO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLy8gaWYodGhpcy5zdG9yYWdlU2VydmljZS5nZXRWZXJpZnlUeXBlKCkgPT0gJ21vYmlsZScpe1xyXG4gICAgICAgICAgLy8gfVxyXG4gICAgICAgIH0gZWxzZSBpZiAocmVzcERhdGEgJiYgcmVzcERhdGFbJ21lc3NhZ2UnXSkge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gcmVzcERhdGFbJ21lc3NhZ2UnXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ3N1Y2Nlc3MnO1xyXG4gICAgICAgIHJlc3BvbnNlLmNsYXNzID0gJ2JnLXN1Y2Nlc3MnO1xyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0T3RwUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICB9LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICBpZiAoZXJyb3IgJiYgZXJyb3IuZXJyb3IgJiYgZXJyb3IuZXJyb3IubWVzc2FnZSkge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzcG9uc2UubXNnID0gZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ2Vycm9yJztcclxuICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1kYW5nZXInO1xyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0T3RwUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gIGNoZWNrSWRUb2tlblN0YXR1cygpIHtcclxuICAgIGxldCBzdGF0dXNXaXRoTXNnID0ge1xyXG4gICAgICBcInN0YXR1c1wiOiBmYWxzZSxcclxuICAgICAgXCJtc2dcIjogXCJcIlxyXG4gICAgfTtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlICE9IG51bGwgJiYgdGhpcy5zdG9yYWdlU2VydmljZS5HZXRJZFRva2VuKCkgIT0gbnVsbCkge1xyXG4gICAgICBpZiAodGhpcy5zdG9yYWdlU2VydmljZS5HZXRJZFRva2VuU3RhdHVzKCkgPT0gU3RvcmFnZVRva2VuU3RhdHVzLklEX1RPS0VOX0FDVElWRSkge1xyXG4gICAgICAgIHN0YXR1c1dpdGhNc2cuc3RhdHVzID0gdHJ1ZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBzdGF0dXNXaXRoTXNnLnN0YXR1cyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuU2Vzc2lvbkV4cGlyZWQoKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgc3RhdHVzV2l0aE1zZy5zdGF0dXMgPSBmYWxzZTtcclxuICAgICAgc3RhdHVzV2l0aE1zZy5tc2cgPSBcIllvdXIgYXJlIGFscmVhZHkgbG9nb3V0ICEhIVwiO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0YXR1c1dpdGhNc2c7XHJcbiAgfVxyXG4gIGNoZWNrQXBwbGljYXRpb25TZXR0aW5nKCkge1xyXG4gICAgbGV0IGV4aXN0cyA9IGZhbHNlO1xyXG4gICAgbGV0IGFwcGxpY2F0aW9uU2V0dGluZyA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0QXBwbGljYXRpb25TZXR0aW5nKCk7XHJcbiAgICBpZiAoYXBwbGljYXRpb25TZXR0aW5nKSB7XHJcbiAgICAgIGV4aXN0cyA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBleGlzdHMgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiBleGlzdHM7XHJcbiAgfVxyXG5cclxuICBhdXRoZW50aWNhdGVVc2VyKHBheWxvYWQ6IGFueSkge1xyXG4gICAgbGV0IHJlc3BvbnNlID0ge1xyXG4gICAgICBzdGF0dXM6ICcnLFxyXG4gICAgICBjbGFzczogJycsXHJcbiAgICAgIG1zZzogJycsXHJcbiAgICAgIG1lc3NhZ2U6ICcnXHJcbiAgICB9O1xyXG4gICAgbGV0IGFwaSA9IHRoaXMuZW52U2VydmljZS5nZXRBdXRoQXBpKCdUV09fRkFDVE9SX0FVVEhFTlRJQ0FUSU9OJyk7XHJcbiAgICB0aGlzLmh0dHAucG9zdChhcGksIHRoaXMuZW5jcnlwdGlvblNlcnZpY2UuZW5jcnlwdFJlcXVlc3QocGF5bG9hZCkpLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BEYXRhOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcERhdGEgJiYgcmVzcERhdGFbJ3Rva2VuJ10pIHtcclxuICAgICAgICAgIGNvbnN0IGNvZ25pdG9JZFRva2VuID0gcmVzcERhdGFbJ3Rva2VuJ107XHJcbiAgICAgICAgICBjb25zdCBjb2duaXRvRXhwaXJlc0luID0gODY0MDA7XHJcbiAgICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEV4cGlyZXNJbihjb2duaXRvRXhwaXJlc0luKTtcclxuICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UuU2V0SWRUb2tlbihjb2duaXRvSWRUb2tlbik7XHJcbiAgICAgICAgICByZXNwb25zZS5zdGF0dXMgPSAnc3VjY2Vzcyc7XHJcbiAgICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1zdWNjZXNzJztcclxuICAgICAgICAgIHJlc3BvbnNlLm1zZyA9ICdMb2dpbiAgU3VjY2Vzc2Z1bC4nO1xyXG4gICAgICAgICAgaWYgKHJlc3BEYXRhWydtZXNzYWdlJ10pIHtcclxuICAgICAgICAgICAgcmVzcG9uc2UubWVzc2FnZSA9IHJlc3BEYXRhWydtZXNzYWdlJ107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmF1dGhEYXRhU2hhcmVTZXJ2aWNlLnNldEF1dGhlbnRpY2F0aW9uKHRydWUpO1xyXG4gICAgICAgICAgdGhpcy5hdXRoRGF0YVNoYXJlU2VydmljZS5zZXRBdXRoZW50aWNhdGlvblJlc3BvbmNlKHJlc3BvbnNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIHJlc3BvbnNlLm1zZyA9IGVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID0gJ2Vycm9yJztcclxuICAgICAgICByZXNwb25zZS5jbGFzcyA9ICdiZy1kYW5nZXInO1xyXG4gICAgICAgIHRoaXMuYXV0aERhdGFTaGFyZVNlcnZpY2Uuc2V0QXV0aGVudGljYXRpb25SZXNwb25jZShyZXNwb25zZSk7XHJcbiAgICAgIH1cclxuICAgIClcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -18,7 +18,7 @@ export class DataShareService {
|
|
|
18
18
|
this.saveFromDataRsponce = '';
|
|
19
19
|
this.deleteGridRowDataRsponce = '';
|
|
20
20
|
this.saveResponceData = new BehaviorSubject(null);
|
|
21
|
-
this.
|
|
21
|
+
this.deleteGridRowResponceData = new BehaviorSubject(null);
|
|
22
22
|
this.gridFilterData = new BehaviorSubject(null);
|
|
23
23
|
this.typeAheadData = new BehaviorSubject(null);
|
|
24
24
|
this.form = new BehaviorSubject(null);
|
|
@@ -68,7 +68,7 @@ export class DataShareService {
|
|
|
68
68
|
this.pModuleIndex = -1;
|
|
69
69
|
this.menuOrSubmenuIndex = {};
|
|
70
70
|
this.headerMenu = new Subject();
|
|
71
|
-
this.
|
|
71
|
+
this.requestResponce = new Subject();
|
|
72
72
|
this.mongoDbChartList = new Subject();
|
|
73
73
|
this.MongoDbChartList = [];
|
|
74
74
|
this.mongoDashbordList = new Subject();
|
|
@@ -153,7 +153,7 @@ export class DataShareService {
|
|
|
153
153
|
return this.saveFromDataRsponce;
|
|
154
154
|
}
|
|
155
155
|
setDeleteGridRowResponse(response) {
|
|
156
|
-
this.
|
|
156
|
+
this.deleteGridRowResponceData.next(response);
|
|
157
157
|
this.deleteGridRowDataRsponce = response;
|
|
158
158
|
}
|
|
159
159
|
getDeleteRowDataResponce() {
|
|
@@ -327,16 +327,7 @@ export class DataShareService {
|
|
|
327
327
|
return this.menuOrSubmenuIndex;
|
|
328
328
|
}
|
|
329
329
|
setReqResponse(reqResponse) {
|
|
330
|
-
this.
|
|
331
|
-
}
|
|
332
|
-
getReqResponse() {
|
|
333
|
-
return this.reqResponse;
|
|
334
|
-
}
|
|
335
|
-
/**
|
|
336
|
-
* @deprecated Use setReqResponse instead
|
|
337
|
-
*/
|
|
338
|
-
setReqResponce(reqResponse) {
|
|
339
|
-
this.setReqResponse(reqResponse);
|
|
330
|
+
this.requestResponce.next(reqResponse);
|
|
340
331
|
}
|
|
341
332
|
resetHeaderMenu(responce) {
|
|
342
333
|
this.headerMenu.next(responce);
|
|
@@ -388,4 +379,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
388
379
|
providedIn: 'root'
|
|
389
380
|
}]
|
|
390
381
|
}], ctorParameters: function () { return []; } });
|
|
391
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zaGFyZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9kYXRhLXNoYXJlL2RhdGEtc2hhcmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNaEQsTUFBTSxPQUFPLGdCQUFnQjtJQXFGM0I7UUFwRkEsZUFBVSxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3pDLGdCQUFXLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7UUFDMUMsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsbUJBQWMsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7UUFDOUQsbUJBQWMsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7UUFDOUQsZUFBVSxHQUFpQixJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUMxRCxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQixrQkFBYSxHQUFpQixJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUM3RCxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsYUFBUSxHQUFpQixJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUN4RCxTQUFJLEdBQWlCLElBQUksZUFBZSxDQUFNLElBQUksQ0FBQyxDQUFDO1FBQ3BELGFBQVEsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7UUFFeEQsd0JBQW1CLEdBQVcsRUFBRSxDQUFDO1FBQ2pDLDZCQUF3QixHQUFXLEVBQUUsQ0FBQztRQUN0QyxxQkFBZ0IsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENB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VUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBQ0QsbUJBQW1CLENBQUMsR0FBVztRQUM3QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFDRCx5QkFBeUIsQ0FBQyxRQUFnQjtRQUN4QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFDRCxzQkFBc0IsQ0FBQyxLQUFhO1FBQ2xDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7OEdBallVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCLGNBRmYsTUFBTTs0RkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhU2hhcmVTZXJ2aWNlIHtcclxuICBzaGFyZWREYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIGN1cnJlbnRQYWdlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIGN1cnJlbnRwYWdlOiBzdHJpbmcgPSAnJztcclxuICBzZXJ2ZXJIb3N0bmFtZTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIHNlcnZlckVuZFBvaW50OiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgc3RhdGljRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIHNldFN0YXRpY0RhdGEgPSB7fTtcclxuICBncmlkQ291bnREYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgc2V0R3JpZENvdW50RGF0YSA9IHt9O1xyXG4gIGdyaWREYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgbWVudTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIHRlbXBEYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgdGVtcFN0b3JlRGF0YTogYW55O1xyXG4gIHNhdmVGcm9tRGF0YVJzcG9uY2U6IHN0cmluZyA9ICcnO1xyXG4gIGRlbGV0ZUdyaWRSb3dEYXRhUnNwb25jZTogc3RyaW5nID0gJyc7XHJcbiAgc2F2ZVJlc3BvbmNlRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIGRlbGV0ZUdyaWRSb3dSZXNwb25zZTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIGdyaWRGaWx0ZXJEYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgdHlwZUFoZWFkRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIGZvcm06IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBkaW5hbWljRm9ybSA9IHt9O1xyXG4gIGRvY0RhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBuZXN0ZWRGb3JtOiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgaG9zdERhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBkYXNobGV0RGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIERhc2hMZXREYXRhOiBhbnkgPSB7fTtcclxuICBhcHBOYW1lOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgbmF2aWdhdGlvbkRhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBwZXJtaXNzaW9uRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHF1b3RlRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGRlcGFydG1lbnREYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgY2F0ZWdvcnlEYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgcHJvZHVjdERhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICB0ZXN0UGFyYW1ldGVyczogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGV4cG9ydEV4Y2VsTGluazogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGV4cG9ydENWU0xpbms6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBnZXRQcm9kdWN0TGlzdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHByZXZpZXdIdG1sOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgdXBkYXRlUHJvZHVjdEJyYW5jaDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGdldEpvYlNjaGVkdWxlc0RhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBkb3dubG9hZFBkZkRhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBnZXRmaWxlRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGZpbGVEb3dubG9hZFVybDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGNoYXJ0RGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGFwcGxpY2F0aW9uU2V0dGluZzogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHRoZW1lU2V0dGluZzogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGZpZWxkRGluYW1pY1Jlc3BvbmNlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgY2hlY2tWYWxpZGF0aW9uOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgZGFzaGxldE1hc3RlcjogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIERhc2hsZXRNYXN0ZXI6IGFueSA9IFtdO1xyXG4gIGdpdFZpcnNpb246IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBuZXh0Rm9ybURhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBnZXRSZXBvcnRMb2FkRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGdldElzR3JpZFNlbGVjdGlvbk9wZW46IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBjaGFydE1vZGVsU2hvd0hpZGU6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBhdWRpdEhpc3RvcnlMaXN0OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgYXVkaXRWZXJzaW9uTGlzdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGFwcGxpY2F0aW9uU2V0dGluZ3M6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICB1c2VyTm90aWZpY2F0aW9uOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgdXNlck5vdGlmaWNhdGlvblNldHRpbmc6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICB1c2VyUHJlZmVyZW5jZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIG1vZHVsZUluZGV4OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgbWVudUluZGV4czogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHBNb2R1bGVJbmRleDogYW55ID0gLTE7XHJcbiAgbWVudU9yU3VibWVudUluZGV4OiBhbnkgPSB7fTtcclxuICBoZWFkZXJNZW51OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgcmVxUmVzcG9uc2U6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBtb25nb0RiQ2hhcnRMaXN0OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgTW9uZ29EYkNoYXJ0TGlzdDogYW55ID0gW107XHJcbiAgbW9uZ29EYXNoYm9yZExpc3Q6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBwZGZGaWxlTmFtZTogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gIFMzVXJsOiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgcHJpbnREYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgc2V0Q2xpZW50TmFtZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGdyaWRSdW5uaW5nRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGNvbGxlY3Rpb25kYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgY2hpbGRHcmlkOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgY2hpbGRncmlkZmllbGRzOiBhbnk7XHJcbiAgcm9sZUNoYW5nZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGRhc2hib3JkU2VyY2hLZXk6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBhZGRBbmRVcGRhdGVSZXNwb25jZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHByaXZhdGUgc2VsZWN0ZWRSb3dJbmRleFNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyIHwgbnVsbD4obnVsbCk7XHJcbiAgc2VsZWN0ZWRSb3dJbmRleCQgPSB0aGlzLnNlbGVjdGVkUm93SW5kZXhTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIHNlbmRDdXJyZW50UGFnZShyZXNwb25jZTogYW55KSB7XHJcbiAgICBpZiAocmVzcG9uY2UgIT0gdW5kZWZpbmVkICYmIHJlc3BvbmNlICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5jdXJyZW50UGFnZS5uZXh0KHJlc3BvbmNlKTtcclxuICAgICAgdGhpcy5jdXJyZW50cGFnZSA9IHJlc3BvbmNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jdXJyZW50UGFnZS5uZXh0KCdIT01FJyk7XHJcbiAgICAgIHRoaXMuY3VycmVudHBhZ2UgPSAnSE9NRSc7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldEN1cnJlbnRQYWdlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY3VycmVudHBhZ2U7XHJcbiAgfVxyXG4gIHNoYXJlRGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnNoYXJlZERhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNoYXJlU3RhdGljRGF0YShzdGF0aWNEYXRhOiBhbnksIGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5zdGF0aWNEYXRhLm5leHQoZGF0YSk7XHJcbiAgICB0aGlzLnNldFN0YXRpY0RhdGEgPSBzdGF0aWNEYXRhO1xyXG4gIH1cclxuICBnZXRTdGF0aURhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zZXRTdGF0aWNEYXRhO1xyXG4gIH1cclxuICBzaGFyZUdyaWRDb3VudERhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5ncmlkQ291bnREYXRhLm5leHQocmVzcG9uY2UuY291bnQpO1xyXG4gICAgdGhpcy5zZXRHcmlkQ291bnREYXRhID0gcmVzcG9uY2UuZ3JpZENvdW50RGF0YTtcclxuICB9XHJcbiAgZ2V0R3JpZENvdW50RGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLnNldEdyaWRDb3VudERhdGE7XHJcbiAgfVxyXG4gIHNoYXJlR3JpZERhdGEoZ3JpZERhdGE6IGFueSkge1xyXG4gICAgdGhpcy5ncmlkRGF0YS5uZXh0KGdyaWREYXRhKTtcclxuICB9XHJcbiAgc2hhcmVEYXNobGV0TWFzdGVyKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZGFzaGxldE1hc3Rlci5uZXh0KHJlc3BvbmNlKTtcclxuICAgIHRoaXMuRGFzaGxldE1hc3RlciA9IHJlc3BvbmNlO1xyXG4gIH1cclxuICBnZXREYXNobGV0TWFzdGVyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuRGFzaGxldE1hc3RlcjtcclxuICB9XHJcbiAgc2hhcmVNb25nb0NoYXJ0KGNoYXJ0RGF0YTogYW55KSB7XHJcbiAgICB0aGlzLm1vbmdvRGJDaGFydExpc3QubmV4dChjaGFydERhdGEpO1xyXG4gICAgdGhpcy5Nb25nb0RiQ2hhcnRMaXN0ID0gY2hhcnREYXRhO1xyXG4gIH1cclxuICBnZXRNb25nb0NoYXJ0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuTW9uZ29EYkNoYXJ0TGlzdDtcclxuICB9XHJcbiAgc2hhcmVNb25nb0Rhc2hib3JkKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMubW9uZ29EYXNoYm9yZExpc3QubmV4dChyZXNwb25jZSlcclxuICB9XHJcbiAgc2hhcmVNZW51RGF0YShtZW51RGF0YTogYW55KSB7XHJcbiAgICB0aGlzLm1lbnUubmV4dChtZW51RGF0YSk7XHJcbiAgfVxyXG4gIHNoYXJlVGVtcERhdGEodGVtcERhdGE6IGFueSkge1xyXG4gICAgdGhpcy50ZW1wRGF0YS5uZXh0KHRlbXBEYXRhKTtcclxuICAgIHRoaXMudGVtcFN0b3JlRGF0YSA9IHRlbXBEYXRhO1xyXG4gIH1cclxuICBnZXRUZW1wRGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLnRlbXBTdG9yZURhdGE7XHJcbiAgfVxyXG4gIHNldFNhdmVSZXNwb25jZShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnNhdmVSZXNwb25jZURhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgICB0aGlzLnNhdmVGcm9tRGF0YVJzcG9uY2UgPSByZXNwb25jZTtcclxuICB9XHJcbiAgZ2V0U2F2ZVJlc3BvbmNlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2F2ZUZyb21EYXRhUnNwb25jZTtcclxuICB9XHJcblxyXG4gIHNldERlbGV0ZUdyaWRSb3dSZXNwb25zZShyZXNwb25zZTogYW55KSB7XHJcbiAgICB0aGlzLmRlbGV0ZUdyaWRSb3dSZXNwb25zZS5uZXh0KHJlc3BvbnNlKTtcclxuICAgIHRoaXMuZGVsZXRlR3JpZFJvd0RhdGFSc3BvbmNlID0gcmVzcG9uc2U7XHJcbiAgfVxyXG4gIGdldERlbGV0ZVJvd0RhdGFSZXNwb25jZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmRlbGV0ZUdyaWRSb3dEYXRhUnNwb25jZTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIHNldERlbGV0ZUdyaWRSb3dSZXNwb25zZSBpbnN0ZWFkXHJcbiAgICovXHJcbiAgc2V0RGVsZXRlR3JpZFJvd1Jlc3BvbmNlKHJlc3BvbnNlOiBhbnkpIHtcclxuICAgIHRoaXMuc2V0RGVsZXRlR3JpZFJvd1Jlc3BvbnNlKHJlc3BvbnNlKTtcclxuICB9XHJcblxyXG4gIHNldEdyaWRGaWx0ZXJEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZ3JpZEZpbHRlckRhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldFR5cGVBaGVhZERhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy50eXBlQWhlYWREYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRGb3JtKGZvcm06IGFueSkge1xyXG4gICAgdGhpcy5mb3JtLm5leHQoZm9ybSk7XHJcbiAgICB0aGlzLmRpbmFtaWNGb3JtID0gZm9ybTtcclxuICB9XHJcbiAgZ2V0RGluYW1pY0Zvcm0oKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kaW5hbWljRm9ybTtcclxuICB9XHJcbiAgc2V0TmVzdGVkRm9ybShmb3JtOiBhbnkpIHtcclxuICAgIHRoaXMubmVzdGVkRm9ybS5uZXh0KGZvcm0pXHJcbiAgfVxyXG4gIHNldEhvc3REYXRhKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5ob3N0RGF0YS5uZXh0KGRhdGEpO1xyXG4gIH1cclxuICBzZXREYXNobGV0RGF0YShkYXNobGV0RGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmRhc2hsZXREYXRhLm5leHQoZGFzaGxldERhdGEpO1xyXG4gICAgdGhpcy5EYXNoTGV0RGF0YSA9IGRhc2hsZXREYXRhO1xyXG4gIH1cclxuICBnZXREYXNobGV0RGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLkRhc2hMZXREYXRhXHJcbiAgfVxyXG4gIHJlc2V0RGFzaGxldERhdGEoKSB7XHJcbiAgICB0aGlzLkRhc2hMZXREYXRhID0ge307XHJcbiAgfVxyXG4gIHJlc2V0RGFzaGxldERhdGFCeUtleShrZXlOYW1lOiBhbnkpIHtcclxuICAgIGRlbGV0ZSB0aGlzLkRhc2hMZXREYXRhW2tleU5hbWVdO1xyXG4gICAgdGhpcy5kYXNobGV0RGF0YS5uZXh0KHRoaXMuRGFzaExldERhdGEpO1xyXG4gIH1cclxuICBzZXRBcHBOYW1lKHJlc3BvbnNlOiBhbnkpIHtcclxuICAgIHRoaXMuYXBwTmFtZS5uZXh0KHJlc3BvbnNlKTtcclxuICB9XHJcbiAgc2V0TmF2aWdhdGlvbkRhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5uYXZpZ2F0aW9uRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UGVybWlzc2lvbkRhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5wZXJtaXNzaW9uRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UXVvdGVEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMucXVvdGVEYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXREZXBhcnRtZW50RGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmRlcGFydG1lbnREYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRDYXRlZ29yeURhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5jYXRlZ29yeURhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldFByb2R1Y3REYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMucHJvZHVjdERhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldFRlc3RQYXJhbWV0ZXIocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy50ZXN0UGFyYW1ldGVycy5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0RXhwb3J0RXhjZWxMaW5rKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZXhwb3J0RXhjZWxMaW5rLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRFeHBvcnRDVlNMaW5rKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZXhwb3J0Q1ZTTGluay5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UHJvZHVjdExpc3QocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5nZXRQcm9kdWN0TGlzdC5uZXh0KHJlc3BvbmNlKVxyXG4gIH1cclxuICBzZXRQcmV2aWV3SHRtbChyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnByZXZpZXdIdG1sLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRVcGRhdGVQcm9kdWN0QnJhbmNoKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMudXBkYXRlUHJvZHVjdEJyYW5jaC5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0Sm9iU2NoZWR1bGVEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZ2V0Sm9iU2NoZWR1bGVzRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0RG93bmxvYWRQZGZEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZG93bmxvYWRQZGZEYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRGaWxlRGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmdldGZpbGVEYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRQcmludFRlbXBsYXRlKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMucHJpbnREYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRGaWxlRG93bmxvYWRVcmwocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5maWxlRG93bmxvYWRVcmwubmV4dChyZXNwb25jZSlcclxuICB9XHJcbiAgc2V0Q2hhcnREYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuY2hhcnREYXRhLm5leHQocmVzcG9uY2UpXHJcbiAgfVxyXG4gIHNldFRoZW1lU2V0dGluZyhyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnRoZW1lU2V0dGluZy5uZXh0KHJlc3BvbmNlKVxyXG4gIH1cclxuICBzZXRBcHBsaWNhdGlvblNldHRpbmcocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5hcHBsaWNhdGlvblNldHRpbmcubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHJlc2V0VGhlbWVTZXR0aW5nKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMudGhlbWVTZXR0aW5nLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICByZXNldEFwcGxpY2F0aW9uU2V0dGluZyhyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmFwcGxpY2F0aW9uU2V0dGluZy5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0RmllbGREaW5hbWljQXBpUmVzcG9uY2UocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5maWVsZERpbmFtaWNSZXNwb25jZS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0VmFsaWRhdGlvbkNvbmRpdGlvbihyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmNoZWNrVmFsaWRhdGlvbi5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0R2l0VmVyc2lvbihyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmdpdFZpcnNpb24ubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldE5leHRGb3JtRGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLm5leHRGb3JtRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIHNldEdpdFZlcnNpb24gaW5zdGVhZFxyXG4gICAqL1xyXG4gIHNldEdpdFZpcnNpb24ocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5zZXRHaXRWZXJzaW9uKHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UmVwb3J0TG9hZEdyaWREYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZ2V0UmVwb3J0TG9hZERhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldElzR3JpZFNlbGVjdGlvbk9wZW5Pck5vdChjaGVjazogYm9vbGVhbikge1xyXG4gICAgdGhpcy5nZXRJc0dyaWRTZWxlY3Rpb25PcGVuLm5leHQoY2hlY2spO1xyXG4gIH1cclxuICBzZXRDaGFydE1vZGVsU2hvd0hpZGUodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5jaGFydE1vZGVsU2hvd0hpZGUubmV4dCh2YWx1ZSk7XHJcbiAgfVxyXG4gIHNldEF1ZGl0SGlzdG9yeURhdGEoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmF1ZGl0SGlzdG9yeUxpc3QubmV4dChkYXRhKTtcclxuICB9XHJcblxyXG4gIHNldEF1ZGl0VmVyc2lvbkxpc3QoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmF1ZGl0VmVyc2lvbkxpc3QubmV4dChkYXRhKTtcclxuICB9XHJcblxyXG4gIHNoYXJlVXNlck5vdGlmaWNhdGlvbihyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnVzZXJOb3RpZmljYXRpb24ubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNoYXJlVXNlck5vdGlmaWNhdGlvblNldHRpbmcocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy51c2VyTm90aWZpY2F0aW9uU2V0dGluZy5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0VXNlclByZWZlcmVuY2UodXNlclByZWZlcmVuY2U6IGFueSkge1xyXG4gICAgdGhpcy51c2VyUHJlZmVyZW5jZS5uZXh0KHVzZXJQcmVmZXJlbmNlKTtcclxuICB9XHJcbiAgc3Vic2NyaWJlVGVtZVNldHRpbmcocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5hcHBsaWNhdGlvblNldHRpbmdzLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRNb2R1bGVJbmRleChpbmRleDogYW55KSB7XHJcbiAgICB0aGlzLm1vZHVsZUluZGV4Lm5leHQoaW5kZXgpO1xyXG4gICAgdGhpcy5wTW9kdWxlSW5kZXggPSBpbmRleDtcclxuICB9XHJcbiAgc2V0TWVudUluZGV4cyhpbmRleHM6IGFueSkge1xyXG4gICAgdGhpcy5tZW51SW5kZXhzLm5leHQoaW5kZXhzKTtcclxuICAgIHRoaXMubWVudU9yU3VibWVudUluZGV4ID0gaW5kZXhzO1xyXG4gIH1cclxuICBnZXRQcm9qZWN0TW9kdWxlSW5kZXgoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wTW9kdWxlSW5kZXg7XHJcbiAgfVxyXG4gIGdldE1lbnVPclN1Ym1lbnVJbmRleHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tZW51T3JTdWJtZW51SW5kZXg7XHJcbiAgfVxyXG4gIHNldFJlcVJlc3BvbnNlKHJlcVJlc3BvbnNlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnJlcVJlc3BvbnNlLm5leHQocmVxUmVzcG9uc2UpO1xyXG4gIH1cclxuICBnZXRSZXFSZXNwb25zZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnJlcVJlc3BvbnNlO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugc2V0UmVxUmVzcG9uc2UgaW5zdGVhZFxyXG4gICAqL1xyXG4gIHNldFJlcVJlc3BvbmNlKHJlcVJlc3BvbnNlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNldFJlcVJlc3BvbnNlKHJlcVJlc3BvbnNlKTtcclxuICB9XHJcbiAgcmVzZXRIZWFkZXJNZW51KHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuaGVhZGVyTWVudS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2hhcmVQZGZGaWxlTmFtZShmaWxlTmFtZTogYW55KSB7XHJcbiAgICB0aGlzLnBkZkZpbGVOYW1lLm5leHQoZmlsZU5hbWUpO1xyXG4gIH1cclxuXHJcbiAgc2hhcmVQdWJsaWNVcmxGcm9tUzModXJsOiBhbnkpIHtcclxuICAgIHRoaXMuUzNVcmwubmV4dCh1cmwpO1xyXG4gIH1cclxuXHJcbiAgc2hhcmVHcmlkUnVubmluZ0RhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5ncmlkUnVubmluZ0RhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNoYXJlU2VydmVySG9zdE5hbWUoc2VydmVySG9zdG5hbWU6IGFueSkge1xyXG4gICAgdGhpcy5zZXJ2ZXJIb3N0bmFtZS5uZXh0KHNlcnZlckhvc3RuYW1lKTtcclxuICB9XHJcbiAgZ2V0U2VydmVyRW5kUG9pbnQocmVxOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNlcnZlckVuZFBvaW50Lm5leHQocmVxKTtcclxuICB9XHJcbiAgLy9Gb3IgQXBwXHJcbiAgY29sbGVjdGlvbkRhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5jb2xsZWN0aW9uZGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0Q2hpbGRHcmlkKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuY2hpbGRHcmlkLm5leHQocmVzcG9uY2UpO1xyXG4gICAgdGhpcy5jaGlsZGdyaWRmaWVsZHMgPSByZXNwb25jZTtcclxuICB9XHJcbiAgZ2V0Q2hpbGRHcmlkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hpbGRncmlkZmllbGRzO1xyXG4gIH1cclxuICBzaGFyZVJvbGVDaGFuZ2Uocm9sZTogYW55KSB7XHJcbiAgICB0aGlzLnJvbGVDaGFuZ2UubmV4dChyb2xlKTtcclxuICB9XHJcbiAgc2hhcmVEYXNoYm9yZFNlcmFjaChrZXk6IHN0cmluZykge1xyXG4gICAgdGhpcy5kYXNoYm9yZFNlcmNoS2V5Lm5leHQoa2V5KTtcclxuICB9XHJcbiAgc2hhcmVBZGRBbmRVcGRhdGVSZXNwb25jZShyZXNwb25jZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmFkZEFuZFVwZGF0ZVJlc3BvbmNlLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICB1cGRhdGVTZWxlY3RlZFJvd0luZGV4KGluZGV4OiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRSb3dJbmRleFNvdXJjZS5uZXh0KGluZGV4KTtcclxuICB9XHJcbiAgLy9FbmQgRm9yIEFwcFxyXG5cclxufVxyXG4iXX0=
|
|
382
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zaGFyZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9kYXRhLXNoYXJlL2RhdGEtc2hhcmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNaEQsTUFBTSxPQUFPLGdCQUFnQjtJQXFGM0I7UUFwRkEsZUFBVSxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3pDLGdCQUFXLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7UUFDMUMsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsbUJBQWMsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7UUFDOUQsbUJBQWMsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7UUFDOUQsZUFBVSxHQUFpQixJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUMxRCxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQixrQkFBYSxHQUFpQixJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUM3RCxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsYUFBUSxHQUFpQixJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsQ0FBQztRQUN4RCxTQUFJLEdBQWlCLElBQUksZUFBZSxDQUFNLElBQUksQ0FBQyxDQUFDO1FBQ3BELGFBQVEsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7UUFFeEQsd0JBQW1CLEdBQVcsRUFBRSxDQUFDO1FBQ2pDLDZCQUF3QixHQUFXLEVBQUUsQ0FBQztRQUN0QyxxQkFBZ0IsR0FBaUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENB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QUMsUUFBZ0I7UUFDeEMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBQ0Qsc0JBQXNCLENBQUMsS0FBYTtRQUNsQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFDLENBQUM7OzhHQXhYVSxnQkFBZ0I7a0hBQWhCLGdCQUFnQixjQUZmLE1BQU07NEZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0YVNoYXJlU2VydmljZSB7XHJcbiAgc2hhcmVkRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuICBjdXJyZW50UGFnZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuICBjdXJyZW50cGFnZTogc3RyaW5nID0gJyc7XHJcbiAgc2VydmVySG9zdG5hbWU6IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBzZXJ2ZXJFbmRQb2ludDogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIHN0YXRpY0RhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBzZXRTdGF0aWNEYXRhID0ge307XHJcbiAgZ3JpZENvdW50RGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIHNldEdyaWRDb3VudERhdGEgPSB7fTtcclxuICBncmlkRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIG1lbnU6IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICB0ZW1wRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIHRlbXBTdG9yZURhdGE6IGFueTtcclxuICBzYXZlRnJvbURhdGFSc3BvbmNlOiBzdHJpbmcgPSAnJztcclxuICBkZWxldGVHcmlkUm93RGF0YVJzcG9uY2U6IHN0cmluZyA9ICcnO1xyXG4gIHNhdmVSZXNwb25jZURhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBkZWxldGVHcmlkUm93UmVzcG9uY2VEYXRhOlN1YmplY3Q8YW55Pj0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIGdyaWRGaWx0ZXJEYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgdHlwZUFoZWFkRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpO1xyXG4gIGZvcm06IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBkaW5hbWljRm9ybSA9IHt9O1xyXG4gIGRvY0RhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBuZXN0ZWRGb3JtOiBTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgaG9zdERhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBkYXNobGV0RGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIERhc2hMZXREYXRhOiBhbnkgPSB7fTtcclxuICBhcHBOYW1lOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgbmF2aWdhdGlvbkRhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBwZXJtaXNzaW9uRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHF1b3RlRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGRlcGFydG1lbnREYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgY2F0ZWdvcnlEYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgcHJvZHVjdERhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICB0ZXN0UGFyYW1ldGVyczogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGV4cG9ydEV4Y2VsTGluazogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGV4cG9ydENWU0xpbms6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBnZXRQcm9kdWN0TGlzdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHByZXZpZXdIdG1sOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgdXBkYXRlUHJvZHVjdEJyYW5jaDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGdldEpvYlNjaGVkdWxlc0RhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBkb3dubG9hZFBkZkRhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBnZXRmaWxlRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGZpbGVEb3dubG9hZFVybDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGNoYXJ0RGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGFwcGxpY2F0aW9uU2V0dGluZzogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHRoZW1lU2V0dGluZzogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGZpZWxkRGluYW1pY1Jlc3BvbmNlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgY2hlY2tWYWxpZGF0aW9uOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgZGFzaGxldE1hc3RlcjogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIERhc2hsZXRNYXN0ZXI6IGFueSA9IFtdO1xyXG4gIGdpdFZpcnNpb246IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBuZXh0Rm9ybURhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBnZXRSZXBvcnRMb2FkRGF0YTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGdldElzR3JpZFNlbGVjdGlvbk9wZW46IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBjaGFydE1vZGVsU2hvd0hpZGU6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBhdWRpdEhpc3RvcnlMaXN0OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgYXVkaXRWZXJzaW9uTGlzdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGFwcGxpY2F0aW9uU2V0dGluZ3M6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICB1c2VyTm90aWZpY2F0aW9uOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgdXNlck5vdGlmaWNhdGlvblNldHRpbmc6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICB1c2VyUHJlZmVyZW5jZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIG1vZHVsZUluZGV4OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgbWVudUluZGV4czogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHBNb2R1bGVJbmRleDogYW55ID0gLTE7XHJcbiAgbWVudU9yU3VibWVudUluZGV4OiBhbnkgPSB7fTtcclxuICBoZWFkZXJNZW51OiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgcmVxdWVzdFJlc3BvbmNlOlN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG4gIG1vbmdvRGJDaGFydExpc3Q6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBNb25nb0RiQ2hhcnRMaXN0OiBhbnkgPSBbXTtcclxuICBtb25nb0Rhc2hib3JkTGlzdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHBkZkZpbGVOYW1lOiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgUzNVcmw6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcclxuICBwcmludERhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBzZXRDbGllbnROYW1lOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgZ3JpZFJ1bm5pbmdEYXRhOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgY29sbGVjdGlvbmRhdGE6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBjaGlsZEdyaWQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBjaGlsZGdyaWRmaWVsZHM6IGFueTtcclxuICByb2xlQ2hhbmdlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgZGFzaGJvcmRTZXJjaEtleTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGFkZEFuZFVwZGF0ZVJlc3BvbmNlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgcHJpdmF0ZSBzZWxlY3RlZFJvd0luZGV4U291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXIgfCBudWxsPihudWxsKTtcclxuICBzZWxlY3RlZFJvd0luZGV4JCA9IHRoaXMuc2VsZWN0ZWRSb3dJbmRleFNvdXJjZS5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgc2VuZEN1cnJlbnRQYWdlKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIGlmIChyZXNwb25jZSAhPSB1bmRlZmluZWQgJiYgcmVzcG9uY2UgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLmN1cnJlbnRQYWdlLm5leHQocmVzcG9uY2UpO1xyXG4gICAgICB0aGlzLmN1cnJlbnRwYWdlID0gcmVzcG9uY2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmN1cnJlbnRQYWdlLm5leHQoJ0hPTUUnKTtcclxuICAgICAgdGhpcy5jdXJyZW50cGFnZSA9ICdIT01FJztcclxuICAgIH1cclxuICB9XHJcbiAgZ2V0Q3VycmVudFBhZ2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50cGFnZTtcclxuICB9XHJcbiAgc2hhcmVEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuc2hhcmVkRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2hhcmVTdGF0aWNEYXRhKHN0YXRpY0RhdGE6IGFueSwgZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLnN0YXRpY0RhdGEubmV4dChkYXRhKTtcclxuICAgIHRoaXMuc2V0U3RhdGljRGF0YSA9IHN0YXRpY0RhdGE7XHJcbiAgfVxyXG4gIGdldFN0YXRpRGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLnNldFN0YXRpY0RhdGE7XHJcbiAgfVxyXG4gIHNoYXJlR3JpZENvdW50RGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmdyaWRDb3VudERhdGEubmV4dChyZXNwb25jZS5jb3VudCk7XHJcbiAgICB0aGlzLnNldEdyaWRDb3VudERhdGEgPSByZXNwb25jZS5ncmlkQ291bnREYXRhO1xyXG4gIH1cclxuICBnZXRHcmlkQ291bnREYXRhKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2V0R3JpZENvdW50RGF0YTtcclxuICB9XHJcbiAgc2hhcmVHcmlkRGF0YShncmlkRGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmdyaWREYXRhLm5leHQoZ3JpZERhdGEpO1xyXG4gIH1cclxuICBzaGFyZURhc2hsZXRNYXN0ZXIocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5kYXNobGV0TWFzdGVyLm5leHQocmVzcG9uY2UpO1xyXG4gICAgdGhpcy5EYXNobGV0TWFzdGVyID0gcmVzcG9uY2U7XHJcbiAgfVxyXG4gIGdldERhc2hsZXRNYXN0ZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5EYXNobGV0TWFzdGVyO1xyXG4gIH1cclxuICBzaGFyZU1vbmdvQ2hhcnQoY2hhcnREYXRhOiBhbnkpIHtcclxuICAgIHRoaXMubW9uZ29EYkNoYXJ0TGlzdC5uZXh0KGNoYXJ0RGF0YSk7XHJcbiAgICB0aGlzLk1vbmdvRGJDaGFydExpc3QgPSBjaGFydERhdGE7XHJcbiAgfVxyXG4gIGdldE1vbmdvQ2hhcnQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5Nb25nb0RiQ2hhcnRMaXN0O1xyXG4gIH1cclxuICBzaGFyZU1vbmdvRGFzaGJvcmQocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5tb25nb0Rhc2hib3JkTGlzdC5uZXh0KHJlc3BvbmNlKVxyXG4gIH1cclxuICBzaGFyZU1lbnVEYXRhKG1lbnVEYXRhOiBhbnkpIHtcclxuICAgIHRoaXMubWVudS5uZXh0KG1lbnVEYXRhKTtcclxuICB9XHJcbiAgc2hhcmVUZW1wRGF0YSh0ZW1wRGF0YTogYW55KSB7XHJcbiAgICB0aGlzLnRlbXBEYXRhLm5leHQodGVtcERhdGEpO1xyXG4gICAgdGhpcy50ZW1wU3RvcmVEYXRhID0gdGVtcERhdGE7XHJcbiAgfVxyXG4gIGdldFRlbXBEYXRhKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGVtcFN0b3JlRGF0YTtcclxuICB9XHJcbiAgc2V0U2F2ZVJlc3BvbmNlKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuc2F2ZVJlc3BvbmNlRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICAgIHRoaXMuc2F2ZUZyb21EYXRhUnNwb25jZSA9IHJlc3BvbmNlO1xyXG4gIH1cclxuICBnZXRTYXZlUmVzcG9uY2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zYXZlRnJvbURhdGFSc3BvbmNlO1xyXG4gIH1cclxuXHJcbiAgc2V0RGVsZXRlR3JpZFJvd1Jlc3BvbnNlKHJlc3BvbnNlOiBhbnkpIHtcclxuICAgIHRoaXMuZGVsZXRlR3JpZFJvd1Jlc3BvbmNlRGF0YS5uZXh0KHJlc3BvbnNlKTtcclxuICAgIHRoaXMuZGVsZXRlR3JpZFJvd0RhdGFSc3BvbmNlID0gcmVzcG9uc2U7XHJcbiAgfVxyXG4gIGdldERlbGV0ZVJvd0RhdGFSZXNwb25jZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmRlbGV0ZUdyaWRSb3dEYXRhUnNwb25jZTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIHNldERlbGV0ZUdyaWRSb3dSZXNwb25zZSBpbnN0ZWFkXHJcbiAgICovXHJcbiAgc2V0RGVsZXRlR3JpZFJvd1Jlc3BvbmNlKHJlc3BvbnNlOiBhbnkpIHtcclxuICAgIHRoaXMuc2V0RGVsZXRlR3JpZFJvd1Jlc3BvbnNlKHJlc3BvbnNlKTtcclxuICB9XHJcblxyXG4gIHNldEdyaWRGaWx0ZXJEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZ3JpZEZpbHRlckRhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldFR5cGVBaGVhZERhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy50eXBlQWhlYWREYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRGb3JtKGZvcm06IGFueSkge1xyXG4gICAgdGhpcy5mb3JtLm5leHQoZm9ybSk7XHJcbiAgICB0aGlzLmRpbmFtaWNGb3JtID0gZm9ybTtcclxuICB9XHJcbiAgZ2V0RGluYW1pY0Zvcm0oKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kaW5hbWljRm9ybTtcclxuICB9XHJcbiAgc2V0TmVzdGVkRm9ybShmb3JtOiBhbnkpIHtcclxuICAgIHRoaXMubmVzdGVkRm9ybS5uZXh0KGZvcm0pXHJcbiAgfVxyXG4gIHNldEhvc3REYXRhKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5ob3N0RGF0YS5uZXh0KGRhdGEpO1xyXG4gIH1cclxuICBzZXREYXNobGV0RGF0YShkYXNobGV0RGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmRhc2hsZXREYXRhLm5leHQoZGFzaGxldERhdGEpO1xyXG4gICAgdGhpcy5EYXNoTGV0RGF0YSA9IGRhc2hsZXREYXRhO1xyXG4gIH1cclxuICBnZXREYXNobGV0RGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLkRhc2hMZXREYXRhXHJcbiAgfVxyXG4gIHJlc2V0RGFzaGxldERhdGEoKSB7XHJcbiAgICB0aGlzLkRhc2hMZXREYXRhID0ge307XHJcbiAgfVxyXG4gIHJlc2V0RGFzaGxldERhdGFCeUtleShrZXlOYW1lOiBhbnkpIHtcclxuICAgIGRlbGV0ZSB0aGlzLkRhc2hMZXREYXRhW2tleU5hbWVdO1xyXG4gICAgdGhpcy5kYXNobGV0RGF0YS5uZXh0KHRoaXMuRGFzaExldERhdGEpO1xyXG4gIH1cclxuICBzZXRBcHBOYW1lKHJlc3BvbnNlOiBhbnkpIHtcclxuICAgIHRoaXMuYXBwTmFtZS5uZXh0KHJlc3BvbnNlKTtcclxuICB9XHJcbiAgc2V0TmF2aWdhdGlvbkRhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5uYXZpZ2F0aW9uRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UGVybWlzc2lvbkRhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5wZXJtaXNzaW9uRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UXVvdGVEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMucXVvdGVEYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXREZXBhcnRtZW50RGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmRlcGFydG1lbnREYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRDYXRlZ29yeURhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5jYXRlZ29yeURhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldFByb2R1Y3REYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMucHJvZHVjdERhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldFRlc3RQYXJhbWV0ZXIocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy50ZXN0UGFyYW1ldGVycy5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0RXhwb3J0RXhjZWxMaW5rKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZXhwb3J0RXhjZWxMaW5rLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRFeHBvcnRDVlNMaW5rKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZXhwb3J0Q1ZTTGluay5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UHJvZHVjdExpc3QocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5nZXRQcm9kdWN0TGlzdC5uZXh0KHJlc3BvbmNlKVxyXG4gIH1cclxuICBzZXRQcmV2aWV3SHRtbChyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnByZXZpZXdIdG1sLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRVcGRhdGVQcm9kdWN0QnJhbmNoKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMudXBkYXRlUHJvZHVjdEJyYW5jaC5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0Sm9iU2NoZWR1bGVEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZ2V0Sm9iU2NoZWR1bGVzRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0RG93bmxvYWRQZGZEYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZG93bmxvYWRQZGZEYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRGaWxlRGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmdldGZpbGVEYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRQcmludFRlbXBsYXRlKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMucHJpbnREYXRhLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRGaWxlRG93bmxvYWRVcmwocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5maWxlRG93bmxvYWRVcmwubmV4dChyZXNwb25jZSlcclxuICB9XHJcbiAgc2V0Q2hhcnREYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuY2hhcnREYXRhLm5leHQocmVzcG9uY2UpXHJcbiAgfVxyXG4gIHNldFRoZW1lU2V0dGluZyhyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnRoZW1lU2V0dGluZy5uZXh0KHJlc3BvbmNlKVxyXG4gIH1cclxuICBzZXRBcHBsaWNhdGlvblNldHRpbmcocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5hcHBsaWNhdGlvblNldHRpbmcubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHJlc2V0VGhlbWVTZXR0aW5nKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMudGhlbWVTZXR0aW5nLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICByZXNldEFwcGxpY2F0aW9uU2V0dGluZyhyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmFwcGxpY2F0aW9uU2V0dGluZy5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0RmllbGREaW5hbWljQXBpUmVzcG9uY2UocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5maWVsZERpbmFtaWNSZXNwb25jZS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0VmFsaWRhdGlvbkNvbmRpdGlvbihyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmNoZWNrVmFsaWRhdGlvbi5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0R2l0VmVyc2lvbihyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLmdpdFZpcnNpb24ubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldE5leHRGb3JtRGF0YShyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLm5leHRGb3JtRGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIHNldEdpdFZlcnNpb24gaW5zdGVhZFxyXG4gICAqL1xyXG4gIHNldEdpdFZpcnNpb24ocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5zZXRHaXRWZXJzaW9uKHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0UmVwb3J0TG9hZEdyaWREYXRhKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuZ2V0UmVwb3J0TG9hZERhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNldElzR3JpZFNlbGVjdGlvbk9wZW5Pck5vdChjaGVjazogYm9vbGVhbikge1xyXG4gICAgdGhpcy5nZXRJc0dyaWRTZWxlY3Rpb25PcGVuLm5leHQoY2hlY2spO1xyXG4gIH1cclxuICBzZXRDaGFydE1vZGVsU2hvd0hpZGUodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5jaGFydE1vZGVsU2hvd0hpZGUubmV4dCh2YWx1ZSk7XHJcbiAgfVxyXG4gIHNldEF1ZGl0SGlzdG9yeURhdGEoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmF1ZGl0SGlzdG9yeUxpc3QubmV4dChkYXRhKTtcclxuICB9XHJcblxyXG4gIHNldEF1ZGl0VmVyc2lvbkxpc3QoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLmF1ZGl0VmVyc2lvbkxpc3QubmV4dChkYXRhKTtcclxuICB9XHJcblxyXG4gIHNoYXJlVXNlck5vdGlmaWNhdGlvbihyZXNwb25jZTogYW55KSB7XHJcbiAgICB0aGlzLnVzZXJOb3RpZmljYXRpb24ubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNoYXJlVXNlck5vdGlmaWNhdGlvblNldHRpbmcocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy51c2VyTm90aWZpY2F0aW9uU2V0dGluZy5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0VXNlclByZWZlcmVuY2UodXNlclByZWZlcmVuY2U6IGFueSkge1xyXG4gICAgdGhpcy51c2VyUHJlZmVyZW5jZS5uZXh0KHVzZXJQcmVmZXJlbmNlKTtcclxuICB9XHJcbiAgc3Vic2NyaWJlVGVtZVNldHRpbmcocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5hcHBsaWNhdGlvblNldHRpbmdzLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICBzZXRNb2R1bGVJbmRleChpbmRleDogYW55KSB7XHJcbiAgICB0aGlzLm1vZHVsZUluZGV4Lm5leHQoaW5kZXgpO1xyXG4gICAgdGhpcy5wTW9kdWxlSW5kZXggPSBpbmRleDtcclxuICB9XHJcbiAgc2V0TWVudUluZGV4cyhpbmRleHM6IGFueSkge1xyXG4gICAgdGhpcy5tZW51SW5kZXhzLm5leHQoaW5kZXhzKTtcclxuICAgIHRoaXMubWVudU9yU3VibWVudUluZGV4ID0gaW5kZXhzO1xyXG4gIH1cclxuICBnZXRQcm9qZWN0TW9kdWxlSW5kZXgoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wTW9kdWxlSW5kZXg7XHJcbiAgfVxyXG4gIGdldE1lbnVPclN1Ym1lbnVJbmRleHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tZW51T3JTdWJtZW51SW5kZXg7XHJcbiAgfVxyXG4gIHNldFJlcVJlc3BvbnNlKHJlcVJlc3BvbnNlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnJlcXVlc3RSZXNwb25jZS5uZXh0KHJlcVJlc3BvbnNlKTtcclxuICB9XHJcbiAgcmVzZXRIZWFkZXJNZW51KHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuaGVhZGVyTWVudS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2hhcmVQZGZGaWxlTmFtZShmaWxlTmFtZTogYW55KSB7XHJcbiAgICB0aGlzLnBkZkZpbGVOYW1lLm5leHQoZmlsZU5hbWUpO1xyXG4gIH1cclxuXHJcbiAgc2hhcmVQdWJsaWNVcmxGcm9tUzModXJsOiBhbnkpIHtcclxuICAgIHRoaXMuUzNVcmwubmV4dCh1cmwpO1xyXG4gIH1cclxuXHJcbiAgc2hhcmVHcmlkUnVubmluZ0RhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5ncmlkUnVubmluZ0RhdGEubmV4dChyZXNwb25jZSk7XHJcbiAgfVxyXG4gIHNoYXJlU2VydmVySG9zdE5hbWUoc2VydmVySG9zdG5hbWU6IGFueSkge1xyXG4gICAgdGhpcy5zZXJ2ZXJIb3N0bmFtZS5uZXh0KHNlcnZlckhvc3RuYW1lKTtcclxuICB9XHJcbiAgZ2V0U2VydmVyRW5kUG9pbnQocmVxOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNlcnZlckVuZFBvaW50Lm5leHQocmVxKTtcclxuICB9XHJcbiAgLy9Gb3IgQXBwXHJcbiAgY29sbGVjdGlvbkRhdGEocmVzcG9uY2U6IGFueSkge1xyXG4gICAgdGhpcy5jb2xsZWN0aW9uZGF0YS5uZXh0KHJlc3BvbmNlKTtcclxuICB9XHJcbiAgc2V0Q2hpbGRHcmlkKHJlc3BvbmNlOiBhbnkpIHtcclxuICAgIHRoaXMuY2hpbGRHcmlkLm5leHQocmVzcG9uY2UpO1xyXG4gICAgdGhpcy5jaGlsZGdyaWRmaWVsZHMgPSByZXNwb25jZTtcclxuICB9XHJcbiAgZ2V0Q2hpbGRHcmlkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hpbGRncmlkZmllbGRzO1xyXG4gIH1cclxuICBzaGFyZVJvbGVDaGFuZ2Uocm9sZTogYW55KSB7XHJcbiAgICB0aGlzLnJvbGVDaGFuZ2UubmV4dChyb2xlKTtcclxuICB9XHJcbiAgc2hhcmVEYXNoYm9yZFNlcmFjaChrZXk6IHN0cmluZykge1xyXG4gICAgdGhpcy5kYXNoYm9yZFNlcmNoS2V5Lm5leHQoa2V5KTtcclxuICB9XHJcbiAgc2hhcmVBZGRBbmRVcGRhdGVSZXNwb25jZShyZXNwb25jZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmFkZEFuZFVwZGF0ZVJlc3BvbmNlLm5leHQocmVzcG9uY2UpO1xyXG4gIH1cclxuICB1cGRhdGVTZWxlY3RlZFJvd0luZGV4KGluZGV4OiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRSb3dJbmRleFNvdXJjZS5uZXh0KGluZGV4KTtcclxuICB9XHJcbiAgLy9FbmQgRm9yIEFwcFxyXG5cclxufVxyXG4iXX0=
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export const serverHostList = [
|
|
2
2
|
{ "clientEndpoint": "localhost", "serverEndpoint": "http://localhost:8104" },
|
|
3
3
|
{ "clientCode": "ELABS-ELABS01-SIT", "clientEndpoint": "sit.elabss.ai", "serverEndpoint": "https://sitserverelabs.elabss.ai" },
|
|
4
|
+
{ "clientCode": "SWATANTRA", "clientEndpoint": "swatantra.co.in", "serverEndpoint": "https://api.swatantra.co.in" },
|
|
4
5
|
{ "clientCode": "DYNO-TOOLS", "clientEndpoint": "152.67.7.254", "serverEndpoint": "http://92.4.95.206" }
|
|
5
6
|
];
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVySG9zdExpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2Vudi9zZXJ2ZXJIb3N0TGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUU7SUFDNUUsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGtDQUFrQyxFQUFFO0lBQzlILEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSw2QkFBNkIsRUFBRTtJQUNuSCxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFO0NBQ3pHLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3Qgc2VydmVySG9zdExpc3QgPSBbXHJcbiAgeyBcImNsaWVudEVuZHBvaW50XCI6IFwibG9jYWxob3N0XCIsIFwic2VydmVyRW5kcG9pbnRcIjogXCJodHRwOi8vbG9jYWxob3N0OjgxMDRcIiB9LFxyXG4gIHsgXCJjbGllbnRDb2RlXCI6IFwiRUxBQlMtRUxBQlMwMS1TSVRcIiwgXCJjbGllbnRFbmRwb2ludFwiOiBcInNpdC5lbGFic3MuYWlcIiwgXCJzZXJ2ZXJFbmRwb2ludFwiOiBcImh0dHBzOi8vc2l0c2VydmVyZWxhYnMuZWxhYnNzLmFpXCIgfSxcclxuICB7IFwiY2xpZW50Q29kZVwiOiBcIlNXQVRBTlRSQVwiLCBcImNsaWVudEVuZHBvaW50XCI6IFwic3dhdGFudHJhLmNvLmluXCIsIFwic2VydmVyRW5kcG9pbnRcIjogXCJodHRwczovL2FwaS5zd2F0YW50cmEuY28uaW5cIiB9LFxyXG4gIHsgXCJjbGllbnRDb2RlXCI6IFwiRFlOTy1UT09MU1wiLCBcImNsaWVudEVuZHBvaW50XCI6IFwiMTUyLjY3LjcuMjU0XCIsIFwic2VydmVyRW5kcG9pbnRcIjogXCJodHRwOi8vOTIuNC45NS4yMDZcIiB9XHJcbl1cclxuIl19
|
|
@@ -121,7 +121,7 @@ class DataShareService {
|
|
|
121
121
|
this.saveFromDataRsponce = '';
|
|
122
122
|
this.deleteGridRowDataRsponce = '';
|
|
123
123
|
this.saveResponceData = new BehaviorSubject(null);
|
|
124
|
-
this.
|
|
124
|
+
this.deleteGridRowResponceData = new BehaviorSubject(null);
|
|
125
125
|
this.gridFilterData = new BehaviorSubject(null);
|
|
126
126
|
this.typeAheadData = new BehaviorSubject(null);
|
|
127
127
|
this.form = new BehaviorSubject(null);
|
|
@@ -171,7 +171,7 @@ class DataShareService {
|
|
|
171
171
|
this.pModuleIndex = -1;
|
|
172
172
|
this.menuOrSubmenuIndex = {};
|
|
173
173
|
this.headerMenu = new Subject();
|
|
174
|
-
this.
|
|
174
|
+
this.requestResponce = new Subject();
|
|
175
175
|
this.mongoDbChartList = new Subject();
|
|
176
176
|
this.MongoDbChartList = [];
|
|
177
177
|
this.mongoDashbordList = new Subject();
|
|
@@ -256,7 +256,7 @@ class DataShareService {
|
|
|
256
256
|
return this.saveFromDataRsponce;
|
|
257
257
|
}
|
|
258
258
|
setDeleteGridRowResponse(response) {
|
|
259
|
-
this.
|
|
259
|
+
this.deleteGridRowResponceData.next(response);
|
|
260
260
|
this.deleteGridRowDataRsponce = response;
|
|
261
261
|
}
|
|
262
262
|
getDeleteRowDataResponce() {
|
|
@@ -430,16 +430,7 @@ class DataShareService {
|
|
|
430
430
|
return this.menuOrSubmenuIndex;
|
|
431
431
|
}
|
|
432
432
|
setReqResponse(reqResponse) {
|
|
433
|
-
this.
|
|
434
|
-
}
|
|
435
|
-
getReqResponse() {
|
|
436
|
-
return this.reqResponse;
|
|
437
|
-
}
|
|
438
|
-
/**
|
|
439
|
-
* @deprecated Use setReqResponse instead
|
|
440
|
-
*/
|
|
441
|
-
setReqResponce(reqResponse) {
|
|
442
|
-
this.setReqResponse(reqResponse);
|
|
433
|
+
this.requestResponce.next(reqResponse);
|
|
443
434
|
}
|
|
444
435
|
resetHeaderMenu(responce) {
|
|
445
436
|
this.headerMenu.next(responce);
|
|
@@ -592,6 +583,7 @@ var StorageTokenStatus;
|
|
|
592
583
|
const serverHostList = [
|
|
593
584
|
{ "clientEndpoint": "localhost", "serverEndpoint": "http://localhost:8104" },
|
|
594
585
|
{ "clientCode": "ELABS-ELABS01-SIT", "clientEndpoint": "sit.elabss.ai", "serverEndpoint": "https://sitserverelabs.elabss.ai" },
|
|
586
|
+
{ "clientCode": "SWATANTRA", "clientEndpoint": "swatantra.co.in", "serverEndpoint": "https://api.swatantra.co.in" },
|
|
595
587
|
{ "clientCode": "DYNO-TOOLS", "clientEndpoint": "152.67.7.254", "serverEndpoint": "http://92.4.95.206" }
|
|
596
588
|
];
|
|
597
589
|
|
|
@@ -5451,10 +5443,10 @@ class AuthService {
|
|
|
5451
5443
|
}
|
|
5452
5444
|
}
|
|
5453
5445
|
resetData() {
|
|
5454
|
-
|
|
5455
|
-
|
|
5456
|
-
this.
|
|
5457
|
-
this.
|
|
5446
|
+
this.storageService.removeDataFormStorage();
|
|
5447
|
+
this.apiService.resetMenuData();
|
|
5448
|
+
this.apiService.resetTempData();
|
|
5449
|
+
this.apiService.resetGridData();
|
|
5458
5450
|
this.envService.setRequestType('PUBLIC');
|
|
5459
5451
|
this.apiCallService.getApplicationAllSettings();
|
|
5460
5452
|
}
|