ngx-histaff-alpha 2.8.0 → 2.8.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.
@@ -0,0 +1,31 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/platform-browser";
4
+ import * as i2 from "../services/app-config.service";
5
+ export class StringHtmlPipe {
6
+ constructor(domSanitizer, appConfigService) {
7
+ this.domSanitizer = domSanitizer;
8
+ this.appConfigService = appConfigService;
9
+ }
10
+ transform(value) {
11
+ const BASE_URL_FOR_CONTENT = this.appConfigService.BASE_URL_FOR_CONTENT;
12
+ if (!!!value)
13
+ return this.domSanitizer.bypassSecurityTrustHtml('');
14
+ // replace short src with server map
15
+ let valueNew = value.split("src='/Content/").join(`src='${BASE_URL_FOR_CONTENT}/Content/`);
16
+ valueNew = valueNew.split('src="/Content/').join(`src="${BASE_URL_FOR_CONTENT}/Content/`);
17
+ let result;
18
+ result = this.domSanitizer.bypassSecurityTrustHtml(valueNew.split('||1').join('<').split('2||').join('>'));
19
+ return result;
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: StringHtmlPipe, deps: [{ token: i1.DomSanitizer }, { token: i2.AppConfigService }], target: i0.ɵɵFactoryTarget.Pipe }); }
22
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.2.3", ngImport: i0, type: StringHtmlPipe, isStandalone: true, name: "stringHtml" }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: StringHtmlPipe, decorators: [{
25
+ type: Pipe,
26
+ args: [{
27
+ name: 'stringHtml',
28
+ standalone: true,
29
+ }]
30
+ }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: i2.AppConfigService }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWh0bWwucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2FwcC1waXBlcy9zdHJpbmctaHRtbC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXBELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFlBQW9CLFlBQTBCLEVBQVUsZ0JBQWtDO1FBQXRFLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUMxRixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWE7UUFFckIsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUM7UUFDeEUsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRW5FLG9DQUFvQztRQUNwQyxJQUFJLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLFdBQVcsQ0FBQyxDQUFDO1FBQzNGLFFBQVEsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLFdBQVcsQ0FBQyxDQUFDO1FBRTFGLElBQUksTUFBZ0IsQ0FBQztRQUNyQixNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFM0csT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs4R0FsQlUsY0FBYzs0R0FBZCxjQUFjOzsyRkFBZCxjQUFjO2tCQUoxQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxZQUFZO29CQUNsQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcC1jb25maWcuc2VydmljZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3N0cmluZ0h0bWwnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdHJpbmdIdG1sUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLCBwcml2YXRlIGFwcENvbmZpZ1NlcnZpY2U6IEFwcENvbmZpZ1NlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogU2FmZUh0bWwge1xyXG5cclxuICAgIGNvbnN0IEJBU0VfVVJMX0ZPUl9DT05URU5UID0gdGhpcy5hcHBDb25maWdTZXJ2aWNlLkJBU0VfVVJMX0ZPUl9DT05URU5UO1xyXG4gICAgaWYgKCEhIXZhbHVlKSByZXR1cm4gdGhpcy5kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoJycpO1xyXG5cclxuICAgIC8vIHJlcGxhY2Ugc2hvcnQgc3JjIHdpdGggc2VydmVyIG1hcFxyXG4gICAgbGV0IHZhbHVlTmV3ID0gdmFsdWUuc3BsaXQoXCJzcmM9Jy9Db250ZW50L1wiKS5qb2luKGBzcmM9JyR7QkFTRV9VUkxfRk9SX0NPTlRFTlR9L0NvbnRlbnQvYCk7XHJcbiAgICB2YWx1ZU5ldyA9IHZhbHVlTmV3LnNwbGl0KCdzcmM9XCIvQ29udGVudC8nKS5qb2luKGBzcmM9XCIke0JBU0VfVVJMX0ZPUl9DT05URU5UfS9Db250ZW50L2ApO1xyXG5cclxuICAgIGxldCByZXN1bHQ6IFNhZmVIdG1sO1xyXG4gICAgcmVzdWx0ID0gdGhpcy5kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodmFsdWVOZXcuc3BsaXQoJ3x8MScpLmpvaW4oJzwnKS5zcGxpdCgnMnx8Jykuam9pbignPicpKTtcclxuXHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSU5hdmlnYXRvckl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9pbnRlcmZhY2VzL0lOYXZpZ2F0b3JJdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElOYXZpZ2F0b3JJdGVtIHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICBjb2RlOiBzdHJpbmc7XHJcbiAgICBzeXNGdW5jdGlvbj86IG51bWJlcjtcclxuICAgIHBhcmVudD86IG51bWJlcjtcclxuICAgIG9yZGVyTnVtYmVyPzogbnVtYmVyO1xyXG4gICAgdXJsPzogc3RyaW5nO1xyXG4gICAgaWNvbkZvbnRGYW1pbHk/OiBzdHJpbmc7XHJcbiAgICBpY29uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgICBzeXNNZW51U2VydmljZU1ldGhvZD86IHN0cmluZztcclxuICAgIHBpY3R1cmVCYXNlNjQ/OiBzdHJpbmc7XHJcbiAgICBwaWN0dXJlVXJpPzogc3RyaW5nO1xyXG4gICAgdHJlZSRDaGlsZHJlbjogSU5hdmlnYXRvckl0ZW1bXTtcclxuICAgIHRyZWUkQWN0aXZlPzogYm9vbGVhbjtcclxuICAgIHRyZWUkRXhwYW5kZWQ/OiBib29sZWFuO1xyXG4gICAgdHJlZSRIaWdobGlnaHRlZD86IGJvb2xlYW47XHJcbiAgICB0cmVlJFRpZXI/OiBudW1iZXI7XHJcbiAgICB0cmVlJFBhdGg/OiBzdHJpbmc7XHJcbiAgICBwYXRoPzogc3RyaW5nO1xyXG4gICAgbGV2ZWw/OiBudW1iZXI7XHJcbiAgICB0cmVlJFNlbGVjdGVkIDogYm9vbGVhbjtcclxuICAgIHRyZWUkUGFyZW50IDogbnVtYmVyO1xyXG4gICAgcHJvdGVjdGVkOiBib29sZWFuO1xyXG59Il19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSU5hdmlnYXRvckl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9pbnRlcmZhY2VzL0lOYXZpZ2F0b3JJdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElOYXZpZ2F0b3JJdGVtIHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICBjb2RlOiBzdHJpbmc7XHJcbiAgICBzeXNGdW5jdGlvbj86IG51bWJlcjtcclxuICAgIHBhcmVudD86IG51bWJlcjtcclxuICAgIG9yZGVyTnVtYmVyPzogbnVtYmVyO1xyXG4gICAgdXJsPzogc3RyaW5nO1xyXG4gICAgaWNvbkZvbnRGYW1pbHk/OiBzdHJpbmc7XHJcbiAgICBpY29uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgICBpY29uU3ZnPzogc3RyaW5nO1xyXG4gICAgc3lzTWVudVNlcnZpY2VNZXRob2Q/OiBzdHJpbmc7XHJcbiAgICBwaWN0dXJlQmFzZTY0Pzogc3RyaW5nO1xyXG4gICAgcGljdHVyZVVyaT86IHN0cmluZztcclxuICAgIHRyZWUkQ2hpbGRyZW46IElOYXZpZ2F0b3JJdGVtW107XHJcbiAgICB0cmVlJEFjdGl2ZT86IGJvb2xlYW47XHJcbiAgICB0cmVlJEV4cGFuZGVkPzogYm9vbGVhbjtcclxuICAgIHRyZWUkSGlnaGxpZ2h0ZWQ/OiBib29sZWFuO1xyXG4gICAgdHJlZSRUaWVyPzogbnVtYmVyO1xyXG4gICAgdHJlZSRQYXRoPzogc3RyaW5nO1xyXG4gICAgcGF0aD86IHN0cmluZztcclxuICAgIGxldmVsPzogbnVtYmVyO1xyXG4gICAgdHJlZSRTZWxlY3RlZCA6IGJvb2xlYW47XHJcbiAgICB0cmVlJFBhcmVudCA6IG51bWJlcjtcclxuICAgIHByb3RlY3RlZDogYm9vbGVhbjtcclxufSJdfQ==
@@ -2,6 +2,7 @@ import { Component, Input, ViewChild, ViewEncapsulation } from '@angular/core';
2
2
  import { RouterModule } from '@angular/router';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { TooltipDirective } from '../../tooltip/tooltip.directive';
