@eo-sdk/client 10.0.0 → 10.1.0-rc.1

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.
Files changed (40) hide show
  1. package/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
  2. package/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.d.ts.map +1 -1
  3. package/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.d.ts.map +1 -1
  4. package/app/eo-framework/actions/actions/signature-action/signature/signature.component.d.ts +13 -61
  5. package/app/eo-framework/actions/actions/signature-action/signature/signature.component.d.ts.map +1 -1
  6. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts +5 -0
  7. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts.map +1 -1
  8. package/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.d.ts +3 -7
  9. package/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.d.ts.map +1 -1
  10. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts +2 -0
  11. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts.map +1 -1
  12. package/app/eo-framework/frame/frame.component.d.ts +5 -0
  13. package/app/eo-framework/frame/frame.component.d.ts.map +1 -1
  14. package/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.d.ts.map +1 -1
  15. package/assets/_default/i18n/de.json +3 -0
  16. package/assets/_default/i18n/en.json +3 -0
  17. package/esm2020/app/eo-client/about-state/about-state.component.mjs +3 -3
  18. package/esm2020/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.mjs +4 -4
  19. package/esm2020/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.mjs +16 -12
  20. package/esm2020/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.mjs +16 -13
  21. package/esm2020/app/eo-framework/actions/actions/signature-action/signature/signature.component.mjs +52 -31
  22. package/esm2020/app/eo-framework/app-shell/app-bar/app-bar.component.mjs +14 -3
  23. package/esm2020/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.mjs +6 -20
  24. package/esm2020/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +8 -4
  25. package/esm2020/app/eo-framework/frame/frame.component.mjs +19 -1
  26. package/esm2020/app/eo-framework/object-details/object-details.component.mjs +3 -3
  27. package/esm2020/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +5 -4
  28. package/esm2020/app/eo-framework/ui/signature-tab/signature-tab.component.mjs +3 -3
  29. package/esm2020/projects/eo-sdk/core/lib/service/signing/signing.service.mjs +33 -3
  30. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs +32 -2
  31. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs.map +1 -1
  32. package/fesm2015/eo-sdk-client.mjs +113 -67
  33. package/fesm2015/eo-sdk-client.mjs.map +1 -1
  34. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs +32 -2
  35. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs.map +1 -1
  36. package/fesm2020/eo-sdk-client.mjs +116 -71
  37. package/fesm2020/eo-sdk-client.mjs.map +1 -1
  38. package/package.json +2 -2
  39. package/projects/eo-sdk/core/lib/service/signing/signing.service.d.ts +7 -54
  40. package/projects/eo-sdk/core/lib/service/signing/signing.service.d.ts.map +1 -1
@@ -79,6 +79,15 @@ let AppBarComponent = class AppBarComponent {
79
79
  this.router.navigate(['/']);
80
80
  }
81
81
  }
82
+ getDocumentation() {
83
+ this.userService
84
+ .user$
85
+ .subscribe(data => {
86
+ const docu = this.config.getRaw('about.docu');
87
+ const link = docu.link.replace('###userLang###', data.userSettings.clientlocale.substring(0, 2));
88
+ this.docu = { ...docu, link };
89
+ });
90
+ }
82
91
  updateOnSchemaChange() {
83
92
  this.eventService
84
93
  .on(EnaioEvent.SCHEMA_LOCALE_CHANGED).pipe(untilDestroyed(this))
@@ -105,6 +114,7 @@ let AppBarComponent = class AppBarComponent {
105
114
  prepare: this.translate.instant('eo.bar.button.prepare.tooltip'),
106
115
  index: this.translate.instant('eo.bar.button.inbox.tooltip'),
107
116
  profile: this.translate.instant('eo.bar.button.user.profile.title'),
117
+ about: this.translate.instant('eo.sidebar.help.manual.tooltip')
108
118
  };
109
119
  }
110
120
  sendNotification() {
@@ -149,6 +159,7 @@ let AppBarComponent = class AppBarComponent {
149
159
  ngOnInit() {
150
160
  this.updateOnSchemaChange();
151
161
  this.setIconTitles();
162
+ this.getDocumentation();
152
163
  this.exeActions = this.bpmService.hasMainExecutableProcesses;
153
164
  // this.bpmService
154
165
  // .getExecutableProcesses(null, true)
@@ -159,18 +170,18 @@ let AppBarComponent = class AppBarComponent {
159
170
  }
160
171
  };
161
172
  AppBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AppBarComponent, deps: [{ token: i1.UserService }, { token: i1.CapabilitiesService }, { token: i1.TranslateService }, { token: i1.InboxService }, { token: i1.PrepareService }, { token: i1.ClipboardService }, { token: i0.Renderer2 }, { token: i2.Router }, { token: i1.BpmService }, { token: i1.EventService }, { token: i1.Config }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
162
- AppBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: AppBarComponent, selector: "eo-app-bar", inputs: { transparent: "transparent" }, viewQueries: [{ propertyName: "avatarComponents", predicate: UserAvatarComponent, descendants: true }], ngImport: i0, template: "<eo-side-bar (eoOutsideClick)=\"sidebarShow = !sidebarShow\" *ngIf=\"sidebarShow\">\n <div class=\"navi\">\n <ng-content select=\"eo-sidebar-plugin.navi\"></ng-content>\n </div>\n <div class=\"help\">\n <ng-content select=\"eo-sidebar-plugin.help\"></ng-content>\n </div>\n</eo-side-bar>\n\n<div class=\"eo-app-bar\" [ngClass]=\"{transparent: transparent}\" eoRtlAware>\n\n <div class=\"left\">\n\n <eo-icon id=\"app-menu\" class=\"menu white\" tabindex=\"0\"\n (click)=\"sidebarShow = !sidebarShow\" (keyup.enter)=\"sidebarShow = !sidebarShow\"\n [iconSrc]=\"'assets/_default/svg/ic_hamburger.svg'\"></eo-icon>\n <eo-icon (click)=\"openDashboard($event.ctrlKey)\" (auxclick)=\"openDashboard(true)\" \n (keyup.enter)=\"openDashboard(false)\" tabindex=\"0\"\n class=\"logo white\" [iconSrc]=\"logo\"></eo-icon>\n\n <div class=\"actions\">\n <a [routerLink]=\"[ {outlets: { modal: 'search' } } ]\">\n <eo-icon id=\"app-search\" class=\"search white\" queryParamsHandling=\"preserve\"\n [iconTitle]=\"iconTitles.search\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"></eo-icon>\n </a>\n\n <a [routerLink]=\"[ {outlets: { modal: 'add' } } ]\">\n <eo-icon id=\"app-add\" class=\"add white\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.file\"\n [iconSrc]=\"'assets/_default/svg/ic_add.svg'\"></eo-icon>\n </a> \n <a [routerLink]=\"[ {outlets: { modal: 'actions' } } ]\">\n <eo-icon id=\"app-actions\" class=\"actions white\" *ngIf=\"exeActions\"\n [iconTitle]=\"iconTitles.exeactions\"\n [iconSrc]=\"'assets/_default/svg/ic_bpm_start.svg'\"></eo-icon>\n </a>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"sub\">\n <eo-clipboard></eo-clipboard>\n </div>\n <a routerLink=\"/favorites\">\n <eo-icon class=\"button white favorite\"\n [iconTitle]=\"iconTitles.favorites\" *ngIf=\"capabilities.favorites\"\n [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/prepare\">\n <eo-icon class=\"button white prepare\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.prepare\"\n [badge]=\"preparedItemsCount\" [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/inbox\">\n <eo-icon class=\"button white inbox\" [ngClass]=\"{alert: inboxState?.overduemessages > 0}\" *ngIf=\"capabilities.inbox\"\n [iconTitle]=\"iconTitles.index\"\n [badge]=\"inboxState?.totalmessages\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n </a>\n <eo-overlay #userpanel (onToggle)=\"onToggleProfileOverlay()\">\n <eo-user-avatar class=\"btn\" id=\"app-profile\" [showPresence]=\"true\" [title]=\"iconTitles.profile\" tabindex=\"0\"></eo-user-avatar>\n\n <div class=\"eo-profile\" tabindex=\"-1\">\n <div class=\"avatar\" tabindex=\"-1\">\n <eo-user-avatar tabindex=\"-1\" ></eo-user-avatar>\n <div class=\"overlay\" tabindex=\"-1\">\n <div class=\"name\">{{user.firstname}} {{user.lastname}}</div>\n <div class=\"mail\">{{user.email}}</div>\n <div class=\"presence\" *ngIf=\"!user.present\" translate>eo.state.settings.presence.absent</div>\n </div>\n </div>\n <div class=\"nav\" eoTrapFocus>\n <div class=\"nav-item settings\" (click)=\"userpanel?.close()\" >\n <a routerLink=\"/settings\" id=\"settings\" tabindex=\"0\" routerLinkActive=\"active-link\" focusable translate>eo.bar.button.settings.title</a>\n </div>\n <div class=\"nav-item logout\" *ngIf=\"!capabilities.sso\">\n <a [routerLink]=\"['/enter', { logout: true }]\" routerLinkActive=\"active-link\" translate>eo.bar.button.logout.title</a>\n </div>\n <ng-content select=\"eo-sidebar-plugin.profile\"></ng-content>\n </div>\n </div>\n </eo-overlay>\n\n\n </div>\n</div>\n", styles: [":host .eo-app-bar{--profile-dropdown-width: 180px;background:var(--color-primary);color:var(--color-white);height:var(--app-bar-height);position:absolute;left:0;right:0;top:0;display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;z-index:5}:host .eo-app-bar eo-icon:focus,:host .eo-app-bar eo-icon:hover,:host .eo-app-bar a:focus eo-icon,:host .eo-app-bar a:hover eo-icon{background:rgba(var(--color-white-rgb),.25)}:host .eo-app-bar .left{display:flex;height:var(--app-bar-height);flex-flow:row nowrap;align-items:center}@media screen and (max-width: 480px){:host .eo-app-bar .left{padding-right:0}}:host .eo-app-bar .left eo-icon.menu{z-index:22;width:var(--app-bar-height);height:var(--app-bar-height);box-sizing:border-box;cursor:pointer;padding:20px;background-color:var(--color-accent)}:host .eo-app-bar .left eo-icon.menu:focus{outline:1px solid var(--color-white);outline-offset:-1px}:host .eo-app-bar .left eo-icon.logo{width:104px;height:auto;cursor:pointer;margin:0 4px;background-color:transparent;padding:var(--app-pane-padding) calc(var(--app-pane-padding) * 2) var(--app-pane-padding) calc(var(--app-pane-padding) / 2)}@media screen and (max-width: 480px){:host .eo-app-bar .left eo-icon.logo{width:80px}}:host .eo-app-bar .left eo-icon.logo:focus{outline:1px solid var(--color-accent)}:host .eo-app-bar .left .actions{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .left .actions a eo-icon{padding:8px;cursor:pointer;border-radius:50%;box-sizing:content-box;margin:4px;color:var(--color-white)}:host .eo-app-bar .left .actions a:focus eo-icon,:host .eo-app-bar .left .actions a:hover eo-icon{background:var(--color-accent)}:host .eo-app-bar .right{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .right .sub{display:flex;flex-flow:row nowrap;align-items:center;padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);margin:0 calc(var(--app-pane-padding) / 2)}:host .eo-app-bar .right .sub>*{margin:0 calc(var(--app-pane-padding) / 4)}:host .eo-app-bar .right eo-icon{margin:0 4px}:host .eo-app-bar .right eo-icon.alert{position:relative}:host .eo-app-bar .right eo-icon.alert:after{content:\"\";position:absolute;left:0;right:0;bottom:-4px;height:4px;background-color:var(--color-error)}@media screen and (max-width: 480px){:host .eo-app-bar .right eo-icon{display:none}}:host .eo-app-bar .right #app-profile{margin:0 var(--app-pane-padding);width:40px;height:40px;border-radius:50%;border:2px solid transparent;cursor:pointer}:host .eo-app-bar .right #app-profile:focus,:host .eo-app-bar .right #app-profile:hover{border-color:var(--color-accent)}:host .eo-app-bar .right .eo-profile{background:var(--color-primary);width:var(--profile-dropdown-width);color:var(--color-white)}:host .eo-app-bar .right .eo-profile .avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width);position:relative}:host .eo-app-bar .right .eo-profile .avatar eo-user-avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width)}:host .eo-app-bar .right .eo-profile .avatar .overlay{position:absolute;padding:calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) var(--app-pane-padding);bottom:0;right:0;left:0;background:rgba(var(--color-primary-rgb),.6)}:host .eo-app-bar .right .eo-profile .avatar .overlay .name,:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{word-break:break-all}:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{font-size:var(--font-caption)}:host .eo-app-bar .right .eo-profile .avatar .overlay .presence{font-size:var(--font-hint);color:var(--color-white);background:var(--color-error);border-radius:2px;display:inline-block;margin-top:calc(var(--app-pane-padding) / 2);padding:0 8px 1px}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{color:var(--color-white);padding:calc(var(--app-pane-padding) / 2);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}:host .eo-app-bar.transparent{background:transparent}:host .eo-app-bar.transparent .left eo-icon.menu{background-color:transparent}:host .eo-app-bar.transparent .left eo-icon.menu:focus{outline:1px solid var(--color-accent)}@media screen and (max-width: 480px){:host .eo-app-bar.rtl .left{padding-right:var(--app-pane-padding);padding-left:0}}@keyframes dropDownAppear{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}\n"], dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i5.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i6.OutsideClickDirective, selector: "[eoOutsideClick]", outputs: ["eoOutsideClick"] }, { kind: "directive", type: i7.RouterLinkDirective, selector: "a[routerLink]" }, { kind: "directive", type: i8.RtlAwareDirective, selector: "[eoRtlAware]", inputs: ["eoRtlAware"] }, { kind: "component", type: i9.ClipboardComponent, selector: "eo-clipboard" }, { kind: "component", type: i10.UserAvatarComponent, selector: "eo-user-avatar", inputs: ["showPresence", "previewUri"] }, { kind: "component", type: i11.OverlayComponent, selector: "eo-overlay", inputs: ["iconSrc", "badge", "iconClass", "styleClass", "active", "iconTitle"] }, { kind: "directive", type: i12.TrapFocusDirective, selector: "[eoTrapFocus]" }, { kind: "component", type: i13.SideBarComponent, selector: "eo-side-bar", outputs: ["eoOutsideClick"] }] });
173
+ AppBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: AppBarComponent, selector: "eo-app-bar", inputs: { transparent: "transparent" }, viewQueries: [{ propertyName: "avatarComponents", predicate: UserAvatarComponent, descendants: true }], ngImport: i0, template: "<eo-side-bar (eoOutsideClick)=\"sidebarShow = !sidebarShow\" *ngIf=\"sidebarShow\">\n <div class=\"navi\">\n <ng-content select=\"eo-sidebar-plugin.navi\"></ng-content>\n </div>\n <div class=\"help\">\n <ng-content select=\"eo-sidebar-plugin.help\"></ng-content>\n </div>\n</eo-side-bar>\n\n<div class=\"eo-app-bar\" [ngClass]=\"{transparent: transparent}\" eoRtlAware>\n\n <div class=\"left\">\n\n <eo-icon id=\"app-menu\" class=\"menu white\" tabindex=\"0\"\n (click)=\"sidebarShow = !sidebarShow\" (keyup.enter)=\"sidebarShow = !sidebarShow\"\n [iconSrc]=\"'assets/_default/svg/ic_hamburger.svg'\"></eo-icon>\n <eo-icon (click)=\"openDashboard($event.ctrlKey)\" (auxclick)=\"openDashboard(true)\" \n (keyup.enter)=\"openDashboard(false)\" tabindex=\"0\"\n class=\"logo white\" [iconSrc]=\"logo\"></eo-icon>\n\n <div class=\"actions\">\n <a [routerLink]=\"[ {outlets: { modal: 'search' } } ]\">\n <eo-icon id=\"app-search\" class=\"search white\" queryParamsHandling=\"preserve\"\n [iconTitle]=\"iconTitles.search\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"></eo-icon>\n </a>\n\n <a [routerLink]=\"[ {outlets: { modal: 'add' } } ]\">\n <eo-icon id=\"app-add\" class=\"add white\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.file\"\n [iconSrc]=\"'assets/_default/svg/ic_add.svg'\"></eo-icon>\n </a> \n <a [routerLink]=\"[ {outlets: { modal: 'actions' } } ]\">\n <eo-icon id=\"app-actions\" class=\"actions white\" *ngIf=\"exeActions\"\n [iconTitle]=\"iconTitles.exeactions\"\n [iconSrc]=\"'assets/_default/svg/ic_bpm_start.svg'\"></eo-icon>\n </a>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"sub\">\n <eo-clipboard></eo-clipboard>\n </div>\n <a routerLink=\"/favorites\">\n <eo-icon class=\"button white favorite\"\n [iconTitle]=\"iconTitles.favorites\" *ngIf=\"capabilities.favorites\"\n [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/prepare\">\n <eo-icon class=\"button white prepare\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.prepare\"\n [badge]=\"preparedItemsCount\" [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/inbox\">\n <eo-icon class=\"button white inbox\" [ngClass]=\"{alert: inboxState?.overduemessages > 0}\" *ngIf=\"capabilities.inbox\"\n [iconTitle]=\"iconTitles.index\"\n [badge]=\"inboxState?.totalmessages\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n </a>\n <a href=\"{{docu.link}}\" target=\"_blank\">\n <eo-icon class=\"button white about\"\n [iconTitle]=\"iconTitles.about\" [iconSrc]=\"'assets/_default/svg/ic_about.svg'\"></eo-icon>\n </a>\n <eo-overlay #userpanel (onToggle)=\"onToggleProfileOverlay()\">\n <eo-user-avatar class=\"btn\" id=\"app-profile\" [showPresence]=\"true\" [title]=\"iconTitles.profile\" tabindex=\"0\"></eo-user-avatar>\n\n <div class=\"eo-profile\" tabindex=\"-1\">\n <div class=\"avatar\" tabindex=\"-1\">\n <eo-user-avatar tabindex=\"-1\" ></eo-user-avatar>\n <div class=\"overlay\" tabindex=\"-1\">\n <div class=\"name\">{{user.firstname}} {{user.lastname}}</div>\n <div class=\"mail\">{{user.email}}</div>\n <div class=\"presence\" *ngIf=\"!user.present\" translate>eo.state.settings.presence.absent</div>\n </div>\n </div>\n <div class=\"nav\" eoTrapFocus>\n <div class=\"nav-item settings\" (click)=\"userpanel?.close()\" >\n <a routerLink=\"/settings\" id=\"settings\" tabindex=\"0\" routerLinkActive=\"active-link\" focusable translate>eo.bar.button.settings.title</a>\n </div>\n <div class=\"nav-item logout\" *ngIf=\"!capabilities.sso\">\n <a [routerLink]=\"['/enter', { logout: true }]\" routerLinkActive=\"active-link\" translate>eo.bar.button.logout.title</a>\n </div>\n <ng-content select=\"eo-sidebar-plugin.profile\"></ng-content>\n </div>\n </div>\n </eo-overlay>\n\n\n </div>\n</div>\n", styles: [":host .eo-app-bar{--profile-dropdown-width: 180px;background:var(--color-primary);color:var(--color-white);height:var(--app-bar-height);position:absolute;left:0;right:0;top:0;display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;z-index:5}:host .eo-app-bar eo-icon:focus,:host .eo-app-bar eo-icon:hover,:host .eo-app-bar a:focus eo-icon,:host .eo-app-bar a:hover eo-icon{background:rgba(var(--color-white-rgb),.25)}:host .eo-app-bar .left{display:flex;height:var(--app-bar-height);flex-flow:row nowrap;align-items:center}@media screen and (max-width: 480px){:host .eo-app-bar .left{padding-right:0}}:host .eo-app-bar .left eo-icon.menu{z-index:22;width:var(--app-bar-height);height:var(--app-bar-height);box-sizing:border-box;cursor:pointer;padding:20px;background-color:var(--color-accent)}:host .eo-app-bar .left eo-icon.menu:focus{outline:1px solid var(--color-white);outline-offset:-1px}:host .eo-app-bar .left eo-icon.logo{width:104px;height:auto;cursor:pointer;margin:0 4px;background-color:transparent;padding:var(--app-pane-padding) calc(var(--app-pane-padding) * 2) var(--app-pane-padding) calc(var(--app-pane-padding) / 2)}@media screen and (max-width: 480px){:host .eo-app-bar .left eo-icon.logo{width:80px}}:host .eo-app-bar .left eo-icon.logo:focus{outline:1px solid var(--color-accent)}:host .eo-app-bar .left .actions{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .left .actions a eo-icon{padding:8px;cursor:pointer;border-radius:50%;box-sizing:content-box;margin:4px;color:var(--color-white)}:host .eo-app-bar .left .actions a:focus eo-icon,:host .eo-app-bar .left .actions a:hover eo-icon{background:var(--color-accent)}:host .eo-app-bar .right{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .right .sub{display:flex;flex-flow:row nowrap;align-items:center;padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);margin:0 calc(var(--app-pane-padding) / 2)}:host .eo-app-bar .right .sub>*{margin:0 calc(var(--app-pane-padding) / 4)}:host .eo-app-bar .right eo-icon{margin:0 4px}:host .eo-app-bar .right eo-icon.alert{position:relative}:host .eo-app-bar .right eo-icon.alert:after{content:\"\";position:absolute;left:0;right:0;bottom:-4px;height:4px;background-color:var(--color-error)}@media screen and (max-width: 480px){:host .eo-app-bar .right eo-icon{display:none}}:host .eo-app-bar .right #app-profile{margin:0 var(--app-pane-padding);width:40px;height:40px;border-radius:50%;border:2px solid transparent;cursor:pointer}:host .eo-app-bar .right #app-profile:focus,:host .eo-app-bar .right #app-profile:hover{border-color:var(--color-accent)}:host .eo-app-bar .right .eo-profile{background:var(--color-primary);width:var(--profile-dropdown-width);color:var(--color-white)}:host .eo-app-bar .right .eo-profile .avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width);position:relative}:host .eo-app-bar .right .eo-profile .avatar eo-user-avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width)}:host .eo-app-bar .right .eo-profile .avatar .overlay{position:absolute;padding:calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) var(--app-pane-padding);bottom:0;right:0;left:0;background:rgba(var(--color-primary-rgb),.6)}:host .eo-app-bar .right .eo-profile .avatar .overlay .name,:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{word-break:break-all}:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{font-size:var(--font-caption)}:host .eo-app-bar .right .eo-profile .avatar .overlay .presence{font-size:var(--font-hint);color:var(--color-white);background:var(--color-error);border-radius:2px;display:inline-block;margin-top:calc(var(--app-pane-padding) / 2);padding:0 8px 1px}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{color:var(--color-white);padding:calc(var(--app-pane-padding) / 2);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}:host .eo-app-bar.transparent{background:transparent}:host .eo-app-bar.transparent .left eo-icon.menu{background-color:transparent}:host .eo-app-bar.transparent .left eo-icon.menu:focus{outline:1px solid var(--color-accent)}@media screen and (max-width: 480px){:host .eo-app-bar.rtl .left{padding-right:var(--app-pane-padding);padding-left:0}}@keyframes dropDownAppear{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}\n"], dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i5.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i6.OutsideClickDirective, selector: "[eoOutsideClick]", outputs: ["eoOutsideClick"] }, { kind: "directive", type: i7.RouterLinkDirective, selector: "a[routerLink]" }, { kind: "directive", type: i8.RtlAwareDirective, selector: "[eoRtlAware]", inputs: ["eoRtlAware"] }, { kind: "component", type: i9.ClipboardComponent, selector: "eo-clipboard" }, { kind: "component", type: i10.UserAvatarComponent, selector: "eo-user-avatar", inputs: ["showPresence", "previewUri"] }, { kind: "component", type: i11.OverlayComponent, selector: "eo-overlay", inputs: ["iconSrc", "badge", "iconClass", "styleClass", "active", "iconTitle"] }, { kind: "directive", type: i12.TrapFocusDirective, selector: "[eoTrapFocus]" }, { kind: "component", type: i13.SideBarComponent, selector: "eo-side-bar", outputs: ["eoOutsideClick"] }] });
163
174
  AppBarComponent = __decorate([
164
175
  UntilDestroy()
165
176
  ], AppBarComponent);
