i-tech-shared-components 1.2.35 → 1.2.37

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.
@@ -79,7 +79,7 @@ export class NewSidebarComponent {
79
79
  name: 'T3 TMS'
80
80
  }, {
81
81
  id: CompaniesEnum.BROKERAGE,
82
- name: 'T3 Brokerage'
82
+ name: 'T3 Loadboard'
83
83
  }
84
84
  ];
85
85
  this.activeAndInactivePlatforms = {
@@ -191,13 +191,13 @@ export class NewSidebarComponent {
191
191
  window.open(this.env.organizationUrl + '/auth/account-information', '_blank');
192
192
  }
193
193
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NewSidebarComponent, deps: [{ token: i1.Router }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
194
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NewSidebarComponent, isStandalone: true, selector: "i-tech-sidebar", inputs: { platform: "platform", navigationLinks: "navigationLinks", env: "env", userData: "userData" }, outputs: { collapseEvent: "collapseEvent", signOutEvent: "signOutEvent", newAuthenticatedResponseEvent: "newAuthenticatedResponseEvent" }, host: { listeners: { "window:beforeunload": "canDeactivate()" } }, ngImport: i0, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Admin\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: CompanyImageComponent, selector: "i-tech-company-image", inputs: ["collapsed", "userData", "currentCompany", "platform"] }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
194
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NewSidebarComponent, isStandalone: true, selector: "i-tech-sidebar", inputs: { platform: "platform", navigationLinks: "navigationLinks", env: "env", userData: "userData" }, outputs: { collapseEvent: "collapseEvent", signOutEvent: "signOutEvent", newAuthenticatedResponseEvent: "newAuthenticatedResponseEvent" }, host: { listeners: { "window:beforeunload": "canDeactivate()" } }, ngImport: i0, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Settings\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: CompanyImageComponent, selector: "i-tech-company-image", inputs: ["collapsed", "userData", "currentCompany", "platform"] }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
195
195
  }
196
196
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NewSidebarComponent, decorators: [{
197
197
  type: Component,
198
198
  args: [{ selector: 'i-tech-sidebar', imports: [NgIf, NgFor, TranslateModule, MatMenu, MatMenuModule, CompanyImageComponent, UpperCasePipe, SlicePipe,
199
199
  MatRippleModule, MatTooltipModule
200
- ], standalone: true, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Admin\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"] }]
200
+ ], standalone: true, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Settings\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"] }]
201
201
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.HttpClient }], propDecorators: { canDeactivate: [{
202
202
  type: HostListener,
203
203
  args: ['window:beforeunload']
@@ -216,4 +216,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
216
216
  }], userData: [{
217
217
  type: Input
218
218
  }] } });