5
+ import { StringHtmlPipe } from '../../../app-pipes/string-html.pipe';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@angular/router";
7
8
  import * as i2 from "../../../services/navigator.service";
@@ -79,13 +80,10 @@ export class ItemComponent {
79
80
  onClick(event, item) {
80
81
  console.log("onClick triggered");
81
82
  event.preventDefault();
82
- // event.stopPropagation();
83
83
  event.stopImmediatePropagation();
84
84
  if (!this.wideMode) {
85
- let newActiveItems = this.navigatorService.activeItems$.value;
86
- newActiveItems = newActiveItems.filter(x => x.tree$Tier < item.tree$Tier);
87
- newActiveItems.push(item);
88
- this.navigatorService.activeItems$.next(newActiveItems);
85
+ this.onModuleIconClick(event, item);
86
+ return;
89
87
  }
90
88
  if (!!this.wideMode && this.item.tree$Selected == true && !!this.item.tree$Parent && (this.item.tree$Tier != 2 || this.item.tree$Tier == 2 && this.item.tree$Children.length == 0)) {
91
89
  return;
@@ -157,11 +155,19 @@ export class ItemComponent {
157
155
  checkActive() {
158
156
  return this.active;
159
157
  }
158
+ ngAfterViewInit() {
159
+ setTimeout(() => {
160
+ this.me.nativeElement.style.setProperty('--bg-color', this.navigatorService.backgroundColor);
161
+ this.me.nativeElement.style.setProperty('--color', this.navigatorService.color);
162
+ this.me.nativeElement.style.setProperty('--hover-bg-color', this.navigatorService.hoverBackgroundColor);
163
+ this.me.nativeElement.style.setProperty('--hover-color', this.navigatorService.hoverColor);
164
+ });
165
+ }
160
166
  ngOnDestroy() {
161
167
  this.subscriptions.map(x => x.unsubscribe());
162
168
  }
163
169
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ItemComponent, deps: [{ token: i1.Router }, { token: i2.NavigatorService }, { token: i3.MultiLanguageService }, { token: i4.LayoutService }, { token: i5.MenuService }], target: i0.ɵɵFactoryTarget.Component }); }
164
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: ItemComponent, isStandalone: true, selector: "app-item", inputs: { item: "item", level: "level" }, viewQueries: [{ propertyName: "me", first: true, predicate: ["me"], descendants: true }, { propertyName: "children", first: true, predicate: ["children"], descendants: true }, { propertyName: "link", first: true, predicate: ["link"], descendants: true }, { propertyName: "subArrow", first: true, predicate: ["subArrow"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\" \r\n [class.active]=\"!wideMode && active\"\r\n [class.expanded]=\"item.tree$Expanded\" \r\n [class.highlighted]=\"item.tree$Highlighted\" \r\n [class.li-thin-mode]=\"!wideMode\" \r\n [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\"\r\n >\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\" [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\" [appTooltip]=\"wideMode ? caption : undefined\"\r\n (click)=\"onModuleIconClick($event, item);false\" *ngIf=\"!!item.iconClass\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\" [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\" [class.thin-mode]=\"!wideMode\"\r\n [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\"\r\n [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:#e1e3e5!important;border-radius:5px!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:#e1e3e5;width:50px;border-radius:5px;transform:translate(8px);color:#000}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"], dependencies: [{ kind: "component", type: ItemComponent, selector: "app-item", inputs: ["item", "level"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }], encapsulation: i0.ViewEncapsulation.None }); }
170
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: ItemComponent, isStandalone: true, selector: "app-item", inputs: { item: "item", level: "level" }, viewQueries: [{ propertyName: "me", first: true, predicate: ["me"], descendants: true }, { propertyName: "children", first: true, predicate: ["children"], descendants: true }, { propertyName: "link", first: true, predicate: ["link"], descendants: true }, { propertyName: "subArrow", first: true, predicate: ["subArrow"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\"\r\n [class.active]=\"!wideMode && active\" [class.expanded]=\"item.tree$Expanded\"\r\n [class.highlighted]=\"item.tree$Highlighted\" [class.li-thin-mode]=\"!wideMode\" [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\">\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\"\r\n [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n @if (!!item.iconSvg) {\r\n <i [attr.data-level]=\"level\" class=\"'module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n position: 'absolute',\r\n left: wideMode ? '20px' : 'unset'\r\n }\"><span [innerHtml]=\"item.iconSvg | stringHtml\"></span></i>\r\n\r\n <!-- <span [innerHtml]=\"item.iconSvg | stringHtml\"></span> -->\r\n } @else if (!!item.iconClass) {\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n }\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\"\r\n [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\"\r\n [class.thin-mode]=\"!wideMode\" [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\" [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px;--bg-color: #F1F1F1;--color: black;--hover-bg-color: #E1E3E5;--hover-color: black}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container svg{width:24px;height:24px}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .module-thin-mode svg{color:var(--color)}.navigator-container .module-thin-mode i{color:var(--color)!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:var(--hover-bg-color)!important;border-radius:5px!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active .module-thin-mode i{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active .module-thin-mode svg{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:#e1e3e5;width:50px;border-radius:5px;transform:translate(8px);color:#000}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"], dependencies: [{ kind: "component", type: ItemComponent, selector: "app-item", inputs: ["item", "level"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }, { kind: "pipe", type: StringHtmlPipe, name: "stringHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
165
171
  }
166
172
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ItemComponent, decorators: [{
167
173
  type: Component,
@@ -169,7 +175,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
169
175
  CommonModule,
170
176
  RouterModule,
171
177
  TooltipDirective,
172
- ], encapsulation: ViewEncapsulation.None, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\" \r\n [class.active]=\"!wideMode && active\"\r\n [class.expanded]=\"item.tree$Expanded\" \r\n [class.highlighted]=\"item.tree$Highlighted\" \r\n [class.li-thin-mode]=\"!wideMode\" \r\n [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\"\r\n >\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\" [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\" [appTooltip]=\"wideMode ? caption : undefined\"\r\n (click)=\"onModuleIconClick($event, item);false\" *ngIf=\"!!item.iconClass\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\" [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\" [class.thin-mode]=\"!wideMode\"\r\n [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\"\r\n [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:#e1e3e5!important;border-radius:5px!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:#e1e3e5;width:50px;border-radius:5px;transform:translate(8px);color:#000}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"] }]
178
+ StringHtmlPipe,
179
+ ], encapsulation: ViewEncapsulation.None, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\"\r\n [class.active]=\"!wideMode && active\" [class.expanded]=\"item.tree$Expanded\"\r\n [class.highlighted]=\"item.tree$Highlighted\" [class.li-thin-mode]=\"!wideMode\" [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\">\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\"\r\n [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n @if (!!item.iconSvg) {\r\n <i [attr.data-level]=\"level\" class=\"'module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n position: 'absolute',\r\n left: wideMode ? '20px' : 'unset'\r\n }\"><span [innerHtml]=\"item.iconSvg | stringHtml\"></span></i>\r\n\r\n <!-- <span [innerHtml]=\"item.iconSvg | stringHtml\"></span> -->\r\n } @else if (!!item.iconClass) {\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n }\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\"\r\n [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\"\r\n [class.thin-mode]=\"!wideMode\" [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\" [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px;--bg-color: #F1F1F1;--color: black;--hover-bg-color: #E1E3E5;--hover-color: black}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container svg{width:24px;height:24px}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .module-thin-mode svg{color:var(--color)}.navigator-container .module-thin-mode i{color:var(--color)!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:var(--hover-bg-color)!important;border-radius:5px!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active .module-thin-mode i{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active .module-thin-mode svg{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:#e1e3e5;width:50px;border-radius:5px;transform:translate(8px);color:#000}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"] }]
173
180
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.NavigatorService }, { type: i3.MultiLanguageService }, { type: i4.LayoutService }, { type: i5.MenuService }], propDecorators: { item: [{
174
181
  type: Input
175
182
  }], level: [{
@@ -187,4 +194,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
187
194
  type: ViewChild,
188
195
  args: ['subArrow']
189
196
  }] } });