166
177
  export { AppBarComponent };
167
178
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AppBarComponent, decorators: [{
168
179
  type: Component,
169
- args: [{ selector: 'eo-app-bar', template: "<eo-side-bar (eoOutsideClick)=\"sidebarShow = !sidebarShow\" *ngIf=\"sidebarShow\">\n <div class=\"navi\">\n <ng-content select=\"eo-sidebar-plugin.navi\"></ng-content>\n </div>\n <div class=\"help\">\n <ng-content select=\"eo-sidebar-plugin.help\"></ng-content>\n </div>\n</eo-side-bar>\n\n<div class=\"eo-app-bar\" [ngClass]=\"{transparent: transparent}\" eoRtlAware>\n\n <div class=\"left\">\n\n <eo-icon id=\"app-menu\" class=\"menu white\" tabindex=\"0\"\n (click)=\"sidebarShow = !sidebarShow\" (keyup.enter)=\"sidebarShow = !sidebarShow\"\n [iconSrc]=\"'assets/_default/svg/ic_hamburger.svg'\"></eo-icon>\n <eo-icon (click)=\"openDashboard($event.ctrlKey)\" (auxclick)=\"openDashboard(true)\" \n (keyup.enter)=\"openDashboard(false)\" tabindex=\"0\"\n class=\"logo white\" [iconSrc]=\"logo\"></eo-icon>\n\n <div class=\"actions\">\n <a [routerLink]=\"[ {outlets: { modal: 'search' } } ]\">\n <eo-icon id=\"app-search\" class=\"search white\" queryParamsHandling=\"preserve\"\n [iconTitle]=\"iconTitles.search\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"></eo-icon>\n </a>\n\n <a [routerLink]=\"[ {outlets: { modal: 'add' } } ]\">\n <eo-icon id=\"app-add\" class=\"add white\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.file\"\n [iconSrc]=\"'assets/_default/svg/ic_add.svg'\"></eo-icon>\n </a> \n <a [routerLink]=\"[ {outlets: { modal: 'actions' } } ]\">\n <eo-icon id=\"app-actions\" class=\"actions white\" *ngIf=\"exeActions\"\n [iconTitle]=\"iconTitles.exeactions\"\n [iconSrc]=\"'assets/_default/svg/ic_bpm_start.svg'\"></eo-icon>\n </a>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"sub\">\n <eo-clipboard></eo-clipboard>\n </div>\n <a routerLink=\"/favorites\">\n <eo-icon class=\"button white favorite\"\n [iconTitle]=\"iconTitles.favorites\" *ngIf=\"capabilities.favorites\"\n [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/prepare\">\n <eo-icon class=\"button white prepare\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.prepare\"\n [badge]=\"preparedItemsCount\" [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/inbox\">\n <eo-icon class=\"button white inbox\" [ngClass]=\"{alert: inboxState?.overduemessages > 0}\" *ngIf=\"capabilities.inbox\"\n [iconTitle]=\"iconTitles.index\"\n [badge]=\"inboxState?.totalmessages\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n </a>\n <eo-overlay #userpanel (onToggle)=\"onToggleProfileOverlay()\">\n <eo-user-avatar class=\"btn\" id=\"app-profile\" [showPresence]=\"true\" [title]=\"iconTitles.profile\" tabindex=\"0\"></eo-user-avatar>\n\n <div class=\"eo-profile\" tabindex=\"-1\">\n <div class=\"avatar\" tabindex=\"-1\">\n <eo-user-avatar tabindex=\"-1\" ></eo-user-avatar>\n <div class=\"overlay\" tabindex=\"-1\">\n <div class=\"name\">{{user.firstname}} {{user.lastname}}</div>\n <div class=\"mail\">{{user.email}}</div>\n <div class=\"presence\" *ngIf=\"!user.present\" translate>eo.state.settings.presence.absent</div>\n </div>\n </div>\n <div class=\"nav\" eoTrapFocus>\n <div class=\"nav-item settings\" (click)=\"userpanel?.close()\" >\n <a routerLink=\"/settings\" id=\"settings\" tabindex=\"0\" routerLinkActive=\"active-link\" focusable translate>eo.bar.button.settings.title</a>\n </div>\n <div class=\"nav-item logout\" *ngIf=\"!capabilities.sso\">\n <a [routerLink]=\"['/enter', { logout: true }]\" routerLinkActive=\"active-link\" translate>eo.bar.button.logout.title</a>\n </div>\n <ng-content select=\"eo-sidebar-plugin.profile\"></ng-content>\n </div>\n </div>\n </eo-overlay>\n\n\n </div>\n</div>\n", styles: [":host .eo-app-bar{--profile-dropdown-width: 180px;background:var(--color-primary);color:var(--color-white);height:var(--app-bar-height);position:absolute;left:0;right:0;top:0;display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;z-index:5}:host .eo-app-bar eo-icon:focus,:host .eo-app-bar eo-icon:hover,:host .eo-app-bar a:focus eo-icon,:host .eo-app-bar a:hover eo-icon{background:rgba(var(--color-white-rgb),.25)}:host .eo-app-bar .left{display:flex;height:var(--app-bar-height);flex-flow:row nowrap;align-items:center}@media screen and (max-width: 480px){:host .eo-app-bar .left{padding-right:0}}:host .eo-app-bar .left eo-icon.menu{z-index:22;width:var(--app-bar-height);height:var(--app-bar-height);box-sizing:border-box;cursor:pointer;padding:20px;background-color:var(--color-accent)}:host .eo-app-bar .left eo-icon.menu:focus{outline:1px solid var(--color-white);outline-offset:-1px}:host .eo-app-bar .left eo-icon.logo{width:104px;height:auto;cursor:pointer;margin:0 4px;background-color:transparent;padding:var(--app-pane-padding) calc(var(--app-pane-padding) * 2) var(--app-pane-padding) calc(var(--app-pane-padding) / 2)}@media screen and (max-width: 480px){:host .eo-app-bar .left eo-icon.logo{width:80px}}:host .eo-app-bar .left eo-icon.logo:focus{outline:1px solid var(--color-accent)}:host .eo-app-bar .left .actions{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .left .actions a eo-icon{padding:8px;cursor:pointer;border-radius:50%;box-sizing:content-box;margin:4px;color:var(--color-white)}:host .eo-app-bar .left .actions a:focus eo-icon,:host .eo-app-bar .left .actions a:hover eo-icon{background:var(--color-accent)}:host .eo-app-bar .right{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .right .sub{display:flex;flex-flow:row nowrap;align-items:center;padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);margin:0 calc(var(--app-pane-padding) / 2)}:host .eo-app-bar .right .sub>*{margin:0 calc(var(--app-pane-padding) / 4)}:host .eo-app-bar .right eo-icon{margin:0 4px}:host .eo-app-bar .right eo-icon.alert{position:relative}:host .eo-app-bar .right eo-icon.alert:after{content:\"\";position:absolute;left:0;right:0;bottom:-4px;height:4px;background-color:var(--color-error)}@media screen and (max-width: 480px){:host .eo-app-bar .right eo-icon{display:none}}:host .eo-app-bar .right #app-profile{margin:0 var(--app-pane-padding);width:40px;height:40px;border-radius:50%;border:2px solid transparent;cursor:pointer}:host .eo-app-bar .right #app-profile:focus,:host .eo-app-bar .right #app-profile:hover{border-color:var(--color-accent)}:host .eo-app-bar .right .eo-profile{background:var(--color-primary);width:var(--profile-dropdown-width);color:var(--color-white)}:host .eo-app-bar .right .eo-profile .avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width);position:relative}:host .eo-app-bar .right .eo-profile .avatar eo-user-avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width)}:host .eo-app-bar .right .eo-profile .avatar .overlay{position:absolute;padding:calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) var(--app-pane-padding);bottom:0;right:0;left:0;background:rgba(var(--color-primary-rgb),.6)}:host .eo-app-bar .right .eo-profile .avatar .overlay .name,:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{word-break:break-all}:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{font-size:var(--font-caption)}:host .eo-app-bar .right .eo-profile .avatar .overlay .presence{font-size:var(--font-hint);color:var(--color-white);background:var(--color-error);border-radius:2px;display:inline-block;margin-top:calc(var(--app-pane-padding) / 2);padding:0 8px 1px}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{color:var(--color-white);padding:calc(var(--app-pane-padding) / 2);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}:host .eo-app-bar.transparent{background:transparent}:host .eo-app-bar.transparent .left eo-icon.menu{background-color:transparent}:host .eo-app-bar.transparent .left eo-icon.menu:focus{outline:1px solid var(--color-accent)}@media screen and (max-width: 480px){:host .eo-app-bar.rtl .left{padding-right:var(--app-pane-padding);padding-left:0}}@keyframes dropDownAppear{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}\n"] }]
180
+ args: [{ selector: 'eo-app-bar', template: "<eo-side-bar (eoOutsideClick)=\"sidebarShow = !sidebarShow\" *ngIf=\"sidebarShow\">\n <div class=\"navi\">\n <ng-content select=\"eo-sidebar-plugin.navi\"></ng-content>\n </div>\n <div class=\"help\">\n <ng-content select=\"eo-sidebar-plugin.help\"></ng-content>\n </div>\n</eo-side-bar>\n\n<div class=\"eo-app-bar\" [ngClass]=\"{transparent: transparent}\" eoRtlAware>\n\n <div class=\"left\">\n\n <eo-icon id=\"app-menu\" class=\"menu white\" tabindex=\"0\"\n (click)=\"sidebarShow = !sidebarShow\" (keyup.enter)=\"sidebarShow = !sidebarShow\"\n [iconSrc]=\"'assets/_default/svg/ic_hamburger.svg'\"></eo-icon>\n <eo-icon (click)=\"openDashboard($event.ctrlKey)\" (auxclick)=\"openDashboard(true)\" \n (keyup.enter)=\"openDashboard(false)\" tabindex=\"0\"\n class=\"logo white\" [iconSrc]=\"logo\"></eo-icon>\n\n <div class=\"actions\">\n <a [routerLink]=\"[ {outlets: { modal: 'search' } } ]\">\n <eo-icon id=\"app-search\" class=\"search white\" queryParamsHandling=\"preserve\"\n [iconTitle]=\"iconTitles.search\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"></eo-icon>\n </a>\n\n <a [routerLink]=\"[ {outlets: { modal: 'add' } } ]\">\n <eo-icon id=\"app-add\" class=\"add white\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.file\"\n [iconSrc]=\"'assets/_default/svg/ic_add.svg'\"></eo-icon>\n </a> \n <a [routerLink]=\"[ {outlets: { modal: 'actions' } } ]\">\n <eo-icon id=\"app-actions\" class=\"actions white\" *ngIf=\"exeActions\"\n [iconTitle]=\"iconTitles.exeactions\"\n [iconSrc]=\"'assets/_default/svg/ic_bpm_start.svg'\"></eo-icon>\n </a>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"sub\">\n <eo-clipboard></eo-clipboard>\n </div>\n <a routerLink=\"/favorites\">\n <eo-icon class=\"button white favorite\"\n [iconTitle]=\"iconTitles.favorites\" *ngIf=\"capabilities.favorites\"\n [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/prepare\">\n <eo-icon class=\"button white prepare\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.prepare\"\n [badge]=\"preparedItemsCount\" [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/inbox\">\n <eo-icon class=\"button white inbox\" [ngClass]=\"{alert: inboxState?.overduemessages > 0}\" *ngIf=\"capabilities.inbox\"\n [iconTitle]=\"iconTitles.index\"\n [badge]=\"inboxState?.totalmessages\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n </a>\n <a href=\"{{docu.link}}\" target=\"_blank\">\n <eo-icon class=\"button white about\"\n [iconTitle]=\"iconTitles.about\" [iconSrc]=\"'assets/_default/svg/ic_about.svg'\"></eo-icon>\n </a>\n <eo-overlay #userpanel (onToggle)=\"onToggleProfileOverlay()\">\n <eo-user-avatar class=\"btn\" id=\"app-profile\" [showPresence]=\"true\" [title]=\"iconTitles.profile\" tabindex=\"0\"></eo-user-avatar>\n\n <div class=\"eo-profile\" tabindex=\"-1\">\n <div class=\"avatar\" tabindex=\"-1\">\n <eo-user-avatar tabindex=\"-1\" ></eo-user-avatar>\n <div class=\"overlay\" tabindex=\"-1\">\n <div class=\"name\">{{user.firstname}} {{user.lastname}}</div>\n <div class=\"mail\">{{user.email}}</div>\n <div class=\"presence\" *ngIf=\"!user.present\" translate>eo.state.settings.presence.absent</div>\n </div>\n </div>\n <div class=\"nav\" eoTrapFocus>\n <div class=\"nav-item settings\" (click)=\"userpanel?.close()\" >\n <a routerLink=\"/settings\" id=\"settings\" tabindex=\"0\" routerLinkActive=\"active-link\" focusable translate>eo.bar.button.settings.title</a>\n </div>\n <div class=\"nav-item logout\" *ngIf=\"!capabilities.sso\">\n <a [routerLink]=\"['/enter', { logout: true }]\" routerLinkActive=\"active-link\" translate>eo.bar.button.logout.title</a>\n </div>\n <ng-content select=\"eo-sidebar-plugin.profile\"></ng-content>\n </div>\n </div>\n </eo-overlay>\n\n\n </div>\n</div>\n", styles: [":host .eo-app-bar{--profile-dropdown-width: 180px;background:var(--color-primary);color:var(--color-white);height:var(--app-bar-height);position:absolute;left:0;right:0;top:0;display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;z-index:5}:host .eo-app-bar eo-icon:focus,:host .eo-app-bar eo-icon:hover,:host .eo-app-bar a:focus eo-icon,:host .eo-app-bar a:hover eo-icon{background:rgba(var(--color-white-rgb),.25)}:host .eo-app-bar .left{display:flex;height:var(--app-bar-height);flex-flow:row nowrap;align-items:center}@media screen and (max-width: 480px){:host .eo-app-bar .left{padding-right:0}}:host .eo-app-bar .left eo-icon.menu{z-index:22;width:var(--app-bar-height);height:var(--app-bar-height);box-sizing:border-box;cursor:pointer;padding:20px;background-color:var(--color-accent)}:host .eo-app-bar .left eo-icon.menu:focus{outline:1px solid var(--color-white);outline-offset:-1px}:host .eo-app-bar .left eo-icon.logo{width:104px;height:auto;cursor:pointer;margin:0 4px;background-color:transparent;padding:var(--app-pane-padding) calc(var(--app-pane-padding) * 2) var(--app-pane-padding) calc(var(--app-pane-padding) / 2)}@media screen and (max-width: 480px){:host .eo-app-bar .left eo-icon.logo{width:80px}}:host .eo-app-bar .left eo-icon.logo:focus{outline:1px solid var(--color-accent)}:host .eo-app-bar .left .actions{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .left .actions a eo-icon{padding:8px;cursor:pointer;border-radius:50%;box-sizing:content-box;margin:4px;color:var(--color-white)}:host .eo-app-bar .left .actions a:focus eo-icon,:host .eo-app-bar .left .actions a:hover eo-icon{background:var(--color-accent)}:host .eo-app-bar .right{display:flex;flex-flow:row nowrap;align-items:center}:host .eo-app-bar .right .sub{display:flex;flex-flow:row nowrap;align-items:center;padding:calc(var(--app-pane-padding) / 4) calc(var(--app-pane-padding) / 2);margin:0 calc(var(--app-pane-padding) / 2)}:host .eo-app-bar .right .sub>*{margin:0 calc(var(--app-pane-padding) / 4)}:host .eo-app-bar .right eo-icon{margin:0 4px}:host .eo-app-bar .right eo-icon.alert{position:relative}:host .eo-app-bar .right eo-icon.alert:after{content:\"\";position:absolute;left:0;right:0;bottom:-4px;height:4px;background-color:var(--color-error)}@media screen and (max-width: 480px){:host .eo-app-bar .right eo-icon{display:none}}:host .eo-app-bar .right #app-profile{margin:0 var(--app-pane-padding);width:40px;height:40px;border-radius:50%;border:2px solid transparent;cursor:pointer}:host .eo-app-bar .right #app-profile:focus,:host .eo-app-bar .right #app-profile:hover{border-color:var(--color-accent)}:host .eo-app-bar .right .eo-profile{background:var(--color-primary);width:var(--profile-dropdown-width);color:var(--color-white)}:host .eo-app-bar .right .eo-profile .avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width);position:relative}:host .eo-app-bar .right .eo-profile .avatar eo-user-avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width)}:host .eo-app-bar .right .eo-profile .avatar .overlay{position:absolute;padding:calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) calc(var(--app-pane-padding) / 2) var(--app-pane-padding);bottom:0;right:0;left:0;background:rgba(var(--color-primary-rgb),.6)}:host .eo-app-bar .right .eo-profile .avatar .overlay .name,:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{word-break:break-all}:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{font-size:var(--font-caption)}:host .eo-app-bar .right .eo-profile .avatar .overlay .presence{font-size:var(--font-hint);color:var(--color-white);background:var(--color-error);border-radius:2px;display:inline-block;margin-top:calc(var(--app-pane-padding) / 2);padding:0 8px 1px}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{color:var(--color-white);padding:calc(var(--app-pane-padding) / 2);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}:host .eo-app-bar.transparent{background:transparent}:host .eo-app-bar.transparent .left eo-icon.menu{background-color:transparent}:host .eo-app-bar.transparent .left eo-icon.menu:focus{outline:1px solid var(--color-accent)}@media screen and (max-width: 480px){:host .eo-app-bar.rtl .left{padding-right:var(--app-pane-padding);padding-left:0}}@keyframes dropDownAppear{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}\n"] }]
170
181
  }], ctorParameters: function () { return [{ type: i1.UserService }, { type: i1.CapabilitiesService }, { type: i1.TranslateService }, { type: i1.InboxService }, { type: i1.PrepareService }, { type: i1.ClipboardService }, { type: i0.Renderer2 }, { type: i2.Router }, { type: i1.BpmService }, { type: i1.EventService }, { type: i1.Config }, { type: i0.ElementRef }]; }, propDecorators: { transparent: [{
171
182
  type: Input
172
183
  }], avatarComponents: [{
173
184
  type: ViewChildren,
174
185
  args: [UserAvatarComponent]
175
186
  }] } });
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hcHAtc2hlbGwvYXBwLWJhci9hcHAtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2FwcC1zaGVsbC9hcHAtYmFyL2FwcC1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUlMLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFTLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQU1MLFVBQVUsRUFNWCxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ25FLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFPeEUsSUFBTSxlQUFlLEdBQXJCLE1BQU0sZUFBZTtJQWdCMUIsWUFBb0IsV0FBd0IsRUFDeEIsaUJBQXNDLEVBQ3RDLFNBQTJCLEVBQzNCLFlBQTBCLEVBQzFCLGNBQThCLEVBQzlCLFNBQTJCLEVBQzNCLFFBQW1CLEVBQ25CLE1BQWMsRUFDZCxVQUFzQixFQUN0QixZQUEwQixFQUMxQixNQUFjLEVBQ2QsT0FBbUI7UUFYbkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUN0QyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsYUFBUSxHQUFSLFFBQVEsQ0FBVztR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Z0JBQ3JFLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ3ZDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsdUVBQXVFO0lBQy9ELDRCQUE0QjtRQUNsQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUM7UUFDN0Qsa0JBQWtCO1FBQ2xCLHdDQUF3QztRQUN4Qyx3QkFBd0I7UUFDeEIsc0NBQXNDO1FBQ3RDLFFBQVE7UUFDUixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN0QyxDQUFDOzs0R0F4S1UsZUFBZTtnR0FBZixlQUFlLCtIQWNaLG1CQUFtQixnREM3Q25DLCtpSUFxRkE7QUR0RGEsZUFBZTtJQU4zQixZQUFZLEVBQUU7R0FNRixlQUFlLENBeUszQjtTQXpLWSxlQUFlOzJGQUFmLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsWUFBWTt5WUFNYixXQUFXO3NCQUFuQixLQUFLO2dCQVk2QixnQkFBZ0I7c0JBQWxELFlBQVk7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBRdWVyeUxpc3QsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkcmVuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIEJwbVNlcnZpY2UsXG4gIENhcGFiaWxpdGllcyxcbiAgQ2FwYWJpbGl0aWVzU2VydmljZSxcbiAgQ2xpcGJvYXJkU2VydmljZSxcbiAgQ29uZmlnLFxuICBFbmFpb0V2ZW50LFxuICBFb1VzZXIsXG4gIEV2ZW50U2VydmljZSxcbiAgSW5ib3hTZXJ2aWNlLCBJbmJveFN0YXRlLFxuICBQcmVwYXJlU2VydmljZSwgVHJhbnNsYXRlU2VydmljZSxcbiAgVXNlclNlcnZpY2Vcbn0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7VW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7VXNlckF2YXRhckNvbXBvbmVudH0gZnJvbSAnLi4vLi4vdWkvdXNlci1hdmF0YXIvdXNlci1hdmF0YXIuY29tcG9uZW50JztcbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tYXBwLWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hcHAtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXBwLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFwcEJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgdHJhbnNwYXJlbnQgPSBmYWxzZTtcblxuICBwcmVwYXJlZEl0ZW1zQ291bnQ6IG51bWJlcjtcbiAgaW5ib3hTdGF0ZTogSW5ib3hTdGF0ZTtcbiAgdXNlcjogRW9Vc2VyO1xuICBjYXBhYmlsaXRpZXM6IENhcGFiaWxpdGllcztcbiAgZXhlQWN0aW9uczogYm9vbGVhbjtcbiAgc2lkZWJhclNob3cgPSBmYWxzZTtcbiAgb3B0aW9uczogYW55O1xuICBpY29uVGl0bGVzOiBhbnk7XG4gIGxvZ286IHN0cmluZztcbiAgcGFnZVZpc2libGUgPSB0cnVlO1xuICBAVmlld0NoaWxkcmVuKFVzZXJBdmF0YXJDb21wb25lbnQpIGF2YXRhckNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxVc2VyQXZhdGFyQ29tcG9uZW50PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjYXBhYmlsaXR5U2VydmljZTogQ2FwYWJpbGl0aWVzU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgaW5ib3hTZXJ2aWNlOiBJbmJveFNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgcHJlcGFyZVNlcnZpY2U6IFByZXBhcmVTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIGNsaXBib2FyZDogQ2xpcGJvYXJkU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIGJwbVNlcnZpY2U6IEJwbVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudFNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgY29uZmlnOiBDb25maWcsXG4gICAgICAgICAgICAgIHByaXZhdGUgZWxlbVJlZjogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgKSB7XG4gICAgdGhpcy5jYXBhYmlsaXRpZXMgPSB0aGlzLmNhcGFiaWxpdHlTZXJ2aWNlLmdldENhcGFiaWxpdGllcygpO1xuICAgIHRoaXMubG9nbyA9IHRoaXMuY29uZmlnLmdldE5hdmlnYXRpb25CYXJJbWFnZSgpO1xuICAgIC8vIGxpc3RlbiBmb3Igcm91dGluZyBldmVudHMgdG8gaGlkZSBhbnkgYWN0aXZlIG92ZXJsYXlzXG4gICAgLy8gb24gY2hhbmdpbmcgcm91dGVcbiAgICB0aGlzLnJvdXRlclxuICAgICAgLmV2ZW50cy5waXBlKFxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB7XG4gICAgICAgICAgdGhpcy5zaWRlYmFyU2hvdyA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMudXNlclNlcnZpY2VcbiAgICAgIC51c2VyJC5waXBlKFxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAuc3Vic2NyaWJlKHVzZXIgPT4gdGhpcy51c2VyID0gdXNlcik7XG5cbiAgICBpZiAodGhpcy5jYXBhYmlsaXRpZXMuaW5ib3gpIHtcbiAgICAgIHRoaXMuaW5ib3hTZXJ2aWNlXG4gICAgICAgIC5pbmJveFN0YXRlJC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgICAgLnN1YnNjcmliZSgoaW5ib3hTdGF0ZTogSW5ib3hTdGF0ZSkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmluYm94U3RhdGUgJiYgdGhpcy5pbmJveFN0YXRlLnVucmVhZG1lc3NhZ2VzIDwgaW5ib3hTdGF0ZS51bnJlYWRtZXNzYWdlcykge1xuICAgICAgICAgICAgdGhpcy5zZW5kTm90aWZpY2F0aW9uKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuaW5ib3hTdGF0ZSA9IGluYm94U3RhdGU7XG4gICAgICAgIH0pO1xuICAgICAgdGhpcy5ldmVudFNlcnZpY2Uub24oRW5haW9FdmVudC5TWVNURU1fU1RBVFVTX0lOQk9YX0NIQU5HRUQpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmluYm94U2VydmljZS5yZWZyZXNoSW5ib3hTdGF0ZSgpKVxuICAgIH1cblxuICAgIGlmICh0aGlzLmNhcGFiaWxpdGllcy5pbnRyYXkpIHtcbiAgICAgIHRoaXMucHJlcGFyZVNlcnZpY2VcbiAgICAgICAgLnByZXBhcmVkSXRlbUNvdW50JC5waXBlKFxuICAgICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgICAgLnN1YnNjcmliZShjb3VudCA9PiB7XG4gICAgICAgICAgdGhpcy5wcmVwYXJlZEl0ZW1zQ291bnQgPSBjb3VudDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy50cmFuc2xhdGVcbiAgICAgIC5vbkxhbmdDaGFuZ2VcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zZXRJY29uVGl0bGVzKCkpO1xuICB9XG5cbiAgb3BlbkRhc2hib2FyZChvcGVuSW5OZXdXaW5kb3c6IGJvb2xlYW4pIHtcbiAgICBpZiAob3BlbkluTmV3V2luZG93KSB7XG4gICAgICB3aW5kb3cub3BlbignLycpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy8nXSk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlT25TY2hlbWFDaGFuZ2UoKSB7XG4gICAgdGhpcy5ldmVudFNlcnZpY2VcbiAgICAgIC5vbihFbmFpb0V2ZW50LlNDSEVNQV9MT0NBTEVfQ0hBTkdFRCkucGlwZShcbiAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuYnBtU2VydmljZVxuICAgICAgICAgIC5nZXRFeGVjdXRhYmxlUHJvY2Vzc2VzKG51bGwsIG51bGwsIG51bGwsIG51bGwsIHRydWUpXG4gICAgICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgLy8gdGhpcy5leGVBY3Rpb25zID0gISFyZXMubGVuZ3RoO1xuICAgICAgICAgICAgdGhpcy5leGVBY3Rpb25zID0gdGhpcy5icG1TZXJ2aWNlLmhhc01haW5FeGVjdXRhYmxlUHJvY2Vzc2VzO1xuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBvblRvZ2dsZVByb2ZpbGVPdmVybGF5KCl7XG4gICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICB0aGlzLmVsZW1SZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcjc2V0dGluZ3MnKS5mb2N1cygpO1xuICAgfSk7XG4gIH1cblxuICBzZXRJY29uVGl0bGVzKCkge1xuICAgIHRoaXMuaWNvblRpdGxlcyA9IHtcbiAgICAgIHNlYXJjaDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYmFyLmJ1dHRvbi5zZWFyY2gudG9vbHRpcCcpLFxuICAgICAgZmlsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYmFyLmJ1dHRvbi5maWxlLnRvb2x0aXAnKSxcbiAgICAgIGV4ZWFjdGlvbnM6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmJhci5idXR0b24uZXhlY3V0ZS5hY3Rpb25zLnRvb2x0aXAnKSxcbiAgICAgIGZhdm9yaXRlczogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYmFyLmJ1dHRvbi5mYXZvcml0ZXMudG9vbHRpcCcpLFxuICAgICAgcHJlcGFyZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYmFyLmJ1dHRvbi5wcmVwYXJlLnRvb2x0aXAnKSxcbiAgICAgIGluZGV4OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5iYXIuYnV0dG9uLmluYm94LnRvb2x0aXAnKSxcbiAgICAgIHByb2ZpbGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmJhci5idXR0b24udXNlci5wcm9maWxlLnRpdGxlJyksXG4gICAgfTtcbiAgfVxuXG5cbiAgcHJpdmF0ZSBzZW5kTm90aWZpY2F0aW9uKCkge1xuICAgIGlmIChOb3RpZmljYXRpb24ucGVybWlzc2lvbiA9PT0gJ2dyYW50ZWQnKSB7XG4gICAgICB0aGlzLmluaXROb3RpZmljYXRpb24oKTtcbiAgICB9IGVsc2UgaWYgKE5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uICE9PSAnZGVuaWVkJykge1xuICAgICAgTm90aWZpY2F0aW9uLnJlcXVlc3RQZXJtaXNzaW9uKCkudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMuaW5pdE5vdGlmaWNhdGlvbigpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0Tm90aWZpY2F0aW9uKCkge1xuICAgIGNvbnN0IHRpdGxlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uaW5ib3gubm90aWZpY2F0aW9uLnRpdGxlJyk7XG4gICAgY29uc3QgYm9keSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94Lm5vdGlmaWNhdGlvbi5ib2R5Jyk7XG4gICAgY29uc3QgaWNvbiA9ICdhc3NldHMvX2RlZmF1bHQvaW1nL3l1dXZpcy1hZ2VudC5wbmcnO1xuXG4gICAgY29uc3Qgbm90aWZpY2F0aW9uID0gbmV3IE5vdGlmaWNhdGlvbih0aXRsZSwge1xuICAgICAgYm9keTogYm9keSxcbiAgICAgIGljb246IGljb25cbiAgICB9KTtcblxuICAgIHRoaXMuaW5pdE5vdGlmaWNhdGlvbkNsaWNrTGlzdGVuZXIobm90aWZpY2F0aW9uKTtcbiAgfVxuXG4gIC8vIFRoaXMgaXMgbGlzdGVuaW5nIGZvciB0aGUgbmF2aWdhdGlvbiBjbGljayBldmVudC4gV2hlbiB0aGUgY2xpZW50IHRhYiBpcyBhY3RpdmUsIGl0IGp1c3QgbmF2aWdhdGVzIHRvIHRoZSBpbmJveCByb3V0ZS5cbiAgLy8gSWYgbm90LCBpdCBvcGVucyBhIG5ldyB0YWIgYW5kIHNob3dzIHRoZSBpbmJveCB0aGVyZS5cbiAgcHJpdmF0ZSBpbml0Tm90aWZpY2F0aW9uQ2xpY2tMaXN0ZW5lcihub3RpZmljYXRpb246IE5vdGlmaWNhdGlvbikge1xuICAgIG5vdGlmaWNhdGlvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgIGlmICh0aGlzLnBhZ2VWaXNpYmxlKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9pbmJveCcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZnVsbFBhdGggPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgICAgICAgY29uc3QgY3VycmVudFJvdXRlID0gdGhpcy5yb3V0ZXIudXJsO1xuICAgICAgICBjb25zdCBwYXRoVG9OYXZpZ2F0ZSA9IGZ1bGxQYXRoLnJlcGxhY2UoY3VycmVudFJvdXRlLCAnJykgKyAnL2luYm94JztcbiAgICAgICAgd2luZG93Lm9wZW4ocGF0aFRvTmF2aWdhdGUsICdfYmxhbmsnKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8vIFRoaXMgbGlzdGVuZXIgaXMgbmVlZGVkIHRvIGNoZWNrLCBpZiB0aGUgY2xpZW50IHRhYiBpcyBhY3RpdmUgb3Igbm90XG4gIHByaXZhdGUgaW5pdFZpc2liaWxpdHlDaGFuZ2VMaXN0ZW5lcigpIHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd2aXNpYmlsaXR5Y2hhbmdlJywgKCkgPT4gdGhpcy5wYWdlVmlzaWJsZSA9ICF0aGlzLnBhZ2VWaXNpYmxlKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXBkYXRlT25TY2hlbWFDaGFuZ2UoKTtcbiAgICB0aGlzLnNldEljb25UaXRsZXMoKTtcbiAgICB0aGlzLmV4ZUFjdGlvbnMgPSB0aGlzLmJwbVNlcnZpY2UuaGFzTWFpbkV4ZWN1dGFibGVQcm9jZXNzZXM7XG4gICAgLy8gdGhpcy5icG1TZXJ2aWNlXG4gICAgLy8gICAuZ2V0RXhlY3V0YWJsZVByb2Nlc3NlcyhudWxsLCB0cnVlKVxuICAgIC8vICAgLnN1YnNjcmliZShyZXMgPT4ge1xuICAgIC8vICAgICB0aGlzLmV4ZUFjdGlvbnMgPSAhIXJlcy5sZW5ndGg7XG4gICAgLy8gICB9KTtcbiAgICB0aGlzLmluaXRWaXNpYmlsaXR5Q2hhbmdlTGlzdGVuZXIoKTtcbiAgfVxufVxuIiwiPGVvLXNpZGUtYmFyIChlb091dHNpZGVDbGljayk9XCJzaWRlYmFyU2hvdyA9ICFzaWRlYmFyU2hvd1wiICpuZ0lmPVwic2lkZWJhclNob3dcIj5cbiAgPGRpdiBjbGFzcz1cIm5hdmlcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJlby1zaWRlYmFyLXBsdWdpbi5uYXZpXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImhlbHBcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJlby1zaWRlYmFyLXBsdWdpbi5oZWxwXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZW8tc2lkZS1iYXI+XG5cbjxkaXYgY2xhc3M9XCJlby1hcHAtYmFyXCIgW25nQ2xhc3NdPVwie3RyYW5zcGFyZW50OiB0cmFuc3BhcmVudH1cIiBlb1J0bEF3YXJlPlxuXG4gIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XG5cbiAgICA8ZW8taWNvbiBpZD1cImFwcC1tZW51XCIgY2xhc3M9XCJtZW51IHdoaXRlXCIgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwic2lkZWJhclNob3cgPSAhc2lkZWJhclNob3dcIiAoa2V5dXAuZW50ZXIpPVwic2lkZWJhclNob3cgPSAhc2lkZWJhclNob3dcIlxuICAgICAgICAgICAgIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2hhbWJ1cmdlci5zdmcnXCI+PC9lby1pY29uPlxuICAgIDxlby1pY29uIChjbGljayk9XCJvcGVuRGFzaGJvYXJkKCRldmVudC5jdHJsS2V5KVwiICAoYXV4Y2xpY2spPVwib3BlbkRhc2hib2FyZCh0cnVlKVwiIFxuICAgICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwib3BlbkRhc2hib2FyZChmYWxzZSlcIiB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgICBjbGFzcz1cImxvZ28gd2hpdGVcIiBbaWNvblNyY109XCJsb2dvXCI+PC9lby1pY29uPlxuXG4gICAgPGRpdiBjbGFzcz1cImFjdGlvbnNcIj5cbiAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlsge291dGxldHM6IHsgbW9kYWw6ICdzZWFyY2gnIH0gfSBdXCI+XG4gICAgICAgIDxlby1pY29uIGlkPVwiYXBwLXNlYXJjaFwiIGNsYXNzPVwic2VhcmNoIHdoaXRlXCIgcXVlcnlQYXJhbXNIYW5kbGluZz1cInByZXNlcnZlXCJcbiAgICAgICAgICAgICAgICBbaWNvblRpdGxlXT1cImljb25UaXRsZXMuc2VhcmNoXCJcbiAgICAgICAgICAgICAgICBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19zZWFyY2guc3ZnJ1wiPjwvZW8taWNvbj5cbiAgICAgIDwvYT5cblxuICAgICAgPGEgW3JvdXRlckxpbmtdPVwiWyB7b3V0bGV0czogeyBtb2RhbDogJ2FkZCcgfSB9IF1cIj5cbiAgICAgICAgPGVvLWljb24gaWQ9XCJhcHAtYWRkXCIgY2xhc3M9XCJhZGQgd2hpdGVcIiAqbmdJZj1cImNhcGFiaWxpdGllcy5pbnRyYXlcIlxuICAgICAgICAgICAgICAgIFtpY29uVGl0bGVdPVwiaWNvblRpdGxlcy5maWxlXCJcbiAgICAgICAgICAgICAgICBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19hZGQuc3ZnJ1wiPjwvZW8taWNvbj5cbiAgICAgIDwvYT4gICAgICBcbiAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlsge291dGxldHM6IHsgbW9kYWw6ICdhY3Rpb25zJyB9IH0gXVwiPlxuICAgICAgICA8ZW8taWNvbiBpZD1cImFwcC1hY3Rpb25zXCIgY2xhc3M9XCJhY3Rpb25zIHdoaXRlXCIgKm5nSWY9XCJleGVBY3Rpb25zXCJcbiAgICAgICAgICAgICAgICBbaWNvblRpdGxlXT1cImljb25UaXRsZXMuZXhlYWN0aW9uc1wiXG4gICAgICAgICAgICAgICAgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfYnBtX3N0YXJ0LnN2ZydcIj48L2VvLWljb24+XG4gICAgICA8L2E+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cbiAgICA8ZGl2IGNsYXNzPVwic3ViXCI+XG4gICAgICA8ZW8tY2xpcGJvYXJkPjwvZW8tY2xpcGJvYXJkPlxuICAgIDwvZGl2PlxuICAgIDxhIHJvdXRlckxpbms9XCIvZmF2b3JpdGVzXCI+XG4gICAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiB3aGl0ZSBmYXZvcml0ZVwiXG4gICAgICAgICAgICAgIFtpY29uVGl0bGVdPVwiaWNvblRpdGxlcy5mYXZvcml0ZXNcIiAqbmdJZj1cImNhcGFiaWxpdGllcy5mYXZvcml0ZXNcIlxuICAgICAgICAgICAgICBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19mYXZvcml0ZS5zdmcnXCI+PC9lby1pY29uPlxuICAgIDwvYT5cbiAgICA8YSByb3V0ZXJMaW5rPVwiL3ByZXBhcmVcIj5cbiAgICAgIDxlby1pY29uIGNsYXNzPVwiYnV0dG9uIHdoaXRlIHByZXBhcmVcIiAqbmdJZj1cImNhcGFiaWxpdGllcy5pbnRyYXlcIlxuICAgICAgICAgICAgICBbaWNvblRpdGxlXT1cImljb25UaXRsZXMucHJlcGFyZVwiXG4gICAgICAgICAgICAgIFtiYWRnZV09XCJwcmVwYXJlZEl0ZW1zQ291bnRcIiBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19wcmVwYXJlLnN2ZydcIj48L2VvLWljb24+XG4gICAgPC9hPlxuICAgIDxhIHJvdXRlckxpbms9XCIvaW5ib3hcIj5cbiAgICAgIDxlby1pY29uIGNsYXNzPVwiYnV0dG9uIHdoaXRlIGluYm94XCIgW25nQ2xhc3NdPVwie2FsZXJ0OiBpbmJveFN0YXRlPy5vdmVyZHVlbWVzc2FnZXMgPiAwfVwiICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmluYm94XCJcbiAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCJpY29uVGl0bGVzLmluZGV4XCJcbiAgICAgICAgICAgICAgW2JhZGdlXT1cImluYm94U3RhdGU/LnRvdGFsbWVzc2FnZXNcIiBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19pbmJveC5zdmcnXCI+PC9lby1pY29uPlxuICAgIDwvYT5cbiAgICA8ZW8tb3ZlcmxheSAjdXNlcnBhbmVsIChvblRvZ2dsZSk9XCJvblRvZ2dsZVByb2ZpbGVPdmVybGF5KClcIj5cbiAgICAgIDxlby11c2VyLWF2YXRhciBjbGFzcz1cImJ0blwiIGlkPVwiYXBwLXByb2ZpbGVcIiBbc2hvd1ByZXNlbmNlXT1cInRydWVcIiBbdGl0bGVdPVwiaWNvblRpdGxlcy5wcm9maWxlXCIgdGFiaW5kZXg9XCIwXCI+PC9lby11c2VyLWF2YXRhcj5cblxuICAgICAgPGRpdiBjbGFzcz1cImVvLXByb2ZpbGVcIiB0YWJpbmRleD1cIi0xXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXJcIiB0YWJpbmRleD1cIi0xXCI+XG4gICAgICAgICAgPGVvLXVzZXItYXZhdGFyIHRhYmluZGV4PVwiLTFcIiA+PC9lby11c2VyLWF2YXRhcj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwib3ZlcmxheVwiIHRhYmluZGV4PVwiLTFcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lXCI+e3t1c2VyLmZpcnN0bmFtZX19IHt7dXNlci5sYXN0bmFtZX19PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbFwiPnt7dXNlci5lbWFpbH19PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJlc2VuY2VcIiAqbmdJZj1cIiF1c2VyLnByZXNlbnRcIiB0cmFuc2xhdGU+ZW8uc3RhdGUuc2V0dGluZ3MucHJlc2VuY2UuYWJzZW50PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibmF2XCIgZW9UcmFwRm9jdXM+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1pdGVtIHNldHRpbmdzXCIgKGNsaWNrKT1cInVzZXJwYW5lbD8uY2xvc2UoKVwiID5cbiAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCIvc2V0dGluZ3NcIiBpZD1cInNldHRpbmdzXCIgdGFiaW5kZXg9XCIwXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCIgZm9jdXNhYmxlIHRyYW5zbGF0ZT5lby5iYXIuYnV0dG9uLnNldHRpbmdzLnRpdGxlPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbSBsb2dvdXRcIiAqbmdJZj1cIiFjYXBhYmlsaXRpZXMuc3NvXCI+XG4gICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJbJy9lbnRlcicsIHsgbG9nb3V0OiB0cnVlIH1dXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCIgdHJhbnNsYXRlPmVvLmJhci5idXR0b24ubG9nb3V0LnRpdGxlPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImVvLXNpZGViYXItcGx1Z2luLnByb2ZpbGVcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9lby1vdmVybGF5PlxuXG5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hcHAtc2hlbGwvYXBwLWJhci9hcHAtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2FwcC1zaGVsbC9hcHAtYmFyL2FwcC1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUlMLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFTLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQU1MLFVBQVUsRUFNWCxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUMsWUFBWSxFQUFFLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ25FLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFPeEUsSUFBTSxlQUFlLEdBQXJCLE1BQU0sZUFBZTtJQWlCMUIsWUFBb0IsV0FBd0IsRUFDeEIsaUJBQXNDLEVBQ3RDLFNBQTJCLEVBQzNCLFlBQTBCLEVBQzFCLGNBQThCLEVBQzlCLFNBQTJCLEVBQzNCLFFBQW1CLEVBQ25CLE1BQWMsRUFDZCxVQUFzQixFQUN0QixZQUEwQixFQUMxQixNQUFjLEVBQ2QsT0FBbUI7UUFYbkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUN0QyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsYUFBUSxHQUFSLFFBQVEsQ0FBVztR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QUFFLENBQUM7SUFDdEMsQ0FBQzs7NEdBckxVLGVBQWU7Z0dBQWYsZUFBZSwrSEFlWixtQkFBbUIsZ0RDOUNuQyxvd0lBeUZBO0FEMURhLGVBQWU7SUFOM0IsWUFBWSxFQUFFO0dBTUYsZUFBZSxDQXNMM0I7U0F0TFksZUFBZTsyRkFBZixlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVk7eVlBTWIsV0FBVztzQkFBbkIsS0FBSztnQkFhNkIsZ0JBQWdCO3NCQUFsRCxZQUFZO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBCcG1TZXJ2aWNlLFxuICBDYXBhYmlsaXRpZXMsXG4gIENhcGFiaWxpdGllc1NlcnZpY2UsXG4gIENsaXBib2FyZFNlcnZpY2UsXG4gIENvbmZpZyxcbiAgRW5haW9FdmVudCxcbiAgRW9Vc2VyLFxuICBFdmVudFNlcnZpY2UsXG4gIEluYm94U2VydmljZSwgSW5ib3hTdGF0ZSxcbiAgUHJlcGFyZVNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsXG4gIFVzZXJTZXJ2aWNlXG59IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge1VzZXJBdmF0YXJDb21wb25lbnR9IGZyb20gJy4uLy4uL3VpL3VzZXItYXZhdGFyL3VzZXItYXZhdGFyLmNvbXBvbmVudCc7XG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWFwcC1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYXBwLWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FwcC1iYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBcHBCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIHRyYW5zcGFyZW50ID0gZmFsc2U7XG5cbiAgcHJlcGFyZWRJdGVtc0NvdW50OiBudW1iZXI7XG4gIGluYm94U3RhdGU6IEluYm94U3RhdGU7XG4gIHVzZXI6IEVvVXNlcjtcbiAgY2FwYWJpbGl0aWVzOiBDYXBhYmlsaXRpZXM7XG4gIGV4ZUFjdGlvbnM6IGJvb2xlYW47XG4gIHNpZGViYXJTaG93ID0gZmFsc2U7XG4gIG9wdGlvbnM6IGFueTtcbiAgaWNvblRpdGxlczogYW55O1xuICBsb2dvOiBzdHJpbmc7XG4gIHBhZ2VWaXNpYmxlID0gdHJ1ZTtcbiAgZG9jdToge2xpbms6IHN0cmluZywgbGFiZWw6IHN0cmluZ307XG4gIEBWaWV3Q2hpbGRyZW4oVXNlckF2YXRhckNvbXBvbmVudCkgYXZhdGFyQ29tcG9uZW50czogUXVlcnlMaXN0PFVzZXJBdmF0YXJDb21wb25lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIGNhcGFiaWxpdHlTZXJ2aWNlOiBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBpbmJveFNlcnZpY2U6IEluYm94U2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBwcmVwYXJlU2VydmljZTogUHJlcGFyZVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgY2xpcGJvYXJkOiBDbGlwYm9hcmRTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgYnBtU2VydmljZTogQnBtU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50U2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBlbGVtUmVmOiBFbGVtZW50UmVmLFxuICAgICAgICAgICAgICApIHtcbiAgICB0aGlzLmNhcGFiaWxpdGllcyA9IHRoaXMuY2FwYWJpbGl0eVNlcnZpY2UuZ2V0Q2FwYWJpbGl0aWVzKCk7XG4gICAgdGhpcy5sb2dvID0gdGhpcy5jb25maWcuZ2V0TmF2aWdhdGlvbkJhckltYWdlKCk7XG4gICAgLy8gbGlzdGVuIGZvciByb3V0aW5nIGV2ZW50cyB0byBoaWRlIGFueSBhY3RpdmUgb3ZlcmxheXNcbiAgICAvLyBvbiBjaGFuZ2luZyByb3V0ZVxuICAgIHRoaXMucm91dGVyXG4gICAgICAuZXZlbnRzLnBpcGUoXG4gICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgICB0aGlzLnNpZGViYXJTaG93ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy51c2VyU2VydmljZVxuICAgICAgLnVzZXIkLnBpcGUoXG4gICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUodXNlciA9PiB0aGlzLnVzZXIgPSB1c2VyKTtcblxuICAgIGlmICh0aGlzLmNhcGFiaWxpdGllcy5pbmJveCkge1xuICAgICAgdGhpcy5pbmJveFNlcnZpY2VcbiAgICAgICAgLmluYm94U3RhdGUkLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgICAuc3Vic2NyaWJlKChpbmJveFN0YXRlOiBJbmJveFN0YXRlKSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuaW5ib3hTdGF0ZSAmJiB0aGlzLmluYm94U3RhdGUudW5yZWFkbWVzc2FnZXMgPCBpbmJveFN0YXRlLnVucmVhZG1lc3NhZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLnNlbmROb3RpZmljYXRpb24oKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5pbmJveFN0YXRlID0gaW5ib3hTdGF0ZTtcbiAgICAgICAgfSk7XG4gICAgICB0aGlzLmV2ZW50U2VydmljZS5vbihFbmFpb0V2ZW50LlNZU1RFTV9TVEFUVVNfSU5CT1hfQ0hBTkdFRCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuaW5ib3hTZXJ2aWNlLnJlZnJlc2hJbmJveFN0YXRlKCkpXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2FwYWJpbGl0aWVzLmludHJheSkge1xuICAgICAgdGhpcy5wcmVwYXJlU2VydmljZVxuICAgICAgICAucHJlcGFyZWRJdGVtQ291bnQkLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgICAuc3Vic2NyaWJlKGNvdW50ID0+IHtcbiAgICAgICAgICB0aGlzLnByZXBhcmVkSXRlbXNDb3VudCA9IGNvdW50O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLnRyYW5zbGF0ZVxuICAgICAgLm9uTGFuZ0NoYW5nZVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNldEljb25UaXRsZXMoKSk7XG4gIH1cblxuICBvcGVuRGFzaGJvYXJkKG9wZW5Jbk5ld1dpbmRvdzogYm9vbGVhbikge1xuICAgIGlmIChvcGVuSW5OZXdXaW5kb3cpIHtcbiAgICAgIHdpbmRvdy5vcGVuKCcvJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLyddKTtcbiAgICB9XG4gIH1cblxuICBnZXREb2N1bWVudGF0aW9uKCkge1xuICAgIHRoaXMudXNlclNlcnZpY2VcbiAgICAgIC51c2VyJFxuICAgICAgLnN1YnNjcmliZShkYXRhID0+IHtcbiAgICAgICAgY29uc3QgZG9jdSA9IHRoaXMuY29uZmlnLmdldFJhdygnYWJvdXQuZG9jdScpO1xuICAgICAgICBjb25zdCBsaW5rID0gZG9jdS5saW5rLnJlcGxhY2UoJyMjI3VzZXJMYW5nIyMjJywgZGF0YS51c2VyU2V0dGluZ3MuY2xpZW50bG9jYWxlLnN1YnN0cmluZygwLCAyKSk7XG4gICAgICAgIHRoaXMuZG9jdSA9IHsuLi5kb2N1LCBsaW5rfTtcbiAgICAgIH0pXG4gIH1cblxuICB1cGRhdGVPblNjaGVtYUNoYW5nZSgpIHtcbiAgICB0aGlzLmV2ZW50U2VydmljZVxuICAgICAgLm9uKEVuYWlvRXZlbnQuU0NIRU1BX0xPQ0FMRV9DSEFOR0VEKS5waXBlKFxuICAgICAgdW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5icG1TZXJ2aWNlXG4gICAgICAgICAgLmdldEV4ZWN1dGFibGVQcm9jZXNzZXMobnVsbCwgbnVsbCwgbnVsbCwgbnVsbCwgdHJ1ZSlcbiAgICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgICAvLyB0aGlzLmV4ZUFjdGlvbnMgPSAhIXJlcy5sZW5ndGg7XG4gICAgICAgICAgICB0aGlzLmV4ZUFjdGlvbnMgPSB0aGlzLmJwbVNlcnZpY2UuaGFzTWFpbkV4ZWN1dGFibGVQcm9jZXNzZXM7XG4gICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG9uVG9nZ2xlUHJvZmlsZU92ZXJsYXkoKXtcbiAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIHRoaXMuZWxlbVJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyNzZXR0aW5ncycpLmZvY3VzKCk7XG4gICB9KTtcbiAgfVxuXG4gIHNldEljb25UaXRsZXMoKSB7XG4gICAgdGhpcy5pY29uVGl0bGVzID0ge1xuICAgICAgc2VhcmNoOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5iYXIuYnV0dG9uLnNlYXJjaC50b29sdGlwJyksXG4gICAgICBmaWxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5iYXIuYnV0dG9uLmZpbGUudG9vbHRpcCcpLFxuICAgICAgZXhlYWN0aW9uczogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYmFyLmJ1dHRvbi5leGVjdXRlLmFjdGlvbnMudG9vbHRpcCcpLFxuICAgICAgZmF2b3JpdGVzOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5iYXIuYnV0dG9uLmZhdm9yaXRlcy50b29sdGlwJyksXG4gICAgICBwcmVwYXJlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5iYXIuYnV0dG9uLnByZXBhcmUudG9vbHRpcCcpLFxuICAgICAgaW5kZXg6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmJhci5idXR0b24uaW5ib3gudG9vbHRpcCcpLFxuICAgICAgcHJvZmlsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uYmFyLmJ1dHRvbi51c2VyLnByb2ZpbGUudGl0bGUnKSxcbiAgICAgIGFib3V0OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5zaWRlYmFyLmhlbHAubWFudWFsLnRvb2x0aXAnKVxuICAgIH07XG4gIH1cblxuXG4gIHByaXZhdGUgc2VuZE5vdGlmaWNhdGlvbigpIHtcbiAgICBpZiAoTm90aWZpY2F0aW9uLnBlcm1pc3Npb24gPT09ICdncmFudGVkJykge1xuICAgICAgdGhpcy5pbml0Tm90aWZpY2F0aW9uKCk7XG4gICAgfSBlbHNlIGlmIChOb3RpZmljYXRpb24ucGVybWlzc2lvbiAhPT0gJ2RlbmllZCcpIHtcbiAgICAgIE5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLmluaXROb3RpZmljYXRpb24oKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdE5vdGlmaWNhdGlvbigpIHtcbiAgICBjb25zdCB0aXRsZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmluYm94Lm5vdGlmaWNhdGlvbi50aXRsZScpO1xuICAgIGNvbnN0IGJvZHkgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5pbmJveC5ub3RpZmljYXRpb24uYm9keScpO1xuICAgIGNvbnN0IGljb24gPSAnYXNzZXRzL19kZWZhdWx0L2ltZy95dXV2aXMtYWdlbnQucG5nJztcblxuICAgIGNvbnN0IG5vdGlmaWNhdGlvbiA9IG5ldyBOb3RpZmljYXRpb24odGl0bGUsIHtcbiAgICAgIGJvZHk6IGJvZHksXG4gICAgICBpY29uOiBpY29uXG4gICAgfSk7XG5cbiAgICB0aGlzLmluaXROb3RpZmljYXRpb25DbGlja0xpc3RlbmVyKG5vdGlmaWNhdGlvbik7XG4gIH1cblxuICAvLyBUaGlzIGlzIGxpc3RlbmluZyBmb3IgdGhlIG5hdmlnYXRpb24gY2xpY2sgZXZlbnQuIFdoZW4gdGhlIGNsaWVudCB0YWIgaXMgYWN0aXZlLCBpdCBqdXN0IG5hdmlnYXRlcyB0byB0aGUgaW5ib3ggcm91dGUuXG4gIC8vIElmIG5vdCwgaXQgb3BlbnMgYSBuZXcgdGFiIGFuZCBzaG93cyB0aGUgaW5ib3ggdGhlcmUuXG4gIHByaXZhdGUgaW5pdE5vdGlmaWNhdGlvbkNsaWNrTGlzdGVuZXIobm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24pIHtcbiAgICBub3RpZmljYXRpb24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5wYWdlVmlzaWJsZSkge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvaW5ib3gnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGZ1bGxQYXRoID0gd2luZG93LmxvY2F0aW9uLmhyZWY7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRSb3V0ZSA9IHRoaXMucm91dGVyLnVybDtcbiAgICAgICAgY29uc3QgcGF0aFRvTmF2aWdhdGUgPSBmdWxsUGF0aC5yZXBsYWNlKGN1cnJlbnRSb3V0ZSwgJycpICsgJy9pbmJveCc7XG4gICAgICAgIHdpbmRvdy5vcGVuKHBhdGhUb05hdmlnYXRlLCAnX2JsYW5rJyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvLyBUaGlzIGxpc3RlbmVyIGlzIG5lZWRlZCB0byBjaGVjaywgaWYgdGhlIGNsaWVudCB0YWIgaXMgYWN0aXZlIG9yIG5vdFxuICBwcml2YXRlIGluaXRWaXNpYmlsaXR5Q2hhbmdlTGlzdGVuZXIoKSB7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndmlzaWJpbGl0eWNoYW5nZScsICgpID0+IHRoaXMucGFnZVZpc2libGUgPSAhdGhpcy5wYWdlVmlzaWJsZSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVwZGF0ZU9uU2NoZW1hQ2hhbmdlKCk7XG4gICAgdGhpcy5zZXRJY29uVGl0bGVzKCk7XG4gICAgdGhpcy5nZXREb2N1bWVudGF0aW9uKCk7XG4gICAgdGhpcy5leGVBY3Rpb25zID0gdGhpcy5icG1TZXJ2aWNlLmhhc01haW5FeGVjdXRhYmxlUHJvY2Vzc2VzO1xuICAgIC8vIHRoaXMuYnBtU2VydmljZVxuICAgIC8vICAgLmdldEV4ZWN1dGFibGVQcm9jZXNzZXMobnVsbCwgdHJ1ZSlcbiAgICAvLyAgIC5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAvLyAgICAgdGhpcy5leGVBY3Rpb25zID0gISFyZXMubGVuZ3RoO1xuICAgIC8vICAgfSk7XG4gICAgdGhpcy5pbml0VmlzaWJpbGl0eUNoYW5nZUxpc3RlbmVyKCk7XG4gIH1cbn1cbiIsIjxlby1zaWRlLWJhciAoZW9PdXRzaWRlQ2xpY2spPVwic2lkZWJhclNob3cgPSAhc2lkZWJhclNob3dcIiAqbmdJZj1cInNpZGViYXJTaG93XCI+XG4gIDxkaXYgY2xhc3M9XCJuYXZpXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZW8tc2lkZWJhci1wbHVnaW4ubmF2aVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJoZWxwXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZW8tc2lkZWJhci1wbHVnaW4uaGVscFwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L2VvLXNpZGUtYmFyPlxuXG48ZGl2IGNsYXNzPVwiZW8tYXBwLWJhclwiIFtuZ0NsYXNzXT1cInt0cmFuc3BhcmVudDogdHJhbnNwYXJlbnR9XCIgZW9SdGxBd2FyZT5cblxuICA8ZGl2IGNsYXNzPVwibGVmdFwiPlxuXG4gICAgPGVvLWljb24gaWQ9XCJhcHAtbWVudVwiIGNsYXNzPVwibWVudSB3aGl0ZVwiIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cInNpZGViYXJTaG93ID0gIXNpZGViYXJTaG93XCIgKGtleXVwLmVudGVyKT1cInNpZGViYXJTaG93ID0gIXNpZGViYXJTaG93XCJcbiAgICAgICAgICAgICBbaWNvblNyY109XCInYXNzZXRzL19kZWZhdWx0L3N2Zy9pY19oYW1idXJnZXIuc3ZnJ1wiPjwvZW8taWNvbj5cbiAgICA8ZW8taWNvbiAoY2xpY2spPVwib3BlbkRhc2hib2FyZCgkZXZlbnQuY3RybEtleSlcIiAgKGF1eGNsaWNrKT1cIm9wZW5EYXNoYm9hcmQodHJ1ZSlcIiBcbiAgICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cIm9wZW5EYXNoYm9hcmQoZmFsc2UpXCIgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJsb2dvIHdoaXRlXCIgW2ljb25TcmNdPVwibG9nb1wiPjwvZW8taWNvbj5cblxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgICA8YSBbcm91dGVyTGlua109XCJbIHtvdXRsZXRzOiB7IG1vZGFsOiAnc2VhcmNoJyB9IH0gXVwiPlxuICAgICAgICA8ZW8taWNvbiBpZD1cImFwcC1zZWFyY2hcIiBjbGFzcz1cInNlYXJjaCB3aGl0ZVwiIHF1ZXJ5UGFyYW1zSGFuZGxpbmc9XCJwcmVzZXJ2ZVwiXG4gICAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCJpY29uVGl0bGVzLnNlYXJjaFwiXG4gICAgICAgICAgICAgICAgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfc2VhcmNoLnN2ZydcIj48L2VvLWljb24+XG4gICAgICA8L2E+XG5cbiAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlsge291dGxldHM6IHsgbW9kYWw6ICdhZGQnIH0gfSBdXCI+XG4gICAgICAgIDxlby1pY29uIGlkPVwiYXBwLWFkZFwiIGNsYXNzPVwiYWRkIHdoaXRlXCIgKm5nSWY9XCJjYXBhYmlsaXRpZXMuaW50cmF5XCJcbiAgICAgICAgICAgICAgICBbaWNvblRpdGxlXT1cImljb25UaXRsZXMuZmlsZVwiXG4gICAgICAgICAgICAgICAgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfYWRkLnN2ZydcIj48L2VvLWljb24+XG4gICAgICA8L2E+ICAgICAgXG4gICAgICA8YSBbcm91dGVyTGlua109XCJbIHtvdXRsZXRzOiB7IG1vZGFsOiAnYWN0aW9ucycgfSB9IF1cIj5cbiAgICAgICAgPGVvLWljb24gaWQ9XCJhcHAtYWN0aW9uc1wiIGNsYXNzPVwiYWN0aW9ucyB3aGl0ZVwiICpuZ0lmPVwiZXhlQWN0aW9uc1wiXG4gICAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCJpY29uVGl0bGVzLmV4ZWFjdGlvbnNcIlxuICAgICAgICAgICAgICAgIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2JwbV9zdGFydC5zdmcnXCI+PC9lby1pY29uPlxuICAgICAgPC9hPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+XG4gICAgPGRpdiBjbGFzcz1cInN1YlwiPlxuICAgICAgPGVvLWNsaXBib2FyZD48L2VvLWNsaXBib2FyZD5cbiAgICA8L2Rpdj5cbiAgICA8YSByb3V0ZXJMaW5rPVwiL2Zhdm9yaXRlc1wiPlxuICAgICAgPGVvLWljb24gY2xhc3M9XCJidXR0b24gd2hpdGUgZmF2b3JpdGVcIlxuICAgICAgICAgICAgICBbaWNvblRpdGxlXT1cImljb25UaXRsZXMuZmF2b3JpdGVzXCIgKm5nSWY9XCJjYXBhYmlsaXRpZXMuZmF2b3JpdGVzXCJcbiAgICAgICAgICAgICAgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfZmF2b3JpdGUuc3ZnJ1wiPjwvZW8taWNvbj5cbiAgICA8L2E+XG4gICAgPGEgcm91dGVyTGluaz1cIi9wcmVwYXJlXCI+XG4gICAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiB3aGl0ZSBwcmVwYXJlXCIgKm5nSWY9XCJjYXBhYmlsaXRpZXMuaW50cmF5XCJcbiAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCJpY29uVGl0bGVzLnByZXBhcmVcIlxuICAgICAgICAgICAgICBbYmFkZ2VdPVwicHJlcGFyZWRJdGVtc0NvdW50XCIgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfcHJlcGFyZS5zdmcnXCI+PC9lby1pY29uPlxuICAgIDwvYT5cbiAgICA8YSByb3V0ZXJMaW5rPVwiL2luYm94XCI+XG4gICAgICA8ZW8taWNvbiBjbGFzcz1cImJ1dHRvbiB3aGl0ZSBpbmJveFwiIFtuZ0NsYXNzXT1cInthbGVydDogaW5ib3hTdGF0ZT8ub3ZlcmR1ZW1lc3NhZ2VzID4gMH1cIiAqbmdJZj1cImNhcGFiaWxpdGllcy5pbmJveFwiXG4gICAgICAgICAgICAgIFtpY29uVGl0bGVdPVwiaWNvblRpdGxlcy5pbmRleFwiXG4gICAgICAgICAgICAgIFtiYWRnZV09XCJpbmJveFN0YXRlPy50b3RhbG1lc3NhZ2VzXCIgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfaW5ib3guc3ZnJ1wiPjwvZW8taWNvbj5cbiAgICA8L2E+XG4gICAgPGEgaHJlZj1cInt7ZG9jdS5saW5rfX1cIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgIDxlby1pY29uIGNsYXNzPVwiYnV0dG9uIHdoaXRlIGFib3V0XCJcbiAgICAgICAgICAgICAgW2ljb25UaXRsZV09XCJpY29uVGl0bGVzLmFib3V0XCIgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfYWJvdXQuc3ZnJ1wiPjwvZW8taWNvbj5cbiAgICA8L2E+XG4gICAgPGVvLW92ZXJsYXkgI3VzZXJwYW5lbCAob25Ub2dnbGUpPVwib25Ub2dnbGVQcm9maWxlT3ZlcmxheSgpXCI+XG4gICAgICA8ZW8tdXNlci1hdmF0YXIgY2xhc3M9XCJidG5cIiBpZD1cImFwcC1wcm9maWxlXCIgW3Nob3dQcmVzZW5jZV09XCJ0cnVlXCIgW3RpdGxlXT1cImljb25UaXRsZXMucHJvZmlsZVwiIHRhYmluZGV4PVwiMFwiPjwvZW8tdXNlci1hdmF0YXI+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJlby1wcm9maWxlXCIgdGFiaW5kZXg9XCItMVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyXCIgdGFiaW5kZXg9XCItMVwiPlxuICAgICAgICAgIDxlby11c2VyLWF2YXRhciB0YWJpbmRleD1cIi0xXCIgPjwvZW8tdXNlci1hdmF0YXI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm92ZXJsYXlcIiB0YWJpbmRleD1cIi0xXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7dXNlci5maXJzdG5hbWV9fSB7e3VzZXIubGFzdG5hbWV9fTwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haWxcIj57e3VzZXIuZW1haWx9fTwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByZXNlbmNlXCIgKm5nSWY9XCIhdXNlci5wcmVzZW50XCIgdHJhbnNsYXRlPmVvLnN0YXRlLnNldHRpbmdzLnByZXNlbmNlLmFic2VudDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hdlwiIGVvVHJhcEZvY3VzPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbSBzZXR0aW5nc1wiIChjbGljayk9XCJ1c2VycGFuZWw/LmNsb3NlKClcIiA+XG4gICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL3NldHRpbmdzXCIgaWQ9XCJzZXR0aW5nc1wiIHRhYmluZGV4PVwiMFwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiIGZvY3VzYWJsZSB0cmFuc2xhdGU+ZW8uYmFyLmJ1dHRvbi5zZXR0aW5ncy50aXRsZTwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW0gbG9nb3V0XCIgKm5nSWY9XCIhY2FwYWJpbGl0aWVzLnNzb1wiPlxuICAgICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiWycvZW50ZXInLCB7IGxvZ291dDogdHJ1ZSB9XVwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiIHRyYW5zbGF0ZT5lby5iYXIuYnV0dG9uLmxvZ291dC50aXRsZTwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJlby1zaWRlYmFyLXBsdWdpbi5wcm9maWxlXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZW8tb3ZlcmxheT5cblxuXG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -9,26 +9,12 @@ import * as i6 from "../../../ui/eo-icon/eo-icon.component";
9
9
  import * as i7 from "../../../ui/router-link/router-link.directive";