219
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3LXNpZGViYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL25ldy1zaWRlYmFyL25ldy1zaWRlYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9uZXctc2lkZWJhci9uZXctc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUVMLGFBQWEsRUFHZCxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFaEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBSXpELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7OztBQVc3RCxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLGFBQWE7UUFDWCxZQUFZLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDakUsQ0FBQztJQXNCRCxZQUNZLE1BQWMsRUFDZCxJQUFnQjtRQURoQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsU0FBSSxHQUFKLElBQUksQ0FBWTtRQXZCbEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQzVDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUN4QyxrQ0FBNkIsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUs1RSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUdwQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDMUIscUJBQWdCLEdBQTJCLEVBQUUsQ0FBQztRQUU5QyxxQkFBZ0IsR0FBaUMsRUFBRSxDQUFDO1FBQ3BELCtCQUEwQixHQUFnRjtZQUN4RyxNQUFNLEVBQUUsRUFBRTtZQUNWLFFBQVEsRUFBRSxFQUFFO1NBQ2IsQ0FBQTtRQUNELGtCQUFhLEdBQUcsYUFBYSxDQUFBO1FBQzdCLDRCQUF1QixHQUFHLEtBQUssQ0FBQztJQUs3QixDQUFDO0lBRUosZUFBZTtRQUNiLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLE1BQU0sSUFBSSxLQUFLLENBQUM7UUFDaEYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUUsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUE7WUFDekIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxLQUFLLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDcEcsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFxQjtRQUNoQyxJQUFJLE1BQU0sS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDN0IsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLEdBQUcsQ0FBQztRQUNSLElBQUksTUFBTSxLQUFLLGFBQWEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNoQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUE7UUFDbkIsQ0FBQzthQUFNLElBQUksTUFBTSxLQUFLLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM5QyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUE7UUFDMUIsQ0FBQzthQUFNLElBQUksTUFBTSxLQUFLLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNqRCxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEdBQUcsb0JBQW9CLENBQUE7UUFDdkQsQ0FBQztRQUVELElBQUksR0FBRyxFQUFFLENBQUM7WUFDUixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUE7SUFDckQsQ0FBQztJQUVELDJCQUEyQjtRQUN6QixNQUFNLFVBQVUsR0FBRyxDQUFDO2dCQUNsQixFQUFFLEVBQUUsYUFBYSxDQUFDLEVBQUU7Z0JBQ3BCLElBQUksRUFBRSxRQUFRO2FBQ2YsRUFBRTtnQkFDRCxFQUFFLEVBQUUsYUFBYSxDQUFDLFNBQVM7Z0JBQzNCLElBQUksRUFBRSxjQUFjO2FBQ3JCO1NBQ0EsQ0FBQztRQUVGLElBQUksQ0FBQywwQkFBMEIsR0FBRztZQUNoQyxNQUFNLEVBQUUsRUFBRTtZQUNWLFFBQVEsRUFBRSxFQUFFO1NBQ2IsQ0FBQTtRQUVELFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUE0RCxFQUFFLEVBQUU7WUFDbEYsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDaEMsTUFBTSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7WUFDdkIsQ0FBQztZQUNELElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBeUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDOUYsSUFBSSxDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUN4RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLDBCQUEwQixDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUMxRCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsMEJBQTBCLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzdDLElBQUksRUFBRSxVQUFVO1lBQ2hCLEVBQUUsRUFBRSxhQUFhLENBQUMsWUFBWTtZQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsS0FBSyxhQUFhLENBQUMsWUFBWTtTQUN0RCxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsa0JBQWtCLENBQUMsT0FBOEI7UUFDL0MsSUFBSSxPQUFPLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUMsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDWixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxtQkFBbUIsT0FBTyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FDaEksQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUF1QixFQUFFLEVBQUU7WUFDdEMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUNuRCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ1gsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsZ0JBQWdCLENBQ3ZHLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBdUMsRUFBRSxFQUFFO1lBQ3RELE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUE4QixFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUE7WUFDakgsSUFBSSxjQUFjLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7WUFDdkMsQ0FBQztZQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUM7WUFDbEMsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDakQsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2RCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsd0JBQXdCO0lBQ3hCLGNBQWM7UUFDWixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBOEIsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUE7SUFDL0YsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQTtJQUNqRCxDQUFDO0lBQ0QsK0JBQStCO0lBRS9CLFlBQVk7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDOUMsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFxQixFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXRGLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNWLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1lBQzdCLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQXFCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDMUYsQ0FBQztRQUVELElBQUksSUFBSSxFQUFFLENBQUM7WUFDVCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztnQkFDOUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7Z0JBRXRDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBcUIsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDcEYsSUFBSSxPQUFPLEVBQUUsQ0FBQztvQkFDWixJQUFJLENBQUMscUJBQXFCLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQztnQkFDaEQsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO2dCQUMvQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO2dCQUMzQixJQUFJLENBQUMscUJBQXFCLEdBQUcsRUFBRSxDQUFDO1lBQ2xDLENBQUM7WUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsSUFBcUI7UUFDNUIsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNwQyxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7SUFDckMsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFjO1FBQzNCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxPQUFPLEdBQUcsS0FBSztRQUMzQyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsR0FBRyxpQkFBaUIsRUFBRSxRQUFRLENBQUMsQ0FBQTtRQUNoRSxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEdBQUcsdUJBQXVCLEVBQUUsUUFBUSxDQUFDLENBQUE7UUFDdEUsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQU8sR0FBRyxLQUFLO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUF3QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxlQUFlLENBQUM7YUFDeEksU0FBUyxDQUFDLENBQUMsR0FBMEIsRUFBRSxFQUFFO1lBQ3hDLE1BQU0sU0FBUyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLFdBQVcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN2RixNQUFNLFVBQVUsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxtQkFBbUIsR0FBRyxDQUFDLFdBQVcsY0FBYyxTQUFTLEVBQUUsQ0FBQztZQUNyRyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxHQUFHLDJCQUEyQixFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQy9FLENBQUM7K0dBbE5VLG1CQUFtQjttR0FBbkIsbUJBQW1CLGdZQzVCaEMsZzhRQWdNQSwrMU1EM0tZLElBQUksNkZBQUUsS0FBSyxrSEFBRSxlQUFlLDRGQUFFLE9BQU8sMFFBQUUsYUFBYSx5ZUFBRSxxQkFBcUIsNkhBQUUsYUFBYSw2Q0FBRSxTQUFTLDZDQUM3RyxlQUFlLGtTQUFFLGdCQUFnQjs7NEZBTXhCLG1CQUFtQjtrQkFUL0IsU0FBUzsrQkFDRSxnQkFBZ0IsV0FDakIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLGFBQWEsRUFBRSxTQUFTO3dCQUM3RyxlQUFlLEVBQUUsZ0JBQWdCO3FCQUNsQyxjQUNXLElBQUk7b0dBTWhCLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxxQkFBcUI7Z0JBSXpCLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyw2QkFBNkI7c0JBQXRDLE1BQU07Z0JBQ0UsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0ZvciwgTmdJZiwgU2xpY2VQaXBlLCBVcHBlckNhc2VQaXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7XG4gIEF1dGhJbnRlcmZhY2UsXG4gIENvbXBhbmllc0VudW0sXG4gIE9yZ2FuaXphdGlvbkludGVyZmFjZSxcbiAgU3lzdGVtUm9sZUludGVyZmFjZVxufSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9hdXRoLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgTWF0TWVudSwgTWF0TWVudU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XG5pbXBvcnQgeyBDb21wYW55SW1hZ2VDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wYW55LWltYWdlL2NvbXBhbnktaW1hZ2UuY29tcG9uZW50XCI7XG5cbmltcG9ydCB7IE1hdFJpcHBsZU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jb3JlXCI7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uTGlua3MgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9uYXZpZ2F0aW9uLWxpbmsuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5cbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpLXRlY2gtc2lkZWJhcicsXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ0ZvciwgVHJhbnNsYXRlTW9kdWxlLCBNYXRNZW51LCBNYXRNZW51TW9kdWxlLCBDb21wYW55SW1hZ2VDb21wb25lbnQsIFVwcGVyQ2FzZVBpcGUsIFNsaWNlUGlwZSxcbiAgICBNYXRSaXBwbGVNb2R1bGUsIE1hdFRvb2x0aXBNb2R1bGVcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGVVcmw6ICcuL25ldy1zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL25ldy1zaWRlYmFyLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBOZXdTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmJlZm9yZXVubG9hZCcpXG4gIGNhbkRlYWN0aXZhdGUoKTogdm9pZCB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ1NpZGViYXJDb2xsYXBzZWQnLCBgJHt0aGlzLmlzQ29sbGFwc2VkfWApXG4gIH1cbiAgQE91dHB1dCgpIGNvbGxhcHNlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBPdXRwdXQoKSBzaWduT3V0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBuZXdBdXRoZW50aWNhdGVkUmVzcG9uc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8QXV0aEludGVyZmFjZT4oKTtcbiAgQElucHV0KCkgcGxhdGZvcm0hOiBDb21wYW5pZXNFbnVtO1xuICBASW5wdXQoKSBuYXZpZ2F0aW9uTGlua3MhOiBBcnJheTxOYXZpZ2F0aW9uTGlua3M+O1xuICBASW5wdXQoKSBlbnYhOiBhbnk7XG4gIEBJbnB1dCgpIHVzZXJEYXRhITogQXV0aEludGVyZmFjZTtcbiAgaXNDb2xsYXBzZWQgPSBmYWxzZTtcbiAgYWN0aXZlUGFnZSE6IHN0cmluZztcbiAgc2Vjb25kTGF5ZXJBY3RpdmVQYWdlITogc3RyaW5nO1xuICBzZWNvbmRMYXllck9wZW5lZCA9IGZhbHNlO1xuICBzZWNvbmRMYXllckxpbmtzOiBBcnJheTxOYXZpZ2F0aW9uTGlua3M+ID0gW107XG4gIGN1cnJlbnRDb21wYW55ITpPcmdhbml6YXRpb25JbnRlcmZhY2U7XG4gIGFsbE9yZ2FuaXphdGlvbnM6IEFycmF5PE9yZ2FuaXphdGlvbkludGVyZmFjZT4gPSBbXTtcbiAgYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXM6IFJlY29yZDxzdHJpbmcsIEFycmF5PHtpZDogQ29tcGFuaWVzRW51bSwgbmFtZTogc3RyaW5nLCBjaGVja2VkPzogYm9vbGVhbn0+PiA9IHtcbiAgICBhY3RpdmU6IFtdLFxuICAgIGluYWN0aXZlOiBbXVxuICB9XG4gIENvbXBhbmllc0VudW0gPSBDb21wYW5pZXNFbnVtXG4gIGFjY2Vzc1RvTmV3T3JnYW5pemF0aW9uID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50XG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kZXRlY3RBY3RpdmVQYWdlKCk7XG4gICAgdGhpcy5kZXRlY3RBY3RpdmVBbmRJbmFjdGl2ZUFwcHMoKTtcbiAgICB0aGlzLmlzQ29sbGFwc2VkID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ1NpZGViYXJDb2xsYXBzZWQnKSA9PT0gJ3RydWUnIHx8IGZhbHNlO1xuICAgIHRoaXMuY29sbGFwc2VFdmVudC5lbWl0KHRoaXMuaXNDb2xsYXBzZWQpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5nZXRBbGxDb21wYW5pZXMoKTtcbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgdGhpcy5kZXRlY3RBY3RpdmVQYWdlKClcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9wZW5NYWluKCk6IHZvaWQge1xuICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5wbGF0Zm9ybSA9PT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04gPyAnL2F1dGgvb3JnYW5pemF0aW9uLycgOiAnLyc7XG4gIH1cblxuICBvcGVuUGxhdGZvcm0oc3lzdGVtOiBDb21wYW5pZXNFbnVtKTogdm9pZCB7XG4gICAgaWYgKHN5c3RlbSA9PT0gdGhpcy5wbGF0Zm9ybSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCB1cmw7XG4gICAgaWYgKHN5c3RlbSA9PT0gQ29tcGFuaWVzRW51bS5UMykge1xuICAgICAgdXJsID0gdGhpcy5lbnYudDNcbiAgICB9IGVsc2UgaWYgKHN5c3RlbSA9PT0gQ29tcGFuaWVzRW51bS5CUk9LRVJBR0UpIHtcbiAgICAgIHVybCA9IHRoaXMuZW52LmJyb2tlcmFnZVxuICAgIH0gZWxzZSBpZiAoc3lzdGVtID09PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTikge1xuICAgICAgdXJsID0gdGhpcy5lbnYub3JnYW5pemF0aW9uVXJsICsgJy9hdXRoL29yZ2FuaXphdGlvbidcbiAgICB9XG5cbiAgICBpZiAodXJsKSB7XG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcbiAgICB9XG4gIH1cblxuICBhY2NvdW50SW5mb3JtYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXV0aC9hY2NvdW50LWluZm9ybWF0aW9uJ10pXG4gIH1cblxuICBkZXRlY3RBY3RpdmVBbmRJbmFjdGl2ZUFwcHMoKTogdm9pZCB7XG4gICAgY29uc3QgYWxsU3lzdGVtcyA9IFt7XG4gICAgICBpZDogQ29tcGFuaWVzRW51bS5UMyxcbiAgICAgIG5hbWU6ICdUMyBUTVMnXG4gICAgfSwge1xuICAgICAgaWQ6IENvbXBhbmllc0VudW0uQlJPS0VSQUdFLFxuICAgICAgbmFtZTogJ1QzIEJyb2tlcmFnZSdcbiAgICB9XG4gICAgXTtcblxuICAgIHRoaXMuYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXMgPSB7XG4gICAgICBhY3RpdmU6IFtdLFxuICAgICAgaW5hY3RpdmU6IFtdXG4gICAgfVxuXG4gICAgYWxsU3lzdGVtcy5mb3JFYWNoKChzeXN0ZW06IHtpZDogQ29tcGFuaWVzRW51bSwgbmFtZTogc3RyaW5nLCBjaGVja2VkPzogYm9vbGVhbn0pID0+IHtcbiAgICAgIGlmICh0aGlzLnBsYXRmb3JtID09PSBzeXN0ZW0uaWQpIHtcbiAgICAgICAgc3lzdGVtLmNoZWNrZWQgPSB0cnVlXG4gICAgICB9XG4gICAgICBpZiAodGhpcy51c2VyRGF0YS5zeXN0ZW1Sb2xlcz8uZmluZCgocm9sZTogU3lzdGVtUm9sZUludGVyZmFjZSkgPT4gcm9sZS5zeXN0ZW0gPT09IHN5c3RlbS5pZCkpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVBbmRJbmFjdGl2ZVBsYXRmb3Jtc1snYWN0aXZlJ10ucHVzaChzeXN0ZW0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydpbmFjdGl2ZSddLnB1c2goc3lzdGVtKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICB0aGlzLmFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydhY3RpdmUnXS5wdXNoKHtcbiAgICAgIG5hbWU6ICdUMyBBZG1pbicsXG4gICAgICBpZDogQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04sXG4gICAgICBjaGVja2VkOiB0aGlzLnBsYXRmb3JtID09PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTlxuICAgIH0pXG4gIH1cblxuICBzd2l0Y2hPcmdhbml6YXRpb24oY29tcGFueTogT3JnYW5pemF0aW9uSW50ZXJmYWNlKTogdm9pZCB7XG4gICAgaWYgKGNvbXBhbnkuaWQgPT09IHRoaXMuY3VycmVudENvbXBhbnkuaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5odHRwLnBvc3Q8QXV0aEludGVyZmFjZT4oXG4gICAgICB0aGlzLmVudi5kYXRhRW5kcG9pbnQgKyAodGhpcy5wbGF0Zm9ybSAhPT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04gPyAnL2lkJyA6ICcnKSArIGAvYXV0aC9jb21wYW5pZXMvJHtjb21wYW55LmlkfS9sb2dpbmAsIHt9XG4gICAgKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBBdXRoSW50ZXJmYWNlKSA9PiB7XG4gICAgICB0aGlzLm5ld0F1dGhlbnRpY2F0ZWRSZXNwb25zZUV2ZW50LmVtaXQocmVzcG9uc2UpXG4gICAgfSlcbiAgfVxuXG4gIGdldEFsbENvbXBhbmllcygpOiB2b2lkIHtcbiAgICB0aGlzLmh0dHAuZ2V0PEFycmF5PE9yZ2FuaXphdGlvbkludGVyZmFjZT4+KFxuICAgICAgdGhpcy5lbnYuZGF0YUVuZHBvaW50ICsgKHRoaXMucGxhdGZvcm0gIT09IENvbXBhbmllc0VudW0uT1JHQU5JWkFUSU9OID8gJy9pZCcgOiAnJykgKyAnL2NvbXBhbmllcy9hbGwnXG4gICAgKS5zdWJzY3JpYmUoKGNvbXBhbmllczogQXJyYXk8T3JnYW5pemF0aW9uSW50ZXJmYWNlPikgPT4ge1xuICAgICAgY29uc3QgY3VycmVudENvbXBhbnkgPSBjb21wYW5pZXMuZmluZCgoY29tcGFueTogT3JnYW5pemF0aW9uSW50ZXJmYWNlKSA9PiBjb21wYW55LmlkID09PSB0aGlzLnVzZXJEYXRhLmNvbXBhbnlJZClcbiAgICAgIGlmIChjdXJyZW50Q29tcGFueSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRDb21wYW55ID0gY3VycmVudENvbXBhbnk7XG4gICAgICB9XG4gICAgICB0aGlzLmFsbE9yZ2FuaXphdGlvbnMgPSBjb21wYW5pZXM7XG4gICAgICBpZiAodGhpcy5wbGF0Zm9ybSA9PT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04pIHtcbiAgICAgICAgdGhpcy5hY2Nlc3NUb05ld09yZ2FuaXphdGlvbiA9IHRoaXMuYWNjZXNzVG9BZGROZXcoKTtcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgLy8gT25seSBmb3Igb3JnYW5pemF0aW9uXG4gIGFjY2Vzc1RvQWRkTmV3KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhKHRoaXMuYWxsT3JnYW5pemF0aW9ucy5maW5kKChjb21wYW55OiBPcmdhbml6YXRpb25JbnRlcmZhY2UpID0+IGNvbXBhbnkuaXNNeUNvbXBhbnkpKVxuICB9XG5cbiAgYWRkTmV3T3JnYW5pemF0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnYXV0aC9vcmdhbml6YXRpb24vYWRkJ10pXG4gIH1cbiAgLy8gRW5kIE9mIE9ubHkgZm9yIG9yZ2FuaXphdGlvblxuXG4gIG5hdmlnYXRlQmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy8nXSk7XG4gIH1cblxuICBkZXRlY3RBY3RpdmVQYWdlKCk6IHZvaWQge1xuICAgIGNvbnN0IHBhZ2UgPSB0aGlzLnJvdXRlci51cmwucmVwbGFjZSgnLycsICcnKTtcbiAgICBsZXQgbGluayA9IHRoaXMubmF2aWdhdGlvbkxpbmtzLmZpbmQoKGxpbms6IE5hdmlnYXRpb25MaW5rcykgPT4gcGFnZSA9PT0gbGluay5saW5rVG8pO1xuXG4gICAgaWYgKCFsaW5rKSB7XG4gICAgICBjb25zdCBwYWdlID0gdGhpcy5yb3V0ZXIudXJsO1xuICAgICAgbGluayA9IHRoaXMubmF2aWdhdGlvbkxpbmtzLmZpbmQoKGxpbms6IE5hdmlnYXRpb25MaW5rcykgPT4gcGFnZS5pbmNsdWRlcyhsaW5rLmxpbmtUbykpO1xuICAgIH1cblxuICAgIGlmIChsaW5rKSB7XG4gICAgICBpZiAobGluay5zdWJQYWdlcykge1xuICAgICAgICB0aGlzLnNlY29uZExheWVyT3BlbmVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZWNvbmRMYXllckxpbmtzID0gbGluay5zdWJQYWdlcztcblxuICAgICAgICBjb25zdCBzdWJMaW5rID0gbGluay5zdWJQYWdlcy5maW5kKChsaW5rOiBOYXZpZ2F0aW9uTGlua3MpID0+IHBhZ2UgPT09IGxpbmsubGlua1RvKTtcbiAgICAgICAgaWYgKHN1YkxpbmspIHtcbiAgICAgICAgICB0aGlzLnNlY29uZExheWVyQWN0aXZlUGFnZSA9IHN1YkxpbmsucGFnZUVudW07XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2Vjb25kTGF5ZXJPcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZWNvbmRMYXllckxpbmtzID0gW107XG4gICAgICAgIHRoaXMuc2Vjb25kTGF5ZXJBY3RpdmVQYWdlID0gJyc7XG4gICAgICB9XG4gICAgICB0aGlzLmFjdGl2ZVBhZ2UgPSBsaW5rLnBhZ2VFbnVtO1xuICAgIH1cbiAgfVxuXG4gIG5hdmlnYXRlKGxpbms6IE5hdmlnYXRpb25MaW5rcyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2UgPT09IGxpbmsubGlua1RvKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2xpbmsubGlua1RvXSlcbiAgfVxuXG4gIGNoYW5nZUNvbGxhcHNlKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pc0NvbGxhcHNlZCA9IHZhbHVlO1xuICAgIHRoaXMuY29sbGFwc2VFdmVudC5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhY3lQb2xpY3lPclRlcm1zQ29uZGl0aW9uKHByaXZhY3kgPSBmYWxzZSk6IHZvaWQge1xuICAgIGlmIChwcml2YWN5KSB7XG4gICAgICB3aW5kb3cub3Blbih0aGlzLmVudi5tYWluRG9tYWluICsgJy9wcml2YWN5LXBvbGljeScsICdfYmxhbmsnKVxuICAgIH0gZWxzZSB7XG4gICAgICB3aW5kb3cub3Blbih0aGlzLmVudi5tYWluRG9tYWluICsgJy90ZXJtcy1hbmQtY29uZGl0aW9ucycsICdfYmxhbmsnKVxuICAgIH1cbiAgfVxuXG4gIHNpZ25PdXQoKTogdm9pZCB7XG4gICAgdGhpcy5zaWduT3V0RXZlbnQuZW1pdCgpXG4gIH1cblxuICBvcGVuWmVuZGVza1BhZ2Uoc3VwcG9ydCA9IGZhbHNlKTogdm9pZCB7XG4gICAgdGhpcy5odHRwLmdldDx7YWNjZXNzVG9rZW46IHN0cmluZ30+KHRoaXMuZW52LmRhdGFFbmRwb2ludCArICh0aGlzLnBsYXRmb3JtICE9PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTiA/ICcvaWQnIDogJycpICsgYC9hdXRoL3plbmRlc2tgKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiB7YWNjZXNzVG9rZW46IHN0cmluZ30pID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0VXJsID0gYCR7dGhpcy5lbnYuemVuZGVza1VybH0vaGMvZW4tdXNgICsgKHN1cHBvcnQgPyAnL3JlcXVlc3RzL25ldycgOiAnJyk7XG4gICAgICAgIGNvbnN0IHplbmRlc2tVcmwgPSBgJHt0aGlzLmVudi56ZW5kZXNrVXJsfS9hY2Nlc3Mvand0P2p3dD0ke3Jlcy5hY2Nlc3NUb2tlbn0mcmV0dXJuX3RvPSR7dGFyZ2V0VXJsfWA7XG4gICAgICAgIHdpbmRvdy5vcGVuKHplbmRlc2tVcmwpO1xuICAgICAgfSlcbiAgfVxuXG4gIG1hbmFnZUFjY291bnQoKTogdm9pZCB7XG4gICAgd2luZG93Lm9wZW4odGhpcy5lbnYub3JnYW5pemF0aW9uVXJsICsgJy9hdXRoL2FjY291bnQtaW5mb3JtYXRpb24nLCAnX2JsYW5rJylcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyXCJcbiAgICAgKm5nSWY9XCJuYXZpZ2F0aW9uTGlua3MgJiYgdXNlckRhdGFcIlxuICAgICBbY2xhc3MuY29sbGFwc2VkXT1cImlzQ29sbGFwc2VkXCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1oZWFkZXJcIj5cbiAgICAgIDxhIFtocmVmXT1cInBsYXRmb3JtID09PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTiA/ICcvYXV0aC9vcmdhbml6YXRpb24nIDogJy8nXCI+XG4gICAgICAgIDxpbWcgY2xhc3M9XCJsb2dvIHBvaW50ZXJcIiBhbHQ9XCJcIlxuICAgICAgICAgICAgICpuZ0lmPVwiaXNDb2xsYXBzZWRcIlxuICAgICAgICAgICAgIFtzcmNdPVwiJy9hc3NldHMvbG9nb3Mvc21hbGwvJyArIHBsYXRmb3JtICsgJy5zdmcnXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwib3Blbk1haW4oKVwiXG4gICAgICAgID5cblxuICAgICAgICA8aW1nIGNsYXNzPVwibG9nbyBwb2ludGVyXCIgYWx0PVwiXCJcbiAgICAgICAgICAgICAqbmdJZj1cIiFpc0NvbGxhcHNlZFwiXG4gICAgICAgICAgICAgW3NyY109XCInL2Fzc2V0cy9sb2dvcy9mdWxsLycgKyBwbGF0Zm9ybSArICcuc3ZnJ1wiXG4gICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5NYWluKClcIlxuICAgICAgICA+XG4gICAgICA8L2E+XG4gICAgICAgIDxpbWcgc3JjPVwiL2Fzc2V0cy9hcHBzLnBuZ1wiIGFsdD1cIlwiIGNsYXNzPVwicG9pbnRlclwiICpuZ0lmPVwiIWlzQ29sbGFwc2VkXCJcbiAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWF0TWVudVwiXG4gICAgICAgID5cblxuICAgICAgICA8bWF0LW1lbnUgI21hdE1lbnU9XCJtYXRNZW51XCIgY2xhc3M9XCJzaWRlYmFyX3BsYXRmb3Jtc19tZW51XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXNbJ2FjdGl2ZSddLmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudV90aXRsZVwiPlxuICAgICAgICAgICAgICAgIEFjdGl2ZSBBcHBzXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIiAqbmdGb3I9XCJsZXQgYXBwIG9mIGFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydhY3RpdmUnXVwiXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5QbGF0Zm9ybShhcHAuaWQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpbWcgYWx0PVwiXCIgY2xhc3M9XCJsb2dvXCIgW3NyY109XCInL2Fzc2V0cy9sb2dvcy9mdWxsLycgKyBhcHAuaWQgKyAnLnN2ZydcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57e2FwcC5uYW1lfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPGltZyBhbHQ9XCJcIiBjbGFzcz1cIm1sLWF1dG9cIiBzcmM9XCIvYXNzZXRzL3NlbGVjdGVkX29yZ2FuaXphdGlvbi5zdmdcIlxuICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhcHAuY2hlY2tlZFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiXG4gICAgICAgICAgICAgICAgICpuZ0lmPVwiYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXNbJ2FjdGl2ZSddLmxlbmd0aCAmJiBhY3RpdmVBbmRJbmFjdGl2ZVBsYXRmb3Jtc1snaW5hY3RpdmUnXS5sZW5ndGhcIlxuICAgICAgICAgICAgPjwvZGl2PlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXNbJ2luYWN0aXZlJ10ubGVuZ3RoXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZW51X3RpdGxlXCI+XG4gICAgICAgICAgICAgICAgSW5hY3RpdmUgQXBwc1xuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0YW5kYXJkX21lbnVfaXRlbVwiICpuZ0Zvcj1cImxldCBhcHAgb2YgYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXNbJ2luYWN0aXZlJ11cIj5cbiAgICAgICAgICAgICAgICA8aW1nIGFsdD1cIlwiIGNsYXNzPVwibG9nb1wiIFtzcmNdPVwiJy9hc3NldHMvbG9nb3MvZnVsbC8nICsgYXBwLmlkICsgJy5zdmcnXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3thcHAubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwvbWF0LW1lbnU+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1jb250ZW50XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWNvbmRMYXllckxpbmtzLmxlbmd0aFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW5fc2lkZWJhci0tY29udGVudC0tdG9vbGJhclwiXG4gICAgICAgICAgICAgICAgIChjbGljayk9XCJuYXZpZ2F0ZUJhY2soKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGltZyBhbHQ9XCJcIiBzcmM9XCIvYXNzZXRzL2JhY2suc3ZnXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+QmFjazwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW5fc2lkZWJhci0tY29udGVudC0tc3ViX3RpdGxlXCI+XG4gICAgICAgICAgICAgICAgQWRtaW5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsaW5rIG9mIChzZWNvbmRMYXllckxpbmtzLmxlbmd0aCA/IHNlY29uZExheWVyTGlua3MgOiBuYXZpZ2F0aW9uTGlua3MpXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiICpuZ0lmPVwibGluay5oYXNEaXZpZGVyXCI+PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1jb250ZW50LS1saW5rIHBvaW50ZXJcIlxuICAgICAgICAgICAgICAgICAgIG1hdFJpcHBsZVxuICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwibGluay5wYWdlRW51bSA9PT0gYWN0aXZlUGFnZSB8fCBsaW5rLnBhZ2VFbnVtID09PSBzZWNvbmRMYXllckFjdGl2ZVBhZ2VcIlxuICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJuYXZpZ2F0ZShsaW5rKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBhcmVudF9pY29uXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpY29uXCIgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cIicvYXNzZXRzL2xpbmtzLycgKyBwbGF0Zm9ybSArICcvJyArIGxpbmsuaW1hZ2UgKyAnLnN2ZydcIj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7bGluay50aXRsZSB8IHRyYW5zbGF0ZX19PC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmV3XCIgKm5nSWY9XCJsaW5rLmlzTmV3XCI+TmV3PC9kaXY+XG5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cIm1haW5fc2lkZWJhci0tZm9vdGVyXCIgKm5nSWY9XCJ1c2VyRGF0YVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1mb290ZXItLXRvZ2dsZVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJwb2ludGVyXCIgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICAgKm5nSWY9XCIhaXNDb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwiQ29sbGFwc2UgU2lkZWJhclwiXG4gICAgICAgICAgICAgICAgIFttYXRUb29sdGlwUG9zaXRpb25dPVwiJ2Fib3ZlJ1wiXG4gICAgICAgICAgICAgICAgIHNyYz1cIi9hc3NldHMvdG9nZ2xlLXN0YXRlLWxlZnQuc3ZnXCJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZUNvbGxhcHNlKHRydWUpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJwb2ludGVyXCIgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICAgKm5nSWY9XCJpc0NvbGxhcHNlZFwiXG4gICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJFeHBhbmQgU2lkZWJhclwiXG4gICAgICAgICAgICAgICAgIFttYXRUb29sdGlwUG9zaXRpb25dPVwiJ2Fib3ZlJ1wiXG4gICAgICAgICAgICAgICAgIHNyYz1cIi9hc3NldHMvdG9nZ2xlLXN0YXRlLXJpZ2h0LnN2Z1wiXG4gICAgICAgICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VDb2xsYXBzZShmYWxzZSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1haW5fc2lkZWJhci0tZm9vdGVyLS1wcm9maWxlXCI+XG4gICAgICAgICAgICA8aS10ZWNoLWNvbXBhbnktaW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1hdE1lbnVcIlxuICAgICAgICAgICAgICAgICAgICBbY29sbGFwc2VkXT1cImlzQ29sbGFwc2VkXCJcbiAgICAgICAgICAgICAgICAgICAgW3VzZXJEYXRhXT1cInVzZXJEYXRhXCJcbiAgICAgICAgICAgICAgICAgICAgW3BsYXRmb3JtXT1cInBsYXRmb3JtXCJcbiAgICAgICAgICAgICAgICAgICAgW2N1cnJlbnRDb21wYW55XT1cImN1cnJlbnRDb21wYW55XCJcbiAgICAgICAgICAgID48L2ktdGVjaC1jb21wYW55LWltYWdlPlxuICAgICAgICAgICAgPG1hdC1tZW51ICNtYXRNZW51PVwibWF0TWVudVwiIGNsYXNzPVwic2lkZWJhcl9ib3R0b21fbWVudVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b3BfYmFyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWFnZVwiIGFsdD1cIlwiIFtzcmNdPVwidXNlckRhdGEuaW1hZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidXNlckRhdGEuaW1hZ2U7IGVsc2UgTm9JbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNOb0ltYWdlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlIG5vX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3t1c2VyRGF0YS5maXJzdE5hbWUgfCBzbGljZTogMCA6IDEgfCB1cHBlcmNhc2V9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvcm1hdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIj57e3VzZXJEYXRhLmZpcnN0TmFtZX19IHt7dXNlckRhdGEubGFzdE5hbWV9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVtYWlsXCI+e3t1c2VyRGF0YS5lbWFpbH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgbWF0LW1lbnUtaXRlbSAqbmdJZj1cInBsYXRmb3JtICE9PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTlwiIGNsYXNzPVwibXQtNCBzdGFuZGFyZF9tZW51X2l0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm1hbmFnZUFjY291bnQoKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgQWNjb3VudCBJbmZvcm1hdGlvblxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gKm5nSWY9XCJwbGF0Zm9ybSA9PT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT05cIiBjbGFzcz1cIm10LTQgc3RhbmRhcmRfbWVudV9pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWNjb3VudEluZm9ybWF0aW9uKClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgQWNjb3VudCBJbmZvcm1hdGlvblxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBtYXQtbWVudS1pdGVtICpuZ0lmPVwicGxhdGZvcm0gPT09IENvbXBhbmllc0VudW0uT1JHQU5JWkFUSU9OICYmIGFjY2Vzc1RvTmV3T3JnYW5pemF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3RhbmRhcmRfbWVudV9pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhZGROZXdPcmdhbml6YXRpb24oKVwiPlxuICAgICAgICAgICAgICAgICAgQWRkIG5ldyBvcmdhbml6YXRpb25cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhbGxPcmdhbml6YXRpb25zLmxlbmd0aCA+IDFcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIiA+PC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN3aXRjaFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN3aXRjaF90aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN3aXRjaCBPcmdhbml6YXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBtYXQtbWVudS1pdGVtIGNsYXNzPVwibWF0X21lbnVfb3JnYW5pemF0aW9uXCIgKGNsaWNrKT1cInN3aXRjaE9yZ2FuaXphdGlvbihvcmdhbml6YXRpb24pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9yZ2FuaXphdGlvbiBvZiBhbGxPcmdhbml6YXRpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3JnYW5pemF0aW9uX2l0ZW1faW5fbWVudVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGFsdD1cIlwiIGNsYXNzPVwiaW1hZ2VcIiBbc3JjXT1cIm9yZ2FuaXphdGlvbi5pbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJvcmdhbml6YXRpb24uaW1hZ2U7IGVsc2UgTm9JbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNOb0ltYWdlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlIG5vX2ltYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tvcmdhbml6YXRpb24ubmFtZSB8IHNsaWNlOiAwIDogMSB8IHVwcGVyY2FzZX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3tvcmdhbml6YXRpb24ubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgYWx0PVwiXCIgKm5nSWY9XCJvcmdhbml6YXRpb24uaWQgPT09IGN1cnJlbnRDb21wYW55LmlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaXNTZWxlY3RlZFwiIHNyYz1cIi9hc3NldHMvc2VsZWN0ZWRfb3JnYW5pemF0aW9uLnN2Z1wiID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiPjwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBtYXQtbWVudS1pdGVtIGNsYXNzPVwic3RhbmRhcmRfbWVudV9pdGVtXCIgKGNsaWNrKT1cIm9wZW5aZW5kZXNrUGFnZSgpXCI+XG4gICAgICAgICAgICAgICAgICAgIFN1cHBvcnQgQ2VudGVyXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBtYXQtbWVudS1pdGVtIGNsYXNzPVwic3RhbmRhcmRfbWVudV9pdGVtXCIgKGNsaWNrKT1cInByaXZhY3lQb2xpY3lPclRlcm1zQ29uZGl0aW9uKClcIj5cbiAgICAgICAgICAgICAgICAgICAgVGVybXMgQW5kIENvbmRpdGlvbnNcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIiAoY2xpY2spPVwicHJpdmFjeVBvbGljeU9yVGVybXNDb25kaXRpb24odHJ1ZSlcIj5cbiAgICAgICAgICAgICAgICAgICAgUHJpdmFjeSBQb2xpY3lcbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIiAoY2xpY2spPVwic2lnbk91dCgpXCI+XG4gICAgICAgICAgICAgICAgICAgIFNpZ24gb3V0XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC1tZW51PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3LXNpZGViYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL25ldy1zaWRlYmFyL25ldy1zaWRlYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9uZXctc2lkZWJhci9uZXctc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUVMLGFBQWEsRUFHZCxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFaEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBSXpELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7OztBQVc3RCxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLGFBQWE7UUFDWCxZQUFZLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDakUsQ0FBQztJ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akIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLGFBQWEsRUFBRSxTQUFTO3dCQUM3RyxlQUFlLEVBQUUsZ0JBQWdCO3FCQUNsQyxjQUNXLElBQUk7b0dBTWhCLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxxQkFBcUI7Z0JBSXpCLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyw2QkFBNkI7c0JBQXRDLE1BQU07Z0JBQ0UsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0ZvciwgTmdJZiwgU2xpY2VQaXBlLCBVcHBlckNhc2VQaXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7XG4gIEF1dGhJbnRlcmZhY2UsXG4gIENvbXBhbmllc0VudW0sXG4gIE9yZ2FuaXphdGlvbkludGVyZmFjZSxcbiAgU3lzdGVtUm9sZUludGVyZmFjZVxufSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9hdXRoLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgTWF0TWVudSwgTWF0TWVudU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XG5pbXBvcnQgeyBDb21wYW55SW1hZ2VDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wYW55LWltYWdlL2NvbXBhbnktaW1hZ2UuY29tcG9uZW50XCI7XG5cbmltcG9ydCB7IE1hdFJpcHBsZU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jb3JlXCI7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uTGlua3MgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9uYXZpZ2F0aW9uLWxpbmsuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5cbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpLXRlY2gtc2lkZWJhcicsXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ0ZvciwgVHJhbnNsYXRlTW9kdWxlLCBNYXRNZW51LCBNYXRNZW51TW9kdWxlLCBDb21wYW55SW1hZ2VDb21wb25lbnQsIFVwcGVyQ2FzZVBpcGUsIFNsaWNlUGlwZSxcbiAgICBNYXRSaXBwbGVNb2R1bGUsIE1hdFRvb2x0aXBNb2R1bGVcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGVVcmw6ICcuL25ldy1zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL25ldy1zaWRlYmFyLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBOZXdTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmJlZm9yZXVubG9hZCcpXG4gIGNhbkRlYWN0aXZhdGUoKTogdm9pZCB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ1NpZGViYXJDb2xsYXBzZWQnLCBgJHt0aGlzLmlzQ29sbGFwc2VkfWApXG4gIH1cbiAgQE91dHB1dCgpIGNvbGxhcHNlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBPdXRwdXQoKSBzaWduT3V0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBuZXdBdXRoZW50aWNhdGVkUmVzcG9uc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8QXV0aEludGVyZmFjZT4oKTtcbiAgQElucHV0KCkgcGxhdGZvcm0hOiBDb21wYW5pZXNFbnVtO1xuICBASW5wdXQoKSBuYXZpZ2F0aW9uTGlua3MhOiBBcnJheTxOYXZpZ2F0aW9uTGlua3M+O1xuICBASW5wdXQoKSBlbnYhOiBhbnk7XG4gIEBJbnB1dCgpIHVzZXJEYXRhITogQXV0aEludGVyZmFjZTtcbiAgaXNDb2xsYXBzZWQgPSBmYWxzZTtcbiAgYWN0aXZlUGFnZSE6IHN0cmluZztcbiAgc2Vjb25kTGF5ZXJBY3RpdmVQYWdlITogc3RyaW5nO1xuICBzZWNvbmRMYXllck9wZW5lZCA9IGZhbHNlO1xuICBzZWNvbmRMYXllckxpbmtzOiBBcnJheTxOYXZpZ2F0aW9uTGlua3M+ID0gW107XG4gIGN1cnJlbnRDb21wYW55ITpPcmdhbml6YXRpb25JbnRlcmZhY2U7XG4gIGFsbE9yZ2FuaXphdGlvbnM6IEFycmF5PE9yZ2FuaXphdGlvbkludGVyZmFjZT4gPSBbXTtcbiAgYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXM6IFJlY29yZDxzdHJpbmcsIEFycmF5PHtpZDogQ29tcGFuaWVzRW51bSwgbmFtZTogc3RyaW5nLCBjaGVja2VkPzogYm9vbGVhbn0+PiA9IHtcbiAgICBhY3RpdmU6IFtdLFxuICAgIGluYWN0aXZlOiBbXVxuICB9XG4gIENvbXBhbmllc0VudW0gPSBDb21wYW5pZXNFbnVtXG4gIGFjY2Vzc1RvTmV3T3JnYW5pemF0aW9uID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50XG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kZXRlY3RBY3RpdmVQYWdlKCk7XG4gICAgdGhpcy5kZXRlY3RBY3RpdmVBbmRJbmFjdGl2ZUFwcHMoKTtcbiAgICB0aGlzLmlzQ29sbGFwc2VkID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ1NpZGViYXJDb2xsYXBzZWQnKSA9PT0gJ3RydWUnIHx8IGZhbHNlO1xuICAgIHRoaXMuY29sbGFwc2VFdmVudC5lbWl0KHRoaXMuaXNDb2xsYXBzZWQpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5nZXRBbGxDb21wYW5pZXMoKTtcbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgdGhpcy5kZXRlY3RBY3RpdmVQYWdlKClcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9wZW5NYWluKCk6IHZvaWQge1xuICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5wbGF0Zm9ybSA9PT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04gPyAnL2F1dGgvb3JnYW5pemF0aW9uLycgOiAnLyc7XG4gIH1cblxuICBvcGVuUGxhdGZvcm0oc3lzdGVtOiBDb21wYW5pZXNFbnVtKTogdm9pZCB7XG4gICAgaWYgKHN5c3RlbSA9PT0gdGhpcy5wbGF0Zm9ybSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCB1cmw7XG4gICAgaWYgKHN5c3RlbSA9PT0gQ29tcGFuaWVzRW51bS5UMykge1xuICAgICAgdXJsID0gdGhpcy5lbnYudDNcbiAgICB9IGVsc2UgaWYgKHN5c3RlbSA9PT0gQ29tcGFuaWVzRW51bS5CUk9LRVJBR0UpIHtcbiAgICAgIHVybCA9IHRoaXMuZW52LmJyb2tlcmFnZVxuICAgIH0gZWxzZSBpZiAoc3lzdGVtID09PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTikge1xuICAgICAgdXJsID0gdGhpcy5lbnYub3JnYW5pemF0aW9uVXJsICsgJy9hdXRoL29yZ2FuaXphdGlvbidcbiAgICB9XG5cbiAgICBpZiAodXJsKSB7XG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcbiAgICB9XG4gIH1cblxuICBhY2NvdW50SW5mb3JtYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXV0aC9hY2NvdW50LWluZm9ybWF0aW9uJ10pXG4gIH1cblxuICBkZXRlY3RBY3RpdmVBbmRJbmFjdGl2ZUFwcHMoKTogdm9pZCB7XG4gICAgY29uc3QgYWxsU3lzdGVtcyA9IFt7XG4gICAgICBpZDogQ29tcGFuaWVzRW51bS5UMyxcbiAgICAgIG5hbWU6ICdUMyBUTVMnXG4gICAgfSwge1xuICAgICAgaWQ6IENvbXBhbmllc0VudW0uQlJPS0VSQUdFLFxuICAgICAgbmFtZTogJ1QzIExvYWRib2FyZCdcbiAgICB9XG4gICAgXTtcblxuICAgIHRoaXMuYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXMgPSB7XG4gICAgICBhY3RpdmU6IFtdLFxuICAgICAgaW5hY3RpdmU6IFtdXG4gICAgfVxuXG4gICAgYWxsU3lzdGVtcy5mb3JFYWNoKChzeXN0ZW06IHtpZDogQ29tcGFuaWVzRW51bSwgbmFtZTogc3RyaW5nLCBjaGVja2VkPzogYm9vbGVhbn0pID0+IHtcbiAgICAgIGlmICh0aGlzLnBsYXRmb3JtID09PSBzeXN0ZW0uaWQpIHtcbiAgICAgICAgc3lzdGVtLmNoZWNrZWQgPSB0cnVlXG4gICAgICB9XG4gICAgICBpZiAodGhpcy51c2VyRGF0YS5zeXN0ZW1Sb2xlcz8uZmluZCgocm9sZTogU3lzdGVtUm9sZUludGVyZmFjZSkgPT4gcm9sZS5zeXN0ZW0gPT09IHN5c3RlbS5pZCkpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVBbmRJbmFjdGl2ZVBsYXRmb3Jtc1snYWN0aXZlJ10ucHVzaChzeXN0ZW0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydpbmFjdGl2ZSddLnB1c2goc3lzdGVtKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICB0aGlzLmFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydhY3RpdmUnXS5wdXNoKHtcbiAgICAgIG5hbWU6ICdUMyBBZG1pbicsXG4gICAgICBpZDogQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04sXG4gICAgICBjaGVja2VkOiB0aGlzLnBsYXRmb3JtID09PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTlxuICAgIH0pXG4gIH1cblxuICBzd2l0Y2hPcmdhbml6YXRpb24oY29tcGFueTogT3JnYW5pemF0aW9uSW50ZXJmYWNlKTogdm9pZCB7XG4gICAgaWYgKGNvbXBhbnkuaWQgPT09IHRoaXMuY3VycmVudENvbXBhbnkuaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5odHRwLnBvc3Q8QXV0aEludGVyZmFjZT4oXG4gICAgICB0aGlzLmVudi5kYXRhRW5kcG9pbnQgKyAodGhpcy5wbGF0Zm9ybSAhPT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04gPyAnL2lkJyA6ICcnKSArIGAvYXV0aC9jb21wYW5pZXMvJHtjb21wYW55LmlkfS9sb2dpbmAsIHt9XG4gICAgKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBBdXRoSW50ZXJmYWNlKSA9PiB7XG4gICAgICB0aGlzLm5ld0F1dGhlbnRpY2F0ZWRSZXNwb25zZUV2ZW50LmVtaXQocmVzcG9uc2UpXG4gICAgfSlcbiAgfVxuXG4gIGdldEFsbENvbXBhbmllcygpOiB2b2lkIHtcbiAgICB0aGlzLmh0dHAuZ2V0PEFycmF5PE9yZ2FuaXphdGlvbkludGVyZmFjZT4+KFxuICAgICAgdGhpcy5lbnYuZGF0YUVuZHBvaW50ICsgKHRoaXMucGxhdGZvcm0gIT09IENvbXBhbmllc0VudW0uT1JHQU5JWkFUSU9OID8gJy9pZCcgOiAnJykgKyAnL2NvbXBhbmllcy9hbGwnXG4gICAgKS5zdWJzY3JpYmUoKGNvbXBhbmllczogQXJyYXk8T3JnYW5pemF0aW9uSW50ZXJmYWNlPikgPT4ge1xuICAgICAgY29uc3QgY3VycmVudENvbXBhbnkgPSBjb21wYW5pZXMuZmluZCgoY29tcGFueTogT3JnYW5pemF0aW9uSW50ZXJmYWNlKSA9PiBjb21wYW55LmlkID09PSB0aGlzLnVzZXJEYXRhLmNvbXBhbnlJZClcbiAgICAgIGlmIChjdXJyZW50Q29tcGFueSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRDb21wYW55ID0gY3VycmVudENvbXBhbnk7XG4gICAgICB9XG4gICAgICB0aGlzLmFsbE9yZ2FuaXphdGlvbnMgPSBjb21wYW5pZXM7XG4gICAgICBpZiAodGhpcy5wbGF0Zm9ybSA9PT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04pIHtcbiAgICAgICAgdGhpcy5hY2Nlc3NUb05ld09yZ2FuaXphdGlvbiA9IHRoaXMuYWNjZXNzVG9BZGROZXcoKTtcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgLy8gT25seSBmb3Igb3JnYW5pemF0aW9uXG4gIGFjY2Vzc1RvQWRkTmV3KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhKHRoaXMuYWxsT3JnYW5pemF0aW9ucy5maW5kKChjb21wYW55OiBPcmdhbml6YXRpb25JbnRlcmZhY2UpID0+IGNvbXBhbnkuaXNNeUNvbXBhbnkpKVxuICB9XG5cbiAgYWRkTmV3T3JnYW5pemF0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnYXV0aC9vcmdhbml6YXRpb24vYWRkJ10pXG4gIH1cbiAgLy8gRW5kIE9mIE9ubHkgZm9yIG9yZ2FuaXphdGlvblxuXG4gIG5hdmlnYXRlQmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy8nXSk7XG4gIH1cblxuICBkZXRlY3RBY3RpdmVQYWdlKCk6IHZvaWQge1xuICAgIGNvbnN0IHBhZ2UgPSB0aGlzLnJvdXRlci51cmwucmVwbGFjZSgnLycsICcnKTtcbiAgICBsZXQgbGluayA9IHRoaXMubmF2aWdhdGlvbkxpbmtzLmZpbmQoKGxpbms6IE5hdmlnYXRpb25MaW5rcykgPT4gcGFnZSA9PT0gbGluay5saW5rVG8pO1xuXG4gICAgaWYgKCFsaW5rKSB7XG4gICAgICBjb25zdCBwYWdlID0gdGhpcy5yb3V0ZXIudXJsO1xuICAgICAgbGluayA9IHRoaXMubmF2aWdhdGlvbkxpbmtzLmZpbmQoKGxpbms6IE5hdmlnYXRpb25MaW5rcykgPT4gcGFnZS5pbmNsdWRlcyhsaW5rLmxpbmtUbykpO1xuICAgIH1cblxuICAgIGlmIChsaW5rKSB7XG4gICAgICBpZiAobGluay5zdWJQYWdlcykge1xuICAgICAgICB0aGlzLnNlY29uZExheWVyT3BlbmVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zZWNvbmRMYXllckxpbmtzID0gbGluay5zdWJQYWdlcztcblxuICAgICAgICBjb25zdCBzdWJMaW5rID0gbGluay5zdWJQYWdlcy5maW5kKChsaW5rOiBOYXZpZ2F0aW9uTGlua3MpID0+IHBhZ2UgPT09IGxpbmsubGlua1RvKTtcbiAgICAgICAgaWYgKHN1YkxpbmspIHtcbiAgICAgICAgICB0aGlzLnNlY29uZExheWVyQWN0aXZlUGFnZSA9IHN1YkxpbmsucGFnZUVudW07XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2Vjb25kTGF5ZXJPcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZWNvbmRMYXllckxpbmtzID0gW107XG4gICAgICAgIHRoaXMuc2Vjb25kTGF5ZXJBY3RpdmVQYWdlID0gJyc7XG4gICAgICB9XG4gICAgICB0aGlzLmFjdGl2ZVBhZ2UgPSBsaW5rLnBhZ2VFbnVtO1xuICAgIH1cbiAgfVxuXG4gIG5hdmlnYXRlKGxpbms6IE5hdmlnYXRpb25MaW5rcyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2UgPT09IGxpbmsubGlua1RvKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2xpbmsubGlua1RvXSlcbiAgfVxuXG4gIGNoYW5nZUNvbGxhcHNlKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pc0NvbGxhcHNlZCA9IHZhbHVlO1xuICAgIHRoaXMuY29sbGFwc2VFdmVudC5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhY3lQb2xpY3lPclRlcm1zQ29uZGl0aW9uKHByaXZhY3kgPSBmYWxzZSk6IHZvaWQge1xuICAgIGlmIChwcml2YWN5KSB7XG4gICAgICB3aW5kb3cub3Blbih0aGlzLmVudi5tYWluRG9tYWluICsgJy9wcml2YWN5LXBvbGljeScsICdfYmxhbmsnKVxuICAgIH0gZWxzZSB7XG4gICAgICB3aW5kb3cub3Blbih0aGlzLmVudi5tYWluRG9tYWluICsgJy90ZXJtcy1hbmQtY29uZGl0aW9ucycsICdfYmxhbmsnKVxuICAgIH1cbiAgfVxuXG4gIHNpZ25PdXQoKTogdm9pZCB7XG4gICAgdGhpcy5zaWduT3V0RXZlbnQuZW1pdCgpXG4gIH1cblxuICBvcGVuWmVuZGVza1BhZ2Uoc3VwcG9ydCA9IGZhbHNlKTogdm9pZCB7XG4gICAgdGhpcy5odHRwLmdldDx7YWNjZXNzVG9rZW46IHN0cmluZ30+KHRoaXMuZW52LmRhdGFFbmRwb2ludCArICh0aGlzLnBsYXRmb3JtICE9PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTiA/ICcvaWQnIDogJycpICsgYC9hdXRoL3plbmRlc2tgKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiB7YWNjZXNzVG9rZW46IHN0cmluZ30pID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0VXJsID0gYCR7dGhpcy5lbnYuemVuZGVza1VybH0vaGMvZW4tdXNgICsgKHN1cHBvcnQgPyAnL3JlcXVlc3RzL25ldycgOiAnJyk7XG4gICAgICAgIGNvbnN0IHplbmRlc2tVcmwgPSBgJHt0aGlzLmVudi56ZW5kZXNrVXJsfS9hY2Nlc3Mvand0P2p3dD0ke3Jlcy5hY2Nlc3NUb2tlbn0mcmV0dXJuX3RvPSR7dGFyZ2V0VXJsfWA7XG4gICAgICAgIHdpbmRvdy5vcGVuKHplbmRlc2tVcmwpO1xuICAgICAgfSlcbiAgfVxuXG4gIG1hbmFnZUFjY291bnQoKTogdm9pZCB7XG4gICAgd2luZG93Lm9wZW4odGhpcy5lbnYub3JnYW5pemF0aW9uVXJsICsgJy9hdXRoL2FjY291bnQtaW5mb3JtYXRpb24nLCAnX2JsYW5rJylcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyXCJcbiAgICAgKm5nSWY9XCJuYXZpZ2F0aW9uTGlua3MgJiYgdXNlckRhdGFcIlxuICAgICBbY2xhc3MuY29sbGFwc2VkXT1cImlzQ29sbGFwc2VkXCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1oZWFkZXJcIj5cbiAgICAgIDxhIFtocmVmXT1cInBsYXRmb3JtID09PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTiA/ICcvYXV0aC9vcmdhbml6YXRpb24nIDogJy8nXCI+XG4gICAgICAgIDxpbWcgY2xhc3M9XCJsb2dvIHBvaW50ZXJcIiBhbHQ9XCJcIlxuICAgICAgICAgICAgICpuZ0lmPVwiaXNDb2xsYXBzZWRcIlxuICAgICAgICAgICAgIFtzcmNdPVwiJy9hc3NldHMvbG9nb3Mvc21hbGwvJyArIHBsYXRmb3JtICsgJy5zdmcnXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwib3Blbk1haW4oKVwiXG4gICAgICAgID5cblxuICAgICAgICA8aW1nIGNsYXNzPVwibG9nbyBwb2ludGVyXCIgYWx0PVwiXCJcbiAgICAgICAgICAgICAqbmdJZj1cIiFpc0NvbGxhcHNlZFwiXG4gICAgICAgICAgICAgW3NyY109XCInL2Fzc2V0cy9sb2dvcy9mdWxsLycgKyBwbGF0Zm9ybSArICcuc3ZnJ1wiXG4gICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5NYWluKClcIlxuICAgICAgICA+XG4gICAgICA8L2E+XG4gICAgICAgIDxpbWcgc3JjPVwiL2Fzc2V0cy9hcHBzLnBuZ1wiIGFsdD1cIlwiIGNsYXNzPVwicG9pbnRlclwiICpuZ0lmPVwiIWlzQ29sbGFwc2VkXCJcbiAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWF0TWVudVwiXG4gICAgICAgID5cblxuICAgICAgICA8bWF0LW1lbnUgI21hdE1lbnU9XCJtYXRNZW51XCIgY2xhc3M9XCJzaWRlYmFyX3BsYXRmb3Jtc19tZW51XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXNbJ2FjdGl2ZSddLmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudV90aXRsZVwiPlxuICAgICAgICAgICAgICAgIEFjdGl2ZSBBcHBzXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIiAqbmdGb3I9XCJsZXQgYXBwIG9mIGFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydhY3RpdmUnXVwiXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5QbGF0Zm9ybShhcHAuaWQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpbWcgYWx0PVwiXCIgY2xhc3M9XCJsb2dvXCIgW3NyY109XCInL2Fzc2V0cy9sb2dvcy9zbWFsbC8nICsgYXBwLmlkICsgJy5zdmcnXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3thcHAubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxpbWcgYWx0PVwiXCIgY2xhc3M9XCJtbC1hdXRvXCIgc3JjPVwiL2Fzc2V0cy9zZWxlY3RlZF9vcmdhbml6YXRpb24uc3ZnXCJcbiAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYXBwLmNoZWNrZWRcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIlxuICAgICAgICAgICAgICAgICAqbmdJZj1cImFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydhY3RpdmUnXS5sZW5ndGggJiYgYWN0aXZlQW5kSW5hY3RpdmVQbGF0Zm9ybXNbJ2luYWN0aXZlJ10ubGVuZ3RoXCJcbiAgICAgICAgICAgID48L2Rpdj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydpbmFjdGl2ZSddLmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudV90aXRsZVwiPlxuICAgICAgICAgICAgICAgIEluYWN0aXZlIEFwcHNcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIiAqbmdGb3I9XCJsZXQgYXBwIG9mIGFjdGl2ZUFuZEluYWN0aXZlUGxhdGZvcm1zWydpbmFjdGl2ZSddXCI+XG4gICAgICAgICAgICAgICAgPGltZyBhbHQ9XCJcIiBjbGFzcz1cImxvZ29cIiBbc3JjXT1cIicvYXNzZXRzL2xvZ29zL3NtYWxsLycgKyBhcHAuaWQgKyAnLnN2ZydcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57e2FwcC5uYW1lfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPC9tYXQtbWVudT5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJtYWluX3NpZGViYXItLWNvbnRlbnRcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlY29uZExheWVyTGlua3MubGVuZ3RoXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1jb250ZW50LS10b29sYmFyXCJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5hdmlnYXRlQmFjaygpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW1nIGFsdD1cIlwiIHNyYz1cIi9hc3NldHMvYmFjay5zdmdcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj5CYWNrPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1jb250ZW50LS1zdWJfdGl0bGVcIj5cbiAgICAgICAgICAgICAgICBTZXR0aW5nc1xuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGxpbmsgb2YgKHNlY29uZExheWVyTGlua3MubGVuZ3RoID8gc2Vjb25kTGF5ZXJMaW5rcyA6IG5hdmlnYXRpb25MaW5rcylcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCIgKm5nSWY9XCJsaW5rLmhhc0RpdmlkZXJcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluX3NpZGViYXItLWNvbnRlbnQtLWxpbmsgcG9pbnRlclwiXG4gICAgICAgICAgICAgICAgICAgbWF0UmlwcGxlXG4gICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJsaW5rLnBhZ2VFbnVtID09PSBhY3RpdmVQYWdlIHx8IGxpbmsucGFnZUVudW0gPT09IHNlY29uZExheWVyQWN0aXZlUGFnZVwiXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5hdmlnYXRlKGxpbmspXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFyZW50X2ljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImljb25cIiBhbHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiJy9hc3NldHMvbGlua3MvJyArIHBsYXRmb3JtICsgJy8nICsgbGluay5pbWFnZSArICcuc3ZnJ1wiPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lXCI+e3tsaW5rLnRpdGxlIHwgdHJhbnNsYXRlfX08L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuZXdcIiAqbmdJZj1cImxpbmsuaXNOZXdcIj5OZXc8L2Rpdj5cblxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1mb290ZXJcIiAqbmdJZj1cInVzZXJEYXRhXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYWluX3NpZGViYXItLWZvb3Rlci0tdG9nZ2xlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGltZyBjbGFzcz1cInBvaW50ZXJcIiBhbHQ9XCJcIlxuICAgICAgICAgICAgICAgICAqbmdJZj1cIiFpc0NvbGxhcHNlZFwiXG4gICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJDb2xsYXBzZSBTaWRlYmFyXCJcbiAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBQb3NpdGlvbl09XCInYWJvdmUnXCJcbiAgICAgICAgICAgICAgICAgc3JjPVwiL2Fzc2V0cy90b2dnbGUtc3RhdGUtbGVmdC5zdmdcIlxuICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlQ29sbGFwc2UodHJ1ZSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPGltZyBjbGFzcz1cInBvaW50ZXJcIiBhbHQ9XCJcIlxuICAgICAgICAgICAgICAgICAqbmdJZj1cImlzQ29sbGFwc2VkXCJcbiAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkV4cGFuZCBTaWRlYmFyXCJcbiAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBQb3NpdGlvbl09XCInYWJvdmUnXCJcbiAgICAgICAgICAgICAgICAgc3JjPVwiL2Fzc2V0cy90b2dnbGUtc3RhdGUtcmlnaHQuc3ZnXCJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZUNvbGxhcHNlKGZhbHNlKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbl9zaWRlYmFyLS1mb290ZXItLXByb2ZpbGVcIj5cbiAgICAgICAgICAgIDxpLXRlY2gtY29tcGFueS1pbWFnZVxuICAgICAgICAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWF0TWVudVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb2xsYXBzZWRdPVwiaXNDb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgICAgICBbdXNlckRhdGFdPVwidXNlckRhdGFcIlxuICAgICAgICAgICAgICAgICAgICBbcGxhdGZvcm1dPVwicGxhdGZvcm1cIlxuICAgICAgICAgICAgICAgICAgICBbY3VycmVudENvbXBhbnldPVwiY3VycmVudENvbXBhbnlcIlxuICAgICAgICAgICAgPjwvaS10ZWNoLWNvbXBhbnktaW1hZ2U+XG4gICAgICAgICAgICA8bWF0LW1lbnUgI21hdE1lbnU9XCJtYXRNZW51XCIgY2xhc3M9XCJzaWRlYmFyX2JvdHRvbV9tZW51XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvcF9iYXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltYWdlXCIgYWx0PVwiXCIgW3NyY109XCJ1c2VyRGF0YS5pbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ1c2VyRGF0YS5pbWFnZTsgZWxzZSBOb0ltYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI05vSW1hZ2U+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2Ugbm9faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3VzZXJEYXRhLmZpcnN0TmFtZSB8IHNsaWNlOiAwIDogMSB8IHVwcGVyY2FzZX19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImluZm9ybWF0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7dXNlckRhdGEuZmlyc3ROYW1lfX0ge3t1c2VyRGF0YS5sYXN0TmFtZX19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZW1haWxcIj57e3VzZXJEYXRhLmVtYWlsfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBtYXQtbWVudS1pdGVtICpuZ0lmPVwicGxhdGZvcm0gIT09IENvbXBhbmllc0VudW0uT1JHQU5JWkFUSU9OXCIgY2xhc3M9XCJtdC00IHN0YW5kYXJkX21lbnVfaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwibWFuYWdlQWNjb3VudCgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICBBY2NvdW50IEluZm9ybWF0aW9uXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgbWF0LW1lbnUtaXRlbSAqbmdJZj1cInBsYXRmb3JtID09PSBDb21wYW5pZXNFbnVtLk9SR0FOSVpBVElPTlwiIGNsYXNzPVwibXQtNCBzdGFuZGFyZF9tZW51X2l0ZW1cIlxuICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhY2NvdW50SW5mb3JtYXRpb24oKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBBY2NvdW50IEluZm9ybWF0aW9uXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gKm5nSWY9XCJwbGF0Zm9ybSA9PT0gQ29tcGFuaWVzRW51bS5PUkdBTklaQVRJT04gJiYgYWNjZXNzVG9OZXdPcmdhbml6YXRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFkZE5ld09yZ2FuaXphdGlvbigpXCI+XG4gICAgICAgICAgICAgICAgICBBZGQgbmV3IG9yZ2FuaXphdGlvblxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFsbE9yZ2FuaXphdGlvbnMubGVuZ3RoID4gMVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiID48L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3dpdGNoXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3dpdGNoX3RpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU3dpdGNoIE9yZ2FuaXphdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJtYXRfbWVudV9vcmdhbml6YXRpb25cIiAoY2xpY2spPVwic3dpdGNoT3JnYW5pemF0aW9uKG9yZ2FuaXphdGlvbilcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgb3JnYW5pemF0aW9uIG9mIGFsbE9yZ2FuaXphdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcmdhbml6YXRpb25faXRlbV9pbl9tZW51XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgYWx0PVwiXCIgY2xhc3M9XCJpbWFnZVwiIFtzcmNdPVwib3JnYW5pemF0aW9uLmltYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm9yZ2FuaXphdGlvbi5pbWFnZTsgZWxzZSBOb0ltYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI05vSW1hZ2U+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2Ugbm9faW1hZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e29yZ2FuaXphdGlvbi5uYW1lIHwgc2xpY2U6IDAgOiAxIHwgdXBwZXJjYXNlfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57e29yZ2FuaXphdGlvbi5uYW1lfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBhbHQ9XCJcIiAqbmdJZj1cIm9yZ2FuaXphdGlvbi5pZCA9PT0gY3VycmVudENvbXBhbnkuaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpc1NlbGVjdGVkXCIgc3JjPVwiL2Fzc2V0cy9zZWxlY3RlZF9vcmdhbml6YXRpb24uc3ZnXCIgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIiAoY2xpY2spPVwib3BlblplbmRlc2tQYWdlKClcIj5cbiAgICAgICAgICAgICAgICAgICAgU3VwcG9ydCBDZW50ZXJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJzdGFuZGFyZF9tZW51X2l0ZW1cIiAoY2xpY2spPVwicHJpdmFjeVBvbGljeU9yVGVybXNDb25kaXRpb24oKVwiPlxuICAgICAgICAgICAgICAgICAgICBUZXJtcyBBbmQgQ29uZGl0aW9uc1xuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgbWF0LW1lbnUtaXRlbSBjbGFzcz1cInN0YW5kYXJkX21lbnVfaXRlbVwiIChjbGljayk9XCJwcml2YWN5UG9saWN5T3JUZXJtc0NvbmRpdGlvbih0cnVlKVwiPlxuICAgICAgICAgICAgICAgICAgICBQcml2YWN5IFBvbGljeVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIj48L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxkaXYgbWF0LW1lbnUtaXRlbSBjbGFzcz1cInN0YW5kYXJkX21lbnVfaXRlbVwiIChjbGljayk9XCJzaWduT3V0KClcIj5cbiAgICAgICAgICAgICAgICAgICAgU2lnbiBvdXRcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LW1lbnU+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1722,7 +1722,7 @@ class NewSidebarComponent {
1722
1722
  name: 'T3 TMS'
1723
1723
  }, {
1724
1724
  id: CompaniesEnum.BROKERAGE,
1725
- name: 'T3 Brokerage'
1725
+ name: 'T3 Loadboard'
1726
1726
  }