190
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvbmF2aWdhdG9yL25hdmlnYXRvci9pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9uYXZpZ2F0b3IvbmF2aWdhdG9yL2l0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLFNBQVMsRUFBRSxpQkFBaUIsRUFBd0UsTUFBTSxlQUFlLENBQUM7QUFFcEwsT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7QUFjbkUsTUFBTSxPQUFPLGFBQWE7SUFxQnhCLFlBQ1UsTUFBYyxFQUNmLGdCQUFrQyxFQUNqQyxHQUF5QixFQUMxQixhQUE0QixFQUMzQixXQUF3QjtRQUp4QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2YscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqQyxRQUFHLEdBQUgsR0FBRyxDQUFzQjtRQUMxQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQWZsQyxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU3QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUduQyxpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQVV4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFD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QUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQTtJQUM5QyxDQUFDOzhHQTFMVSxhQUFhO2tHQUFiLGFBQWEsMGRDdkIxQix1aEhBc0VLLHE1YkQvQ1EsYUFBYSwrRUFSdEIsWUFBWSx1TkFDWixZQUFZLGdSQUNaLGdCQUFnQjs7MkZBTVAsYUFBYTtrQkFaekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixnQkFBZ0I7cUJBQ2pCLGlCQUdjLGlCQUFpQixDQUFDLElBQUk7bU1BSTVCLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ1csRUFBRTtzQkFBbEIsU0FBUzt1QkFBQyxJQUFJO2dCQUNRLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFDRixJQUFJO3NCQUF0QixTQUFTO3VCQUFDLE1BQU07Z0JBQ00sUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdG9yUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE5hdmlnYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uYXZpZ2F0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbXVsdGktbGFuZ3VhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IElOYXZpZ2F0b3JJdGVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JTmF2aWdhdG9ySXRlbSc7XHJcbmltcG9ydCB7IE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWVudS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtaXRlbScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICBUb29sdGlwRGlyZWN0aXZlLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2l0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2l0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIEBJbnB1dCgpIGl0ZW0hOiBJTmF2aWdhdG9ySXRlbTtcclxuICBASW5wdXQoKSBsZXZlbCE6IG51bWJlcjtcclxuICBAVmlld0NoaWxkKCdtZScpIG1lITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdjaGlsZHJlbicpIGNoaWxkcmVuITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdsaW5rJykgbGluayE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnc3ViQXJyb3cnKSBzdWJBcnJvdyE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGNhcHRpb24hOiBzdHJpbmc7XHJcblxyXG4gIGhhc0NoaWxkcmVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgbWFpbldpbmRvd1N0YXRlITogc3RyaW5nO1xyXG4gIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgbGVmdGJhclJlZHVjZWQhOiBib29sZWFuO1xyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHdpZGVNb2RlITogYm9vbGVhbjtcclxuICBjdXJyZW50V2lkdGg6IG51bWJlciA9IDY2O1xyXG4gIGFjdGl2ZSE6IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHB1YmxpYyBuYXZpZ2F0b3JTZXJ2aWNlOiBOYXZpZ2F0b3JTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHVibGljIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1lbnVTZXJ2aWNlOiBNZW51U2VydmljZSxcclxuICApIHtcclxuICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS53aWRlTW9kZSQuc3Vic2NyaWJlKHggPT4gdGhpcy53aWRlTW9kZSA9IHgpO1xyXG4gICAgdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRCYXJDdXJyZW50V2lkdGgkLnN1YnNjcmliZSh4ID0+IHtcclxuICAgICAgdGhpcy5jdXJyZW50V2lkdGggPSB4O1xyXG4gICAgICB0aGlzLm1lPy5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWxlZnQtYmFyLWN1cnJlbnQtd2lkdGgnLCB4ICsgJ3B4JylcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbJ2l0ZW0nXSkge1xyXG4gICAgICBjb25zdCBpdCA9IGNoYW5nZXNbJ2l0ZW0nXTtcclxuICAgICAgaWYgKGl0LmN1cnJlbnRWYWx1ZS5pZCA9PT0gMzgyKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJpdGVtIDM4MiBjaGFuZ2VkLCBhY3RpdmUgPSBcIiwgdGhpcy5hY3RpdmUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuaXRlbSkge1xyXG4gICAgICBpZiAodGhpcy5pdGVtLnRyZWUkQ2hpbGRyZW4ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHRoaXMuaGFzQ2hpbGRyZW4gPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgIGlmICghYykgcmV0dXJuO1xyXG4gICAgICB0aGlzLmFjdGl2ZSA9ICEhYy5maWx0ZXIoeCA9PiB4LmlkID09PSB0aGlzLml0ZW0/LmlkKS5sZW5ndGhcclxuICAgICAgaWYgKCEhdGhpcy5hY3RpdmUpIHtcclxuICAgICAgICB0aGlzLm1lPy5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJhY3RpdmVcIilcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lPy5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoXCJhY3RpdmVcIilcclxuICAgICAgfVxyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5tbHMubGFuZyQuc3Vic2NyaWJlKF8gPT4ge1xyXG4gICAgICAgIHRoaXMuY2FwdGlvbiA9IHRoaXMubWxzLnRyYW5zKHRoaXMuaXRlbSEuY29kZSlcclxuICAgICAgfSlcclxuICAgIClcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRiYXJSZWR1Y2VkJC5zdWJzY3JpYmUoeCA9PiB0aGlzLmxlZnRiYXJSZWR1Y2VkID0geClcclxuICAgIClcclxuICB9XHJcblxyXG4gIHN1YkFycm93Q2xpY2tlZChldmVudDogRXZlbnQsIGl0ZW06IElOYXZpZ2F0b3JJdGVtKSB7XHJcblxyXG4gICAgY29uc29sZS5sb2coXCJzdWJBcnJvd0NsaWNrZWQgdHJpZ2dlcmVkXCIpXHJcblxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcblxyXG4gICAgaWYgKCF0aGlzLndpZGVNb2RlKSB7XHJcbiAgICAgIGxldCBuZXdBY3RpdmVJdGVtcyA9IHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQudmFsdWU7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwic3ViQXJyb3dDbGlja2VkIG5ld0FjdGl2ZUl0ZW1zIGJlNCBmaWx0ZXJpbmdcIiwgbmV3QWN0aXZlSXRlbXMpXHJcbiAgICAgIG5ld0FjdGl2ZUl0ZW1zID0gbmV3QWN0aXZlSXRlbXMuZmlsdGVyKHggPT4geC50cmVlJFRpZXIhIDwgaXRlbS50cmVlJFRpZXIhKTtcclxuICAgICAgbmV3QWN0aXZlSXRlbXMucHVzaChpdGVtKTtcclxuICAgICAgY29uc29sZS5sb2coXCJzdWJBcnJvd0NsaWNrZWQgbmV3QWN0aXZlSXRlbXNcIiwgbmV3QWN0aXZlSXRlbXMpXHJcbiAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChuZXdBY3RpdmVJdGVtcyk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGlmICh0aGlzLmNoaWxkcmVuLm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID09PSAnY2hpbGQgc3ViLW1lbnUnKSB7XHJcbiAgICAgIHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSAnY2hpbGQgc3ViLW1lbnUgZXhwYW5kZWQnO1xyXG4gICAgICB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID0gdGhpcy5zdWJBcnJvdy5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5yZXBsYWNlKCcgcGx1cycsICcnKSArICcgbWludXMnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmNoaWxkcmVuLm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID09PSAnY2hpbGQgc3ViLW1lbnUgZXhwYW5kZWQnKSB7XHJcbiAgICAgIHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSAnY2hpbGQgc3ViLW1lbnUnO1xyXG4gICAgICB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID0gdGhpcy5zdWJBcnJvdy5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5yZXBsYWNlKCcgbWludXMnLCAnJykgKyAnIHBsdXMnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25DbGljayhldmVudDogYW55LCBpdGVtOiBJTmF2aWdhdG9ySXRlbSkge1xyXG4gICAgY29uc29sZS5sb2coXCJvbkNsaWNrIHRyaWdnZXJlZFwiKVxyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIC8vIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcblxyXG4gICAgaWYgKCF0aGlzLndpZGVNb2RlKSB7XHJcbiAgICAgIGxldCBuZXdBY3RpdmVJdGVtcyA9IHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQudmFsdWU7XHJcbiAgICAgIG5ld0FjdGl2ZUl0ZW1zID0gbmV3QWN0aXZlSXRlbXMuZmlsdGVyKHggPT4geC50cmVlJFRpZXIhIDwgaXRlbS50cmVlJFRpZXIhKTtcclxuICAgICAgbmV3QWN0aXZlSXRlbXMucHVzaChpdGVtKTtcclxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KG5ld0FjdGl2ZUl0ZW1zKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoISF0aGlzLndpZGVNb2RlICYmIHRoaXMuaXRlbSEudHJlZSRTZWxlY3RlZCA9PSB0cnVlICYmICEhdGhpcy5pdGVtIS50cmVlJFBhcmVudCAmJiAodGhpcy5pdGVtIS50cmVlJFRpZXIgIT0gMiB8fCB0aGlzLml0ZW0hLnRyZWUkVGllciA9PSAyICYmIHRoaXMuaXRlbSEudHJlZSRDaGlsZHJlbi5sZW5ndGggPT0gMCkpIHtcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMud2lkZU1vZGUpIHtcclxuICAgICAgaWYgKHRoaXMuY2hpbGRyZW4pIHtcclxuICAgICAgICBjb25zdCBlbCA9IHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBjb25zdCByZWN0ID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgY29uc3QgaGVpZ2h0ID0gcmVjdC5oZWlnaHQ7XHJcbiAgICAgICAgaWYgKGhlaWdodCA9PT0gMCkge1xyXG4gICAgICAgICAgaXRlbS50cmVlJFNlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBpZiAoaXRlbS50cmVlJFRpZXIgPT0gMSB8fCBpdGVtLnRyZWUkVGllciA9PSAyKSB7XHJcbiAgICAgICAgICAgIGl0ZW0udHJlZSRTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm1lLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tY2hpbGRyZW4taGVpZ2h0JywgaGVpZ2h0ICsgJ3B4JylcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpdGVtLnRyZWUkU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMubWVudVNlcnZpY2UubmF2aWdhdGlvbiQudmFsdWUubWFwKHggPT4ge1xyXG4gICAgICAgICAgaWYgKHgudHJlZSRDaGlsZHJlbikge1xyXG4gICAgICAgICAgICB4LnRyZWUkQ2hpbGRyZW4ubWFwKCh5OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoeS50cmVlJENoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgICAgICB5LnRyZWUkQ2hpbGRyZW4ubWFwKCh6OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgaWYgKHogIT0gaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHoudHJlZSRTZWxlY3RlZCA9IGZhbHNlXHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgfSBlbHNlIGlmICh5ICE9IGl0ZW0pIHtcclxuICAgICAgICAgICAgICAgIHkudHJlZSRTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgXHJcbiAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQoaXRlbSlcclxuXHJcbiAgICBpZiAoISFpdGVtLnRyZWUkUGFyZW50KSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdtZW51Q3VycmVudENsaWNrZWQnLCBKU09OLnN0cmluZ2lmeShpdGVtKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk1vZHVsZUljb25DbGljayhldmVudDogYW55LCBpdGVtOiBJTmF2aWdhdG9ySXRlbSkge1xyXG4gICAgY29uc29sZS5sb2coXCJvbk1vZHVsZUljb25DbGljayB0cmlnZ2VyZWRcIilcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGlmICghdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC52YWx1ZSkge1xyXG4gICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQoaXRlbSk7XHJcbiAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChbaXRlbV0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMud2lkZU1vZGUpIHtcclxuICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQoaXRlbSk7XHJcbiAgICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KFtpdGVtXSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQudmFsdWUuaWQgIT09IGl0ZW0uaWQpIHtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKTtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChbaXRlbV0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQobnVsbCk7XHJcbiAgICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuYWN0aXZlSXRlbXMkLm5leHQoW10pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGNoZWNrQWN0aXZlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMubWFwKHggPT4geC51bnN1YnNjcmliZSgpKVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGxpICNtZSBbaWRdPVwiJ21haW4tbWVudS0nICsgaXRlbS5pZFwiIGNsYXNzPVwicGFyZW50XCIgW2F0dHIuZGF0YS1sZXZlbF09XCJsZXZlbFwiIFtjbGFzcy5yZWR1Y2VkXT1cImxlZnRiYXJSZWR1Y2VkXCIgXHJcbiAgICBbY2xhc3MuYWN0aXZlXT1cIiF3aWRlTW9kZSAmJiBhY3RpdmVcIlxyXG4gICAgW2NsYXNzLmV4cGFuZGVkXT1cIml0ZW0udHJlZSRFeHBhbmRlZFwiIFxyXG4gICAgW2NsYXNzLmhpZ2hsaWdodGVkXT1cIml0ZW0udHJlZSRIaWdobGlnaHRlZFwiIFxyXG4gICAgW2NsYXNzLmxpLXRoaW4tbW9kZV09XCIhd2lkZU1vZGVcIiBcclxuICAgIFtjbGFzcy5tZW51LWl0ZW1dPVwiIXdpZGVNb2RlXCJcclxuICAgIFthcHBUb29sdGlwXT1cImxldmVsPT09MSAmJiAhYWN0aXZlID8gY2FwdGlvbiA6IHVuZGVmaW5lZFwiIFtwb3NpdGlvbl09XCIncmlnaHQnXCJcclxuICAgID5cclxuICAgIDxkaXYgY2xhc3M9XCJtZW51LWl0ZW0td3JhcHBlclwiIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiAoY2xpY2spPVwib25DbGljaygkZXZlbnQsIGl0ZW0pXCIgW2NsYXNzLm1vZHVsZS10aGluLW1vZGVdPVwiIXdpZGVNb2RlICYmIGxldmVsPT09MVwiIFtjbGFzcy50aGluLWJyYW5jaF09XCIhd2lkZU1vZGUgJiYgbGV2ZWwgPiAxXCI+XHJcblxyXG4gICAgICAgIEBpZiAod2lkZU1vZGUpIHtcclxuICAgICAgICBAaWYgKCEhIWxlZnRiYXJSZWR1Y2VkKSB7XHJcbiAgICAgICAgQGlmICghIWhhc0NoaWxkcmVuKSB7XHJcbiAgICAgICAgQGlmICghaXRlbS50cmVlJFNlbGVjdGVkKSB7XHJcbiAgICAgICAgPGkgW2F0dHIuZGF0YS1sZXZlbF09XCJsZXZlbFwiIGNsYXNzPVwiY3VzdG9tLWljb24tcGFyZW50LXJpZ2h0XCI+PC9pPlxyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIDxpIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiBjbGFzcz1cImN1c3RvbS1pY29uLXBhcmVudC1kb3duXCI+PC9pPlxyXG4gICAgICAgIH1cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICBAaWYgKGl0ZW0udHJlZSRTZWxlY3RlZCAmJiBpdGVtLmNvZGUgIT09ICdNRU5VLkRBU0hCT0FSRCcgJiYgaXRlbS5jb2RlICE9PSAnTUVOVS5IT01FJykge1xyXG4gICAgICAgIDxpIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiBjbGFzcz1cImN1c3RvbS1pY29uLWNoaWxkLXJpZ2h0XCI+PC9pPlxyXG4gICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPGkgW2F0dHIuZGF0YS1sZXZlbF09XCJsZXZlbFwiIFtjbGFzc109XCJpdGVtLmljb25DbGFzcyArICcgbW9kdWxlLWljb24nXCIgW2FwcFRvb2x0aXBdPVwid2lkZU1vZGUgPyBjYXB0aW9uIDogdW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uTW9kdWxlSWNvbkNsaWNrKCRldmVudCwgaXRlbSk7ZmFsc2VcIiAqbmdJZj1cIiEhaXRlbS5pY29uQ2xhc3NcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiB3aWRlTW9kZSA/ICcyMHB4JyA6ICd1bnNldCdcclxuICAgICAgICAgICAgfVwiPjwvaT5cclxuXHJcbiAgICAgICAgQGlmICghd2lkZU1vZGUgfHwgKCFsZWZ0YmFyUmVkdWNlZCAmJiBoYXNDaGlsZHJlbikpIHtcclxuICAgICAgICA8YSAjbGluayBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJoYXMtc3VibWVudVwiIFthcHBUb29sdGlwXT1cImxldmVsID4gMSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIiBbY2xhc3MudGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIChjbGljayk9XCJzdWJBcnJvd0NsaWNrZWQoJGV2ZW50LCBpdGVtKTtmYWxzZVwiPiA8IS0tZmFsc2UgaXMgaW1wb3J0YW50IGhlcmUtLT5cclxuICAgICAgICAgICAgICAgIDxzcGFuICNzdWJBcnJvdyAqbmdJZj1cIighIWl0ZW0ucGljdHVyZUJhc2U2NCB8fCAhIWl0ZW0ucGljdHVyZVVyaSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCInaW1nLXNwYW4gcGx1cyBsZXZlbCcgKyBsZXZlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCIgKm5nSWY9XCIhIWl0ZW0ucGljdHVyZUJhc2U2NFwiPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gI3N1YkFycm93ICpuZ0lmPVwiISEhaXRlbS5waWN0dXJlQmFzZTY0ICYmICEhIWl0ZW0ucGljdHVyZVVyaVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidwbHVzIGxldmVsJyArIGxldmVsXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIoISFpdGVtLnBpY3R1cmVCYXNlNjQgfHwgISFpdGVtLnBpY3R1cmVVcmkpXCIgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCI+XHJcblxyXG4gICAgICAgICAgICB7eyBjYXB0aW9uIH19XHJcblxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8YSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW3JvdXRlckxpbmtdPVwiaXRlbS51cmxcIiAoY2xpY2spPVwib25DbGljaygkZXZlbnQsIGl0ZW0pXCIgW2NsYXNzLnRoaW4tbW9kZV09XCIhd2lkZU1vZGVcIlxyXG4gICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJ3aWRlTW9kZSAmJiBjYXB0aW9uXCI+XHJcbiAgICAgICAgICAgIHt7IGNhcHRpb24gfX1cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgfVxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIEBpZiAoISF3aWRlTW9kZSAmJiAhIWhhc0NoaWxkcmVuICYmICEhaXRlbS50cmVlJENoaWxkcmVuIS5sZW5ndGggJiYgISEhbGVmdGJhclJlZHVjZWQpIHtcclxuICAgIDx1bCAjY2hpbGRyZW4gW2NsYXNzLmV4cGFuZGVkXT1cIiF3aWRlTW9kZSB8fCBpdGVtLnRyZWUkRXhwYW5kZWRcIlxyXG4gICAgICAgIFtjbGFzcy51bC10aGluLW1vZGVdPVwiIXdpZGVNb2RlXCIgW25nU3R5bGVdPVwie1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLFxyXG4gICAgICAgICAgICB3aWR0aDogISF3aWRlTW9kZSA/IChsYXlvdXRTZXJ2aWNlLmxlZnRCYXJDdXJyZW50V2lkdGgkLnZhbHVlIC0gbGF5b3V0U2VydmljZS5iYXNpY1NwYWNpbmcgLSBsYXlvdXRTZXJ2aWNlLnNjcm9sbEJhcldpZHRoICsgNSArICdweCcpIDogKCBsYXlvdXRTZXJ2aWNlLmxlZnRCYXJXaWRlV2lkdGgkLnZhbHVlICsgJ3B4JyApLFxyXG4gICAgICAgIH1cIiBbY2xhc3Muc3VibWVudV09XCIhd2lkZU1vZGVcIj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICBAZm9yIChjaGlsZCBvZiBpdGVtLnRyZWUkQ2hpbGRyZW47IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgICAgICA8YXBwLWl0ZW0gW2l0ZW1dPVwiY2hpbGRcIiBbbGV2ZWxdPVwibGV2ZWwrMVwiIChjbGlja2VkKT1cIm9uQ2xpY2soJGV2ZW50LCBjaGlsZClcIj48L2FwcC1pdGVtPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L3VsPlxyXG4gICAgfVxyXG5cclxuPC9saT4iXX0=
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvbmF2aWdhdG9yL25hdmlnYXRvci9pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9uYXZpZ2F0b3IvbmF2aWdhdG9yL2l0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLFNBQVMsRUFBRSxpQkFBaUIsRUFBdUYsTUFBTSxlQUFlLENBQUM7QUFFbk0sT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7O0FBZ0JyRSxNQUFNLE9BQU8sYUFBYTtJQXFCeEIsWUFDVSxNQUFjLEVBQ2YsZ0JBQWtDLEVBQ2pDLEdBQXlCLEVBQzFCLGFBQTRCLEVBQzNCLFdBQXdCO1FBSnhCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2pDLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzNCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBZmxDLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRTdCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBR25DLGlCQUFZLEdBQVcsRUFB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LCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdG9yUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE5hdmlnYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uYXZpZ2F0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbXVsdGktbGFuZ3VhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IElOYXZpZ2F0b3JJdGVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JTmF2aWdhdG9ySXRlbSc7XHJcbmltcG9ydCB7IE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWVudS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTdHJpbmdIdG1sUGlwZSB9IGZyb20gJy4uLy4uLy4uL2FwcC1waXBlcy9zdHJpbmctaHRtbC5waXBlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWl0ZW0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgVG9vbHRpcERpcmVjdGl2ZSxcclxuICAgIFN0cmluZ0h0bWxQaXBlLFxyXG4gICAgXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vaXRlbS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaXRlbS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIEl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgaXRlbSE6IElOYXZpZ2F0b3JJdGVtO1xyXG4gIEBJbnB1dCgpIGxldmVsITogbnVtYmVyO1xyXG4gIEBWaWV3Q2hpbGQoJ21lJykgbWUhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2NoaWxkcmVuJykgY2hpbGRyZW4hOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2xpbmsnKSBsaW5rITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdzdWJBcnJvdycpIHN1YkFycm93ITogRWxlbWVudFJlZjtcclxuXHJcbiAgY2FwdGlvbiE6IHN0cmluZztcclxuXHJcbiAgaGFzQ2hpbGRyZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBtYWluV2luZG93U3RhdGUhOiBzdHJpbmc7XHJcbiAgZXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBsZWZ0YmFyUmVkdWNlZCE6IGJvb2xlYW47XHJcbiAgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgd2lkZU1vZGUhOiBib29sZWFuO1xyXG4gIGN1cnJlbnRXaWR0aDogbnVtYmVyID0gNjY7XHJcbiAgYWN0aXZlITogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHVibGljIG5hdmlnYXRvclNlcnZpY2U6IE5hdmlnYXRvclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1sczogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuICAgIHByaXZhdGUgbWVudVNlcnZpY2U6IE1lbnVTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLndpZGVNb2RlJC5zdWJzY3JpYmUoeCA9PiB0aGlzLndpZGVNb2RlID0geCk7XHJcbiAgICB0aGlzLmxheW91dFNlcnZpY2UubGVmdEJhckN1cnJlbnRXaWR0aCQuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICB0aGlzLmN1cnJlbnRXaWR0aCA9IHg7XHJcbiAgICAgIHRoaXMubWU/Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tbGVmdC1iYXItY3VycmVudC13aWR0aCcsIHggKyAncHgnKVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1snaXRlbSddKSB7XHJcbiAgICAgIGNvbnN0IGl0ID0gY2hhbmdlc1snaXRlbSddO1xyXG4gICAgICBpZiAoaXQuY3VycmVudFZhbHVlLmlkID09PSAzODIpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIml0ZW0gMzgyIGNoYW5nZWQsIGFjdGl2ZSA9IFwiLCB0aGlzLmFjdGl2ZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5pdGVtKSB7XHJcbiAgICAgIGlmICh0aGlzLml0ZW0udHJlZSRDaGlsZHJlbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdGhpcy5oYXNDaGlsZHJlbiA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuYWN0aXZlSXRlbXMkLnN1YnNjcmliZShjID0+IHtcclxuICAgICAgaWYgKCFjKSByZXR1cm47XHJcbiAgICAgIHRoaXMuYWN0aXZlID0gISFjLmZpbHRlcih4ID0+IHguaWQgPT09IHRoaXMuaXRlbT8uaWQpLmxlbmd0aFxyXG4gICAgICBpZiAoISF0aGlzLmFjdGl2ZSkge1xyXG4gICAgICAgIHRoaXMubWU/Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImFjdGl2ZVwiKVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubWU/Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShcImFjdGl2ZVwiKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLm1scy5sYW5nJC5zdWJzY3JpYmUoXyA9PiB7XHJcbiAgICAgICAgdGhpcy5jYXB0aW9uID0gdGhpcy5tbHMudHJhbnModGhpcy5pdGVtIS5jb2RlKVxyXG4gICAgICB9KVxyXG4gICAgKVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLmxheW91dFNlcnZpY2UubGVmdGJhclJlZHVjZWQkLnN1YnNjcmliZSh4ID0+IHRoaXMubGVmdGJhclJlZHVjZWQgPSB4KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgc3ViQXJyb3dDbGlja2VkKGV2ZW50OiBFdmVudCwgaXRlbTogSU5hdmlnYXRvckl0ZW0pIHtcclxuXHJcbiAgICBjb25zb2xlLmxvZyhcInN1YkFycm93Q2xpY2tlZCB0cmlnZ2VyZWRcIilcclxuXHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICBpZiAoIXRoaXMud2lkZU1vZGUpIHtcclxuICAgICAgbGV0IG5ld0FjdGl2ZUl0ZW1zID0gdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC52YWx1ZTtcclxuICAgICAgY29uc29sZS5sb2coXCJzdWJBcnJvd0NsaWNrZWQgbmV3QWN0aXZlSXRlbXMgYmU0IGZpbHRlcmluZ1wiLCBuZXdBY3RpdmVJdGVtcylcclxuICAgICAgbmV3QWN0aXZlSXRlbXMgPSBuZXdBY3RpdmVJdGVtcy5maWx0ZXIoeCA9PiB4LnRyZWUkVGllciEgPCBpdGVtLnRyZWUkVGllciEpO1xyXG4gICAgICBuZXdBY3RpdmVJdGVtcy5wdXNoKGl0ZW0pO1xyXG4gICAgICBjb25zb2xlLmxvZyhcInN1YkFycm93Q2xpY2tlZCBuZXdBY3RpdmVJdGVtc1wiLCBuZXdBY3RpdmVJdGVtcylcclxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KG5ld0FjdGl2ZUl0ZW1zKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgaWYgKHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPT09ICdjaGlsZCBzdWItbWVudScpIHtcclxuICAgICAgdGhpcy5jaGlsZHJlbi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZSA9ICdjaGlsZCBzdWItbWVudSBleHBhbmRlZCc7XHJcbiAgICAgIHRoaXMuc3ViQXJyb3cubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lLnJlcGxhY2UoJyBwbHVzJywgJycpICsgJyBtaW51cyc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPT09ICdjaGlsZCBzdWItbWVudSBleHBhbmRlZCcpIHtcclxuICAgICAgdGhpcy5jaGlsZHJlbi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZSA9ICdjaGlsZCBzdWItbWVudSc7XHJcbiAgICAgIHRoaXMuc3ViQXJyb3cubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lLnJlcGxhY2UoJyBtaW51cycsICcnKSArICcgcGx1cyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKGV2ZW50OiBhbnksIGl0ZW06IElOYXZpZ2F0b3JJdGVtKSB7XHJcblxyXG4gICAgY29uc29sZS5sb2coXCJvbkNsaWNrIHRyaWdnZXJlZFwiKVxyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGlmICghdGhpcy53aWRlTW9kZSkge1xyXG5cclxuICAgICAgdGhpcy5vbk1vZHVsZUljb25DbGljayhldmVudCwgaXRlbSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoISF0aGlzLndpZGVNb2RlICYmIHRoaXMuaXRlbSEudHJlZSRTZWxlY3RlZCA9PSB0cnVlICYmICEhdGhpcy5pdGVtIS50cmVlJFBhcmVudCAmJiAodGhpcy5pdGVtIS50cmVlJFRpZXIgIT0gMiB8fCB0aGlzLml0ZW0hLnRyZWUkVGllciA9PSAyICYmIHRoaXMuaXRlbSEudHJlZSRDaGlsZHJlbi5sZW5ndGggPT0gMCkpIHtcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMud2lkZU1vZGUpIHtcclxuICAgICAgaWYgKHRoaXMuY2hpbGRyZW4pIHtcclxuICAgICAgICBjb25zdCBlbCA9IHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBjb25zdCByZWN0ID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgY29uc3QgaGVpZ2h0ID0gcmVjdC5oZWlnaHQ7XHJcbiAgICAgICAgaWYgKGhlaWdodCA9PT0gMCkge1xyXG4gICAgICAgICAgaXRlbS50cmVlJFNlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBpZiAoaXRlbS50cmVlJFRpZXIgPT0gMSB8fCBpdGVtLnRyZWUkVGllciA9PSAyKSB7XHJcbiAgICAgICAgICAgIGl0ZW0udHJlZSRTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm1lLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tY2hpbGRyZW4taGVpZ2h0JywgaGVpZ2h0ICsgJ3B4JylcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpdGVtLnRyZWUkU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMubWVudVNlcnZpY2UubmF2aWdhdGlvbiQudmFsdWUubWFwKHggPT4ge1xyXG4gICAgICAgICAgaWYgKHgudHJlZSRDaGlsZHJlbikge1xyXG4gICAgICAgICAgICB4LnRyZWUkQ2hpbGRyZW4ubWFwKCh5OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoeS50cmVlJENoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgICAgICB5LnRyZWUkQ2hpbGRyZW4ubWFwKCh6OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgaWYgKHogIT0gaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHoudHJlZSRTZWxlY3RlZCA9IGZhbHNlXHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgfSBlbHNlIGlmICh5ICE9IGl0ZW0pIHtcclxuICAgICAgICAgICAgICAgIHkudHJlZSRTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKVxyXG5cclxuICAgIGlmICghIWl0ZW0udHJlZSRQYXJlbnQpIHtcclxuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ21lbnVDdXJyZW50Q2xpY2tlZCcsIEpTT04uc3RyaW5naWZ5KGl0ZW0pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uTW9kdWxlSWNvbkNsaWNrKGV2ZW50OiBhbnksIGl0ZW06IElOYXZpZ2F0b3JJdGVtKSB7XHJcbiAgICBjb25zb2xlLmxvZyhcIm9uTW9kdWxlSWNvbkNsaWNrIHRyaWdnZXJlZFwiKVxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcblxyXG4gICAgaWYgKCF0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKTtcclxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KFtpdGVtXSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy53aWRlTW9kZSkge1xyXG4gICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKTtcclxuICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuYWN0aXZlSXRlbXMkLm5leHQoW2l0ZW1dKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC52YWx1ZS5pZCAhPT0gaXRlbS5pZCkge1xyXG4gICAgICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC5uZXh0KGl0ZW0pO1xyXG4gICAgICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KFtpdGVtXSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChudWxsKTtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChbXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgY2hlY2tBY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmU7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5tZS5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWJnLWNvbG9yJywgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmJhY2tncm91bmRDb2xvcik7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1jb2xvcicsIHRoaXMubmF2aWdhdG9yU2VydmljZS5jb2xvcik7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1ob3Zlci1iZy1jb2xvcicsIHRoaXMubmF2aWdhdG9yU2VydmljZS5ob3ZlckJhY2tncm91bmRDb2xvcik7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1ob3Zlci1jb2xvcicsIHRoaXMubmF2aWdhdG9yU2VydmljZS5ob3ZlckNvbG9yKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5tYXAoeCA9PiB4LnVuc3Vic2NyaWJlKCkpXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bGkgI21lIFtpZF09XCInbWFpbi1tZW51LScgKyBpdGVtLmlkXCIgY2xhc3M9XCJwYXJlbnRcIiBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW2NsYXNzLnJlZHVjZWRdPVwibGVmdGJhclJlZHVjZWRcIlxyXG4gICAgW2NsYXNzLmFjdGl2ZV09XCIhd2lkZU1vZGUgJiYgYWN0aXZlXCIgW2NsYXNzLmV4cGFuZGVkXT1cIml0ZW0udHJlZSRFeHBhbmRlZFwiXHJcbiAgICBbY2xhc3MuaGlnaGxpZ2h0ZWRdPVwiaXRlbS50cmVlJEhpZ2hsaWdodGVkXCIgW2NsYXNzLmxpLXRoaW4tbW9kZV09XCIhd2lkZU1vZGVcIiBbY2xhc3MubWVudS1pdGVtXT1cIiF3aWRlTW9kZVwiXHJcbiAgICBbYXBwVG9vbHRpcF09XCJsZXZlbD09PTEgJiYgIWFjdGl2ZSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIiBbcG9zaXRpb25dPVwiJ3JpZ2h0J1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbS13cmFwcGVyXCIgW2F0dHIuZGF0YS1sZXZlbF09XCJsZXZlbFwiIChjbGljayk9XCJvbkNsaWNrKCRldmVudCwgaXRlbSlcIlxyXG4gICAgICAgIFtjbGFzcy5tb2R1bGUtdGhpbi1tb2RlXT1cIiF3aWRlTW9kZSAmJiBsZXZlbD09PTFcIiBbY2xhc3MudGhpbi1icmFuY2hdPVwiIXdpZGVNb2RlICYmIGxldmVsID4gMVwiPlxyXG5cclxuICAgICAgICBAaWYgKHdpZGVNb2RlKSB7XHJcbiAgICAgICAgQGlmICghISFsZWZ0YmFyUmVkdWNlZCkge1xyXG4gICAgICAgIEBpZiAoISFoYXNDaGlsZHJlbikge1xyXG4gICAgICAgIEBpZiAoIWl0ZW0udHJlZSRTZWxlY3RlZCkge1xyXG4gICAgICAgIDxpIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiBjbGFzcz1cImN1c3RvbS1pY29uLXBhcmVudC1yaWdodFwiPjwvaT5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJjdXN0b20taWNvbi1wYXJlbnQtZG93blwiPjwvaT5cclxuICAgICAgICB9XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgQGlmIChpdGVtLnRyZWUkU2VsZWN0ZWQgJiYgaXRlbS5jb2RlICE9PSAnTUVOVS5EQVNIQk9BUkQnICYmIGl0ZW0uY29kZSAhPT0gJ01FTlUuSE9NRScpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJjdXN0b20taWNvbi1jaGlsZC1yaWdodFwiPjwvaT5cclxuICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpZiAoISFpdGVtLmljb25TdmcpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCInbW9kdWxlLWljb24nXCJcclxuICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwid2lkZU1vZGUgPyBjYXB0aW9uIDogdW5kZWZpbmVkXCIgKGNsaWNrKT1cIm9uTW9kdWxlSWNvbkNsaWNrKCRldmVudCwgaXRlbSk7ZmFsc2VcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHdpZGVNb2RlID8gJzIwcHgnIDogJ3Vuc2V0J1xyXG4gICAgICAgICAgICB9XCI+PHNwYW4gW2lubmVySHRtbF09XCJpdGVtLmljb25TdmcgfCBzdHJpbmdIdG1sXCI+PC9zcGFuPjwvaT5cclxuXHJcbiAgICAgICAgPCEtLSA8c3BhbiBbaW5uZXJIdG1sXT1cIml0ZW0uaWNvblN2ZyB8IHN0cmluZ0h0bWxcIj48L3NwYW4+IC0tPlxyXG4gICAgICAgIH0gQGVsc2UgaWYgKCEhaXRlbS5pY29uQ2xhc3MpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW2NsYXNzXT1cIml0ZW0uaWNvbkNsYXNzICsgJyBtb2R1bGUtaWNvbidcIlxyXG4gICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJ3aWRlTW9kZSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIiAoY2xpY2spPVwib25Nb2R1bGVJY29uQ2xpY2soJGV2ZW50LCBpdGVtKTtmYWxzZVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHdpZGVNb2RlID8gJzIwcHgnIDogJ3Vuc2V0J1xyXG4gICAgICAgICAgICB9XCI+PC9pPlxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGlmICghd2lkZU1vZGUgfHwgKCFsZWZ0YmFyUmVkdWNlZCAmJiBoYXNDaGlsZHJlbikpIHtcclxuICAgICAgICA8YSAjbGluayBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJoYXMtc3VibWVudVwiIFthcHBUb29sdGlwXT1cImxldmVsID4gMSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgICBbY2xhc3MudGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIChjbGljayk9XCJzdWJBcnJvd0NsaWNrZWQoJGV2ZW50LCBpdGVtKTtmYWxzZVwiPiA8IS0tZmFsc2UgaXMgaW1wb3J0YW50IGhlcmUtLT5cclxuICAgICAgICAgICAgICAgIDxzcGFuICNzdWJBcnJvdyAqbmdJZj1cIighIWl0ZW0ucGljdHVyZUJhc2U2NCB8fCAhIWl0ZW0ucGljdHVyZVVyaSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCInaW1nLXNwYW4gcGx1cyBsZXZlbCcgKyBsZXZlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCIgKm5nSWY9XCIhIWl0ZW0ucGljdHVyZUJhc2U2NFwiPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gI3N1YkFycm93ICpuZ0lmPVwiISEhaXRlbS5waWN0dXJlQmFzZTY0ICYmICEhIWl0ZW0ucGljdHVyZVVyaVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidwbHVzIGxldmVsJyArIGxldmVsXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIoISFpdGVtLnBpY3R1cmVCYXNlNjQgfHwgISFpdGVtLnBpY3R1cmVVcmkpXCIgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCI+XHJcblxyXG4gICAgICAgICAgICB7eyBjYXB0aW9uIH19XHJcblxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8YSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW3JvdXRlckxpbmtdPVwiaXRlbS51cmxcIiAoY2xpY2spPVwib25DbGljaygkZXZlbnQsIGl0ZW0pXCJcclxuICAgICAgICAgICAgW2NsYXNzLnRoaW4tbW9kZV09XCIhd2lkZU1vZGVcIiBbYXBwVG9vbHRpcF09XCJ3aWRlTW9kZSAmJiBjYXB0aW9uXCI+XHJcbiAgICAgICAgICAgIHt7IGNhcHRpb24gfX1cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgfVxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIEBpZiAoISF3aWRlTW9kZSAmJiAhIWhhc0NoaWxkcmVuICYmICEhaXRlbS50cmVlJENoaWxkcmVuIS5sZW5ndGggJiYgISEhbGVmdGJhclJlZHVjZWQpIHtcclxuICAgIDx1bCAjY2hpbGRyZW4gW2NsYXNzLmV4cGFuZGVkXT1cIiF3aWRlTW9kZSB8fCBpdGVtLnRyZWUkRXhwYW5kZWRcIiBbY2xhc3MudWwtdGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAgICAgd2lkdGg6ICEhd2lkZU1vZGUgPyAobGF5b3V0U2VydmljZS5sZWZ0QmFyQ3VycmVudFdpZHRoJC52YWx1ZSAtIGxheW91dFNlcnZpY2UuYmFzaWNTcGFjaW5nIC0gbGF5b3V0U2VydmljZS5zY3JvbGxCYXJXaWR0aCArIDUgKyAncHgnKSA6ICggbGF5b3V0U2VydmljZS5sZWZ0QmFyV2lkZVdpZHRoJC52YWx1ZSArICdweCcgKSxcclxuICAgICAgICB9XCIgW2NsYXNzLnN1Ym1lbnVdPVwiIXdpZGVNb2RlXCI+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgQGZvciAoY2hpbGQgb2YgaXRlbS50cmVlJENoaWxkcmVuOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgPGFwcC1pdGVtIFtpdGVtXT1cImNoaWxkXCIgW2xldmVsXT1cImxldmVsKzFcIiAoY2xpY2tlZCk9XCJvbkNsaWNrKCRldmVudCwgY2hpbGQpXCI+PC9hcHAtaXRlbT5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC91bD5cclxuICAgIH1cclxuXHJcbjwvbGk+Il19