10
10
  import * as i8 from "../../../util/directive/trap-focus.directive";
11
11
  export class SideBarComponent {
12
- constructor(capabilityService, config, cd, sanitizer, elemRef, userService) {
12
+ constructor(capabilityService, config, sanitizer, elemRef) {
13
13
  this.capabilityService = capabilityService;
14
14
  this.config = config;
15
- this.cd = cd;
16
15
  this.sanitizer = sanitizer;
17
16
  this.elemRef = elemRef;
18
- this.userService = userService;
19
17
  this.eoOutsideClick = new EventEmitter();
20
- this.getUserLang();
21
- this.getDocumentation();
22
- }
23
- getDocumentation() {
24
- const docu = this.config.getRaw('about.docu');
25
- const link = docu.link.replace('###userLang###', this.userLang.substring(0, 2));
26
- this.docu = { ...docu, link };
27
- }
28
- getUserLang() {
29
- this.userService
30
- .user$
31
- .subscribe(data => this.userLang = data.userSettings.clientlocale);
32
18
  }
33
19
  getCapabilities() {
34
20
  this.capabilities = this.capabilityService.getCapabilities();
@@ -45,12 +31,12 @@ export class SideBarComponent {
45
31
  this.setBackgroundImage();
46
32
  }
47
33
  }
48
- SideBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SideBarComponent, deps: [{ token: i1.CapabilitiesService }, { token: i1.Config }, { token: i0.ChangeDetectorRef }, { token: i2.DomSanitizer }, { token: i0.ElementRef }, { token: i1.UserService }], target: i0.ɵɵFactoryTarget.Component });
49
- SideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: SideBarComponent, selector: "eo-side-bar", outputs: { eoOutsideClick: "eoOutsideClick" }, ngImport: i0, template: "<div class=\"eo-side-bar\" eoTrapFocus>\n <eo-icon (click)=\"close()\" (keydown.enter)=\"close()\" tabindex=\"0\" class=\"button white close\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" focusable></eo-icon>\n\n <div class=\"head\" [style.background-image]=\"backgroundImage\"></div>\n\n <div class=\"body\">\n <div class=\"navigation\">\n <div class=\"nav-item\" *ngIf=\"capabilities.favorites\">\n <a routerLink=\"/favorites\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.favorites</a>\n </div>\n <div class=\"nav-item\" *ngIf=\"capabilities.inbox\">\n <a routerLink=\"/inbox\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.inbox</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.intray\">\n <a routerLink=\"/prepare\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.prepare</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.bpm\">\n <a routerLink=\"/process\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.process</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.notifications\">\n <a routerLink=\"/notifications\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.notifications</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.storedqueries\">\n <a routerLink=\"/stored-queries\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.storedqueries</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.recyclebin\">\n <a routerLink=\"/recyclebin\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.recyclebin</a>\n </div>\n <ng-content select=\".navi\"></ng-content>\n\n <div class=\"nav-item\">\n <a href=\"{{docu.link}}\" target=\"_blank\">{{docu.label | translate}}</a>\n </div>\n\n <div class=\"nav-item\" >\n <a routerLink=\"/about\" translate>eo.sidebar.help.about.tooltip</a>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host{--sidebar-header-height: 250px}:host .eo-side-bar{background-color:var(--color-primary);position:absolute;box-shadow:0 0 20px 0 rgba(var(--color-black-rgb),.5);top:0;bottom:0;animation-duration:.2s;z-index:20;width:300px}[dir=ltr] :host .eo-side-bar{left:0;right:inherit}[dir=rtl] :host .eo-side-bar{right:0;left:inherit}[dir=ltr] :host .eo-side-bar{animation-name:sidebarAppearLeft}[dir=rtl] :host .eo-side-bar{animation-name:sidebarAppearRight}:host .eo-side-bar .close{position:absolute;top:var(--app-pane-padding);z-index:22}[dir=ltr] :host .eo-side-bar .close{left:var(--app-pane-padding)}[dir=rtl] :host .eo-side-bar .close{right:var(--app-pane-padding)}:host .eo-side-bar .head{position:absolute;top:0;right:0;left:0;height:var(--sidebar-header-height);background-size:cover;background-position:center center;z-index:21}:host .eo-side-bar .body ::ng-deep{position:absolute;top:calc(var(--sidebar-header-height));right:0;left:0;bottom:0;z-index:22}:host .eo-side-bar .body ::ng-deep a:focus eo-icon,:host .eo-side-bar .body ::ng-deep a:hover eo-icon{background:rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item a{color:var(--color-white);padding:var(--app-pane-padding);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-side-bar .body ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-side-bar .body ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-side-bar .body ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}@keyframes sidebarAppearLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes sidebarAppearRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}\n"], dependencies: [{ kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i6.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i7.RouterLinkDirective, selector: "a[routerLink]" }, { kind: "directive", type: i8.TrapFocusDirective, selector: "[eoTrapFocus]" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
34
+ SideBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SideBarComponent, deps: [{ token: i1.CapabilitiesService }, { token: i1.Config }, { token: i2.DomSanitizer }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
35
+ SideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: SideBarComponent, selector: "eo-side-bar", outputs: { eoOutsideClick: "eoOutsideClick" }, ngImport: i0, template: "<div class=\"eo-side-bar\" eoTrapFocus>\n <eo-icon (click)=\"close()\" (keydown.enter)=\"close()\" tabindex=\"0\" class=\"button white close\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" focusable></eo-icon>\n\n <div class=\"head\" [style.background-image]=\"backgroundImage\"></div>\n\n <div class=\"body\">\n <div class=\"navigation\">\n <div class=\"nav-item\" *ngIf=\"capabilities.favorites\">\n <a routerLink=\"/favorites\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.favorites</a>\n </div>\n <div class=\"nav-item\" *ngIf=\"capabilities.inbox\">\n <a routerLink=\"/inbox\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.inbox</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.intray\">\n <a routerLink=\"/prepare\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.prepare</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.bpm\">\n <a routerLink=\"/process\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.process</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.notifications\">\n <a routerLink=\"/notifications\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.notifications</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.storedqueries\">\n <a routerLink=\"/stored-queries\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.storedqueries</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.recyclebin\">\n <a routerLink=\"/recyclebin\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.recyclebin</a>\n </div>\n <ng-content select=\".navi\"></ng-content>\n <div class=\"nav-item\" >\n <a routerLink=\"/about\" translate>eo.sidebar.help.about.tooltip</a>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host{--sidebar-header-height: 250px}:host .eo-side-bar{background-color:var(--color-primary);position:absolute;box-shadow:0 0 20px 0 rgba(var(--color-black-rgb),.5);top:0;bottom:0;animation-duration:.2s;z-index:20;width:300px}[dir=ltr] :host .eo-side-bar{left:0;right:inherit}[dir=rtl] :host .eo-side-bar{right:0;left:inherit}[dir=ltr] :host .eo-side-bar{animation-name:sidebarAppearLeft}[dir=rtl] :host .eo-side-bar{animation-name:sidebarAppearRight}:host .eo-side-bar .close{position:absolute;top:var(--app-pane-padding);z-index:22}[dir=ltr] :host .eo-side-bar .close{left:var(--app-pane-padding)}[dir=rtl] :host .eo-side-bar .close{right:var(--app-pane-padding)}:host .eo-side-bar .head{position:absolute;top:0;right:0;left:0;height:var(--sidebar-header-height);background-size:cover;background-position:center center;z-index:21}:host .eo-side-bar .body ::ng-deep{position:absolute;top:calc(var(--sidebar-header-height));right:0;left:0;bottom:0;z-index:22}:host .eo-side-bar .body ::ng-deep a:focus eo-icon,:host .eo-side-bar .body ::ng-deep a:hover eo-icon{background:rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item a{color:var(--color-white);padding:var(--app-pane-padding);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-side-bar .body ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-side-bar .body ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-side-bar .body ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}@keyframes sidebarAppearLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes sidebarAppearRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}\n"], dependencies: [{ kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i6.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "directive", type: i7.RouterLinkDirective, selector: "a[routerLink]" }, { kind: "directive", type: i8.TrapFocusDirective, selector: "[eoTrapFocus]" }] });
50
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SideBarComponent, decorators: [{
51
37
  type: Component,
52
- args: [{ selector: 'eo-side-bar', template: "<div class=\"eo-side-bar\" eoTrapFocus>\n <eo-icon (click)=\"close()\" (keydown.enter)=\"close()\" tabindex=\"0\" class=\"button white close\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" focusable></eo-icon>\n\n <div class=\"head\" [style.background-image]=\"backgroundImage\"></div>\n\n <div class=\"body\">\n <div class=\"navigation\">\n <div class=\"nav-item\" *ngIf=\"capabilities.favorites\">\n <a routerLink=\"/favorites\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.favorites</a>\n </div>\n <div class=\"nav-item\" *ngIf=\"capabilities.inbox\">\n <a routerLink=\"/inbox\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.inbox</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.intray\">\n <a routerLink=\"/prepare\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.prepare</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.bpm\">\n <a routerLink=\"/process\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.process</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.notifications\">\n <a routerLink=\"/notifications\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.notifications</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.storedqueries\">\n <a routerLink=\"/stored-queries\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.storedqueries</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.recyclebin\">\n <a routerLink=\"/recyclebin\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.recyclebin</a>\n </div>\n <ng-content select=\".navi\"></ng-content>\n\n <div class=\"nav-item\">\n <a href=\"{{docu.link}}\" target=\"_blank\">{{docu.label | translate}}</a>\n </div>\n\n <div class=\"nav-item\" >\n <a routerLink=\"/about\" translate>eo.sidebar.help.about.tooltip</a>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host{--sidebar-header-height: 250px}:host .eo-side-bar{background-color:var(--color-primary);position:absolute;box-shadow:0 0 20px 0 rgba(var(--color-black-rgb),.5);top:0;bottom:0;animation-duration:.2s;z-index:20;width:300px}[dir=ltr] :host .eo-side-bar{left:0;right:inherit}[dir=rtl] :host .eo-side-bar{right:0;left:inherit}[dir=ltr] :host .eo-side-bar{animation-name:sidebarAppearLeft}[dir=rtl] :host .eo-side-bar{animation-name:sidebarAppearRight}:host .eo-side-bar .close{position:absolute;top:var(--app-pane-padding);z-index:22}[dir=ltr] :host .eo-side-bar .close{left:var(--app-pane-padding)}[dir=rtl] :host .eo-side-bar .close{right:var(--app-pane-padding)}:host .eo-side-bar .head{position:absolute;top:0;right:0;left:0;height:var(--sidebar-header-height);background-size:cover;background-position:center center;z-index:21}:host .eo-side-bar .body ::ng-deep{position:absolute;top:calc(var(--sidebar-header-height));right:0;left:0;bottom:0;z-index:22}:host .eo-side-bar .body ::ng-deep a:focus eo-icon,:host .eo-side-bar .body ::ng-deep a:hover eo-icon{background:rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item a{color:var(--color-white);padding:var(--app-pane-padding);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-side-bar .body ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-side-bar .body ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-side-bar .body ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}@keyframes sidebarAppearLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes sidebarAppearRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}\n"] }]
53
- }], ctorParameters: function () { return [{ type: i1.CapabilitiesService }, { type: i1.Config }, { type: i0.ChangeDetectorRef }, { type: i2.DomSanitizer }, { type: i0.ElementRef }, { type: i1.UserService }]; }, propDecorators: { eoOutsideClick: [{
38
+ args: [{ selector: 'eo-side-bar', template: "<div class=\"eo-side-bar\" eoTrapFocus>\n <eo-icon (click)=\"close()\" (keydown.enter)=\"close()\" tabindex=\"0\" class=\"button white close\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" focusable></eo-icon>\n\n <div class=\"head\" [style.background-image]=\"backgroundImage\"></div>\n\n <div class=\"body\">\n <div class=\"navigation\">\n <div class=\"nav-item\" *ngIf=\"capabilities.favorites\">\n <a routerLink=\"/favorites\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.favorites</a>\n </div>\n <div class=\"nav-item\" *ngIf=\"capabilities.inbox\">\n <a routerLink=\"/inbox\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.inbox</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.intray\">\n <a routerLink=\"/prepare\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.prepare</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.bpm\">\n <a routerLink=\"/process\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.process</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.notifications\">\n <a routerLink=\"/notifications\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.notifications</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.storedqueries\">\n <a routerLink=\"/stored-queries\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.storedqueries</a>\n </div>\n\n <div class=\"nav-item\" *ngIf=\"capabilities.recyclebin\">\n <a routerLink=\"/recyclebin\" routerLinkActive=\"active-link\"\n translate>eo.view.navigation.recyclebin</a>\n </div>\n <ng-content select=\".navi\"></ng-content>\n <div class=\"nav-item\" >\n <a routerLink=\"/about\" translate>eo.sidebar.help.about.tooltip</a>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host{--sidebar-header-height: 250px}:host .eo-side-bar{background-color:var(--color-primary);position:absolute;box-shadow:0 0 20px 0 rgba(var(--color-black-rgb),.5);top:0;bottom:0;animation-duration:.2s;z-index:20;width:300px}[dir=ltr] :host .eo-side-bar{left:0;right:inherit}[dir=rtl] :host .eo-side-bar{right:0;left:inherit}[dir=ltr] :host .eo-side-bar{animation-name:sidebarAppearLeft}[dir=rtl] :host .eo-side-bar{animation-name:sidebarAppearRight}:host .eo-side-bar .close{position:absolute;top:var(--app-pane-padding);z-index:22}[dir=ltr] :host .eo-side-bar .close{left:var(--app-pane-padding)}[dir=rtl] :host .eo-side-bar .close{right:var(--app-pane-padding)}:host .eo-side-bar .head{position:absolute;top:0;right:0;left:0;height:var(--sidebar-header-height);background-size:cover;background-position:center center;z-index:21}:host .eo-side-bar .body ::ng-deep{position:absolute;top:calc(var(--sidebar-header-height));right:0;left:0;bottom:0;z-index:22}:host .eo-side-bar .body ::ng-deep a:focus eo-icon,:host .eo-side-bar .body ::ng-deep a:hover eo-icon{background:rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item a{color:var(--color-white);padding:var(--app-pane-padding);display:block;cursor:pointer;text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-side-bar .body ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host .eo-side-bar .body ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host .eo-side-bar .body ::ng-deep .nav-item a.active-link{border-color:var(--color-accent);background:rgba(var(--color-white-rgb),.06);cursor:default}:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}@keyframes sidebarAppearLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes sidebarAppearRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}\n"] }]
39
+ }], ctorParameters: function () { return [{ type: i1.CapabilitiesService }, { type: i1.Config }, { type: i2.DomSanitizer }, { type: i0.ElementRef }]; }, propDecorators: { eoOutsideClick: [{
54
40
  type: Output
55
41
  }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1iYXIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1iYXIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQWMsWUFBWSxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7OztBQVdyRyxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCLFlBQW9CLGlCQUFzQyxFQUN0QyxNQUFjLEVBQ2QsRUFBcUIsRUFDckIsU0FBdUIsRUFDdkIsT0FBbUIsRUFDbkIsV0FBd0I7UUFMeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUN0QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUN2QixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBUHJDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVF6QyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBQyxHQUFHLElBQUksRUFBRSxJQUFJLEVBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSzthQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNoSCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQzs7NkdBakRVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLGtHQ1g3Qiw4dUVBcURBOzJGRDFDYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYTs2T0FhaEIsY0FBYztzQkFEcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7Q2FwYWJpbGl0aWVzLCBDYXBhYmlsaXRpZXNTZXJ2aWNlLCBDb25maWcsIFVzZXJTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuXG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tc2lkZS1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaWRlLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNpZGVCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNhcGFiaWxpdGllczogQ2FwYWJpbGl0aWVzO1xuICBiYWNrZ3JvdW5kSW1hZ2U6IFNhZmVSZXNvdXJjZVVybDtcblxuICB1c2VyTGFuZzogc3RyaW5nO1xuICBkb2N1OiB7IGxpbms6IHN0cmluZywgbGFiZWw6IHN0cmluZyB9O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZW9PdXRzaWRlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjYXBhYmlsaXR5U2VydmljZTogQ2FwYWJpbGl0aWVzU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgZWxlbVJlZjogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UpIHtcbiAgICB0aGlzLmdldFVzZXJMYW5nKCk7XG4gICAgdGhpcy5nZXREb2N1bWVudGF0aW9uKCk7XG4gIH1cblxuICBnZXREb2N1bWVudGF0aW9uKCkge1xuICAgIGNvbnN0IGRvY3UgPSB0aGlzLmNvbmZpZy5nZXRSYXcoJ2Fib3V0LmRvY3UnKTtcbiAgICBjb25zdCBsaW5rID0gZG9jdS5saW5rLnJlcGxhY2UoJyMjI3VzZXJMYW5nIyMjJywgdGhpcy51c2VyTGFuZy5zdWJzdHJpbmcoMCwgMikpO1xuICAgIHRoaXMuZG9jdSA9IHsuLi5kb2N1LCBsaW5rfTtcbiAgfVxuXG4gIGdldFVzZXJMYW5nKCkge1xuICAgIHRoaXMudXNlclNlcnZpY2VcbiAgICAgIC51c2VyJFxuICAgICAgLnN1YnNjcmliZShkYXRhID0+IHRoaXMudXNlckxhbmcgPSBkYXRhLnVzZXJTZXR0aW5ncy5jbGllbnRsb2NhbGUpO1xuICB9XG5cbiAgZ2V0Q2FwYWJpbGl0aWVzKCkge1xuICAgIHRoaXMuY2FwYWJpbGl0aWVzID0gdGhpcy5jYXBhYmlsaXR5U2VydmljZS5nZXRDYXBhYmlsaXRpZXMoKTtcbiAgfVxuXG4gIHNldEJhY2tncm91bmRJbWFnZSgpIHtcbiAgICB0aGlzLmJhY2tncm91bmRJbWFnZSA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTdHlsZShgdXJsKCR7dGhpcy5jb25maWcuZ2V0U2lkZUJhckhlYWRlckltYWdlKCl9KWApO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5lb091dHNpZGVDbGljay5lbWl0KCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmVsZW1SZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdbdGFiaW5kZXg9XCIwXCJdJykuZm9jdXMoKTtcbiAgICB0aGlzLmdldENhcGFiaWxpdGllcygpO1xuICAgIHRoaXMuc2V0QmFja2dyb3VuZEltYWdlKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJlby1zaWRlLWJhclwiIGVvVHJhcEZvY3VzPlxuICA8ZW8taWNvbiAoY2xpY2spPVwiY2xvc2UoKVwiIChrZXlkb3duLmVudGVyKT1cImNsb3NlKClcIiB0YWJpbmRleD1cIjBcIiBjbGFzcz1cImJ1dHRvbiB3aGl0ZSBjbG9zZVwiXG4gICAgW2ljb25TcmNdPVwiJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfY2xlYXIuc3ZnJ1wiIGZvY3VzYWJsZT48L2VvLWljb24+XG5cbiAgPGRpdiBjbGFzcz1cImhlYWRcIiBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCJiYWNrZ3JvdW5kSW1hZ2VcIj48L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiYm9keVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibmF2aWdhdGlvblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbVwiICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmZhdm9yaXRlc1wiPlxuICAgICAgICAgICAgPGEgcm91dGVyTGluaz1cIi9mYXZvcml0ZXNcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLWxpbmtcIlxuICAgICAgICAgICAgICAgdHJhbnNsYXRlPmVvLnZpZXcubmF2aWdhdGlvbi5mYXZvcml0ZXM8L2E+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1pdGVtXCIgKm5nSWY9XCJjYXBhYmlsaXRpZXMuaW5ib3hcIj5cbiAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCIvaW5ib3hcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLWxpbmtcIlxuICAgICAgICAgICAgICAgdHJhbnNsYXRlPmVvLnZpZXcubmF2aWdhdGlvbi5pbmJveDwvYT5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbVwiICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmludHJheVwiPlxuICAgICAgICAgICAgPGEgcm91dGVyTGluaz1cIi9wcmVwYXJlXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCJcbiAgICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby52aWV3Lm5hdmlnYXRpb24ucHJlcGFyZTwvYT5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbVwiICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmJwbVwiPlxuICAgICAgICAgICAgPGEgcm91dGVyTGluaz1cIi9wcm9jZXNzXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCJcbiAgICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby52aWV3Lm5hdmlnYXRpb24ucHJvY2VzczwvYT5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbVwiICpuZ0lmPVwiY2FwYWJpbGl0aWVzLm5vdGlmaWNhdGlvbnNcIj5cbiAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCIvbm90aWZpY2F0aW9uc1wiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiXG4gICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby52aWV3Lm5hdmlnYXRpb24ubm90aWZpY2F0aW9uczwvYT5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbVwiICpuZ0lmPVwiY2FwYWJpbGl0aWVzLnN0b3JlZHF1ZXJpZXNcIj5cbiAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCIvc3RvcmVkLXF1ZXJpZXNcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLWxpbmtcIlxuICAgICAgICAgICAgICB0cmFuc2xhdGU+ZW8udmlldy5uYXZpZ2F0aW9uLnN0b3JlZHF1ZXJpZXM8L2E+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1cIiAqbmdJZj1cImNhcGFiaWxpdGllcy5yZWN5Y2xlYmluXCI+XG4gICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL3JlY3ljbGViaW5cIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLWxpbmtcIlxuICAgICAgICAgICAgICAgdHJhbnNsYXRlPmVvLnZpZXcubmF2aWdhdGlvbi5yZWN5Y2xlYmluPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIi5uYXZpXCI+PC9uZy1jb250ZW50PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1pdGVtXCI+XG4gICAgICAgICAgICA8YSBocmVmPVwie3tkb2N1Lmxpbmt9fVwiIHRhcmdldD1cIl9ibGFua1wiPnt7ZG9jdS5sYWJlbCB8IHRyYW5zbGF0ZX19PC9hPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1pdGVtXCIgPlxuICAgICAgICAgICAgPGEgcm91dGVyTGluaz1cIi9hYm91dFwiIHRyYW5zbGF0ZT5lby5zaWRlYmFyLmhlbHAuYWJvdXQudG9vbHRpcDwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1iYXIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1iYXIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQWMsWUFBWSxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7OztBQVdyRyxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCLFlBQW9CLGlCQUFzQyxFQUN0QyxNQUFjLEVBQ2QsU0FBdUIsRUFDdkIsT0FBbUI7UUFIbkIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQUN0QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUN2QixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBTGhDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQU8zQyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNoSCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQzs7NkdBbENVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLGtHQ1g3Qiw0bEVBZ0RBOzJGRHJDYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYTttTEFhaEIsY0FBYztzQkFEcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7Q2FwYWJpbGl0aWVzLCBDYXBhYmlsaXRpZXNTZXJ2aWNlLCBDb25maWcsIFVzZXJTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuXG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tc2lkZS1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaWRlLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNpZGVCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNhcGFiaWxpdGllczogQ2FwYWJpbGl0aWVzO1xuICBiYWNrZ3JvdW5kSW1hZ2U6IFNhZmVSZXNvdXJjZVVybDtcblxuICB1c2VyTGFuZzogc3RyaW5nO1xuICBkb2N1OiB7IGxpbms6IHN0cmluZywgbGFiZWw6IHN0cmluZyB9O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZW9PdXRzaWRlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjYXBhYmlsaXR5U2VydmljZTogQ2FwYWJpbGl0aWVzU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBlbGVtUmVmOiBFbGVtZW50UmVmKSB7XG5cbiAgfVxuXG4gIGdldENhcGFiaWxpdGllcygpIHtcbiAgICB0aGlzLmNhcGFiaWxpdGllcyA9IHRoaXMuY2FwYWJpbGl0eVNlcnZpY2UuZ2V0Q2FwYWJpbGl0aWVzKCk7XG4gIH1cblxuICBzZXRCYWNrZ3JvdW5kSW1hZ2UoKSB7XG4gICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoYHVybCgke3RoaXMuY29uZmlnLmdldFNpZGVCYXJIZWFkZXJJbWFnZSgpfSlgKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuZW9PdXRzaWRlQ2xpY2suZW1pdCgpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5lbGVtUmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignW3RhYmluZGV4PVwiMFwiXScpLmZvY3VzKCk7XG4gICAgdGhpcy5nZXRDYXBhYmlsaXRpZXMoKTtcbiAgICB0aGlzLnNldEJhY2tncm91bmRJbWFnZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZW8tc2lkZS1iYXJcIiBlb1RyYXBGb2N1cz5cbiAgPGVvLWljb24gKGNsaWNrKT1cImNsb3NlKClcIiAoa2V5ZG93bi5lbnRlcik9XCJjbG9zZSgpXCIgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidXR0b24gd2hpdGUgY2xvc2VcIlxuICAgIFtpY29uU3JjXT1cIidhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2NsZWFyLnN2ZydcIiBmb2N1c2FibGU+PC9lby1pY29uPlxuXG4gIDxkaXYgY2xhc3M9XCJoZWFkXCIgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiYmFja2dyb3VuZEltYWdlXCI+PC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImJvZHlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hdmlnYXRpb25cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1cIiAqbmdJZj1cImNhcGFiaWxpdGllcy5mYXZvcml0ZXNcIj5cbiAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCIvZmF2b3JpdGVzXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCJcbiAgICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby52aWV3Lm5hdmlnYXRpb24uZmF2b3JpdGVzPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtaXRlbVwiICpuZ0lmPVwiY2FwYWJpbGl0aWVzLmluYm94XCI+XG4gICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL2luYm94XCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCJcbiAgICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby52aWV3Lm5hdmlnYXRpb24uaW5ib3g8L2E+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1cIiAqbmdJZj1cImNhcGFiaWxpdGllcy5pbnRyYXlcIj5cbiAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCIvcHJlcGFyZVwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiXG4gICAgICAgICAgICAgICB0cmFuc2xhdGU+ZW8udmlldy5uYXZpZ2F0aW9uLnByZXBhcmU8L2E+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1cIiAqbmdJZj1cImNhcGFiaWxpdGllcy5icG1cIj5cbiAgICAgICAgICAgIDxhIHJvdXRlckxpbms9XCIvcHJvY2Vzc1wiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiXG4gICAgICAgICAgICAgICB0cmFuc2xhdGU+ZW8udmlldy5uYXZpZ2F0aW9uLnByb2Nlc3M8L2E+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1cIiAqbmdJZj1cImNhcGFiaWxpdGllcy5ub3RpZmljYXRpb25zXCI+XG4gICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL25vdGlmaWNhdGlvbnNcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLWxpbmtcIlxuICAgICAgICAgICAgICB0cmFuc2xhdGU+ZW8udmlldy5uYXZpZ2F0aW9uLm5vdGlmaWNhdGlvbnM8L2E+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1cIiAqbmdJZj1cImNhcGFiaWxpdGllcy5zdG9yZWRxdWVyaWVzXCI+XG4gICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL3N0b3JlZC1xdWVyaWVzXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCJcbiAgICAgICAgICAgICAgdHJhbnNsYXRlPmVvLnZpZXcubmF2aWdhdGlvbi5zdG9yZWRxdWVyaWVzPC9hPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1pdGVtXCIgKm5nSWY9XCJjYXBhYmlsaXRpZXMucmVjeWNsZWJpblwiPlxuICAgICAgICAgICAgPGEgcm91dGVyTGluaz1cIi9yZWN5Y2xlYmluXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1saW5rXCJcbiAgICAgICAgICAgICAgIHRyYW5zbGF0ZT5lby52aWV3Lm5hdmlnYXRpb24ucmVjeWNsZWJpbjwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCIubmF2aVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1cIiA+XG4gICAgICAgICAgICA8YSByb3V0ZXJMaW5rPVwiL2Fib3V0XCIgdHJhbnNsYXRlPmVvLnNpZGViYXIuaGVscC5hYm91dC50b29sdGlwPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -22,8 +22,8 @@ export class DatetimeRangeComponent {
22
22
  { label: RangeValue.getOperatorLabel(SearchFilter.OPERATOR.LESS_OR_EQUAL), value: SearchFilter.OPERATOR.LESS_OR_EQUAL },
23
23
  { label: RangeValue.getOperatorLabel(SearchFilter.OPERATOR.INTERVAL_INCLUDE_BOTH), value: SearchFilter.OPERATOR.INTERVAL_INCLUDE_BOTH }
24
24
  ];
25
- this.propagateChange = (_) => {
26
- };
25
+ this.propagateChange = (_) => { };
26
+ this.validationChange = () => { };
27
27
  this.datePipe = new LocaleDatePipe(translate);
28
28
  }
29
29
  createForm() {
@@ -41,6 +41,9 @@ export class DatetimeRangeComponent {
41
41
  registerOnChange(fn) {
42
42
  this.propagateChange = fn;
43
43
  }
44
+ registerOnValidatorChange(fn) {
45
+ this.validationChange = fn;
46
+ }
44
47
  registerOnTouched(fn) {
45
48
  }
46
49
  onValueChange() {
@@ -50,7 +53,8 @@ export class DatetimeRangeComponent {
50
53
  if (dateValueFrom || dateValue) {
51
54
  this.isValid = this.rangeForm.valid && !!dateValueFrom && !!dateValue;
52
55
  this.swapInputs = dateValueFrom && dateValue && dateValueFrom > dateValue;
53
- this._setValue(!this.isValid ? null : new RangeValue(this.searchOption, this.swapInputs ? dateValue : dateValueFrom, this.swapInputs ? dateValueFrom : dateValue));
56
+ this._setValue(new RangeValue(this.searchOption, this.swapInputs ? dateValue : dateValueFrom, this.swapInputs ? dateValueFrom : dateValue));
57
+ this.validationChange();
54
58
  }
55
59
  }
56
60
  else {
@@ -162,4 +166,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
162
166
  type: HostBinding,
163
167
  args: ['class.swap']
164
168
  }] } });
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9kYXRldGltZS1yYW5nZS9kYXRldGltZS1yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2RhdGV0aW1lLXJhbmdlL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFVLFVBQVUsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQU1MLGlCQUFpQixFQUNqQixhQUFhLEVBQ2QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBbUIsTUFBTSxjQUFjLENBQUM7QUFDeEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7O0FBc0JqRixNQUFNLE9BQU8sc0JBQXNCO0lBdUJqQyxZQUFvQixFQUFzQixFQUFTLFNBQTJCO1FBQTFELE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQVMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFuQnJFLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFRSxlQUFVLEdBQVksS0FBSyxDQUFDO1FBSS9DLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdkIsK0JBQStCO1FBQ3hCLDJCQUFzQixHQUFHO1lBQzlCLEVBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBQztZQUNyRyxFQUFDLEtBQUssRUFBRSxVQUFVLENB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a0JBcEJsQyxTQUFTOytCQUNFLG1CQUFtQixhQUdsQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzs0QkFDckQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDOzRCQUNyRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixRQUNLO3dCQUNKLEtBQUssRUFBRSxvQkFBb0I7cUJBQzVCO3dJQUlRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVxQixVQUFVO3NCQUFwQyxXQUFXO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmd9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVW50eXBlZEZvcm1Hcm91cCxcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgVmFsaWRhdG9yLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBOR19WQUxJREFUT1JTXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7UmFuZ2VWYWx1ZSwgU2VhcmNoRmlsdGVyLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtMb2NhbGVEYXRlUGlwZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGlwZXMvbG9jYWxlLWRhdGUucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWRhdGV0aW1lLXJhbmdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRldGltZVJhbmdlQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZXRpbWVSYW5nZUNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9XG4gIF0sXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Zvcm0tZWxlbWVudC1yYW5nZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYXRldGltZVJhbmdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcblxuICBASW5wdXQoKSB3aXRoVGltZTogYm9vbGVhbjtcbiAgQElucHV0KCkgcGlja2VyVGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgb3BlcmF0b3IgPSAnZXEnO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc3dhcCcpIHN3YXBJbnB1dHM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICByYW5nZUZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIHZhbHVlOiBSYW5nZVZhbHVlO1xuICBwcml2YXRlIGlzVmFsaWQgPSB0cnVlO1xuXG4gIC8vIG9wdGlvbnMgZm9yIHNlYXJjaCBzaXR1YXRpb25cbiAgcHVibGljIGF2YWlsYWJsZVNlYXJjaE9wdGlvbnMgPSBbXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkVRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5FUVVBTH0sXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUwpLCB2YWx1ZTogU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUx9LFxuICAgIHtsYWJlbDogUmFuZ2VWYWx1ZS5nZXRPcGVyYXRvckxhYmVsKFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMfSxcbiAgICB7bGFiZWw6IFJhbmdlVmFsdWUuZ2V0T3BlcmF0b3JMYWJlbChTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5JTlRFUlZBTF9JTkNMVURFX0JPVEh9XG4gIF07XG4gIC8vIHRoZSBzZWxlY3RlZCBzZWFyY2ggb3B0aW9uXG4gIHB1YmxpYyBzZWFyY2hPcHRpb246IHN0cmluZztcbiAgZGF0ZVBpcGU6IExvY2FsZURhdGVQaXBlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlciwgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgIHRoaXMuZGF0ZVBpcGUgPSBuZXcgTG9jYWxlRGF0ZVBpcGUodHJhbnNsYXRlKTtcbiAgfVxuXG4gIGNyZWF0ZUZvcm0oKSB7XG4gICAgdGhpcy5yYW5nZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGRhdGVWYWx1ZTogW10sXG4gICAgICBkYXRlVmFsdWVGcm9tOiBbXVxuICAgIH0pO1xuICB9XG5cbiAgb25Gb3JtVmFsdWVDaGFuZ2UoKSB7XG4gICAgdGhpcy5yYW5nZUZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uVmFsdWVDaGFuZ2UoKSk7XG4gIH1cblxuICBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBSYW5nZVZhbHVlKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0VmFsdWUodmFsdWUpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoKSB7XG5cbiAgICBsZXQgZGF0ZVZhbHVlID0gdGhpcy5mb3JtYXREYXRlKHRoaXMucmFuZ2VGb3JtLmdldCgnZGF0ZVZhbHVlJykudmFsdWUpO1xuICAgIGlmICh0aGlzLnNlYXJjaE9wdGlvbiA9PT0gU2VhcmNoRmlsdGVyLk9QRVJBVE9SLklOVEVSVkFMX0lOQ0xVREVfQk9USCkge1xuICAgICAgbGV0IGRhdGVWYWx1ZUZyb20gPSB0aGlzLmZvcm1hdERhdGUodGhpcy5yYW5nZUZvcm0uZ2V0KCdkYXRlVmFsdWVGcm9tJykudmFsdWUpIHx8IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKTtcblxuICAgICAgaWYgKGRhdGVWYWx1ZUZyb20gfHwgZGF0ZVZhbHVlKSB7XG4gICAgICAgIHRoaXMuaXNWYWxpZCA9IHRoaXMucmFuZ2VGb3JtLnZhbGlkICYmICEhZGF0ZVZhbHVlRnJvbSAmJiAhIWRhdGVWYWx1ZTtcbiAgICAgICAgdGhpcy5zd2FwSW5wdXRzID0gZGF0ZVZhbHVlRnJvbSAmJiBkYXRlVmFsdWUgJiYgZGF0ZVZhbHVlRnJvbSA+IGRhdGVWYWx1ZTtcbiAgICAgICAgdGhpcy5fc2V0VmFsdWUoIXRoaXMuaXNWYWxpZCA/IG51bGwgOiBuZXcgUmFuZ2VWYWx1ZShcbiAgICAgICAgICB0aGlzLnNlYXJjaE9wdGlvbixcbiAgICAgICAgICB0aGlzLnN3YXBJbnB1dHMgPyBkYXRlVmFsdWUgOiBkYXRlVmFsdWVGcm9tLFxuICAgICAgICAgIHRoaXMuc3dhcElucHV0cyA/IGRhdGVWYWx1ZUZyb20gOiBkYXRlVmFsdWVcbiAgICAgICAgKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3dhcElucHV0cyA9IGZhbHNlO1xuICAgICAgdGhpcy5pc1ZhbGlkID0gdGhpcy5yYW5nZUZvcm0udmFsaWQ7XG4gICAgICB0aGlzLl9zZXRWYWx1ZSghdGhpcy5pc1ZhbGlkIHx8ICFkYXRlVmFsdWUgPyBudWxsIDogbmV3IFJhbmdlVmFsdWUodGhpcy5zZWFyY2hPcHRpb24sIGRhdGVWYWx1ZSkpO1xuICAgIH1cbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldFZhbHVlKHZhbHVlOiBSYW5nZVZhbHVlLCBlbWl0RXZlbnQgPSBmYWxzZSkge1xuICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkodmFsdWUpKSByZXR1cm47XG4gICAgaWYgKHZhbHVlICYmIHZhbHVlIGluc3RhbmNlb2YgUmFuZ2VWYWx1ZSAmJiAodmFsdWUuZmlyc3RWYWx1ZSB8fCB2YWx1ZS5zZWNvbmRWYWx1ZSkpIHtcblxuICAgICAgbGV0IG1hdGNoID0gdGhpcy5hdmFpbGFibGVTZWFyY2hPcHRpb25zLmZpbmQoKG8pID0+IG8udmFsdWUgPT09IHZhbHVlLm9wZXJhdG9yKTtcbiAgICAgIHRoaXMuc2VhcmNoT3B0aW9uID0gbWF0Y2ggPyBtYXRjaC52YWx1ZSA6IHRoaXMuYXZhaWxhYmxlU2VhcmNoT3B0aW9uc1swXS52YWx1ZTtcblxuICAgICAgY29uc3QgZlYgPSB2YWx1ZS5maXJzdFZhbHVlID8gbmV3IERhdGUodmFsdWUuZmlyc3RWYWx1ZSkgOiBudWxsO1xuICAgICAgY29uc3Qgc1YgPSB2YWx1ZS5zZWNvbmRWYWx1ZSA/IG5ldyBEYXRlKHZhbHVlLnNlY29uZFZhbHVlKSA6IG51bGw7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG5cbiAgICAgIGlmICghdmFsdWUuc2Vjb25kVmFsdWUpIHtcbiAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHRoaXMucmFuZ2VGb3JtLnZhbHVlLmRhdGVWYWx1ZSkgIT09IEpTT04uc3RyaW5naWZ5KGZWKSkge1xuICAgICAgICAgIHRoaXMucmFuZ2VGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgICAgZGF0ZVZhbHVlOiBmVlxuICAgICAgICAgIH0sIHtlbWl0RXZlbnR9KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHRoaXMucmFuZ2VGb3JtLnZhbHVlLmRhdGVWYWx1ZUZyb20pICE9PSBKU09OLnN0cmluZ2lmeShmVikpIHtcbiAgICAgICAgICB0aGlzLnJhbmdlRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGRhdGVWYWx1ZUZyb206IGZWXG4gICAgICAgICAgfSwge2VtaXRFdmVudH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnJhbmdlRm9ybS52YWx1ZS5kYXRlVmFsdWUpICE9PSBKU09OLnN0cmluZ2lmeShzVikpIHtcbiAgICAgICAgICB0aGlzLnJhbmdlRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGRhdGVWYWx1ZTogc1ZcbiAgICAgICAgICB9LCB7ZW1pdEV2ZW50fSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICAgIHRoaXMucmFuZ2VGb3JtLnJlc2V0KCk7XG4gICAgfVxuICB9XG5cbiAgZm9ybWF0RGF0ZSh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuICF2YWx1ZSA/IG51bGwgOlxuICAgICAgdGhpcy53aXRoVGltZSA/IHZhbHVlLnRvSVNPU3RyaW5nKCkucmVwbGFjZSgnOjAwLjAwMCcsICcnKSA6IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHZhbHVlLCAneXl5eS1NTS1kZCcpO1xuICB9XG5cbiAgLy8gcmV0dXJucyBudWxsIHdoZW4gdmFsaWQgZWxzZSB0aGUgdmFsaWRhdGlvbiBvYmplY3RcbiAgcHVibGljIHZhbGlkYXRlKGM6IFVudHlwZWRGb3JtQ29udHJvbCkge1xuXG4gICAgbGV0IGVycjtcbiAgICBpZiAodGhpcy5zZWFyY2hPcHRpb24gPT09IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5FUVVBTCkge1xuICAgICAgZXJyID0ge1xuICAgICAgICBkYXRlY29udHJvbDoge1xuICAgICAgICAgIHZhbGlkOiBmYWxzZSxcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXJyID0ge1xuICAgICAgICBkYXRlcmFuZ2U6IHtcbiAgICAgICAgICB2YWxpZDogZmFsc2UsXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiAodGhpcy5pc1ZhbGlkKSA/IG51bGwgOiBlcnI7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNlYXJjaE9wdGlvbiA9IHRoaXMub3BlcmF0b3I7XG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XG4gICAgdGhpcy5vbkZvcm1WYWx1ZUNoYW5nZSgpO1xuICB9XG59XG4iLCI8Zm9ybSBjbGFzcz1cImVvLWRhdGV0aW1lLXJhbmdlXCIgW2Zvcm1Hcm91cF09XCJyYW5nZUZvcm1cIj5cbiAgPGVvLWRhdGUgKm5nSWY9XCJzZWFyY2hPcHRpb24gPT09ICdndGVsdGUnXCIgW3dpdGhUaW1lXT1cIndpdGhUaW1lXCJcbiAgICBmb3JtQ29udHJvbE5hbWU9XCJkYXRlVmFsdWVGcm9tXCI+PC9lby1kYXRlPlxuXG4gIDx5dmMtZHJvcGRvd24gWyhuZ01vZGVsKV09XCJzZWFyY2hPcHRpb25cIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKClcIiBbbmdNb2RlbE9wdGlvbnNdPVwie3N0YW5kYWxvbmU6IHRydWV9XCJcbiAgICBbb3B0aW9uc109XCJhdmFpbGFibGVTZWFyY2hPcHRpb25zXCI+PC95dmMtZHJvcGRvd24+XG5cbiAgPGVvLWRhdGUgW3dpdGhUaW1lXT1cIndpdGhUaW1lXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGF0ZVZhbHVlXCI+PC9lby1kYXRlPlxuPC9mb3JtPiJdfQ==
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9kYXRldGltZS1yYW5nZS9kYXRldGltZS1yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2RhdGV0aW1lLXJhbmdlL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFVLFVBQVUsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQU1MLGlCQUFpQixFQUNqQixhQUFhLEVBQ2QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBbUIsTUFBTSxjQUFjLENBQUM7QUFDeEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7O0FBc0JqRixNQUFNLE9BQU8sc0JBQXNCO0lBdUJqQyxZQUFvQixFQUFzQixFQUFTLFNBQTJCO1FBQTFELE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQVMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFuQnJFLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFRSxlQUFVLEdBQVksS0FBSyxDQUFDO1FBSS9DLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdkIsK0JBQStCO1FBQ3hCLDJCQUFzQixHQUFHO1lBQzlCLEVBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBQztZQUNyRyxFQUFDLEtBQUssRUFBRSxVQUFVLENB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QVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztZQUNyRCxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsMEJDNUJILHNjQVFPOzJGRHlCTSxzQkFBc0I7a0JBcEJsQyxTQUFTOytCQUNFLG1CQUFtQixhQUdsQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzs0QkFDckQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDOzRCQUNyRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixRQUNLO3dCQUNKLEtBQUssRUFBRSxvQkFBb0I7cUJBQzVCO3dJQUlRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVxQixVQUFVO3NCQUFwQyxXQUFXO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmd9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVW50eXBlZEZvcm1Hcm91cCxcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgVmFsaWRhdG9yLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBOR19WQUxJREFUT1JTXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7UmFuZ2VWYWx1ZSwgU2VhcmNoRmlsdGVyLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtMb2NhbGVEYXRlUGlwZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGlwZXMvbG9jYWxlLWRhdGUucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWRhdGV0aW1lLXJhbmdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRldGltZVJhbmdlQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZXRpbWVSYW5nZUNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9XG4gIF0sXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Zvcm0tZWxlbWVudC1yYW5nZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYXRldGltZVJhbmdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcblxuICBASW5wdXQoKSB3aXRoVGltZTogYm9vbGVhbjtcbiAgQElucHV0KCkgcGlja2VyVGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgb3BlcmF0b3IgPSAnZXEnO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc3dhcCcpIHN3YXBJbnB1dHM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICByYW5nZUZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIHZhbHVlOiBSYW5nZVZhbHVlO1xuICBwcml2YXRlIGlzVmFsaWQgPSB0cnVlO1xuXG4gIC8vIG9wdGlvbnMgZm9yIHNlYXJjaCBzaXR1YXRpb25cbiAgcHVibGljIGF2YWlsYWJsZVNlYXJjaE9wdGlvbnMgPSBbXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkVRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5FUVVBTH0sXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUwpLCB2YWx1ZTogU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUx9LFxuICAgIHtsYWJlbDogUmFuZ2VWYWx1ZS5nZXRPcGVyYXRvckxhYmVsKFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMfSxcbiAgICB7bGFiZWw6IFJhbmdlVmFsdWUuZ2V0T3BlcmF0b3JMYWJlbChTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5JTlRFUlZBTF9JTkNMVURFX0JPVEh9XG4gIF07XG4gIC8vIHRoZSBzZWxlY3RlZCBzZWFyY2ggb3B0aW9uXG4gIHB1YmxpYyBzZWFyY2hPcHRpb246IHN0cmluZztcbiAgZGF0ZVBpcGU6IExvY2FsZURhdGVQaXBlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlciwgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgIHRoaXMuZGF0ZVBpcGUgPSBuZXcgTG9jYWxlRGF0ZVBpcGUodHJhbnNsYXRlKTtcbiAgfVxuXG4gIGNyZWF0ZUZvcm0oKSB7XG4gICAgdGhpcy5yYW5nZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGRhdGVWYWx1ZTogW10sXG4gICAgICBkYXRlVmFsdWVGcm9tOiBbXVxuICAgIH0pO1xuICB9XG5cbiAgb25Gb3JtVmFsdWVDaGFuZ2UoKSB7XG4gICAgdGhpcy5yYW5nZUZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uVmFsdWVDaGFuZ2UoKSk7XG4gIH1cblxuICBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7fVxuICB2YWxpZGF0aW9uQ2hhbmdlID0gKCkgPT4ge307XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogUmFuZ2VWYWx1ZSk6IHZvaWQge1xuICAgIHRoaXMuX3NldFZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVmFsaWRhdG9yQ2hhbmdlPyhmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZSgpIHtcblxuICAgIGxldCBkYXRlVmFsdWUgPSB0aGlzLmZvcm1hdERhdGUodGhpcy5yYW5nZUZvcm0uZ2V0KCdkYXRlVmFsdWUnKS52YWx1ZSk7XG4gICAgaWYgKHRoaXMuc2VhcmNoT3B0aW9uID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIKSB7XG4gICAgICBsZXQgZGF0ZVZhbHVlRnJvbSA9IHRoaXMuZm9ybWF0RGF0ZSh0aGlzLnJhbmdlRm9ybS5nZXQoJ2RhdGVWYWx1ZUZyb20nKS52YWx1ZSkgfHwgbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xuXG4gICAgICBpZiAoZGF0ZVZhbHVlRnJvbSB8fCBkYXRlVmFsdWUpIHtcbiAgICAgICAgdGhpcy5pc1ZhbGlkID0gdGhpcy5yYW5nZUZvcm0udmFsaWQgJiYgISFkYXRlVmFsdWVGcm9tICYmICEhZGF0ZVZhbHVlO1xuICAgICAgICB0aGlzLnN3YXBJbnB1dHMgPSBkYXRlVmFsdWVGcm9tICYmIGRhdGVWYWx1ZSAmJiBkYXRlVmFsdWVGcm9tID4gZGF0ZVZhbHVlO1xuICAgICAgICB0aGlzLl9zZXRWYWx1ZShuZXcgUmFuZ2VWYWx1ZShcbiAgICAgICAgICB0aGlzLnNlYXJjaE9wdGlvbixcbiAgICAgICAgICB0aGlzLnN3YXBJbnB1dHMgPyBkYXRlVmFsdWUgOiBkYXRlVmFsdWVGcm9tLFxuICAgICAgICAgIHRoaXMuc3dhcElucHV0cyA/IGRhdGVWYWx1ZUZyb20gOiBkYXRlVmFsdWVcbiAgICAgICAgKSk7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN3YXBJbnB1dHMgPSBmYWxzZTtcbiAgICAgIHRoaXMuaXNWYWxpZCA9IHRoaXMucmFuZ2VGb3JtLnZhbGlkO1xuICAgICAgdGhpcy5fc2V0VmFsdWUoIXRoaXMuaXNWYWxpZCB8fCAhZGF0ZVZhbHVlID8gbnVsbCA6IG5ldyBSYW5nZVZhbHVlKHRoaXMuc2VhcmNoT3B0aW9uLCBkYXRlVmFsdWUpKTtcbiAgICB9XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRWYWx1ZSh2YWx1ZTogUmFuZ2VWYWx1ZSwgZW1pdEV2ZW50ID0gZmFsc2UpIHtcbiAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSkgPT09IEpTT04uc3RyaW5naWZ5KHZhbHVlKSkgcmV0dXJuO1xuICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSBpbnN0YW5jZW9mIFJhbmdlVmFsdWUgJiYgKHZhbHVlLmZpcnN0VmFsdWUgfHwgdmFsdWUuc2Vjb25kVmFsdWUpKSB7XG5cbiAgICAgIGxldCBtYXRjaCA9IHRoaXMuYXZhaWxhYmxlU2VhcmNoT3B0aW9ucy5maW5kKChvKSA9PiBvLnZhbHVlID09PSB2YWx1ZS5vcGVyYXRvcik7XG4gICAgICB0aGlzLnNlYXJjaE9wdGlvbiA9IG1hdGNoID8gbWF0Y2gudmFsdWUgOiB0aGlzLmF2YWlsYWJsZVNlYXJjaE9wdGlvbnNbMF0udmFsdWU7XG5cbiAgICAgIGNvbnN0IGZWID0gdmFsdWUuZmlyc3RWYWx1ZSA/IG5ldyBEYXRlKHZhbHVlLmZpcnN0VmFsdWUpIDogbnVsbDtcbiAgICAgIGNvbnN0IHNWID0gdmFsdWUuc2Vjb25kVmFsdWUgPyBuZXcgRGF0ZSh2YWx1ZS5zZWNvbmRWYWx1ZSkgOiBudWxsO1xuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuXG4gICAgICBpZiAoIXZhbHVlLnNlY29uZFZhbHVlKSB7XG4gICAgICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnJhbmdlRm9ybS52YWx1ZS5kYXRlVmFsdWUpICE9PSBKU09OLnN0cmluZ2lmeShmVikpIHtcbiAgICAgICAgICB0aGlzLnJhbmdlRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGRhdGVWYWx1ZTogZlZcbiAgICAgICAgICB9LCB7ZW1pdEV2ZW50fSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnJhbmdlRm9ybS52YWx1ZS5kYXRlVmFsdWVGcm9tKSAhPT0gSlNPTi5zdHJpbmdpZnkoZlYpKSB7XG4gICAgICAgICAgdGhpcy5yYW5nZUZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBkYXRlVmFsdWVGcm9tOiBmVlxuICAgICAgICAgIH0sIHtlbWl0RXZlbnR9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy5yYW5nZUZvcm0udmFsdWUuZGF0ZVZhbHVlKSAhPT0gSlNPTi5zdHJpbmdpZnkoc1YpKSB7XG4gICAgICAgICAgdGhpcy5yYW5nZUZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBkYXRlVmFsdWU6IHNWXG4gICAgICAgICAgfSwge2VtaXRFdmVudH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gICAgICB0aGlzLnJhbmdlRm9ybS5yZXNldCgpO1xuICAgIH1cbiAgfVxuXG4gIGZvcm1hdERhdGUodmFsdWU6IERhdGUpOiBzdHJpbmcge1xuICAgIHJldHVybiAhdmFsdWUgPyBudWxsIDpcbiAgICAgIHRoaXMud2l0aFRpbWUgPyB2YWx1ZS50b0lTT1N0cmluZygpLnJlcGxhY2UoJzowMC4wMDAnLCAnJykgOiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJ3l5eXktTU0tZGQnKTtcbiAgfVxuXG4gIC8vIHJldHVybnMgbnVsbCB3aGVuIHZhbGlkIGVsc2UgdGhlIHZhbGlkYXRpb24gb2JqZWN0XG4gIHB1YmxpYyB2YWxpZGF0ZShjOiBVbnR5cGVkRm9ybUNvbnRyb2wpIHtcblxuICAgIGxldCBlcnI7XG4gICAgaWYgKHRoaXMuc2VhcmNoT3B0aW9uID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuRVFVQUwpIHtcbiAgICAgIGVyciA9IHtcbiAgICAgICAgZGF0ZWNvbnRyb2w6IHtcbiAgICAgICAgICB2YWxpZDogZmFsc2UsXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIGVyciA9IHtcbiAgICAgICAgZGF0ZXJhbmdlOiB7XG4gICAgICAgICAgdmFsaWQ6IGZhbHNlLFxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gKHRoaXMuaXNWYWxpZCkgPyBudWxsIDogZXJyO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZWFyY2hPcHRpb24gPSB0aGlzLm9wZXJhdG9yO1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICAgIHRoaXMub25Gb3JtVmFsdWVDaGFuZ2UoKTtcbiAgfVxufVxuIiwiPGZvcm0gY2xhc3M9XCJlby1kYXRldGltZS1yYW5nZVwiIFtmb3JtR3JvdXBdPVwicmFuZ2VGb3JtXCI+XG4gIDxlby1kYXRlICpuZ0lmPVwic2VhcmNoT3B0aW9uID09PSAnZ3RlbHRlJ1wiIFt3aXRoVGltZV09XCJ3aXRoVGltZVwiXG4gICAgZm9ybUNvbnRyb2xOYW1lPVwiZGF0ZVZhbHVlRnJvbVwiPjwvZW8tZGF0ZT5cblxuICA8eXZjLWRyb3Bkb3duIFsobmdNb2RlbCldPVwic2VhcmNoT3B0aW9uXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgpXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXG4gICAgW29wdGlvbnNdPVwiYXZhaWxhYmxlU2VhcmNoT3B0aW9uc1wiPjwveXZjLWRyb3Bkb3duPlxuXG4gIDxlby1kYXRlIFt3aXRoVGltZV09XCJ3aXRoVGltZVwiIGZvcm1Db250cm9sTmFtZT1cImRhdGVWYWx1ZVwiPjwvZW8tZGF0ZT5cbjwvZm9ybT4iXX0=