1727
1727
  ];
1728
1728
  this.activeAndInactivePlatforms = {
@@ -1834,13 +1834,13 @@ class NewSidebarComponent {
1834
1834
  window.open(this.env.organizationUrl + '/auth/account-information', '_blank');
1835
1835
  }
1836
1836
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NewSidebarComponent, deps: [{ token: i1$3.Router }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
1837
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NewSidebarComponent, isStandalone: true, selector: "i-tech-sidebar", inputs: { platform: "platform", navigationLinks: "navigationLinks", env: "env", userData: "userData" }, outputs: { collapseEvent: "collapseEvent", signOutEvent: "signOutEvent", newAuthenticatedResponseEvent: "newAuthenticatedResponseEvent" }, host: { listeners: { "window:beforeunload": "canDeactivate()" } }, ngImport: i0, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Admin\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: CompanyImageComponent, selector: "i-tech-company-image", inputs: ["collapsed", "userData", "currentCompany", "platform"] }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
1837
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NewSidebarComponent, isStandalone: true, selector: "i-tech-sidebar", inputs: { platform: "platform", navigationLinks: "navigationLinks", env: "env", userData: "userData" }, outputs: { collapseEvent: "collapseEvent", signOutEvent: "signOutEvent", newAuthenticatedResponseEvent: "newAuthenticatedResponseEvent" }, host: { listeners: { "window:beforeunload": "canDeactivate()" } }, ngImport: i0, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Settings\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: CompanyImageComponent, selector: "i-tech-company-image", inputs: ["collapsed", "userData", "currentCompany", "platform"] }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
1838
1838
  }
