ngx-histaff-alpha 4.4.0 → 4.4.2
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/esm2022/lib/app/libraries/core-navigation-tracker/core-navigation-tracker/core-navigation-tracker.component.mjs +3 -3
- package/esm2022/lib/app/libraries/core-page-view/core-page-view/core-page-view.component.mjs +5 -4
- package/esm2022/lib/app/libraries/core-page-view/enum-interfaces.mjs +2 -1
- package/esm2022/lib/app/services/auth.service.mjs +12 -10
- package/fesm2022/ngx-histaff-alpha.mjs +10 -7
- package/fesm2022/ngx-histaff-alpha.mjs.map +1 -1
- package/lib/app/libraries/core-page-view/enum-interfaces.d.ts +4 -1
- package/lib/app/services/auth.service.d.ts +3 -1
- package/package.json +1 -1
|
@@ -3,7 +3,7 @@ import { NavigationCancel, NavigationEnd, NavigationError, NavigationStart } fro
|
|
|
3
3
|
import { Subject, filter, takeUntil } from 'rxjs';
|
|
4
4
|
import { EnumSignalRType } from '../../../enum/EnumSignalRType';
|
|
5
5
|
import { EnumTranslateKey } from "alpha-global-constants";
|
|
6
|
-
import { noneAutoClosedAlertOptions } from '../../../constants/alertOptions';
|
|
6
|
+
import { alertOptions, noneAutoClosedAlertOptions } from '../../../constants/alertOptions';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "../../../services/auth.service";
|
|
9
9
|
import * as i2 from "../../../services/developer-validation.service";
|
|
@@ -135,7 +135,7 @@ export class CoreNavigationTrackerComponent {
|
|
|
135
135
|
if (!tryFind?.length && !this.authService.data$.value?.isRoot && !this.authService.data$.value?.isAdmin) {
|
|
136
136
|
if (!(["/auth/login", "/home"].includes(functionFilter[0].path))) {
|
|
137
137
|
this.alertService.error(functionFilter[0].path + " " +
|
|
138
|
-
this.mls.trans('CORE.PERMISSION.THE_PATH_IS_NOT_PERMITTED'),
|
|
138
|
+
this.mls.trans('CORE.PERMISSION.THE_PATH_IS_NOT_PERMITTED'), alertOptions);
|
|
139
139
|
this.router.navigateByUrl('/home');
|
|
140
140
|
}
|
|
141
141
|
}
|
|
@@ -303,4 +303,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
303
303
|
type: Component,
|
|
304
304
|
args: [{ selector: 'core-navigation-tracker', standalone: true, imports: [], template: "" }]
|
|
305
305
|
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.DeveloperValidationService }, { type: i3.Router }, { type: i3.ActivatedRoute }, { type: i4.RoutingService }, { type: i5.LayoutService }, { type: i6.HubConnectionService }, { type: i7.UserActivityService }, { type: i8.UrlService }, { type: i9.NavigatorService }, { type: i10.AlertService }, { type: i11.DialogService }, { type: i12.MultiLanguageService }, { type: i13.AppService }, { type: i14.AppConfigService }] });
|
|
306
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1uYXZpZ2F0aW9uLXRyYWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLW5hdmlnYXRpb24tdHJhY2tlci9jb3JlLW5hdmlnYXRpb24tdHJhY2tlci9jb3JlLW5hdmlnYXRpb24tdHJhY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBa0IsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQXVCLE1BQU0saUJBQWlCLENBQUM7QUFDekksT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFZaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHMUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUF3QjdFLE1BQU0sT0FBTyw4QkFBOEI7SUFzQ3pDLFlBQ1UsV0FBd0IsRUFDeEIsR0FBK0IsRUFDL0IsTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLGNBQThCLEVBQy9CLGFBQTRCLEVBQzNCLG9CQUEwQyxFQUMxQyxtQkFBd0MsRUFD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SUFBSSxFQUFFLElBQUk7U0FDWCxDQUFBO1FBRUQsSUFBSSxDQUFDLENBQUMsVUFBVSxFQUFFO1lBQ2hCLElBQUk7Z0JBQ0YsVUFBVSxFQUFFLE1BQU0sQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDN0M7WUFBQyxPQUFPLENBQUMsRUFBRTtnQkFDVixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2pCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDL0MsQ0FBQzs4R0EvV1UsOEJBQThCO2tHQUE5Qiw4QkFBOEIsbUZDMUMzQyxFQUFBOzsyRkQwQ2EsOEJBQThCO2tCQVAxQyxTQUFTOytCQUNFLHlCQUF5QixjQUN2QixJQUFJLFdBQ1AsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQsIGlzRGV2TW9kZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkNhbmNlbCwgTmF2aWdhdGlvbkVuZCwgTmF2aWdhdGlvbkVycm9yLCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciwgUm91dGVyRXZlbnQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEVudW1TaWduYWxSVHlwZSB9IGZyb20gJy4uLy4uLy4uL2VudW0vRW51bVNpZ25hbFJUeXBlJztcclxuaW1wb3J0IHsgSUh1YkNvbm5lY3Rpb25BY3Rpdml0eSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvSUh1YkNvbm5lY3Rpb25BY3Rpdml0eSc7XHJcbmltcG9ydCB7IFJvdXRpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcm91dGluZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xheW91dC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHViQ29ubmVjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9odWItY29ubmVjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlckFjdGl2aXR5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3VzZXItYWN0aXZpdHkuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYWxlcnQvYWxlcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IElSb3V0aW5nSGlzdG9yeUl0ZW0gfSBmcm9tICcuLi8uLi9jb3JlLXJvdXRpbmctaGlzdG9yeS9jb3JlLXJvdXRpbmctaGlzdG9yeS9jb3JlLXJvdXRpbmctaGlzdG9yeS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVcmxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXJsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbmF2aWdhdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgSU5hdmlnYXRvckl0ZW0gfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL0lOYXZpZ2F0b3JJdGVtJztcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYWxlcnRPcHRpb25zJztcclxuaW1wb3J0IHsgSUF1dGhEYXRhIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JQXV0aERhdGEnO1xyXG5pbXBvcnQgeyBBcHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXBwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXBwLWNvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGV2ZWxvcGVyVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9kZXZlbG9wZXItdmFsaWRhdGlvbi5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUxvZ1VzZXJBY3Rpdml0eSB7XHJcbiAgY2xpZW50Q29kZTogc3RyaW5nO1xyXG4gIGFwcFR5cGU6IHN0cmluZztcclxuICB1c2VybmFtZT86IHN0cmluZztcclxuICBzaWQ/OiBzdHJpbmc7XHJcbiAgbG9naW5UaW1lPzogRGF0ZTtcclxuICBhY2Nlc3NUaW1lOiBEYXRlO1xyXG4gIHBhdGg6IHN0cmluZztcclxuICBwYXRobmFtZT86IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjb3JlLW5hdmlnYXRpb24tdHJhY2tlcicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1uYXZpZ2F0aW9uLXRyYWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVOYXZpZ2F0aW9uVHJhY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIG5hdmlnYXRpbmchOiBib29sZWFuO1xyXG4gIHVybCE6IHN0cmluZztcclxuXHJcbiAgbGFuZyE6IHN0cmluZztcclxuXHJcbiAgYXBwQ29uZmlnOiBhbnkgPSB7XHJcbiAgICBzaG93TGF5b3V0OiAnZmFsc2UnXHJcbiAgfTtcclxuXHJcbiAgYXBwSW5pdGlhbGl6aW5nITogYm9vbGVhbjtcclxuICBsb2FkaW5nITogYm9vbGVhbjtcclxuICBzdWJtaXR0aW5nITogYm9vbGVhbjtcclxuICBtZW51T3BlbiE6IGJvb2xlYW47XHJcbiAgbGVmdGJhclJlZHVjZWQhOiBib29sZWFuO1xyXG4gIGtleXdvcmQhOiBzdHJpbmc7XHJcbiAgc2lkITogc3RyaW5nO1xyXG4gIHVzZXJuYW1lITogc3RyaW5nO1xyXG4gIGV4cGlyZXNBdCE6IHN0cmluZztcclxuICBhdmF0YXIhOiBzdHJpbmc7XHJcblxyXG5cclxuICB1bnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHJvdXRpbmdIaXN0b3J5OiBJUm91dGluZ0hpc3RvcnlJdGVtW10gPSBbXTtcclxuXHJcbiAgcGVuZGluZ1VybCE6IHN0cmluZztcclxuICBsYXN0Q2xpY2tlZE1lbnVJdGVtITogSU5hdmlnYXRvckl0ZW0gfCBudWxsO1xyXG4gIGxhc3RDbGlja2VkTWVudUl0ZW1TdHJpbmchOiBzdHJpbmc7XHJcblxyXG4gIGRpYWxvZ0luc3RhbmNlTnVtYmVyITogbnVtYmVyO1xyXG5cclxuICBkdnNWYWxpZGF0aW5nITogYm9vbGVhbjtcclxuICBkdnNTZWN1cml0eVBhc3NlZCE6IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGR2czogRGV2ZWxvcGVyVmFsaWRhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwcml2YXRlIHJvdXRpbmdTZXJ2aWNlOiBSb3V0aW5nU2VydmljZSxcclxuICAgIHB1YmxpYyBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBodWJDb25uZWN0aW9uU2VydmljZTogSHViQ29ubmVjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHVzZXJBY3Rpdml0eVNlcnZpY2U6IFVzZXJBY3Rpdml0eVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHVybFNlcnZpY2U6IFVybFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG5hdmlnYXRvclNlcnZpY2U6IE5hdmlnYXRvclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlXHJcbiAgKSB7XHJcblxyXG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJjb2RlVmVyaWZpZXJcIilcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC5waXBlKGZpbHRlcihzID0+ICEhcykpLnN1YnNjcmliZSh4ID0+IHtcclxuICAgICAgICB0aGlzLmxhc3RDbGlja2VkTWVudUl0ZW0gPSB4XHJcbiAgICAgICAgdGhpcy5sYXN0Q2xpY2tlZE1lbnVJdGVtU3RyaW5nID0gYFske3g/LmlkfV09PiR7dGhpcy5tbHMudHJhbnMoeCEuY29kZSl9PT4oJHt4Py51cmx9KWBcclxuICAgICAgfSlcclxuICAgIClcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgaXNEZXZlbG9wbWVudCA9IGlzRGV2TW9kZSgpO1xyXG4gICAgICBjb25zb2xlLmxvZyhcImlzRGV2ZWxvcG1lbnRcIiwgaXNEZXZlbG9wbWVudClcclxuICAgICAgaWYgKGlzRGV2ZWxvcG1lbnQgJiYgIXRoaXMuZHZzLnNlY3VyaXR5UGFzc2VkJC52YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuZHZzLnZhbGlkYXRlRGV2ZWxvcGVyVmlhUG9wdXAoKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuXHJcbiAgICAgIHRoaXMudXJsU2VydmljZS5jdXJyZW50Um91dGVVcmwkLm5leHQodGhpcy5yb3V0ZXIudXJsKTtcclxuXHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2Uucm91dGluZ0hpc3RvcnkkLnN1YnNjcmliZSh4ID0+IHRoaXMucm91dGluZ0hpc3RvcnkgPSB4KVxyXG4gICAgICApXHJcblxyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgICB0aGlzLnJvdXRlci5ldmVudHMucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChyb3V0ZXJFdmVudCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrUm91dGVyRXZlbnQocm91dGVyRXZlbnQgYXMgUm91dGVyRXZlbnQpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgKVxyXG5cclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgdGhpcy51cmxTZXJ2aWNlLmN1cnJlbnRSb3V0ZVVybCQucGlwZShcclxuICAgICAgICAgIGZpbHRlcih4ID0+IHtcclxuICAgICAgICAgICAgaWYgKCEhdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dDb25maXJtRGlhbG9nJC52YWx1ZSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICByZXR1cm4gISEhWycvJ10uaW5jbHVkZXMoeClcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoeCA9PiB7XHJcbiAgICAgICAgICBjb25zdCBpZ25vcmVkUGF0aHMgPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLmlnbm9yZWRQYXRocyQudmFsdWU7XHJcbiAgICAgICAgICBjb25zdCBmdWxsRnVuY3Rpb25zID0gdGhpcy5yb3V0aW5nU2VydmljZS5mdWxsRnVuY3Rpb25zJC52YWx1ZT8uZmlsdGVyKGYgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gIWlnbm9yZWRQYXRocz8uaW5jbHVkZXMoZi5wYXRoKVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBjb25zdCBmdW5jdGlvbkZpbHRlciA9IGZ1bGxGdW5jdGlvbnMuZmlsdGVyKGYgPT4ge1xyXG4gICAgICAgICAgICBpZiAoZi5wYXRoRnVsbE1hdGNoKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGYucGF0aCA9PT0geDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAvL3JldHVybiB4LmluZGV4T2YoZi5wYXRoKSA9PT0gMFxyXG5cclxuICAgICAgICAgICAgICAvLyBleHBlcmltZW50YWwgc2luY2UgMjAyNC0wNC0wMlxyXG4gICAgICAgICAgICAgIHJldHVybiB4LmluZGV4T2YoZi5wYXRoKSA+PSAwIC8vIGZvciBzb21lIGF1eGlsaWFyeSByb3V0ZXMsIGZvciBleCAuLi4ocG9wdXBBdXgyOm9ubGluZS11c2VycykgdG8gYmUgYWNjZXB0YWJsZVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcImZ1bmN0aW9uRmlsdGVyXCIsIGlnbm9yZWRQYXRocylcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiZnVuY3Rpb25GaWx0ZXJcIiwgZnVuY3Rpb25GaWx0ZXIpXHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcImZ1bmN0aW9uRmlsdGVyXCIsIGlnbm9yZWRQYXRocy5pbmNsdWRlcyhcIi9jbXMvc3lzdGVtL3VwZXJtaXNzaW9uLzBcIikpXHJcblxyXG4gICAgICAgICAgaWYgKHguaW5kZXhPZignL3Jvb3QnKSAhPT0gMCAmJiAhISFmdW5jdGlvbkZpbHRlci5sZW5ndGggJiYgISEhaWdub3JlZFBhdGhzLmluY2x1ZGVzKHgpICYmICEhdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC52YWx1ZSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8uaXNSb290KSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5kaWFsb2dJbnN0YW5jZU51bWJlciA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5kaWFsb2dDb25maXJtZWQkLm5leHQoe1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2VOdW1iZXI6IHRoaXMuZGlhbG9nSW5zdGFuY2VOdW1iZXIsXHJcbiAgICAgICAgICAgICAgICBjb25maXJtZWQ6IGZhbHNlXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmNyZWF0ZU5ldyhcclxuICAgICAgICAgICAgICAgIEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19USVRMRSxcclxuICAgICAgICAgICAgICAgIEVudW1UcmFuc2xhdGVLZXkuWUVTLFxyXG4gICAgICAgICAgICAgICAgRW51bVRyYW5zbGF0ZUtleS5JR05PUkUsXHJcbiAgICAgICAgICAgICAgICBmYWxzZSxcclxuICAgICAgICAgICAgICAgIEVudW1UcmFuc2xhdGVLZXkuUk9PVF9DVVJSRU5UX1VSTF9ET0VTX05PVF9FWElTVF9JTl9BUFBfRlVOQ1RJT05fUEFUSF9ET19ZT1VfV0FOVF9UT19NQVAsXHJcbiAgICAgICAgICAgICAgICBbeF1cclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSBpZiAoZnVuY3Rpb25GaWx0ZXIubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGByb3V0aW5nU2VydmljZS5jdXJyZW50RnVuY3Rpb24kIGNoYW5nZWQgdG8gYCwgZnVuY3Rpb25GaWx0ZXJbMF0ucGF0aClcclxuICAgICAgICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5jdXJyZW50RnVuY3Rpb24kLm5leHQoZnVuY3Rpb25GaWx0ZXJbMF0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuXHJcbiAgICAgIC8vIHRyeSB0byBzZXQgY3VycmVudCBmdW5jdGlvbiBpbW1lZGlhdGVseSB3aGVuIHVzZXIgaGFzIHByZXNzZWQgRjVcclxuICAgICAgY29uc3QgdXJsID0gdGhpcy5yb3V0ZXIudXJsO1xyXG4gICAgICBjb25zdCBpZ25vcmVkUGF0aHMgPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLmlnbm9yZWRQYXRocyQudmFsdWU7XHJcbiAgICAgIGNvbnN0IGZ1bGxGdW5jdGlvbnMgPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLmZ1bGxGdW5jdGlvbnMkLnZhbHVlPy5maWx0ZXIoZiA9PiB7XHJcbiAgICAgICAgcmV0dXJuICFpZ25vcmVkUGF0aHM/LmluY2x1ZGVzKGYucGF0aClcclxuICAgICAgfSk7XHJcbiAgICAgIGNvbnN0IGZ1bmN0aW9uRmlsdGVyID0gZnVsbEZ1bmN0aW9ucy5maWx0ZXIoZiA9PiB7XHJcbiAgICAgICAgaWYgKGYucGF0aEZ1bGxNYXRjaCkge1xyXG4gICAgICAgICAgcmV0dXJuIGYucGF0aCA9PT0gdXJsO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoZi5wYXRoKSA9PT0gMFxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG5cclxuICAgICAgaWYgKCEhZnVuY3Rpb25GaWx0ZXIubGVuZ3RoKSB7XHJcbiAgICAgICAgaWYgKGZ1bmN0aW9uRmlsdGVyLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgICB2YXIgZnVuY3Rpb25GaWx0ZXJMaW5rczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgICAgICAgZnVuY3Rpb25GaWx0ZXIubWFwKHggPT4ge1xyXG4gICAgICAgICAgICAgIGZ1bmN0aW9uRmlsdGVyTGlua3MucHVzaCh4LnBhdGggKyBcIiAoXCIgKyAoeC5wYXRoRnVsbE1hdGNoID8gXCJ0xrDGoW5nIOG7qW5nIHRvw6BuIHBo4bqnblwiIDogXCJ0xrDGoW5nIOG7qW5nIHBo4bqnbiBiw6puIHRyw6FpXCIpICsgXCIpXCIpXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKFxyXG4gICAgICAgICAgICAgIGBOaGnhu4F1IGjGoW4gMDEgY2jhu6ljIG7Eg25nIGPDuW5nIMSRYW5nIHTGsMahbmcg4bupbmcgduG7m2kgxJFp4buBdSBoxrDhu5tuZyAke3VybH06XFxuJHtKU09OLnN0cmluZ2lmeShmdW5jdGlvbkZpbHRlckxpbmtzLCBudWxsLCAyKX1gLFxyXG4gICAgICAgICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8vIE7hur91IGtow7RuZyBwaOG6o2kgSVNfUk9PVCBjxaluZyBraMO0bmcgcGjhuqNpIElTX0FETUlOIHRow6wgxJFp4buBdSBoxrDhu5tuZyB24buBIHRyYW5nIGNo4bunXHJcbiAgICAgICAgICBpZiAoIXRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmlzUm9vdCAmJiAhdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8uaXNBZG1pbikgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCgnL2hvbWUnKVxyXG5cclxuICAgICAgICB9IGVsc2Uge1xyXG5cclxuICAgICAgICAgIC8vIEtp4buDbSB0cmEgeGVtIGPDsyBxdXnhu4FuIHbhu5tpIEZ1bmN0aW9uIGhp4buHbiB04bqhaSBoYXkga2jDtG5nXHJcbiAgICAgICAgICBjb25zdCB0cnlGaW5kID0gdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8ucGVybWlzc2lvbkFjdGlvbnMuZmlsdGVyKHggPT4geC5mdW5jdGlvbklkID09PSBmdW5jdGlvbkZpbHRlclswXS5pZClcclxuICAgICAgICAgIC8vIE7hur91IGtow7RuZyB0w6xtIHRo4bqleSB2w6Aga2jDtG5nIHBo4bqjaSBJU19ST09UIGPFqW5nIGtow7RuZyBwaOG6o2kgSVNfQURNSU4gdGjDrCDEkcawYSByYSB0aMO0bmcgYsOhbyB2w6AgxJFp4buBdSBoxrDhu5tuZyB24buBIHRyYW5nIGNo4bunXHJcbiAgICAgICAgICAvLyBcIi9hdXRoL2xvZ2luXCIgxJHGsOG7o2MgYuG7jyBxdWFcclxuICAgICAgICAgIGlmICghdHJ5RmluZD8ubGVuZ3RoICYmICF0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5pc1Jvb3QgJiYgIXRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmlzQWRtaW4pIHtcclxuICAgICAgICAgICAgaWYgKCEoW1wiL2F1dGgvbG9naW5cIiwgXCIvaG9tZVwiXS5pbmNsdWRlcyhmdW5jdGlvbkZpbHRlclswXS5wYXRoKSkpIHtcclxuICAgICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uRmlsdGVyWzBdLnBhdGggKyBcIiBcIiArXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1scy50cmFucygnQ09SRS5QRVJNSVNTSU9OLlRIRV9QQVRIX0lTX05PVF9QRVJNSVRURUQnKSxcclxuICAgICAgICAgICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zKVxyXG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ob21lJylcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UuY3VycmVudEZ1bmN0aW9uJC5uZXh0KGZ1bmN0aW9uRmlsdGVyWzBdKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGNoZWNrUm91dGVyRXZlbnQocm91dGVyRXZlbnQ6IFJvdXRlckV2ZW50KTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHJvdXRlckV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB7XHJcbiAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UubmF2aWdhdGlvblVybCQubmV4dChyb3V0ZXJFdmVudC51cmwpO1xyXG5cclxuICAgICAgLy8gU2tpcCBuYXZpZ2F0aW5nIGVmZmVjdCB3aGVuIHRoZSBuYXZpZ2F0aW9uIHN0YXJ0cyB3aXRoIC9jbXMvcHJvZmlsZS9idXNpbmVzcy9zdGFmZnByb2ZpbGVcclxuICAgICAgaWYgKHJvdXRlckV2ZW50LnVybC5pbmRleE9mKFwiL2Ntcy9wcm9maWxlL2J1c2luZXNzL3N0YWZmcHJvZmlsZVwiKSAhPT0gMCkge1xyXG4gICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UubmF2aWdhdGluZyQubmV4dCh0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChyb3V0ZXJFdmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcclxuICAgICAgdGhpcy51cmwgPSB0aGlzLnJvdXRlci51cmw7XHJcblxyXG4gICAgICBpZiAoISF0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5pc0ZpcnN0TG9naW4gJiYgdGhpcy51cmwgIT09ICcvY21zL2NoYW5nZS1wYXNzd29yZCcpIHtcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ2NtcycsICdjaGFuZ2UtcGFzc3dvcmQnLCBidG9hKCh0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlIGFzIElBdXRoRGF0YSkucmVmcmVzaFRva2VuLnVzZXIpXSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IG5ld1JvdXRpbmdIaXN0b3J5OiBJUm91dGluZ0hpc3RvcnlJdGVtW10gPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLnJvdXRpbmdIaXN0b3J5JC52YWx1ZTtcclxuICAgICAgbmV3Um91dGluZ0hpc3RvcnkucHVzaCh7IGZ1bGxVcmw6IHRoaXMudXJsIH0pO1xyXG4gICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLnJvdXRpbmdIaXN0b3J5JC5uZXh0KG5ld1JvdXRpbmdIaXN0b3J5KTtcclxuXHJcbiAgICAgIGNvbnN0IHVzZXJBY3Rpdml0eSA9IHRoaXMudXNlckFjdGl2aXR5U2VydmljZS51c2VyQWN0aXZpdHkkLnZhbHVlO1xyXG4gICAgICBjb25zdCBhdXRoID0gdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZTtcclxuXHJcbiAgICAgIGNvbnN0IG5ld1VzZXJBY3Rpdml0eSA9IHVzZXJBY3Rpdml0eS5maWx0ZXIoaXRlbSA9PiBpdGVtLnNpZCAhPT0gYXV0aD8uaWQpXHJcbiAgICAgIGNvbnN0IGNvbm5lY3Rpb24gPSB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLmh1YkNvbm5lY3Rpb24kLnZhbHVlO1xyXG4gICAgICBuZXdVc2VyQWN0aXZpdHkucHVzaCh7XHJcbiAgICAgICAgc2lkOiBhdXRoPy5mdWxsTmFtZSEsXHJcbiAgICAgICAgdXNlcm5hbWU6IGF1dGg/LnVzZXJOYW1lISxcclxuICAgICAgICBwYXRobmFtZTogdGhpcy51cmwsXHJcbiAgICAgICAgYXZhdGFyOiBhdXRoPy5hdmF0YXIhLFxyXG4gICAgICAgIGh1YkNvbm5lY3Rpb25JZDogY29ubmVjdGlvbj8uY29ubmVjdGlvbklkISxcclxuICAgICAgICBhY2Nlc3NUaW1lOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSxcclxuICAgICAgfSlcclxuXHJcbiAgICAgIGNvbnN0IGFjY2Vzc01vbWVudCA9IG5ldyBEYXRlKCk7XHJcbiAgICAgIGNvbnN0IGFjY2Vzc1RpbWUgPSBhY2Nlc3NNb21lbnQuZ2V0VGltZSgpO1xyXG5cclxuICAgICAgY29uc3QgYWN0aXZpdHk6IElIdWJDb25uZWN0aW9uQWN0aXZpdHkgPSB7XHJcbiAgICAgICAgc2lkOiBhdXRoPy5mdWxsTmFtZSEsXHJcbiAgICAgICAgc2lnbmFsVHlwZTogRW51bVNpZ25hbFJUeXBlLkFDVElWSVRZLFxyXG4gICAgICAgIHVzZXJuYW1lOiBhdXRoPy51c2VyTmFtZSEsXHJcbiAgICAgICAgYXZhdGFyOiBhdXRoPy5hdmF0YXIhLFxyXG4gICAgICAgIG1lc3NhZ2U6IGAke2F1dGg/LnVzZXJOYW1lfSBuYXZpZ2F0ZWQgdG8gJHtsb2NhdGlvbi5wYXRobmFtZX1gLFxyXG4gICAgICAgIGxvZ2luVGltZTogdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8ubG9naW5UaW1lISxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICBzaWQ6IGF1dGg/LmZ1bGxOYW1lLFxyXG4gICAgICAgICAgdXNlck5hbWU6IGF1dGg/LnVzZXJOYW1lLFxyXG4gICAgICAgICAgcGF0aG5hbWU6IHRoaXMudXJsLFxyXG4gICAgICAgICAgYXZhdGFyOiBhdXRoPy5hdmF0YXIsXHJcbiAgICAgICAgICBodWJDb25uZWN0aW9uSWQ6IGNvbm5lY3Rpb24/LmNvbm5lY3Rpb25JZCEsXHJcbiAgICAgICAgICBhY2Nlc3NUaW1lLFxyXG4gICAgICAgICAgdXNlckFjdGl2aXR5OiBuZXdVc2VyQWN0aXZpdHksXHJcbiAgICAgICAgfSxcclxuICAgICAgfVxyXG5cclxuICAgICAgLyogaWYgbG9nIG5lZWRlZFxyXG4gICAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgICAgY29uc3QgbG9nUGF5bG9hZDogSUxvZ1VzZXJBY3Rpdml0eSA9IHtcclxuICAgICAgICBjbGllbnRDb2RlOiAnVk5TJyxcclxuICAgICAgICBhcHBUeXBlOiAnV0VCQVBQJyxcclxuICAgICAgICB1c2VybmFtZTogYXV0aD8udXNlck5hbWUsXHJcbiAgICAgICAgc2lkOiBhdXRoPy5mdWxsTmFtZSxcclxuICAgICAgICBsb2dpblRpbWU6IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmxvZ2luVGltZSA/IG5ldyBEYXRlKHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmxvZ2luVGltZSkgOiB1bmRlZmluZWQsXHJcbiAgICAgICAgYWNjZXNzVGltZTogYWNjZXNzTW9tZW50LFxyXG4gICAgICAgIHBhdGg6IHdpbmRvdy5sb2NhdGlvbi5ocmVmLFxyXG4gICAgICAgIHBhdGhuYW1lOiAnJ1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYuaW5kZXhPZignbG9jYWxob3N0JykgPCAwICYmIHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluZGV4T2YoJy53ZWIuYXBwJykgPCAwKSB7XHJcbiAgICAgICAgdGhpcy5hcHBTZXJ2aWNlLnBvc3RGdWxsVXJsKFwiaHR0cHM6Ly9ibG9nLnRhbmxlaWNhLmNvbS9hcGkvTG9nVXNlckFjdGl2aXR5L0NyZWF0ZVwiLCBsb2dQYXlsb2FkKS5zdWJzY3JpYmUoKTtcclxuICAgICAgfVxyXG4gICAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgICAgKi9cclxuXHJcbiAgICAgIGNvbnNvbGUubG9nKFwiTmF2aWdhdGlvbkVuZCBhY3Rpdml0eVwiLCBhY3Rpdml0eSlcclxuICAgICAgaWYgKCEhY29ubmVjdGlvbikge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBjb25uZWN0aW9uPy5pbnZva2UoXCJTZW5kTWVzc2FnZVwiLCBhY3Rpdml0eSk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihlKVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChyb3V0ZXJFdmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgfHxcclxuICAgICAgcm91dGVyRXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uQ2FuY2VsIHx8XHJcbiAgICAgIHJvdXRlckV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVycm9yKSB7XHJcblxyXG5cclxuICAgICAgY29uc29sZS5ncm91cChcInJvdXRlckV2ZW50LnVybFwiKVxyXG4gICAgICBjb25zb2xlLmxvZyhyb3V0ZXJFdmVudC51cmwpXHJcbiAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMucm91dGluZ1NlcnZpY2UucG9ydGFsUm91dGVzJC52YWx1ZS5maWx0ZXIoeCA9PiB4LnBhdGggPT09IHJvdXRlckV2ZW50LnVybCk7XHJcbiAgICAgIGlmIChmaWx0ZXIubGVuZ3RoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubGFuZyA9PT0gXCJ2aVwiKSB7XHJcbiAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLmN1cnJlbnRTY3JlZW5DYXB0aW9uJC5uZXh0KGZpbHRlclswXS52aSlcclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMubGFuZyA9PT0gXCJlblwiKSB7XHJcbiAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLmN1cnJlbnRTY3JlZW5DYXB0aW9uJC5uZXh0KGZpbHRlclswXS5lbilcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5jdXJyZW50U2NyZWVuQ2FwdGlvbiQubmV4dChmaWx0ZXJbMF0udmkpXHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UuY3VycmVudFNjcmVlbkNhcHRpb24kLm5leHQoJycpO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnNvbGUuZ3JvdXBFbmQoKVxyXG5cclxuICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5uYXZpZ2F0aW5nJC5uZXh0KGZhbHNlKTtcclxuXHJcbiAgICAgIHN3aXRjaCAodGhpcy5hcHBDb25maWdTZXJ2aWNlLkFQUF9UWVBFKSB7XHJcbiAgICAgICAgY2FzZSBcIldFQkFQUFwiOlxyXG5cclxuICAgICAgICAgIHRoaXMudXJsU2VydmljZS5wcmV2aW91c1JvdXRlVXJsJC5uZXh0KHRoaXMudXJsU2VydmljZS5jdXJyZW50Um91dGVVcmwkLnZhbHVlKTtcclxuICAgICAgICAgIHRoaXMudXJsU2VydmljZS5jdXJyZW50Um91dGVVcmwkLm5leHQocm91dGVyRXZlbnQudXJsKTtcclxuXHJcbiAgICAgICAgICAvLyB0aGlzLmxheW91dFNlcnZpY2UubGVmdGJhclJlZHVjZWQkLm5leHQodHJ1ZSk7IC8vIGlmIHdlIHdhbnQgYXV0by1yZWR1Y2UgdGhlIG1lbnUsIHVuY29tbWVudCB0aGlzIGxpbmVcclxuICAgICAgICAgIC8qXHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgbGVmdEJhciA9IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKCctLXNpemUtbGVmdC1iYXItY3VycmVudC13aWR0aCcpLnJlcGxhY2UoJ3B4JywgJycpO1xyXG4gICAgICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UubGVmdEJhckN1cnJlbnRXaWR0aCQubmV4dChOdW1iZXIobGVmdEJhcikpXHJcbiAgICAgICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5jb250ZW50Q29udGFpbmVyV2lkdGgkLm5leHQod2luZG93LmlubmVyV2lkdGggLSBOdW1iZXIobGVmdEJhcikpXHJcbiAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1jb250ZW50LWNvbnRhaW5lci13aWR0aCcsIHdpbmRvdy5pbm5lcldpZHRoIC0gTnVtYmVyKGxlZnRCYXIpICsgJ3B4JylcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICAqL1xyXG5cclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlIFwiUE9SVEFMXCI6XHJcblxyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJjaGVja1JvdXRlckV2ZW50XCIsIHJvdXRlckV2ZW50LnVybCk7XHJcblxyXG4gICAgICAgICAgaWYgKCFyb3V0ZXJFdmVudC51cmwuZW5kc1dpdGgoJy1lZGl0JykpIHtcclxuICAgICAgICAgICAgdGhpcy51cmxTZXJ2aWNlLnByZXZpb3VzUm91dGVVcmwkLm5leHQodGhpcy51cmxTZXJ2aWNlLmN1cnJlbnRSb3V0ZVVybCQudmFsdWUpO1xyXG4gICAgICAgICAgICB0aGlzLnVybFNlcnZpY2UuY3VycmVudFJvdXRlVXJsJC5uZXh0KHJvdXRlckV2ZW50LnVybCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy51cmxTZXJ2aWNlLmN1cnJlbnRSb3V0ZVVybCQubmV4dChyb3V0ZXJFdmVudC51cmwpXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcblxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlc2V0QWN0aXZpdHlIaXN0b3J5KCk6IHZvaWQge1xyXG4gICAgY29uc3QgYXV0aCA9IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU7XHJcbiAgICBpZiAoIWF1dGg/LmlzQWRtaW4pIHJldHVybjtcclxuICAgIGNvbnN0IGNvbm5lY3Rpb24gPSB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLmh1YkNvbm5lY3Rpb24kLnZhbHVlO1xyXG4gICAgY29uc3QgYWN0aXZpdHk6IElIdWJDb25uZWN0aW9uQWN0aXZpdHkgPSB7XHJcbiAgICAgIHNpZDogYXV0aD8uZnVsbE5hbWUhLFxyXG4gICAgICBzaWduYWxUeXBlOiBFbnVtU2lnbmFsUlR5cGUuQUNUSVZJVFlfSElTVE9SWV9SRVNFVCxcclxuICAgICAgdXNlcm5hbWU6IGF1dGg/LnVzZXJOYW1lISxcclxuICAgICAgYXZhdGFyOiBhdXRoPy5hdmF0YXIhLFxyXG4gICAgICBtZXNzYWdlOiBgJHthdXRoPy51c2VyTmFtZX0gaGFzIHJlc2V0IGFjdGl2aXR5IGhpc3RvcnlgLFxyXG4gICAgICBsb2dpblRpbWU6IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmxvZ2luVGltZSEsXHJcbiAgICAgIGRhdGE6IG51bGwsXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCEhY29ubmVjdGlvbikge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGNvbm5lY3Rpb24/Lmludm9rZShcIlNlbmRNZXNzYWdlXCIsIGFjdGl2aXR5KTtcclxuICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMubWFwKHggPT4geD8udW5zdWJzY3JpYmUoKSlcclxuICB9XHJcblxyXG59XHJcbiIsIiJdfQ==
|
|
306
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1uYXZpZ2F0aW9uLXRyYWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLW5hdmlnYXRpb24tdHJhY2tlci9jb3JlLW5hdmlnYXRpb24tdHJhY2tlci9jb3JlLW5hdmlnYXRpb24tdHJhY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBa0IsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQXVCLE1BQU0saUJBQWlCLENBQUM7QUFDekksT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFZaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHMUQsT0FBTyxFQUFFLFlBQVksRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBd0IzRixNQUFNLE9BQU8sOEJBQThCO0lBc0N6QyxZQUNVLFdBQXdCLEVBQ3hCLEdBQStCLEVBQy9CLE1BQWMsRUFDZCxLQUFxQixFQUNyQixjQUE4QixFQUMvQixhQUE0QixFQUMzQixvQkFBMEMsRUFDMUMs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O1lBQ25ELElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQTtRQUVELElBQUksQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUNoQixJQUFJO2dCQUNGLFVBQVUsRUFBRSxNQUFNLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQzdDO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQTthQUNqQjtTQUNGO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFBO0lBQy9DLENBQUM7OEdBL1dVLDhCQUE4QjtrR0FBOUIsOEJBQThCLG1GQzFDM0MsRUFBQTs7MkZEMENhLDhCQUE4QjtrQkFQMUMsU0FBUzsrQkFDRSx5QkFBeUIsY0FDdkIsSUFBSSxXQUNQLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb25DYW5jZWwsIE5hdmlnYXRpb25FbmQsIE5hdmlnYXRpb25FcnJvciwgTmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXIsIFJvdXRlckV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBFbnVtU2lnbmFsUlR5cGUgfSBmcm9tICcuLi8uLi8uLi9lbnVtL0VudW1TaWduYWxSVHlwZSc7XHJcbmltcG9ydCB7IElIdWJDb25uZWN0aW9uQWN0aXZpdHkgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL0lIdWJDb25uZWN0aW9uQWN0aXZpdHknO1xyXG5pbXBvcnQgeyBSb3V0aW5nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3JvdXRpbmcuc2VydmljZSc7XHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEh1YkNvbm5lY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaHViLWNvbm5lY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXJBY3Rpdml0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91c2VyLWFjdGl2aXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2FsZXJ0L2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJUm91dGluZ0hpc3RvcnlJdGVtIH0gZnJvbSAnLi4vLi4vY29yZS1yb3V0aW5nLWhpc3RvcnkvY29yZS1yb3V0aW5nLWhpc3RvcnkvY29yZS1yb3V0aW5nLWhpc3RvcnkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2RpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3VybC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmF2aWdhdG9yU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25hdmlnYXRvci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRW51bVRyYW5zbGF0ZUtleSB9IGZyb20gXCJhbHBoYS1nbG9iYWwtY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IElOYXZpZ2F0b3JJdGVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JTmF2aWdhdG9ySXRlbSc7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbXVsdGktbGFuZ3VhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IGFsZXJ0T3B0aW9ucywgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYWxlcnRPcHRpb25zJztcclxuaW1wb3J0IHsgSUF1dGhEYXRhIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JQXV0aERhdGEnO1xyXG5pbXBvcnQgeyBBcHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXBwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXBwLWNvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGV2ZWxvcGVyVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9kZXZlbG9wZXItdmFsaWRhdGlvbi5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUxvZ1VzZXJBY3Rpdml0eSB7XHJcbiAgY2xpZW50Q29kZTogc3RyaW5nO1xyXG4gIGFwcFR5cGU6IHN0cmluZztcclxuICB1c2VybmFtZT86IHN0cmluZztcclxuICBzaWQ/OiBzdHJpbmc7XHJcbiAgbG9naW5UaW1lPzogRGF0ZTtcclxuICBhY2Nlc3NUaW1lOiBEYXRlO1xyXG4gIHBhdGg6IHN0cmluZztcclxuICBwYXRobmFtZT86IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjb3JlLW5hdmlnYXRpb24tdHJhY2tlcicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1uYXZpZ2F0aW9uLXRyYWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtbmF2aWdhdGlvbi10cmFja2VyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVOYXZpZ2F0aW9uVHJhY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIG5hdmlnYXRpbmchOiBib29sZWFuO1xyXG4gIHVybCE6IHN0cmluZztcclxuXHJcbiAgbGFuZyE6IHN0cmluZztcclxuXHJcbiAgYXBwQ29uZmlnOiBhbnkgPSB7XHJcbiAgICBzaG93TGF5b3V0OiAnZmFsc2UnXHJcbiAgfTtcclxuXHJcbiAgYXBwSW5pdGlhbGl6aW5nITogYm9vbGVhbjtcclxuICBsb2FkaW5nITogYm9vbGVhbjtcclxuICBzdWJtaXR0aW5nITogYm9vbGVhbjtcclxuICBtZW51T3BlbiE6IGJvb2xlYW47XHJcbiAgbGVmdGJhclJlZHVjZWQhOiBib29sZWFuO1xyXG4gIGtleXdvcmQhOiBzdHJpbmc7XHJcbiAgc2lkITogc3RyaW5nO1xyXG4gIHVzZXJuYW1lITogc3RyaW5nO1xyXG4gIGV4cGlyZXNBdCE6IHN0cmluZztcclxuICBhdmF0YXIhOiBzdHJpbmc7XHJcblxyXG5cclxuICB1bnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHJvdXRpbmdIaXN0b3J5OiBJUm91dGluZ0hpc3RvcnlJdGVtW10gPSBbXTtcclxuXHJcbiAgcGVuZGluZ1VybCE6IHN0cmluZztcclxuICBsYXN0Q2xpY2tlZE1lbnVJdGVtITogSU5hdmlnYXRvckl0ZW0gfCBudWxsO1xyXG4gIGxhc3RDbGlja2VkTWVudUl0ZW1TdHJpbmchOiBzdHJpbmc7XHJcblxyXG4gIGRpYWxvZ0luc3RhbmNlTnVtYmVyITogbnVtYmVyO1xyXG5cclxuICBkdnNWYWxpZGF0aW5nITogYm9vbGVhbjtcclxuICBkdnNTZWN1cml0eVBhc3NlZCE6IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGR2czogRGV2ZWxvcGVyVmFsaWRhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwcml2YXRlIHJvdXRpbmdTZXJ2aWNlOiBSb3V0aW5nU2VydmljZSxcclxuICAgIHB1YmxpYyBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBodWJDb25uZWN0aW9uU2VydmljZTogSHViQ29ubmVjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHVzZXJBY3Rpdml0eVNlcnZpY2U6IFVzZXJBY3Rpdml0eVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHVybFNlcnZpY2U6IFVybFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG5hdmlnYXRvclNlcnZpY2U6IE5hdmlnYXRvclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlXHJcbiAgKSB7XHJcblxyXG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJjb2RlVmVyaWZpZXJcIilcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC5waXBlKGZpbHRlcihzID0+ICEhcykpLnN1YnNjcmliZSh4ID0+IHtcclxuICAgICAgICB0aGlzLmxhc3RDbGlja2VkTWVudUl0ZW0gPSB4XHJcbiAgICAgICAgdGhpcy5sYXN0Q2xpY2tlZE1lbnVJdGVtU3RyaW5nID0gYFske3g/LmlkfV09PiR7dGhpcy5tbHMudHJhbnMoeCEuY29kZSl9PT4oJHt4Py51cmx9KWBcclxuICAgICAgfSlcclxuICAgIClcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgaXNEZXZlbG9wbWVudCA9IGlzRGV2TW9kZSgpO1xyXG4gICAgICBjb25zb2xlLmxvZyhcImlzRGV2ZWxvcG1lbnRcIiwgaXNEZXZlbG9wbWVudClcclxuICAgICAgaWYgKGlzRGV2ZWxvcG1lbnQgJiYgIXRoaXMuZHZzLnNlY3VyaXR5UGFzc2VkJC52YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuZHZzLnZhbGlkYXRlRGV2ZWxvcGVyVmlhUG9wdXAoKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuXHJcbiAgICAgIHRoaXMudXJsU2VydmljZS5jdXJyZW50Um91dGVVcmwkLm5leHQodGhpcy5yb3V0ZXIudXJsKTtcclxuXHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2Uucm91dGluZ0hpc3RvcnkkLnN1YnNjcmliZSh4ID0+IHRoaXMucm91dGluZ0hpc3RvcnkgPSB4KVxyXG4gICAgICApXHJcblxyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgICB0aGlzLnJvdXRlci5ldmVudHMucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChyb3V0ZXJFdmVudCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrUm91dGVyRXZlbnQocm91dGVyRXZlbnQgYXMgUm91dGVyRXZlbnQpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgKVxyXG5cclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgdGhpcy51cmxTZXJ2aWNlLmN1cnJlbnRSb3V0ZVVybCQucGlwZShcclxuICAgICAgICAgIGZpbHRlcih4ID0+IHtcclxuICAgICAgICAgICAgaWYgKCEhdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dDb25maXJtRGlhbG9nJC52YWx1ZSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICByZXR1cm4gISEhWycvJ10uaW5jbHVkZXMoeClcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoeCA9PiB7XHJcbiAgICAgICAgICBjb25zdCBpZ25vcmVkUGF0aHMgPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLmlnbm9yZWRQYXRocyQudmFsdWU7XHJcbiAgICAgICAgICBjb25zdCBmdWxsRnVuY3Rpb25zID0gdGhpcy5yb3V0aW5nU2VydmljZS5mdWxsRnVuY3Rpb25zJC52YWx1ZT8uZmlsdGVyKGYgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gIWlnbm9yZWRQYXRocz8uaW5jbHVkZXMoZi5wYXRoKVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBjb25zdCBmdW5jdGlvbkZpbHRlciA9IGZ1bGxGdW5jdGlvbnMuZmlsdGVyKGYgPT4ge1xyXG4gICAgICAgICAgICBpZiAoZi5wYXRoRnVsbE1hdGNoKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGYucGF0aCA9PT0geDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAvL3JldHVybiB4LmluZGV4T2YoZi5wYXRoKSA9PT0gMFxyXG5cclxuICAgICAgICAgICAgICAvLyBleHBlcmltZW50YWwgc2luY2UgMjAyNC0wNC0wMlxyXG4gICAgICAgICAgICAgIHJldHVybiB4LmluZGV4T2YoZi5wYXRoKSA+PSAwIC8vIGZvciBzb21lIGF1eGlsaWFyeSByb3V0ZXMsIGZvciBleCAuLi4ocG9wdXBBdXgyOm9ubGluZS11c2VycykgdG8gYmUgYWNjZXB0YWJsZVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcImZ1bmN0aW9uRmlsdGVyXCIsIGlnbm9yZWRQYXRocylcclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiZnVuY3Rpb25GaWx0ZXJcIiwgZnVuY3Rpb25GaWx0ZXIpXHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcImZ1bmN0aW9uRmlsdGVyXCIsIGlnbm9yZWRQYXRocy5pbmNsdWRlcyhcIi9jbXMvc3lzdGVtL3VwZXJtaXNzaW9uLzBcIikpXHJcblxyXG4gICAgICAgICAgaWYgKHguaW5kZXhPZignL3Jvb3QnKSAhPT0gMCAmJiAhISFmdW5jdGlvbkZpbHRlci5sZW5ndGggJiYgISEhaWdub3JlZFBhdGhzLmluY2x1ZGVzKHgpICYmICEhdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC52YWx1ZSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8uaXNSb290KSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5kaWFsb2dJbnN0YW5jZU51bWJlciA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5kaWFsb2dDb25maXJtZWQkLm5leHQoe1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2VOdW1iZXI6IHRoaXMuZGlhbG9nSW5zdGFuY2VOdW1iZXIsXHJcbiAgICAgICAgICAgICAgICBjb25maXJtZWQ6IGZhbHNlXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmNyZWF0ZU5ldyhcclxuICAgICAgICAgICAgICAgIEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19USVRMRSxcclxuICAgICAgICAgICAgICAgIEVudW1UcmFuc2xhdGVLZXkuWUVTLFxyXG4gICAgICAgICAgICAgICAgRW51bVRyYW5zbGF0ZUtleS5JR05PUkUsXHJcbiAgICAgICAgICAgICAgICBmYWxzZSxcclxuICAgICAgICAgICAgICAgIEVudW1UcmFuc2xhdGVLZXkuUk9PVF9DVVJSRU5UX1VSTF9ET0VTX05PVF9FWElTVF9JTl9BUFBfRlVOQ1RJT05fUEFUSF9ET19ZT1VfV0FOVF9UT19NQVAsXHJcbiAgICAgICAgICAgICAgICBbeF1cclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSBpZiAoZnVuY3Rpb25GaWx0ZXIubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGByb3V0aW5nU2VydmljZS5jdXJyZW50RnVuY3Rpb24kIGNoYW5nZWQgdG8gYCwgZnVuY3Rpb25GaWx0ZXJbMF0ucGF0aClcclxuICAgICAgICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5jdXJyZW50RnVuY3Rpb24kLm5leHQoZnVuY3Rpb25GaWx0ZXJbMF0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuXHJcbiAgICAgIC8vIHRyeSB0byBzZXQgY3VycmVudCBmdW5jdGlvbiBpbW1lZGlhdGVseSB3aGVuIHVzZXIgaGFzIHByZXNzZWQgRjVcclxuICAgICAgY29uc3QgdXJsID0gdGhpcy5yb3V0ZXIudXJsO1xyXG4gICAgICBjb25zdCBpZ25vcmVkUGF0aHMgPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLmlnbm9yZWRQYXRocyQudmFsdWU7XHJcbiAgICAgIGNvbnN0IGZ1bGxGdW5jdGlvbnMgPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLmZ1bGxGdW5jdGlvbnMkLnZhbHVlPy5maWx0ZXIoZiA9PiB7XHJcbiAgICAgICAgcmV0dXJuICFpZ25vcmVkUGF0aHM/LmluY2x1ZGVzKGYucGF0aClcclxuICAgICAgfSk7XHJcbiAgICAgIGNvbnN0IGZ1bmN0aW9uRmlsdGVyID0gZnVsbEZ1bmN0aW9ucy5maWx0ZXIoZiA9PiB7XHJcbiAgICAgICAgaWYgKGYucGF0aEZ1bGxNYXRjaCkge1xyXG4gICAgICAgICAgcmV0dXJuIGYucGF0aCA9PT0gdXJsO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoZi5wYXRoKSA9PT0gMFxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG5cclxuICAgICAgaWYgKCEhZnVuY3Rpb25GaWx0ZXIubGVuZ3RoKSB7XHJcbiAgICAgICAgaWYgKGZ1bmN0aW9uRmlsdGVyLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgICB2YXIgZnVuY3Rpb25GaWx0ZXJMaW5rczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgICAgICAgZnVuY3Rpb25GaWx0ZXIubWFwKHggPT4ge1xyXG4gICAgICAgICAgICAgIGZ1bmN0aW9uRmlsdGVyTGlua3MucHVzaCh4LnBhdGggKyBcIiAoXCIgKyAoeC5wYXRoRnVsbE1hdGNoID8gXCJ0xrDGoW5nIOG7qW5nIHRvw6BuIHBo4bqnblwiIDogXCJ0xrDGoW5nIOG7qW5nIHBo4bqnbiBiw6puIHRyw6FpXCIpICsgXCIpXCIpXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKFxyXG4gICAgICAgICAgICAgIGBOaGnhu4F1IGjGoW4gMDEgY2jhu6ljIG7Eg25nIGPDuW5nIMSRYW5nIHTGsMahbmcg4bupbmcgduG7m2kgxJFp4buBdSBoxrDhu5tuZyAke3VybH06XFxuJHtKU09OLnN0cmluZ2lmeShmdW5jdGlvbkZpbHRlckxpbmtzLCBudWxsLCAyKX1gLFxyXG4gICAgICAgICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8vIE7hur91IGtow7RuZyBwaOG6o2kgSVNfUk9PVCBjxaluZyBraMO0bmcgcGjhuqNpIElTX0FETUlOIHRow6wgxJFp4buBdSBoxrDhu5tuZyB24buBIHRyYW5nIGNo4bunXHJcbiAgICAgICAgICBpZiAoIXRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmlzUm9vdCAmJiAhdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8uaXNBZG1pbikgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCgnL2hvbWUnKVxyXG5cclxuICAgICAgICB9IGVsc2Uge1xyXG5cclxuICAgICAgICAgIC8vIEtp4buDbSB0cmEgeGVtIGPDsyBxdXnhu4FuIHbhu5tpIEZ1bmN0aW9uIGhp4buHbiB04bqhaSBoYXkga2jDtG5nXHJcbiAgICAgICAgICBjb25zdCB0cnlGaW5kID0gdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8ucGVybWlzc2lvbkFjdGlvbnMuZmlsdGVyKHggPT4geC5mdW5jdGlvbklkID09PSBmdW5jdGlvbkZpbHRlclswXS5pZClcclxuICAgICAgICAgIC8vIE7hur91IGtow7RuZyB0w6xtIHRo4bqleSB2w6Aga2jDtG5nIHBo4bqjaSBJU19ST09UIGPFqW5nIGtow7RuZyBwaOG6o2kgSVNfQURNSU4gdGjDrCDEkcawYSByYSB0aMO0bmcgYsOhbyB2w6AgxJFp4buBdSBoxrDhu5tuZyB24buBIHRyYW5nIGNo4bunXHJcbiAgICAgICAgICAvLyBcIi9hdXRoL2xvZ2luXCIgxJHGsOG7o2MgYuG7jyBxdWFcclxuICAgICAgICAgIGlmICghdHJ5RmluZD8ubGVuZ3RoICYmICF0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5pc1Jvb3QgJiYgIXRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmlzQWRtaW4pIHtcclxuICAgICAgICAgICAgaWYgKCEoW1wiL2F1dGgvbG9naW5cIiwgXCIvaG9tZVwiXS5pbmNsdWRlcyhmdW5jdGlvbkZpbHRlclswXS5wYXRoKSkpIHtcclxuICAgICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uRmlsdGVyWzBdLnBhdGggKyBcIiBcIiArXHJcbiAgICAgICAgICAgICAgICB0aGlzLm1scy50cmFucygnQ09SRS5QRVJNSVNTSU9OLlRIRV9QQVRIX0lTX05PVF9QRVJNSVRURUQnKSxcclxuICAgICAgICAgICAgICAgIGFsZXJ0T3B0aW9ucylcclxuICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvaG9tZScpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLmN1cnJlbnRGdW5jdGlvbiQubmV4dChmdW5jdGlvbkZpbHRlclswXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG5cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBjaGVja1JvdXRlckV2ZW50KHJvdXRlckV2ZW50OiBSb3V0ZXJFdmVudCk6IHZvaWQge1xyXG5cclxuICAgIGlmIChyb3V0ZXJFdmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xyXG4gICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLm5hdmlnYXRpb25VcmwkLm5leHQocm91dGVyRXZlbnQudXJsKTtcclxuXHJcbiAgICAgIC8vIFNraXAgbmF2aWdhdGluZyBlZmZlY3Qgd2hlbiB0aGUgbmF2aWdhdGlvbiBzdGFydHMgd2l0aCAvY21zL3Byb2ZpbGUvYnVzaW5lc3Mvc3RhZmZwcm9maWxlXHJcbiAgICAgIGlmIChyb3V0ZXJFdmVudC51cmwuaW5kZXhPZihcIi9jbXMvcHJvZmlsZS9idXNpbmVzcy9zdGFmZnByb2ZpbGVcIikgIT09IDApIHtcclxuICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLm5hdmlnYXRpbmckLm5leHQodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAocm91dGVyRXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XHJcbiAgICAgIHRoaXMudXJsID0gdGhpcy5yb3V0ZXIudXJsO1xyXG5cclxuICAgICAgaWYgKCEhdGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZT8uaXNGaXJzdExvZ2luICYmIHRoaXMudXJsICE9PSAnL2Ntcy9jaGFuZ2UtcGFzc3dvcmQnKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydjbXMnLCAnY2hhbmdlLXBhc3N3b3JkJywgYnRvYSgodGhpcy5hdXRoU2VydmljZS5kYXRhJC52YWx1ZSBhcyBJQXV0aERhdGEpLnJlZnJlc2hUb2tlbi51c2VyKV0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBuZXdSb3V0aW5nSGlzdG9yeTogSVJvdXRpbmdIaXN0b3J5SXRlbVtdID0gdGhpcy5yb3V0aW5nU2VydmljZS5yb3V0aW5nSGlzdG9yeSQudmFsdWU7XHJcbiAgICAgIG5ld1JvdXRpbmdIaXN0b3J5LnB1c2goeyBmdWxsVXJsOiB0aGlzLnVybCB9KTtcclxuICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5yb3V0aW5nSGlzdG9yeSQubmV4dChuZXdSb3V0aW5nSGlzdG9yeSk7XHJcblxyXG4gICAgICBjb25zdCB1c2VyQWN0aXZpdHkgPSB0aGlzLnVzZXJBY3Rpdml0eVNlcnZpY2UudXNlckFjdGl2aXR5JC52YWx1ZTtcclxuICAgICAgY29uc3QgYXV0aCA9IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU7XHJcblxyXG4gICAgICBjb25zdCBuZXdVc2VyQWN0aXZpdHkgPSB1c2VyQWN0aXZpdHkuZmlsdGVyKGl0ZW0gPT4gaXRlbS5zaWQgIT09IGF1dGg/LmlkKVxyXG4gICAgICBjb25zdCBjb25uZWN0aW9uID0gdGhpcy5odWJDb25uZWN0aW9uU2VydmljZS5odWJDb25uZWN0aW9uJC52YWx1ZTtcclxuICAgICAgbmV3VXNlckFjdGl2aXR5LnB1c2goe1xyXG4gICAgICAgIHNpZDogYXV0aD8uZnVsbE5hbWUhLFxyXG4gICAgICAgIHVzZXJuYW1lOiBhdXRoPy51c2VyTmFtZSEsXHJcbiAgICAgICAgcGF0aG5hbWU6IHRoaXMudXJsLFxyXG4gICAgICAgIGF2YXRhcjogYXV0aD8uYXZhdGFyISxcclxuICAgICAgICBodWJDb25uZWN0aW9uSWQ6IGNvbm5lY3Rpb24/LmNvbm5lY3Rpb25JZCEsXHJcbiAgICAgICAgYWNjZXNzVGltZTogbmV3IERhdGUoKS5nZXRUaW1lKCksXHJcbiAgICAgIH0pXHJcblxyXG4gICAgICBjb25zdCBhY2Nlc3NNb21lbnQgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICBjb25zdCBhY2Nlc3NUaW1lID0gYWNjZXNzTW9tZW50LmdldFRpbWUoKTtcclxuXHJcbiAgICAgIGNvbnN0IGFjdGl2aXR5OiBJSHViQ29ubmVjdGlvbkFjdGl2aXR5ID0ge1xyXG4gICAgICAgIHNpZDogYXV0aD8uZnVsbE5hbWUhLFxyXG4gICAgICAgIHNpZ25hbFR5cGU6IEVudW1TaWduYWxSVHlwZS5BQ1RJVklUWSxcclxuICAgICAgICB1c2VybmFtZTogYXV0aD8udXNlck5hbWUhLFxyXG4gICAgICAgIGF2YXRhcjogYXV0aD8uYXZhdGFyISxcclxuICAgICAgICBtZXNzYWdlOiBgJHthdXRoPy51c2VyTmFtZX0gbmF2aWdhdGVkIHRvICR7bG9jYXRpb24ucGF0aG5hbWV9YCxcclxuICAgICAgICBsb2dpblRpbWU6IHRoaXMuYXV0aFNlcnZpY2UuZGF0YSQudmFsdWU/LmxvZ2luVGltZSEsXHJcbiAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgc2lkOiBhdXRoPy5mdWxsTmFtZSxcclxuICAgICAgICAgIHVzZXJOYW1lOiBhdXRoPy51c2VyTmFtZSxcclxuICAgICAgICAgIHBhdGhuYW1lOiB0aGlzLnVybCxcclxuICAgICAgICAgIGF2YXRhcjogYXV0aD8uYXZhdGFyLFxyXG4gICAgICAgICAgaHViQ29ubmVjdGlvbklkOiBjb25uZWN0aW9uPy5jb25uZWN0aW9uSWQhLFxyXG4gICAgICAgICAgYWNjZXNzVGltZSxcclxuICAgICAgICAgIHVzZXJBY3Rpdml0eTogbmV3VXNlckFjdGl2aXR5LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8qIGlmIGxvZyBuZWVkZWRcclxuICAgICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICAgIGNvbnN0IGxvZ1BheWxvYWQ6IElMb2dVc2VyQWN0aXZpdHkgPSB7XHJcbiAgICAgICAgY2xpZW50Q29kZTogJ1ZOUycsXHJcbiAgICAgICAgYXBwVHlwZTogJ1dFQkFQUCcsXHJcbiAgICAgICAgdXNlcm5hbWU6IGF1dGg/LnVzZXJOYW1lLFxyXG4gICAgICAgIHNpZDogYXV0aD8uZnVsbE5hbWUsXHJcbiAgICAgICAgbG9naW5UaW1lOiB0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5sb2dpblRpbWUgPyBuZXcgRGF0ZSh0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5sb2dpblRpbWUpIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGFjY2Vzc1RpbWU6IGFjY2Vzc01vbWVudCxcclxuICAgICAgICBwYXRoOiB3aW5kb3cubG9jYXRpb24uaHJlZixcclxuICAgICAgICBwYXRobmFtZTogJydcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2xvY2FsaG9zdCcpIDwgMCAmJiB3aW5kb3cubG9jYXRpb24uaHJlZi5pbmRleE9mKCcud2ViLmFwcCcpIDwgMCkge1xyXG4gICAgICAgIHRoaXMuYXBwU2VydmljZS5wb3N0RnVsbFVybChcImh0dHBzOi8vYmxvZy50YW5sZWljYS5jb20vYXBpL0xvZ1VzZXJBY3Rpdml0eS9DcmVhdGVcIiwgbG9nUGF5bG9hZCkuc3Vic2NyaWJlKCk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICAgICovXHJcblxyXG4gICAgICBjb25zb2xlLmxvZyhcIk5hdmlnYXRpb25FbmQgYWN0aXZpdHlcIiwgYWN0aXZpdHkpXHJcbiAgICAgIGlmICghIWNvbm5lY3Rpb24pIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgY29ubmVjdGlvbj8uaW52b2tlKFwiU2VuZE1lc3NhZ2VcIiwgYWN0aXZpdHkpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSlcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAocm91dGVyRXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kIHx8XHJcbiAgICAgIHJvdXRlckV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkNhbmNlbCB8fFxyXG4gICAgICByb3V0ZXJFdmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FcnJvcikge1xyXG5cclxuXHJcbiAgICAgIGNvbnNvbGUuZ3JvdXAoXCJyb3V0ZXJFdmVudC51cmxcIilcclxuICAgICAgY29uc29sZS5sb2cocm91dGVyRXZlbnQudXJsKVxyXG4gICAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLnJvdXRpbmdTZXJ2aWNlLnBvcnRhbFJvdXRlcyQudmFsdWUuZmlsdGVyKHggPT4geC5wYXRoID09PSByb3V0ZXJFdmVudC51cmwpO1xyXG4gICAgICBpZiAoZmlsdGVyLmxlbmd0aCkge1xyXG4gICAgICAgIGlmICh0aGlzLmxhbmcgPT09IFwidmlcIikge1xyXG4gICAgICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5jdXJyZW50U2NyZWVuQ2FwdGlvbiQubmV4dChmaWx0ZXJbMF0udmkpXHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmxhbmcgPT09IFwiZW5cIikge1xyXG4gICAgICAgICAgdGhpcy5yb3V0aW5nU2VydmljZS5jdXJyZW50U2NyZWVuQ2FwdGlvbiQubmV4dChmaWx0ZXJbMF0uZW4pXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UuY3VycmVudFNjcmVlbkNhcHRpb24kLm5leHQoZmlsdGVyWzBdLnZpKVxyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJvdXRpbmdTZXJ2aWNlLmN1cnJlbnRTY3JlZW5DYXB0aW9uJC5uZXh0KCcnKTtcclxuICAgICAgfVxyXG4gICAgICBjb25zb2xlLmdyb3VwRW5kKClcclxuXHJcbiAgICAgIHRoaXMucm91dGluZ1NlcnZpY2UubmF2aWdhdGluZyQubmV4dChmYWxzZSk7XHJcblxyXG4gICAgICBzd2l0Y2ggKHRoaXMuYXBwQ29uZmlnU2VydmljZS5BUFBfVFlQRSkge1xyXG4gICAgICAgIGNhc2UgXCJXRUJBUFBcIjpcclxuXHJcbiAgICAgICAgICB0aGlzLnVybFNlcnZpY2UucHJldmlvdXNSb3V0ZVVybCQubmV4dCh0aGlzLnVybFNlcnZpY2UuY3VycmVudFJvdXRlVXJsJC52YWx1ZSk7XHJcbiAgICAgICAgICB0aGlzLnVybFNlcnZpY2UuY3VycmVudFJvdXRlVXJsJC5uZXh0KHJvdXRlckV2ZW50LnVybCk7XHJcblxyXG4gICAgICAgICAgLy8gdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRiYXJSZWR1Y2VkJC5uZXh0KHRydWUpOyAvLyBpZiB3ZSB3YW50IGF1dG8tcmVkdWNlIHRoZSBtZW51LCB1bmNvbW1lbnQgdGhpcyBsaW5lXHJcbiAgICAgICAgICAvKlxyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxlZnRCYXIgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZSgnLS1zaXplLWxlZnQtYmFyLWN1cnJlbnQtd2lkdGgnKS5yZXBsYWNlKCdweCcsICcnKTtcclxuICAgICAgICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRCYXJDdXJyZW50V2lkdGgkLm5leHQoTnVtYmVyKGxlZnRCYXIpKVxyXG4gICAgICAgICAgICB0aGlzLmxheW91dFNlcnZpY2UuY29udGVudENvbnRhaW5lcldpZHRoJC5uZXh0KHdpbmRvdy5pbm5lcldpZHRoIC0gTnVtYmVyKGxlZnRCYXIpKVxyXG4gICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tY29udGVudC1jb250YWluZXItd2lkdGgnLCB3aW5kb3cuaW5uZXJXaWR0aCAtIE51bWJlcihsZWZ0QmFyKSArICdweCcpXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgKi9cclxuXHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSBcIlBPUlRBTFwiOlxyXG5cclxuICAgICAgICAgIGNvbnNvbGUubG9nKFwiY2hlY2tSb3V0ZXJFdmVudFwiLCByb3V0ZXJFdmVudC51cmwpO1xyXG5cclxuICAgICAgICAgIGlmICghcm91dGVyRXZlbnQudXJsLmVuZHNXaXRoKCctZWRpdCcpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudXJsU2VydmljZS5wcmV2aW91c1JvdXRlVXJsJC5uZXh0KHRoaXMudXJsU2VydmljZS5jdXJyZW50Um91dGVVcmwkLnZhbHVlKTtcclxuICAgICAgICAgICAgdGhpcy51cmxTZXJ2aWNlLmN1cnJlbnRSb3V0ZVVybCQubmV4dChyb3V0ZXJFdmVudC51cmwpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMudXJsU2VydmljZS5jdXJyZW50Um91dGVVcmwkLm5leHQocm91dGVyRXZlbnQudXJsKVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG5cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXNldEFjdGl2aXR5SGlzdG9yeSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGF1dGggPSB0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlO1xyXG4gICAgaWYgKCFhdXRoPy5pc0FkbWluKSByZXR1cm47XHJcbiAgICBjb25zdCBjb25uZWN0aW9uID0gdGhpcy5odWJDb25uZWN0aW9uU2VydmljZS5odWJDb25uZWN0aW9uJC52YWx1ZTtcclxuICAgIGNvbnN0IGFjdGl2aXR5OiBJSHViQ29ubmVjdGlvbkFjdGl2aXR5ID0ge1xyXG4gICAgICBzaWQ6IGF1dGg/LmZ1bGxOYW1lISxcclxuICAgICAgc2lnbmFsVHlwZTogRW51bVNpZ25hbFJUeXBlLkFDVElWSVRZX0hJU1RPUllfUkVTRVQsXHJcbiAgICAgIHVzZXJuYW1lOiBhdXRoPy51c2VyTmFtZSEsXHJcbiAgICAgIGF2YXRhcjogYXV0aD8uYXZhdGFyISxcclxuICAgICAgbWVzc2FnZTogYCR7YXV0aD8udXNlck5hbWV9IGhhcyByZXNldCBhY3Rpdml0eSBoaXN0b3J5YCxcclxuICAgICAgbG9naW5UaW1lOiB0aGlzLmF1dGhTZXJ2aWNlLmRhdGEkLnZhbHVlPy5sb2dpblRpbWUhLFxyXG4gICAgICBkYXRhOiBudWxsLFxyXG4gICAgfVxyXG5cclxuICAgIGlmICghIWNvbm5lY3Rpb24pIHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICBjb25uZWN0aW9uPy5pbnZva2UoXCJTZW5kTWVzc2FnZVwiLCBhY3Rpdml0eSk7XHJcbiAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKGUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLm1hcCh4ID0+IHg/LnVuc3Vic2NyaWJlKCkpXHJcbiAgfVxyXG5cclxufVxyXG4iLCIiXX0=
|
package/esm2022/lib/app/libraries/core-page-view/core-page-view/core-page-view.component.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Component, Input, ViewChild } from '@angular/core';
|
|
2
2
|
import { BaseComponent } from '../../base-component/base/base.component';
|
|
3
|
-
import { NgIf, NgStyle } from '@angular/common';
|
|
3
|
+
import { NgIf, NgStyle, NgTemplateOutlet } from '@angular/common';
|
|
4
4
|
import { TranslatePipe } from '../../../app-pipes/translate.pipe';
|
|
5
5
|
import { CoreLoadingSurfaceComponent } from '../../core-loading-surface/core-loading-surface/core-loading-surface.component';
|
|
6
6
|
import { TooltipDirective } from '../../tooltip/tooltip.directive';
|
|
@@ -25,18 +25,19 @@ export class CorePageViewComponent extends BaseComponent {
|
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CorePageViewComponent, deps: [{ token: i1.MultiLanguageService }, { token: i2.LayoutService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: CorePageViewComponent, isStandalone: true, selector: "core-page-view", inputs: { caption: "caption", sections: "sections", highlightedFields: "highlightedFields", hightlightedColor: "hightlightedColor", loading: "loading", showLeftLine: "showLeftLine" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: CorePageViewComponent, isStandalone: true, selector: "core-page-view", inputs: { caption: "caption", sections: "sections", highlightedFields: "highlightedFields", hightlightedColor: "hightlightedColor", loading: "loading", showLeftLine: "showLeftLine" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"item.hint!\"></i>\r\n }\r\n :\r\n </div>\r\n @if (item.controlType === 'TEMPLATE' && !!item.templateRef) {\r\n <ng-container *ngTemplateOutlet=\"item.templateRef!; context: { context: item.value }\"></ng-container>\r\n } @else {\r\n <div [appTooltip]=\"item.value | tableCell : item.pipe : lang\" class=\"content\"\r\n [class.hightlighted]=\"highlightedFields.includes(item.field!)\">\r\n {{ item.value | tableCell : item.pipe : lang }}\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n</div>", styles: [".core-page-view-container{--color-hightlighted: var(--color-basic-orange);font-size:13px}.core-page-view-container .vertical{margin-top:0;margin-bottom:10px}.core-page-view-container .row .label{width:100%;font-weight:400;line-height:20px;color:#a3a3a3;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 8px 0 5px}.core-page-view-container .row .content{height:28px;width:100%;font-weight:400;line-height:20px;color:#000;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px 5px 5px}.core-page-view-container .row .content.hightlighted{color:var(--color-hightlighted)}.core-page-view-container .sections-wrapper{margin:0 5px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: TableCellPipe, name: "tableCell" }, { kind: "component", type: CoreLoadingSurfaceComponent, selector: "core-loading-surface", inputs: ["loading", "height"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["color", "backgroundColor", "appTooltip", "showAnyway", "position"] }] }); }
|
|
29
29
|
}
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CorePageViewComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
32
|
args: [{ selector: 'core-page-view', standalone: true, imports: [
|
|
33
33
|
NgIf,
|
|
34
34
|
NgStyle,
|
|
35
|
+
NgTemplateOutlet,
|
|
35
36
|
TranslatePipe,
|
|
36
37
|
TableCellPipe,
|
|
37
38
|
CoreLoadingSurfaceComponent,
|
|
38
39
|
TooltipDirective
|
|
39
|
-
], template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n
|
|
40
|
+
], template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"item.hint!\"></i>\r\n }\r\n :\r\n </div>\r\n @if (item.controlType === 'TEMPLATE' && !!item.templateRef) {\r\n <ng-container *ngTemplateOutlet=\"item.templateRef!; context: { context: item.value }\"></ng-container>\r\n } @else {\r\n <div [appTooltip]=\"item.value | tableCell : item.pipe : lang\" class=\"content\"\r\n [class.hightlighted]=\"highlightedFields.includes(item.field!)\">\r\n {{ item.value | tableCell : item.pipe : lang }}\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n</div>", styles: [".core-page-view-container{--color-hightlighted: var(--color-basic-orange);font-size:13px}.core-page-view-container .vertical{margin-top:0;margin-bottom:10px}.core-page-view-container .row .label{width:100%;font-weight:400;line-height:20px;color:#a3a3a3;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 8px 0 5px}.core-page-view-container .row .content{height:28px;width:100%;font-weight:400;line-height:20px;color:#000;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px 5px 5px}.core-page-view-container .row .content.hightlighted{color:var(--color-hightlighted)}.core-page-view-container .sections-wrapper{margin:0 5px}\n"] }]
|
|
40
41
|
}], ctorParameters: () => [{ type: i1.MultiLanguageService }, { type: i2.LayoutService }], propDecorators: { container: [{
|
|
41
42
|
type: ViewChild,
|
|
42
43
|
args: ['container']
|
|
@@ -53,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
53
54
|
}], showLeftLine: [{
|
|
54
55
|
type: Input
|
|
55
56
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1wYWdlLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtcGFnZS12aWV3L2NvcmUtcGFnZS12aWV3L2NvcmUtcGFnZS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLXBhZ2Utdmlldy9jb3JlLXBhZ2Utdmlldy9jb3JlLXBhZ2Utdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9GLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUd6RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQztBQUM3SCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFrQjVELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxhQUFhO0lBYXRELFlBQ2tCLEdBQXlCLEVBQ2pDLGFBQTRCO1FBRXBDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUhLLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBQ2pDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBVDdCLHNCQUFpQixHQUFhLEVBQUUsQ0FBQztRQUsxQyw2QkFBd0IsR0FBVyxPQUFPLENBQUM7UUFPekMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMscUNBQXFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLENBQUMsQ0FBQyxDQUMzRyxDQUFBO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFO2dCQUMvRCxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLHNCQUFzQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO2FBQy9GO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOzhHQTdCVSxxQkFBcUI7a0dBQXJCLHFCQUFxQixpWUMzQmxDLDAyREE0Q00sa3ZCRDVCRixJQUFJLDZGQUNKLE9BQU8sMkVBQ1AsZ0JBQWdCLCtJQUNoQixhQUFhLDZDQUNiLGFBQWEsa0RBQ2IsMkJBQTJCLGdHQUMzQixnQkFBZ0I7OzJGQUtQLHFCQUFxQjtrQkFmakMsU0FBUzsrQkFDRSxnQkFBZ0IsY0FDZCxJQUFJLFdBQ1A7d0JBQ1AsSUFBSTt3QkFDSixPQUFPO3dCQUNQLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLDJCQUEyQjt3QkFDM0IsZ0JBQWdCO3FCQUNqQjtxSEFNdUIsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQUViLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJQ29yZVZpZXdTZWN0aW9uIH0gZnJvbSAnLi4vZW51bS1pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UtY29tcG9uZW50L2Jhc2UvYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNdWx0aUxhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL211bHRpLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgTmdJZiwgTmdTdHlsZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuLi8uLi8uLi9hcHAtcGlwZXMvdHJhbnNsYXRlLnBpcGUnO1xyXG5pbXBvcnQgeyBDb3JlTG9hZGluZ1N1cmZhY2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWxvYWRpbmctc3VyZmFjZS9jb3JlLWxvYWRpbmctc3VyZmFjZS9jb3JlLWxvYWRpbmctc3VyZmFjZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vdG9vbHRpcC90b29sdGlwLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRhYmxlQ2VsbFBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy90YWJsZS1jZWxsLnBpcGUnO1xyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbGF5b3V0LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjb3JlLXBhZ2UtdmlldycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0lmLFxyXG4gICAgTmdTdHlsZSxcclxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXHJcbiAgICBUcmFuc2xhdGVQaXBlLFxyXG4gICAgVGFibGVDZWxsUGlwZSxcclxuICAgIENvcmVMb2FkaW5nU3VyZmFjZUNvbXBvbmVudCxcclxuICAgIFRvb2x0aXBEaXJlY3RpdmVcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3JlLXBhZ2Utdmlldy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29yZS1wYWdlLXZpZXcuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZVBhZ2VWaWV3Q29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lciE6IEVsZW1lbnRSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KCkgY2FwdGlvbiE6IEVudW1UcmFuc2xhdGVLZXk7XHJcbiAgQElucHV0KCkgc2VjdGlvbnMhOiBJQ29yZVZpZXdTZWN0aW9uW107XHJcbiAgQElucHV0KCkgaGlnaGxpZ2h0ZWRGaWVsZHM6IHN0cmluZ1tdID0gW107XHJcbiAgQElucHV0KCkgaGlnaHRsaWdodGVkQ29sb3IhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbG9hZGluZyE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2hvd0xlZnRMaW5lITogYm9vbGVhbjtcclxuXHJcbiAgZm9ybUdyb3VwQmFja2dyb3VuZENvbG9yOiBzdHJpbmcgPSAnd2hpdGUnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBvdmVycmlkZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihtbHMpO1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgIHRoaXMubGF5b3V0U2VydmljZS5jb3JlUGFnZVZpZXdGb3JtR3JvdXBCYWNrZ3JvdW5kQ29sb3IkLnN1YnNjcmliZSh4ID0+IHRoaXMuZm9ybUdyb3VwQmFja2dyb3VuZENvbG9yID0geClcclxuICAgIClcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAoISF0aGlzLmhpZ2h0bGlnaHRlZENvbG9yICYmICEhdGhpcy5oaWdodGxpZ2h0ZWRDb2xvci5sZW5ndGgpIHtcclxuICAgICAgICB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWNvbG9yLWhpZ2h0bGlnaHRlZCcsIHRoaXMuaGlnaHRsaWdodGVkQ29sb3IpXHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2ICNjb250YWluZXIgY2xhc3M9XCJjb3JlLXBhZ2Utdmlldy1jb250YWluZXJcIj5cclxuICA8Y29yZS1sb2FkaW5nLXN1cmZhY2UgW2xvYWRpbmddPVwibG9hZGluZ1wiPjwvY29yZS1sb2FkaW5nLXN1cmZhY2U+XHJcblxyXG4gIDxkaXYgW2NsYXNzLnNob3ctbGVmdC1saW5lXT1cInNob3dMZWZ0TGluZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInNlY3Rpb25zLXdyYXBwZXJcIj5cclxuXHJcbiAgICAgIEBmb3IgKHNlY3Rpb24gb2Ygc2VjdGlvbnM7IHRyYWNrIHNlY3Rpb24pIHtcclxuICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb25cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1oZWFkZXItbGFiZWxcIiAqbmdJZj1cInNlY3Rpb24uY2FwdGlvblwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImljb24taW5mb1wiPjwvZGl2PlxyXG4gICAgICAgICAgPGxhYmVsPnt7IHNlY3Rpb24uY2FwdGlvbiB8IHRyYW5zbGF0ZSA6IGxhbmcgfX08L2xhYmVsPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICBAZm9yIChyb3cgb2Ygc2VjdGlvbi5yb3dzOyB0cmFjayByb3cpIHtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG1iMTUgbm8tcGFkZGluZyBuby1tYXJnaW5cIj5cclxuICAgICAgICAgIEBmb3IgKGl0ZW0gb2Ygcm93OyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgIDxkaXYgW2NsYXNzXT1cIidjb2wtbWQtJyArIChpdGVtLmxhYmVsRmxleFNpemUgKyBpdGVtLmZsZXhTaXplKVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCB2ZXJ0aWNhbFwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBmb3JtR3JvdXBCYWNrZ3JvdW5kQ29sb3JcclxuICAgICAgICAgICAgICAgIH1cIj5cclxuICAgICAgICAgICAgICA8ZGl2IFthcHBUb29sdGlwXT1cIml0ZW0ubGFiZWwgfCB0cmFuc2xhdGUgOiBsYW5nXCIgY2xhc3M9XCJsYWJlbFwiPnt7IGl0ZW0ubGFiZWwgfCB0cmFuc2xhdGUgOiBsYW5nIH19XHJcbiAgICAgICAgICAgICAgICBAaWYgKCEhaXRlbS5oaW50ISkge1xyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmZWF0aGVyLWhlbHAtY2lyY2xlXCIgW2FwcFRvb2x0aXBdPVwiaXRlbS5oaW50IVwiPjwvaT5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIDpcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICBAaWYgKGl0ZW0uY29udHJvbFR5cGUgPT09ICdURU1QTEFURScgJiYgISFpdGVtLnRlbXBsYXRlUmVmKSB7XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbS50ZW1wbGF0ZVJlZiE7IGNvbnRleHQ6IHsgY29udGV4dDogaXRlbS52YWx1ZSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgICAgPGRpdiBbYXBwVG9vbHRpcF09XCJpdGVtLnZhbHVlIHwgdGFibGVDZWxsIDogaXRlbS5waXBlIDogbGFuZ1wiIGNsYXNzPVwiY29udGVudFwiXHJcbiAgICAgICAgICAgICAgICBbY2xhc3MuaGlnaHRsaWdodGVkXT1cImhpZ2hsaWdodGVkRmllbGRzLmluY2x1ZGVzKGl0ZW0uZmllbGQhKVwiPlxyXG4gICAgICAgICAgICAgICAge3sgaXRlbS52YWx1ZSB8IHRhYmxlQ2VsbCA6IGl0ZW0ucGlwZSA6IGxhbmcgfX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgfVxyXG5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -2,5 +2,6 @@ export var EnumCoreViewItemType;
|
|
|
2
2
|
(function (EnumCoreViewItemType) {
|
|
3
3
|
EnumCoreViewItemType["TEXT"] = "TEXT";
|
|
4
4
|
EnumCoreViewItemType["CHECKBOX"] = "CHECKBOX";
|
|
5
|
+
EnumCoreViewItemType["TEMPLATE"] = "TEMPLATE";
|
|
5
6
|
})(EnumCoreViewItemType || (EnumCoreViewItemType = {}));
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS1pbnRlcmZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtcGFnZS12aWV3L2VudW0taW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQkEsTUFBTSxDQUFOLElBQVksb0JBSVg7QUFKRCxXQUFZLG9CQUFvQjtJQUM1QixxQ0FBYSxDQUFBO0lBQ2IsNkNBQXFCLENBQUE7SUFDckIsNkNBQXFCLENBQUE7QUFDekIsQ0FBQyxFQUpXLG9CQUFvQixLQUFwQixvQkFBb0IsUUFJL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgRW51bUNvcmVUYWJsZVBpcGVUeXBlIH0gZnJvbSBcIi4uL2NvcmUtdGFibGUvRW51bUNvcmVUYWJsZVBpcGVUeXBlXCI7XHJcbmltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUNvcmVWaWV3U2VjdGlvbiB7XHJcbiAgICBjYXB0aW9uPzogRW51bVRyYW5zbGF0ZUtleSB8IHN0cmluZyB8IHVuZGVmaW5lZCxcclxuICAgIHJvd3M6IElDb3JlVmlld0l0ZW1bXVtdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElDb3JlVmlld0l0ZW0ge1xyXG4gICAgbGFiZWxGbGV4U2l6ZTogbnVtYmVyO1xyXG4gICAgZmxleFNpemU6IG51bWJlcjtcclxuICAgIGhlaWdodD86IG51bWJlcjtcclxuICAgIGNvbnRyb2xUeXBlOiBFbnVtQ29yZVZpZXdJdGVtVHlwZSxcclxuICAgIHRlbXBsYXRlUmVmPzogVGVtcGxhdGVSZWY8YW55PlxyXG4gICAgZmllbGQ6IHN0cmluZyxcclxuICAgIHZhbHVlPzogYW55LFxyXG4gICAgbGFiZWw6IEVudW1UcmFuc2xhdGVLZXksXHJcbiAgICBwaXBlPzogRW51bUNvcmVUYWJsZVBpcGVUeXBlLCAvLyBzaGFyZWQgcGlwZSBmcm9tIENvcmVUYWJsZVxyXG4gICAgaGludD86IEVudW1UcmFuc2xhdGVLZXksXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEVudW1Db3JlVmlld0l0ZW1UeXBlIHtcclxuICAgIFRFWFQgPSBcIlRFWFRcIixcclxuICAgIENIRUNLQk9YID0gXCJDSEVDS0JPWFwiLFxyXG4gICAgVEVNUExBVEUgPSBcIlRFTVBMQVRFXCIsXHJcbn0iXX0=
|
|
@@ -10,17 +10,19 @@ import * as i1 from "../services/common-http-request.service";
|
|
|
10
10
|
import * as i2 from "./hub-connection.service";
|
|
11
11
|
import * as i3 from "./organization.service";
|
|
12
12
|
import * as i4 from "../libraries/alert/alert.service";
|
|
13
|
-
import * as i5 from "./
|
|
14
|
-
import * as i6 from "
|
|
15
|
-
import * as i7 from "@angular/
|
|
13
|
+
import * as i5 from "./app-config.service";
|
|
14
|
+
import * as i6 from "./multi-language.service";
|
|
15
|
+
import * as i7 from "@angular/common/http";
|
|
16
|
+
import * as i8 from "@angular/router";
|
|
16
17
|
export class AuthService {
|
|
17
|
-
constructor(http, router, commonHttpRequestService, hubConnectionService, organizationService, alertService, mls) {
|
|
18
|
+
constructor(http, router, commonHttpRequestService, hubConnectionService, organizationService, alertService, appConfigService, mls) {
|
|
18
19
|
this.http = http;
|
|
19
20
|
this.router = router;
|
|
20
21
|
this.commonHttpRequestService = commonHttpRequestService;
|
|
21
22
|
this.hubConnectionService = hubConnectionService;
|
|
22
23
|
this.organizationService = organizationService;
|
|
23
24
|
this.alertService = alertService;
|
|
25
|
+
this.appConfigService = appConfigService;
|
|
24
26
|
this.mls = mls;
|
|
25
27
|
// for change the navbar state between online and offline
|
|
26
28
|
this.authenticate = new Subject();
|
|
@@ -86,7 +88,7 @@ export class AuthService {
|
|
|
86
88
|
// Web client Try restore session
|
|
87
89
|
tryRestoreSession() {
|
|
88
90
|
const fullUrl = api.SYS_REFRESH_TOKEN;
|
|
89
|
-
return this.commonHttpRequestService.makePostRequest("refreshToken", fullUrl, { appType:
|
|
91
|
+
return this.commonHttpRequestService.makePostRequest("refreshToken", fullUrl, { appType: this.appConfigService.APP_TYPE });
|
|
90
92
|
}
|
|
91
93
|
getAuthorizationToken() {
|
|
92
94
|
return this.data$.value?.token;
|
|
@@ -108,7 +110,7 @@ export class AuthService {
|
|
|
108
110
|
}
|
|
109
111
|
}
|
|
110
112
|
}
|
|
111
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, deps: [{ token: Http }, { token: Router }, { token: i1.CommonHttpRequestService }, { token: i2.HubConnectionService }, { token: i3.OrganizationService }, { token: i4.AlertService }, { token: i5.MultiLanguageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
113
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, deps: [{ token: Http }, { token: Router }, { token: i1.CommonHttpRequestService }, { token: i2.HubConnectionService }, { token: i3.OrganizationService }, { token: i4.AlertService }, { token: i5.AppConfigService }, { token: i6.MultiLanguageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
112
114
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, providedIn: 'root' }); }
|
|
113
115
|
}
|
|
114
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, decorators: [{
|
|
@@ -116,11 +118,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
116
118
|
args: [{
|
|
117
119
|
providedIn: 'root'
|
|
118
120
|
}]
|
|
119
|
-
}], ctorParameters: () => [{ type:
|
|
121
|
+
}], ctorParameters: () => [{ type: i7.HttpClient, decorators: [{
|
|
120
122
|
type: Inject,
|
|
121
123
|
args: [Http]
|
|
122
|
-
}] }, { type:
|
|
124
|
+
}] }, { type: i8.Router, decorators: [{
|
|
123
125
|
type: Inject,
|
|
124
126
|
args: [Router]
|
|
125
|
-
}] }, { type: i1.CommonHttpRequestService }, { type: i2.HubConnectionService }, { type: i3.OrganizationService }, { type: i4.AlertService }, { type: i5.MultiLanguageService }] });
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvc2VydmljZXMvYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQUNoQixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRzdDLE9BQU8sRUFDTCxVQUFVLElBQUksSUFBSSxFQUNuQixNQUFNLHNCQUFzQixDQUFDO0FBRzlCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7O0FBTXpELE1BQU0sT0FBTyxXQUFXO0lBZ0J0QixZQUN3QixJQUFVLEVBQ1IsTUFBYyxFQUM5Qix3QkFBa0QsRUFDbEQsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4QyxZQUEwQixFQUMxQixHQUF5QjtRQU5YLFNBQUksR0FBSixJQUFJLENBQU07UUFDUixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQzlCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBdEJuQyx5REFBeUQ7UUFDakQsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQzlDLHVCQUFrQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFdEQsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFtQixJQUFJLENBQUMsQ0FBQztRQUNwRCxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUdyRCx3QkFBbUIsR0FBeUIsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUM7UUFDM0UsbUJBQWMsR0FBRyxJQUFLLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUN0RCxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQXdFdkQsbUJBQWMsR0FBRyxHQUFZLEVBQUU7WUFDN0IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDNUIsQ0FBQyxDQUFDO1FBRUYsZ0JBQVcsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFFdkIsYUFBUSxHQUFHLEdBQVcsRUFBRTtZQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBTSxDQUFDLEtBQUssQ0FBQztRQUNqQyxDQUFDLENBQUM7SUFwRUMsQ0FBQztJQUVKLG1CQUFtQjtJQUNuQixTQUFTLENBQUMsT0FBNEI7UUFDcEMsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQTtRQUM3QixPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsb0JBQW9CO0lBQ3BCLFVBQVU7UUFDUixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFBO1FBQzFCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxjQUFjLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQy9FLENBQUM7SUFFRCxVQUFVO1FBQ1IsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUE7UUFFakUsTUFBTSxLQUFLLEdBQUcsR0FBRyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDM0UsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ3BDLFdBQVcsRUFBRSxTQUFTO2dCQUN0QixVQUFVLEVBQUUsRUFBRTtnQkFDZCxXQUFXLEVBQUUsRUFBRTtnQkFDZixZQUFZLEVBQUUsRUFBRTtnQkFDaEIsZ0JBQWdCLEVBQUUsSUFBSTthQUN2QixDQUFDLENBQUE7WUFDRixNQUFNLElBQUksR0FBRyxZQUFZLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzNDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUU7Z0JBQ1YsWUFBWSxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDckM7WUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQyxDQUFDLENBQUE7UUFFRCxJQUFJLENBQUMsQ0FBQyxVQUFVLEVBQUU7WUFDaEIsVUFBVSxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1lBQ3ZDLFVBQVUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNqQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUN6QixLQUFLLEVBQUUsQ0FBQztZQUNWLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDWCxpRkFBaUY7WUFDbkYsQ0FBQyxDQUFDLENBQUE7U0FDSDthQUFNO1lBQ0wsS0FBSyxFQUFFLENBQUM7U0FDVDtJQUNILENBQUM7SUFFRCxpQ0FBaUM7SUFDakMsaUJBQWlCO1FBQ2YsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLGlCQUFpQixDQUFBO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUE7SUFDdEcsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQU0sQ0FBQztJQUNsQyxDQUFDO0lBWUQsUUFBUSxDQUFFLEtBQWE7UUFDckIsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQyxJQUFJLE1BQU0sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzdELElBQUksV0FBVyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN2RSxPQUFPLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxDQUFNO1FBRWhDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLFVBQVUsS0FBSyxHQUFHLEVBQUU7WUFDMUQsTUFBTSxJQUFJLEdBQXNCLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDdkMsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLEdBQUcsRUFBRTtnQkFDM0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDNUI7U0FDRjtJQUVILENBQUM7OEdBakhVLFdBQVcsa0JBaUJaLElBQUksYUFDSixNQUFNO2tIQWxCTCxXQUFXLGNBRlYsTUFBTTs7MkZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQWtCSSxNQUFNOzJCQUFDLElBQUk7OzBCQUNYLE1BQU07MkJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdMT0JBTCBJTVBPUlRcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuaW1wb3J0IHsgSHViQ29ubmVjdGlvblNlcnZpY2UgfSBmcm9tIFwiLi9odWItY29ubmVjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IE9yZ2FuaXphdGlvblNlcnZpY2UgfSBmcm9tIFwiLi9vcmdhbml6YXRpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBDb21tb25IdHRwUmVxdWVzdFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvY29tbW9uLWh0dHAtcmVxdWVzdC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gXCIuLi9saWJyYXJpZXMvYWxlcnQvYWxlcnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBNdWx0aUxhbmd1YWdlU2VydmljZSB9IGZyb20gXCIuL211bHRpLWxhbmd1YWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgYXBpIH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuXHJcblxyXG5pbXBvcnQge1xyXG4gIEh0dHBDbGllbnQgYXMgSHR0cFxyXG59IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJQ2xpZW50TG9naW5SZXF1ZXN0IH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvSUNsaWVudExvZ2luUmVxdWVzdFwiO1xyXG5pbXBvcnQgeyBJQXV0aERhdGEgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9JQXV0aERhdGFcIjtcclxuaW1wb3J0IHsgYWxlcnRPcHRpb25zIH0gZnJvbSBcIi4uL2NvbnN0YW50cy9hbGVydE9wdGlvbnNcIjtcclxuaW1wb3J0IHsgSUZvcm1hdGVkUmVzcG9uc2UgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9JRm9ybWF0ZWRSZXNwb25zZVwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2Uge1xyXG4gIC8vIGZvciBjaGFuZ2UgdGhlIG5hdmJhciBzdGF0ZSBiZXR3ZWVuIG9ubGluZSBhbmQgb2ZmbGluZVxyXG4gIHByaXZhdGUgYXV0aGVudGljYXRlID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICBhdXRoZW50aWNhdGVTdGF0ZSQgPSB0aGlzLmF1dGhlbnRpY2F0ZS5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgZGF0YSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElBdXRoRGF0YSB8IG51bGw+KG51bGwpO1xyXG4gIHN0b3BTdWJzY3JpcHRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuICBhdXRoZW50aWNhdGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICByZWZyZXNoVG9rZW5JblByb2dyZXNzITogYm9vbGVhbjtcclxuICByZWZyZXNoVG9rZW5TdWJqZWN0OiBCZWhhdmlvclN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcclxuICBzc29Qcm9jZXNzaW5nJCA9IG5ldyAgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICByZWZyZXNoaW5nVG9rZW4kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcblxyXG4gIHByb2ZpbGVBdmF0YXI6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KEh0dHApIHByaXZhdGUgaHR0cDogSHR0cCxcclxuICAgIEBJbmplY3QoUm91dGVyKSBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBjb21tb25IdHRwUmVxdWVzdFNlcnZpY2U6IENvbW1vbkh0dHBSZXF1ZXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgaHViQ29ubmVjdGlvblNlcnZpY2U6IEh1YkNvbm5lY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBvcmdhbml6YXRpb25TZXJ2aWNlOiBPcmdhbml6YXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgbWxzOiBNdWx0aUxhbmd1YWdlU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIC8vIFdlYiBjbGllbnQgbG9naW5cclxuICB1c2VyTG9naW4ocmVxdWVzdDogSUNsaWVudExvZ2luUmVxdWVzdCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBmdWxsVXJsID0gYXBpLlNZU19MT0dJTlxyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VQb3N0UmVxdWVzdChcImNsaWVudExvZ2luXCIsIGZ1bGxVcmwsIHJlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgLy8gV2ViIGNsaWVudCBsb2dvdXRcclxuICB1c2VyTG9nb3V0KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCB1cmwgPSBhcGkuU1lTX0xPR09VVFxyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VQb3N0UmVxdWVzdChcImNsaWVudExvZ291dFwiLCB1cmwsIHt9KVxyXG4gIH1cclxuXHJcbiAgcG9zdExvZ291dCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGNvbm5lY3Rpb24gPSB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLmh1YkNvbm5lY3Rpb24kLnZhbHVlXHJcblxyXG4gICAgY29uc3QgY2xlYXIgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmluZm8odGhpcy5tbHMudHJhbnMoJ1NVQ0NFU1NfTE9HR0VEX09VVCcpLCBhbGVydE9wdGlvbnMpO1xyXG4gICAgICB0aGlzLmh1YkNvbm5lY3Rpb25TZXJ2aWNlLmh1YkNvbm5lY3Rpb24kLm5leHQobnVsbCk7XHJcbiAgICAgIHRoaXMuZGF0YSQubmV4dChudWxsKTtcclxuICAgICAgdGhpcy5vcmdhbml6YXRpb25TZXJ2aWNlLm9yZ1RyZWVEYXRhJC5uZXh0KFtdKTtcclxuICAgICAgdGhpcy5vcmdhbml6YXRpb25TZXJ2aWNlLnN0YXR1cyQubmV4dCh7XHJcbiAgICAgICAgc2VsZWN0ZWRLZXk6IHVuZGVmaW5lZCxcclxuICAgICAgICBhY3RpdmVLZXlzOiBbXSxcclxuICAgICAgICBjaGVja2VkS2V5czogW10sXHJcbiAgICAgICAgZXhwYW5kZWRLZXlzOiBbXSxcclxuICAgICAgICBjaGVja0luaGVyaXRhbmNlOiB0cnVlXHJcbiAgICAgIH0pXHJcbiAgICAgIGNvbnN0IGxhbmcgPSBsb2NhbFN0b3JhZ2U/LmdldEl0ZW0oXCJsYW5nXCIpO1xyXG4gICAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTtcclxuICAgICAgaWYgKCEhbGFuZykge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZT8uc2V0SXRlbShcImxhbmdcIiwgbGFuZyk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCgnYXV0aC9sb2dpbicpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghIWNvbm5lY3Rpb24pIHtcclxuICAgICAgY29ubmVjdGlvbi5vZmYoXCJSZWNlaXZlU3lzdGVtTWVzc2FnZVwiKTtcclxuICAgICAgY29ubmVjdGlvbi5vZmYoXCJSZWNlaXZlTWVzc2FnZVwiKTtcclxuICAgICAgY29ubmVjdGlvbi5zdG9wKCkudGhlbihfID0+IHtcclxuICAgICAgICBjbGVhcigpO1xyXG4gICAgICB9KS5jYXRjaChlID0+IHtcclxuICAgICAgICAvL3RoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKEpTT04uc3RyaW5naWZ5KGUsIG51bGwsIDIpLCBub25lQXV0b0Nsb3NlZEFsZXJ0T3B0aW9ucylcclxuICAgICAgfSlcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNsZWFyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBXZWIgY2xpZW50IFRyeSByZXN0b3JlIHNlc3Npb25cclxuICB0cnlSZXN0b3JlU2Vzc2lvbigpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgZnVsbFVybCA9IGFwaS5TWVNfUkVGUkVTSF9UT0tFTlxyXG4gICAgcmV0dXJuIHRoaXMuY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlLm1ha2VQb3N0UmVxdWVzdChcInJlZnJlc2hUb2tlblwiLCBmdWxsVXJsLCB7IGFwcFR5cGU6IFwiV0VCQVBQXCIgfSlcclxuICB9XHJcblxyXG4gIGdldEF1dGhvcml6YXRpb25Ub2tlbigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0YSQudmFsdWU/LnRva2VuITtcclxuICB9XHJcblxyXG4gIGlzQXV0aGVudGljYXRlID0gKCk6IGJvb2xlYW4gPT4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5kYXRhJC52YWx1ZTtcclxuICB9O1xyXG5cclxuICBnZXRVc2VySW5mbyA9ICgpID0+IHt9O1xyXG5cclxuICBnZXRUb2tlbiA9ICgpOiBzdHJpbmcgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0YSQudmFsdWUhLnRva2VuO1xyXG4gIH07XHJcblxyXG4gIHBhcnNlSnd0ICh0b2tlbjogc3RyaW5nKSB7XHJcbiAgICB2YXIgYmFzZTY0VXJsID0gdG9rZW4uc3BsaXQoJy4nKVsxXTtcclxuICAgIHZhciBiYXNlNjQgPSBiYXNlNjRVcmwucmVwbGFjZSgvLS9nLCAnKycpLnJlcGxhY2UoL18vZywgJy8nKTtcclxuICAgIHZhciBqc29uUGF5bG9hZCA9IGRlY29kZVVSSUNvbXBvbmVudCh3aW5kb3cuYXRvYihiYXNlNjQpLnNwbGl0KCcnKS5tYXAoYyA9PiB7XHJcbiAgICAgICAgcmV0dXJuICclJyArICgnMDAnICsgYy5jaGFyQ29kZUF0KDApLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpO1xyXG4gICAgfSkuam9pbignJykpO1xyXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoanNvblBheWxvYWQpO1xyXG4gIH1cclxuXHJcbiAgcmVzb2x2ZUF1dGhlbnRpY2F0ZVJlc3BvbnNlKHg6IGFueSk6IHZvaWQge1xyXG5cclxuICAgIGlmICh4Lm9rICYmIHguc3RhdHVzID09PSAyMDAgJiYgeC5ib2R5Py5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICAgICAgY29uc3QgYm9keTogSUZvcm1hdGVkUmVzcG9uc2UgPSB4LmJvZHk7XHJcbiAgICAgIGlmIChib2R5LnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgIGNvbnN0IGlubmVyQm9keSA9IGJvZHkuaW5uZXJCb2R5O1xyXG4gICAgICAgIHRoaXMuZGF0YSQubmV4dChpbm5lckJvZHkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
127
|
+
}] }, { type: i1.CommonHttpRequestService }, { type: i2.HubConnectionService }, { type: i3.OrganizationService }, { type: i4.AlertService }, { type: i5.AppConfigService }, { type: i6.MultiLanguageService }] });
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvc2VydmljZXMvYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQUNoQixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRzdDLE9BQU8sRUFDTCxVQUFVLElBQUksSUFBSSxFQUNuQixNQUFNLHNCQUFzQixDQUFDO0FBRzlCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7OztBQU96RCxNQUFNLE9BQU8sV0FBVztJQWdCdEIsWUFDd0IsSUFBVSxFQUNSLE1BQWMsRUFDOUIsd0JBQWtELEVBQ2xELG9CQUEwQyxFQUMxQyxtQkFBd0MsRUFDeEMsWUFBMEIsRUFDMUIsZ0JBQWtDLEVBQ2xDLEdBQXlCO1FBUFgsU0FBSSxHQUFKLElBQUksQ0FBTTtRQUNSLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDOUIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxRQUFHLEdBQUgsR0FBRyxDQUFzQjtRQXZCbkMseURBQXlEO1FBQ2pELGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUM5Qyx1QkFBa0Is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LENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELDJCQUEyQixDQUFDLENBQU07UUFFaEMsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxLQUFLLEdBQUcsRUFBRTtZQUMxRCxNQUFNLElBQUksR0FBc0IsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUN2QyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssR0FBRyxFQUFFO2dCQUMzQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUM1QjtTQUNGO0lBRUgsQ0FBQzs4R0FsSFUsV0FBVyxrQkFpQlosSUFBSSxhQUNKLE1BQU07a0hBbEJMLFdBQVcsY0FGVixNQUFNOzsyRkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBa0JJLE1BQU07MkJBQUMsSUFBSTs7MEJBQ1gsTUFBTTsyQkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR0xPQkFMIElNUE9SVFxyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5pbXBvcnQgeyBIdWJDb25uZWN0aW9uU2VydmljZSB9IGZyb20gXCIuL2h1Yi1jb25uZWN0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgT3JnYW5pemF0aW9uU2VydmljZSB9IGZyb20gXCIuL29yZ2FuaXphdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IENvbW1vbkh0dHBSZXF1ZXN0U2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9jb21tb24taHR0cC1yZXF1ZXN0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSBcIi4uL2xpYnJhcmllcy9hbGVydC9hbGVydC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4vbXVsdGktbGFuZ3VhZ2Uuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBhcGkgfSBmcm9tIFwiYWxwaGEtZ2xvYmFsLWNvbnN0YW50c1wiO1xyXG5cclxuXHJcbmltcG9ydCB7XHJcbiAgSHR0cENsaWVudCBhcyBIdHRwXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IElDbGllbnRMb2dpblJlcXVlc3QgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9JQ2xpZW50TG9naW5SZXF1ZXN0XCI7XHJcbmltcG9ydCB7IElBdXRoRGF0YSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL0lBdXRoRGF0YVwiO1xyXG5pbXBvcnQgeyBhbGVydE9wdGlvbnMgfSBmcm9tIFwiLi4vY29uc3RhbnRzL2FsZXJ0T3B0aW9uc1wiO1xyXG5pbXBvcnQgeyBJRm9ybWF0ZWRSZXNwb25zZSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlXCI7XHJcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UgfSBmcm9tIFwiLi9hcHAtY29uZmlnLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dGhTZXJ2aWNlIHtcclxuICAvLyBmb3IgY2hhbmdlIHRoZSBuYXZiYXIgc3RhdGUgYmV0d2VlbiBvbmxpbmUgYW5kIG9mZmxpbmVcclxuICBwcml2YXRlIGF1dGhlbnRpY2F0ZSA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgYXV0aGVudGljYXRlU3RhdGUkID0gdGhpcy5hdXRoZW50aWNhdGUuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIGRhdGEkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJQXV0aERhdGEgfCBudWxsPihudWxsKTtcclxuICBzdG9wU3Vic2NyaXB0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcbiAgYXV0aGVudGljYXRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHJcbiAgcmVmcmVzaFRva2VuSW5Qcm9ncmVzcyE6IGJvb2xlYW47XHJcbiAgcmVmcmVzaFRva2VuU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcbiAgc3NvUHJvY2Vzc2luZyQgPSBuZXcgIEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcmVmcmVzaGluZ1Rva2VuJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICBwcm9maWxlQXZhdGFyOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChIdHRwKSBwcml2YXRlIGh0dHA6IEh0dHAsXHJcbiAgICBASW5qZWN0KFJvdXRlcikgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgY29tbW9uSHR0cFJlcXVlc3RTZXJ2aWNlOiBDb21tb25IdHRwUmVxdWVzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh1YkNvbm5lY3Rpb25TZXJ2aWNlOiBIdWJDb25uZWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgb3JnYW5pemF0aW9uU2VydmljZTogT3JnYW5pemF0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwcENvbmZpZ1NlcnZpY2U6IEFwcENvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1sczogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICAvLyBXZWIgY2xpZW50IGxvZ2luXHJcbiAgdXNlckxvZ2luKHJlcXVlc3Q6IElDbGllbnRMb2dpblJlcXVlc3QpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgZnVsbFVybCA9IGFwaS5TWVNfTE9HSU5cclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlUG9zdFJlcXVlc3QoXCJjbGllbnRMb2dpblwiLCBmdWxsVXJsLCByZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIC8vIFdlYiBjbGllbnQgbG9nb3V0XHJcbiAgdXNlckxvZ291dCgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3QgdXJsID0gYXBpLlNZU19MT0dPVVRcclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlUG9zdFJlcXVlc3QoXCJjbGllbnRMb2dvdXRcIiwgdXJsLCB7fSlcclxuICB9XHJcblxyXG4gIHBvc3RMb2dvdXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBjb25uZWN0aW9uID0gdGhpcy5odWJDb25uZWN0aW9uU2VydmljZS5odWJDb25uZWN0aW9uJC52YWx1ZVxyXG5cclxuICAgIGNvbnN0IGNsZWFyID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5pbmZvKHRoaXMubWxzLnRyYW5zKCdTVUNDRVNTX0xPR0dFRF9PVVQnKSwgYWxlcnRPcHRpb25zKTtcclxuICAgICAgdGhpcy5odWJDb25uZWN0aW9uU2VydmljZS5odWJDb25uZWN0aW9uJC5uZXh0KG51bGwpO1xyXG4gICAgICB0aGlzLmRhdGEkLm5leHQobnVsbCk7XHJcbiAgICAgIHRoaXMub3JnYW5pemF0aW9uU2VydmljZS5vcmdUcmVlRGF0YSQubmV4dChbXSk7XHJcbiAgICAgIHRoaXMub3JnYW5pemF0aW9uU2VydmljZS5zdGF0dXMkLm5leHQoe1xyXG4gICAgICAgIHNlbGVjdGVkS2V5OiB1bmRlZmluZWQsXHJcbiAgICAgICAgYWN0aXZlS2V5czogW10sXHJcbiAgICAgICAgY2hlY2tlZEtleXM6IFtdLFxyXG4gICAgICAgIGV4cGFuZGVkS2V5czogW10sXHJcbiAgICAgICAgY2hlY2tJbmhlcml0YW5jZTogdHJ1ZVxyXG4gICAgICB9KVxyXG4gICAgICBjb25zdCBsYW5nID0gbG9jYWxTdG9yYWdlPy5nZXRJdGVtKFwibGFuZ1wiKTtcclxuICAgICAgbG9jYWxTdG9yYWdlLmNsZWFyKCk7XHJcbiAgICAgIGlmICghIWxhbmcpIHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2U/LnNldEl0ZW0oXCJsYW5nXCIsIGxhbmcpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJ2F1dGgvbG9naW4nKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoISFjb25uZWN0aW9uKSB7XHJcbiAgICAgIGNvbm5lY3Rpb24ub2ZmKFwiUmVjZWl2ZVN5c3RlbU1lc3NhZ2VcIik7XHJcbiAgICAgIGNvbm5lY3Rpb24ub2ZmKFwiUmVjZWl2ZU1lc3NhZ2VcIik7XHJcbiAgICAgIGNvbm5lY3Rpb24uc3RvcCgpLnRoZW4oXyA9PiB7XHJcbiAgICAgICAgY2xlYXIoKTtcclxuICAgICAgfSkuY2F0Y2goZSA9PiB7XHJcbiAgICAgICAgLy90aGlzLmFsZXJ0U2VydmljZS5lcnJvcihKU09OLnN0cmluZ2lmeShlLCBudWxsLCAyKSwgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMpXHJcbiAgICAgIH0pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjbGVhcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gV2ViIGNsaWVudCBUcnkgcmVzdG9yZSBzZXNzaW9uXHJcbiAgdHJ5UmVzdG9yZVNlc3Npb24oKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IGZ1bGxVcmwgPSBhcGkuU1lTX1JFRlJFU0hfVE9LRU5cclxuICAgIHJldHVybiB0aGlzLmNvbW1vbkh0dHBSZXF1ZXN0U2VydmljZS5tYWtlUG9zdFJlcXVlc3QoXCJyZWZyZXNoVG9rZW5cIiwgZnVsbFVybCwgeyBhcHBUeXBlOiB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQVBQX1RZUEUgfSlcclxuICB9XHJcblxyXG4gIGdldEF1dGhvcml6YXRpb25Ub2tlbigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0YSQudmFsdWU/LnRva2VuITtcclxuICB9XHJcblxyXG4gIGlzQXV0aGVudGljYXRlID0gKCk6IGJvb2xlYW4gPT4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5kYXRhJC52YWx1ZTtcclxuICB9O1xyXG5cclxuICBnZXRVc2VySW5mbyA9ICgpID0+IHt9O1xyXG5cclxuICBnZXRUb2tlbiA9ICgpOiBzdHJpbmcgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0YSQudmFsdWUhLnRva2VuO1xyXG4gIH07XHJcblxyXG4gIHBhcnNlSnd0ICh0b2tlbjogc3RyaW5nKSB7XHJcbiAgICB2YXIgYmFzZTY0VXJsID0gdG9rZW4uc3BsaXQoJy4nKVsxXTtcclxuICAgIHZhciBiYXNlNjQgPSBiYXNlNjRVcmwucmVwbGFjZSgvLS9nLCAnKycpLnJlcGxhY2UoL18vZywgJy8nKTtcclxuICAgIHZhciBqc29uUGF5bG9hZCA9IGRlY29kZVVSSUNvbXBvbmVudCh3aW5kb3cuYXRvYihiYXNlNjQpLnNwbGl0KCcnKS5tYXAoYyA9PiB7XHJcbiAgICAgICAgcmV0dXJuICclJyArICgnMDAnICsgYy5jaGFyQ29kZUF0KDApLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpO1xyXG4gICAgfSkuam9pbignJykpO1xyXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoanNvblBheWxvYWQpO1xyXG4gIH1cclxuXHJcbiAgcmVzb2x2ZUF1dGhlbnRpY2F0ZVJlc3BvbnNlKHg6IGFueSk6IHZvaWQge1xyXG5cclxuICAgIGlmICh4Lm9rICYmIHguc3RhdHVzID09PSAyMDAgJiYgeC5ib2R5Py5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICAgICAgY29uc3QgYm9keTogSUZvcm1hdGVkUmVzcG9uc2UgPSB4LmJvZHk7XHJcbiAgICAgIGlmIChib2R5LnN0YXR1c0NvZGUgPT09IDIwMCkge1xyXG4gICAgICAgIGNvbnN0IGlubmVyQm9keSA9IGJvZHkuaW5uZXJCb2R5O1xyXG4gICAgICAgIHRoaXMuZGF0YSQubmV4dChpbm5lckJvZHkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -2361,13 +2361,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
2361
2361
|
|
|
2362
2362
|
// GLOBAL IMPORT
|
|
2363
2363
|
class AuthService {
|
|
2364
|
-
constructor(http, router, commonHttpRequestService, hubConnectionService, organizationService, alertService, mls) {
|
|
2364
|
+
constructor(http, router, commonHttpRequestService, hubConnectionService, organizationService, alertService, appConfigService, mls) {
|
|
2365
2365
|
this.http = http;
|
|
2366
2366
|
this.router = router;
|
|
2367
2367
|
this.commonHttpRequestService = commonHttpRequestService;
|
|
2368
2368
|
this.hubConnectionService = hubConnectionService;
|
|
2369
2369
|
this.organizationService = organizationService;
|
|
2370
2370
|
this.alertService = alertService;
|
|
2371
|
+
this.appConfigService = appConfigService;
|
|
2371
2372
|
this.mls = mls;
|
|
2372
2373
|
// for change the navbar state between online and offline
|
|
2373
2374
|
this.authenticate = new Subject();
|
|
@@ -2433,7 +2434,7 @@ class AuthService {
|
|
|
2433
2434
|
// Web client Try restore session
|
|
2434
2435
|
tryRestoreSession() {
|
|
2435
2436
|
const fullUrl = api.SYS_REFRESH_TOKEN;
|
|
2436
|
-
return this.commonHttpRequestService.makePostRequest("refreshToken", fullUrl, { appType:
|
|
2437
|
+
return this.commonHttpRequestService.makePostRequest("refreshToken", fullUrl, { appType: this.appConfigService.APP_TYPE });
|
|
2437
2438
|
}
|
|
2438
2439
|
getAuthorizationToken() {
|
|
2439
2440
|
return this.data$.value?.token;
|
|
@@ -2455,7 +2456,7 @@ class AuthService {
|
|
|
2455
2456
|
}
|
|
2456
2457
|
}
|
|
2457
2458
|
}
|
|
2458
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, deps: [{ token: HttpClient }, { token: Router }, { token: CommonHttpRequestService }, { token: HubConnectionService }, { token: OrganizationService }, { token: AlertService }, { token: MultiLanguageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2459
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, deps: [{ token: HttpClient }, { token: Router }, { token: CommonHttpRequestService }, { token: HubConnectionService }, { token: OrganizationService }, { token: AlertService }, { token: AppConfigService }, { token: MultiLanguageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2459
2460
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, providedIn: 'root' }); }
|
|
2460
2461
|
}
|
|
2461
2462
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AuthService, decorators: [{
|
|
@@ -2469,7 +2470,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
2469
2470
|
}] }, { type: i1$2.Router, decorators: [{
|
|
2470
2471
|
type: Inject,
|
|
2471
2472
|
args: [Router]
|
|
2472
|
-
}] }, { type: CommonHttpRequestService }, { type: HubConnectionService }, { type: OrganizationService }, { type: AlertService }, { type: MultiLanguageService }] });
|
|
2473
|
+
}] }, { type: CommonHttpRequestService }, { type: HubConnectionService }, { type: OrganizationService }, { type: AlertService }, { type: AppConfigService }, { type: MultiLanguageService }] });
|
|
2473
2474
|
|
|
2474
2475
|
class NavigatorService {
|
|
2475
2476
|
constructor(router, mls) {
|
|
@@ -25839,7 +25840,7 @@ class CoreNavigationTrackerComponent {
|
|
|
25839
25840
|
if (!tryFind?.length && !this.authService.data$.value?.isRoot && !this.authService.data$.value?.isAdmin) {
|
|
25840
25841
|
if (!(["/auth/login", "/home"].includes(functionFilter[0].path))) {
|
|
25841
25842
|
this.alertService.error(functionFilter[0].path + " " +
|
|
25842
|
-
this.mls.trans('CORE.PERMISSION.THE_PATH_IS_NOT_PERMITTED'),
|
|
25843
|
+
this.mls.trans('CORE.PERMISSION.THE_PATH_IS_NOT_PERMITTED'), alertOptions);
|
|
25843
25844
|
this.router.navigateByUrl('/home');
|
|
25844
25845
|
}
|
|
25845
25846
|
}
|
|
@@ -26639,6 +26640,7 @@ var EnumCoreViewItemType;
|
|
|
26639
26640
|
(function (EnumCoreViewItemType) {
|
|
26640
26641
|
EnumCoreViewItemType["TEXT"] = "TEXT";
|
|
26641
26642
|
EnumCoreViewItemType["CHECKBOX"] = "CHECKBOX";
|
|
26643
|
+
EnumCoreViewItemType["TEMPLATE"] = "TEMPLATE";
|
|
26642
26644
|
})(EnumCoreViewItemType || (EnumCoreViewItemType = {}));
|
|
26643
26645
|
|
|
26644
26646
|
class CorePageViewComponent extends BaseComponent {
|
|
@@ -26658,18 +26660,19 @@ class CorePageViewComponent extends BaseComponent {
|
|
|
26658
26660
|
});
|
|
26659
26661
|
}
|
|
26660
26662
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CorePageViewComponent, deps: [{ token: MultiLanguageService }, { token: LayoutService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26661
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: CorePageViewComponent, isStandalone: true, selector: "core-page-view", inputs: { caption: "caption", sections: "sections", highlightedFields: "highlightedFields", hightlightedColor: "hightlightedColor", loading: "loading", showLeftLine: "showLeftLine" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n
|
|
26663
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: CorePageViewComponent, isStandalone: true, selector: "core-page-view", inputs: { caption: "caption", sections: "sections", highlightedFields: "highlightedFields", hightlightedColor: "hightlightedColor", loading: "loading", showLeftLine: "showLeftLine" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"item.hint!\"></i>\r\n }\r\n :\r\n </div>\r\n @if (item.controlType === 'TEMPLATE' && !!item.templateRef) {\r\n <ng-container *ngTemplateOutlet=\"item.templateRef!; context: { context: item.value }\"></ng-container>\r\n } @else {\r\n <div [appTooltip]=\"item.value | tableCell : item.pipe : lang\" class=\"content\"\r\n [class.hightlighted]=\"highlightedFields.includes(item.field!)\">\r\n {{ item.value | tableCell : item.pipe : lang }}\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n</div>", styles: [".core-page-view-container{--color-hightlighted: var(--color-basic-orange);font-size:13px}.core-page-view-container .vertical{margin-top:0;margin-bottom:10px}.core-page-view-container .row .label{width:100%;font-weight:400;line-height:20px;color:#a3a3a3;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 8px 0 5px}.core-page-view-container .row .content{height:28px;width:100%;font-weight:400;line-height:20px;color:#000;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px 5px 5px}.core-page-view-container .row .content.hightlighted{color:var(--color-hightlighted)}.core-page-view-container .sections-wrapper{margin:0 5px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: TableCellPipe, name: "tableCell" }, { kind: "component", type: CoreLoadingSurfaceComponent, selector: "core-loading-surface", inputs: ["loading", "height"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["color", "backgroundColor", "appTooltip", "showAnyway", "position"] }] }); }
|
|
26662
26664
|
}
|
|
26663
26665
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CorePageViewComponent, decorators: [{
|
|
26664
26666
|
type: Component,
|
|
26665
26667
|
args: [{ selector: 'core-page-view', standalone: true, imports: [
|
|
26666
26668
|
NgIf,
|
|
26667
26669
|
NgStyle,
|
|
26670
|
+
NgTemplateOutlet,
|
|
26668
26671
|
TranslatePipe,
|
|
26669
26672
|
TableCellPipe,
|
|
26670
26673
|
CoreLoadingSurfaceComponent,
|
|
26671
26674
|
TooltipDirective
|
|
26672
|
-
], template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n
|
|
26675
|
+
], template: "<div #container class=\"core-page-view-container\">\r\n <core-loading-surface [loading]=\"loading\"></core-loading-surface>\r\n\r\n <div [class.show-left-line]=\"showLeftLine\">\r\n <div class=\"sections-wrapper\">\r\n\r\n @for (section of sections; track section) {\r\n <div class=\"section\">\r\n <div class=\"section-header-label\" *ngIf=\"section.caption\">\r\n <div class=\"icon-info\"></div>\r\n <label>{{ section.caption | translate : lang }}</label>\r\n </div>\r\n\r\n @for (row of section.rows; track row) {\r\n <div class=\"row mb15 no-padding no-margin\">\r\n @for (item of row; track $index) {\r\n <div [class]=\"'col-md-' + (item.labelFlexSize + item.flexSize)\">\r\n <div class=\"form-group vertical\" [ngStyle]=\"{\r\n backgroundColor: formGroupBackgroundColor\r\n }\">\r\n <div [appTooltip]=\"item.label | translate : lang\" class=\"label\">{{ item.label | translate : lang }}\r\n @if (!!item.hint!) {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"item.hint!\"></i>\r\n }\r\n :\r\n </div>\r\n @if (item.controlType === 'TEMPLATE' && !!item.templateRef) {\r\n <ng-container *ngTemplateOutlet=\"item.templateRef!; context: { context: item.value }\"></ng-container>\r\n } @else {\r\n <div [appTooltip]=\"item.value | tableCell : item.pipe : lang\" class=\"content\"\r\n [class.hightlighted]=\"highlightedFields.includes(item.field!)\">\r\n {{ item.value | tableCell : item.pipe : lang }}\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n</div>", styles: [".core-page-view-container{--color-hightlighted: var(--color-basic-orange);font-size:13px}.core-page-view-container .vertical{margin-top:0;margin-bottom:10px}.core-page-view-container .row .label{width:100%;font-weight:400;line-height:20px;color:#a3a3a3;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 8px 0 5px}.core-page-view-container .row .content{height:28px;width:100%;font-weight:400;line-height:20px;color:#000;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px 5px 5px}.core-page-view-container .row .content.hightlighted{color:var(--color-hightlighted)}.core-page-view-container .sections-wrapper{margin:0 5px}\n"] }]
|
|
26673
26676
|
}], ctorParameters: () => [{ type: MultiLanguageService }, { type: LayoutService }], propDecorators: { container: [{
|
|
26674
26677
|
type: ViewChild,
|
|
26675
26678
|
args: ['container']
|