1839
1839
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NewSidebarComponent, decorators: [{
1840
1840
  type: Component,
1841
1841
  args: [{ selector: 'i-tech-sidebar', imports: [NgIf, NgFor, TranslateModule, MatMenu, MatMenuModule, CompanyImageComponent, UpperCasePipe, SlicePipe,
1842
1842
  MatRippleModule, MatTooltipModule
1843
- ], standalone: true, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/full/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Admin\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"] }]
1843
+ ], standalone: true, template: "<div class=\"main_sidebar\"\n *ngIf=\"navigationLinks && userData\"\n [class.collapsed]=\"isCollapsed\"\n>\n <div class=\"main_sidebar--header\">\n <a [href]=\"platform === CompaniesEnum.ORGANIZATION ? '/auth/organization' : '/'\">\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n [src]=\"'/assets/logos/small/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n\n <img class=\"logo pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n [src]=\"'/assets/logos/full/' + platform + '.svg'\"\n (click)=\"openMain()\"\n >\n </a>\n <img src=\"/assets/apps.png\" alt=\"\" class=\"pointer\" *ngIf=\"!isCollapsed\"\n [matMenuTriggerFor]=\"matMenu\"\n >\n\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_platforms_menu\">\n <ng-container *ngIf=\"activeAndInactivePlatforms['active'].length\">\n <div class=\"menu_title\">\n Active Apps\n </div>\n <div mat-menu-item class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['active']\"\n (click)=\"openPlatform(app.id)\"\n >\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n <img alt=\"\" class=\"ml-auto\" src=\"/assets/selected_organization.svg\"\n *ngIf=\"app.checked\"\n >\n </div>\n </ng-container>\n\n <div class=\"divider\"\n *ngIf=\"activeAndInactivePlatforms['active'].length && activeAndInactivePlatforms['inactive'].length\"\n ></div>\n\n <ng-container *ngIf=\"activeAndInactivePlatforms['inactive'].length\">\n <div class=\"menu_title\">\n Inactive Apps\n </div>\n <div class=\"standard_menu_item\" *ngFor=\"let app of activeAndInactivePlatforms['inactive']\">\n <img alt=\"\" class=\"logo\" [src]=\"'/assets/logos/small/' + app.id + '.svg'\">\n <span>{{app.name}}</span>\n </div>\n </ng-container>\n\n </mat-menu>\n </div>\n\n <div class=\"main_sidebar--content\">\n <ng-container *ngIf=\"secondLayerLinks.length\">\n <div class=\"main_sidebar--content--toolbar\"\n (click)=\"navigateBack()\"\n >\n <img alt=\"\" src=\"/assets/back.svg\">\n <span>Back</span>\n </div>\n <div class=\"main_sidebar--content--sub_title\">\n Settings\n </div>\n </ng-container>\n\n <ng-container *ngFor=\"let link of (secondLayerLinks.length ? secondLayerLinks : navigationLinks)\">\n <div class=\"divider\" *ngIf=\"link.hasDivider\"></div>\n <div class=\"main_sidebar--content--link pointer\"\n matRipple\n [class.active]=\"link.pageEnum === activePage || link.pageEnum === secondLayerActivePage\"\n (click)=\"navigate(link)\"\n >\n <div class=\"parent_icon\">\n <img class=\"icon\" alt=\"\"\n [src]=\"'/assets/links/' + platform + '/' + link.image + '.svg'\">\n </div>\n <div class=\"name\">{{link.title | translate}}</div>\n\n <div class=\"new\" *ngIf=\"link.isNew\">New</div>\n\n </div>\n </ng-container>\n\n </div>\n\n <div class=\"main_sidebar--footer\" *ngIf=\"userData\">\n <div class=\"main_sidebar--footer--toggle\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"!isCollapsed\"\n matTooltip=\"Collapse Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-left.svg\"\n (click)=\"changeCollapse(true)\"\n >\n <img class=\"pointer\" alt=\"\"\n *ngIf=\"isCollapsed\"\n matTooltip=\"Expand Sidebar\"\n [matTooltipPosition]=\"'above'\"\n src=\"/assets/toggle-state-right.svg\"\n (click)=\"changeCollapse(false)\"\n >\n </div>\n <div class=\"main_sidebar--footer--profile\">\n <i-tech-company-image\n [matMenuTriggerFor]=\"matMenu\"\n [collapsed]=\"isCollapsed\"\n [userData]=\"userData\"\n [platform]=\"platform\"\n [currentCompany]=\"currentCompany\"\n ></i-tech-company-image>\n <mat-menu #matMenu=\"matMenu\" class=\"sidebar_bottom_menu\">\n <div class=\"top_bar\">\n <img class=\"image\" alt=\"\" [src]=\"userData.image\"\n *ngIf=\"userData.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{userData.firstName | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <div class=\"information\">\n <div class=\"name\">{{userData.firstName}} {{userData.lastName}}</div>\n <div class=\"email\">{{userData.email}}</div>\n </div>\n </div>\n <div mat-menu-item *ngIf=\"platform !== CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"manageAccount()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION\" class=\"mt-4 standard_menu_item\"\n (click)=\"accountInformation()\"\n >\n Account Information\n </div>\n <div mat-menu-item *ngIf=\"platform === CompaniesEnum.ORGANIZATION && accessToNewOrganization\"\n class=\"standard_menu_item\"\n (click)=\"addNewOrganization()\">\n Add new organization\n </div>\n\n <ng-container *ngIf=\"allOrganizations.length > 1\">\n <div class=\"divider\" ></div>\n\n <div class=\"switch\">\n <div class=\"switch_title\">\n Switch Organization\n </div>\n <div mat-menu-item class=\"mat_menu_organization\" (click)=\"switchOrganization(organization)\"\n *ngFor=\"let organization of allOrganizations\"\n >\n <div class=\"organization_item_in_menu\">\n <img alt=\"\" class=\"image\" [src]=\"organization.image\"\n *ngIf=\"organization.image; else NoImage\"\n >\n <ng-template #NoImage>\n <div class=\"image no_image\">\n {{organization.name | slice: 0 : 1 | uppercase}}\n </div>\n </ng-template>\n <span>{{organization.name}}</span>\n </div>\n <img alt=\"\" *ngIf=\"organization.id === currentCompany.id\"\n class=\"isSelected\" src=\"/assets/selected_organization.svg\" >\n </div>\n </div>\n </ng-container>\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"openZendeskPage()\">\n Support Center\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition()\">\n Terms And Conditions\n </div>\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"privacyPolicyOrTermsCondition(true)\">\n Privacy Policy\n </div>\n\n <div class=\"divider\"></div>\n\n <div mat-menu-item class=\"standard_menu_item\" (click)=\"signOut()\">\n Sign out\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n", styles: [".main_sidebar{box-shadow:3px 0 #d7d9de33;border-right:1px solid #D7D9DE;height:100vh;width:190px;position:relative;background-color:#fff;z-index:100}.main_sidebar.collapsed{width:80px}.main_sidebar.collapsed .main_sidebar--content--sub_title{font-size:13px;line-height:20px;padding:4px 16px 0}.main_sidebar.collapsed .main_sidebar--content--toolbar{padding:unset;justify-content:center;margin-top:16px}.main_sidebar.collapsed .main_sidebar--content--toolbar span{display:none}.main_sidebar.collapsed .main_sidebar--header{padding:6px 21.5px}.main_sidebar.collapsed .main_sidebar--content--link{padding:0 0 4px;flex-direction:column;margin-top:12px}.main_sidebar.collapsed .main_sidebar--content--link .divider{display:none}.main_sidebar.collapsed .main_sidebar--content--link .new{right:0!important;top:14px!important}.main_sidebar.collapsed .main_sidebar--content--link .parent_icon{width:56px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100px}.main_sidebar.collapsed .main_sidebar--content--link .name{font-size:11px;margin-left:unset;font-weight:500;text-align:center;line-height:16px}.main_sidebar.collapsed .main_sidebar--content--link.active,.main_sidebar.collapsed .main_sidebar--content--link:hover{background-color:unset}.main_sidebar.collapsed .main_sidebar--content--link.active .parent_icon,.main_sidebar.collapsed .main_sidebar--content--link:hover .parent_icon{background-color:#00ac4829}.main_sidebar.collapsed .main_sidebar--content--link.active .name{font-weight:600}.main_sidebar.collapsed::ng-deep .information .names{display:none}.main_sidebar .pointer{cursor:pointer}.main_sidebar--header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px 16px 16px}.main_sidebar--header a{height:40px}.main_sidebar--content{height:calc(100% - 210px);overflow-y:auto;overflow-x:hidden}.main_sidebar--content .divider{border-bottom:1px solid #D7D9DE;margin:8px auto;width:calc(100% - 32px)}.main_sidebar--content--sub_title{margin-top:4px;padding:4px 16px;font-weight:700;font-size:16px;line-height:24px;letter-spacing:.1px}.main_sidebar--content--toolbar{cursor:pointer;padding-left:16px;display:flex;align-items:center}.main_sidebar--content--toolbar span{font-weight:700;font-size:13px;line-height:20px;letter-spacing:.1px;color:#647081;margin-left:4px}.main_sidebar--content--link{display:flex;align-items:center;padding:16px 10px 16px 16px;position:relative}.main_sidebar--content--link .name{font-weight:500;font-size:13px;line-height:20px;letter-spacing:.1px;margin-left:12px;color:#424954}.main_sidebar--content--link .parent_icon{width:24px;height:24px}.main_sidebar--content--link .new{position:absolute;border-radius:8px;color:#1f4085;padding:4px;font-weight:700;font-size:11px;line-height:12px;background-color:#dde7fc;right:24px;top:18px}.main_sidebar--content--link.active,.main_sidebar--content--link:hover{background-color:#effaf1}.main_sidebar--footer{bottom:0;position:absolute;width:100%}.main_sidebar--footer--toggle{width:100%;height:40px;position:relative;background-color:#fff}.main_sidebar--footer--toggle:hover img{filter:invert(27%) sepia(98%) saturate(1690%) hue-rotate(131deg) brightness(89%) contrast(107%)}.main_sidebar--footer--toggle img{position:absolute;margin:0 auto;top:50%;left:50%;transform:translate(-50%,-50%)}.main_sidebar--footer--profile{width:100%;padding:16px 23px 16px 16px;border-top:1px solid #D7D9DE}.divider{border-bottom:1px solid #CAC4D0;margin:8px 0;width:100%}::ng-deep .sidebar_bottom_menu{width:252px}::ng-deep .sidebar_bottom_menu .mt-4{margin-top:4px}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_bottom_menu .switch .switch_title{padding:12px;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;color:#424954}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item.standard_menu_item{padding:10px 12px!important}::ng-deep .sidebar_bottom_menu .mat-mdc-menu-item{color:#424954;font-size:13px;font-weight:500;line-height:20px;letter-spacing:.2px}::ng-deep .sidebar_bottom_menu .top_bar{display:flex;padding:8px 12px 0}::ng-deep .sidebar_bottom_menu .top_bar .information{width:170px}::ng-deep .sidebar_bottom_menu .top_bar .information .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .information .email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:11px;line-height:16px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_bottom_menu .top_bar .image{min-width:40px;width:40px;height:40px;object-fit:cover;border-radius:50%;margin-right:8px}::ng-deep .sidebar_bottom_menu .top_bar .no_image{background-color:#008b33;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;line-height:24px}::ng-deep .sidebar_bottom_menu .mat_menu_organization{padding:8px 12px!important}::ng-deep .sidebar_bottom_menu .mat_menu_organization .mat-mdc-menu-item-text{display:flex;justify-content:space-between;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu{display:flex;align-items:center}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .image{width:24px;height:24px;border-radius:50%;margin-right:12px}::ng-deep .sidebar_bottom_menu .mat_menu_organization .organization_item_in_menu .no_image{color:#006b1e;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;line-height:16px;background-color:#c0e5c7}::ng-deep .sidebar_platforms_menu{width:280px}::ng-deep .sidebar_platforms_menu .mat-mdc-menu-content{padding:8px 0!important}::ng-deep .sidebar_platforms_menu .menu_title{color:#424954;font-weight:700;font-size:12px;line-height:16px;letter-spacing:.1px;padding:12px}::ng-deep .sidebar_platforms_menu .standard_menu_item{padding:8px 12px!important;display:flex;align-items:center}::ng-deep .sidebar_platforms_menu .standard_menu_item .logo{margin-right:14px}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text{display:flex;align-items:center;font-weight:500;font-size:13px;line-height:20px;letter-spacing:.2px;color:#424954}::ng-deep .sidebar_platforms_menu .standard_menu_item .mat-mdc-menu-item-text .logo{margin-right:14px}::ng-deep .main_sidebar .mat-ripple:not(:empty){transform:unset!important}\n"] }]
1844
1844
  }], ctorParameters: () => [{ type: i1$3.Router }, { type: i2.HttpClient }], propDecorators: { canDeactivate: [{
1845
1845
  type: HostListener,
1846
1846
  args: ['window:beforeunload']