@eo-sdk/client 10.7.0-rc.2 → 10.7.0-rc.4

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 (92) hide show
  1. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts +3 -2
  2. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts.map +1 -1
  3. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts +59 -1
  4. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts.map +1 -1
  5. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.d.ts +1 -0
  6. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.d.ts.map +1 -1
  7. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.d.ts +6 -1
  8. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.d.ts.map +1 -1
  9. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.d.ts +4 -0
  10. package/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.d.ts.map +1 -1
  11. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.d.ts.map +1 -1
  12. package/app/eo-client/login/login.component.d.ts +1 -0
  13. package/app/eo-client/login/login.component.d.ts.map +1 -1
  14. package/app/eo-client/process-state/process-state.component.d.ts +1 -0
  15. package/app/eo-client/process-state/process-state.component.d.ts.map +1 -1
  16. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts +1 -2
  17. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts.map +1 -1
  18. package/app/eo-framework/app-shell/app-bar/user-avatar-overlay/user-avatar-overlay.component.d.ts +18 -0
  19. package/app/eo-framework/app-shell/app-bar/user-avatar-overlay/user-avatar-overlay.component.d.ts.map +1 -0
  20. package/app/eo-framework/app-shell/app-shell.module.d.ts +17 -16
  21. package/app/eo-framework/app-shell/app-shell.module.d.ts.map +1 -1
  22. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts +2 -1
  23. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts.map +1 -1
  24. package/app/eo-framework/form-elements/string/string.component.d.ts.map +1 -1
  25. package/app/eo-framework/media/media.component.d.ts.map +1 -1
  26. package/app/eo-framework/object-details/object-details.component.d.ts.map +1 -1
  27. package/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.d.ts +1 -1
  28. package/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.d.ts.map +1 -1
  29. package/app/eo-framework/object-form/object-form-helper.service.d.ts.map +1 -1
  30. package/app/eo-framework/process/details/process-details.component.d.ts.map +1 -1
  31. package/app/eo-framework/quick-search/quick-search/quick-search.component.d.ts.map +1 -1
  32. package/app/eo-framework/result-list/result-list.component.d.ts +1 -0
  33. package/app/eo-framework/result-list/result-list.component.d.ts.map +1 -1
  34. package/app/eo-framework/ui/overlay/overlay.component.d.ts +11 -7
  35. package/app/eo-framework/ui/overlay/overlay.component.d.ts.map +1 -1
  36. package/app/eo-framework/upload-overlay/upload-overlay.component.d.ts.map +1 -1
  37. package/assets/_default/i18n/de.json +12 -3
  38. package/assets/_default/i18n/en.json +12 -3
  39. package/esm2020/app/eo-client/about-state/about-state.component.mjs +3 -3
  40. package/esm2020/app/eo-client/dashboard/dashboard.component.mjs +4 -4
  41. package/esm2020/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +71 -45
  42. package/esm2020/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +43 -10
  43. package/esm2020/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.mjs +17 -4
  44. package/esm2020/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.mjs +38 -6
  45. package/esm2020/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.mjs +1 -1
  46. package/esm2020/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +3 -3
  47. package/esm2020/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.mjs +36 -25
  48. package/esm2020/app/eo-client/favorite-state/favorite-state.component.mjs +1 -1
  49. package/esm2020/app/eo-client/inbox-state/inbox-state/inbox-state.component.mjs +2 -2
  50. package/esm2020/app/eo-client/login/login.component.mjs +13 -6
  51. package/esm2020/app/eo-client/notifications-state/notifications-state.component.mjs +1 -1
  52. package/esm2020/app/eo-client/prepare-state/prepare-state/prepare-state.component.mjs +1 -1
  53. package/esm2020/app/eo-client/process-state/process-state.component.mjs +22 -15
  54. package/esm2020/app/eo-client/recyclebin-state/recyclebin-state.component.mjs +1 -1
  55. package/esm2020/app/eo-client/stored-queries-state/stored-queries-state.component.mjs +1 -1
  56. package/esm2020/app/eo-client/version-state/version-state.component.mjs +1 -1
  57. package/esm2020/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.mjs +4 -4
  58. package/esm2020/app/eo-framework/app-shell/app-bar/app-bar.component.mjs +10 -19
  59. package/esm2020/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +4 -4
  60. package/esm2020/app/eo-framework/app-shell/app-bar/user-avatar-overlay/user-avatar-overlay.component.mjs +42 -0
  61. package/esm2020/app/eo-framework/app-shell/app-shell.module.mjs +5 -2
  62. package/esm2020/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +23 -8
  63. package/esm2020/app/eo-framework/form-elements/string/string.component.mjs +7 -3
  64. package/esm2020/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.mjs +2 -2
  65. package/esm2020/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.mjs +2 -2
  66. package/esm2020/app/eo-framework/media/media.component.mjs +8 -2
  67. package/esm2020/app/eo-framework/object-details/object-details.component.mjs +10 -4
  68. package/esm2020/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +2 -2
  69. package/esm2020/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +5 -4
  70. package/esm2020/app/eo-framework/object-form/object-form-helper.service.mjs +11 -2
  71. package/esm2020/app/eo-framework/prepare-details/prepare-details.component.mjs +1 -1
  72. package/esm2020/app/eo-framework/process/details/process-details.component.mjs +1 -2
  73. package/esm2020/app/eo-framework/quick-search/quick-search/quick-search.component.mjs +3 -1
  74. package/esm2020/app/eo-framework/result-list/result-list.component.mjs +31 -2
  75. package/esm2020/app/eo-framework/ui/overlay/overlay.component.mjs +38 -18
  76. package/esm2020/app/eo-framework/ui/signature-tab/signature-tab.component.mjs +3 -3
  77. package/esm2020/app/eo-framework/upload-overlay/upload-overlay.component.mjs +4 -2
  78. package/esm2020/projects/eo-sdk/core/lib/service/auth/auth.service.mjs +3 -4
  79. package/esm2020/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.mjs +1 -1
  80. package/esm2020/projects/eo-sdk/core/lib/service/bpm/bpm.service.mjs +6 -6
  81. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs +6 -8
  82. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs.map +1 -1
  83. package/fesm2015/eo-sdk-client.mjs +565 -328
  84. package/fesm2015/eo-sdk-client.mjs.map +1 -1
  85. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs +6 -8
  86. package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs.map +1 -1
  87. package/fesm2020/eo-sdk-client.mjs +561 -322
  88. package/fesm2020/eo-sdk-client.mjs.map +1 -1
  89. package/package.json +3 -3
  90. package/projects/eo-sdk/core/lib/service/auth/auth.service.d.ts.map +1 -1
  91. package/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.d.ts +0 -4
  92. package/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.d.ts.map +1 -1
@@ -0,0 +1,42 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, Input } from '@angular/core';
3
+ import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@eo-sdk/core";
6
+ import * as i2 from "@angular/router";
7
+ import * as i3 from "../../../../eo-framework-core";
8
+ import * as i4 from "@angular/common";
9
+ import * as i5 from "@ngx-translate/core";
10
+ import * as i6 from "../../../ui/router-link/router-link.directive";
11
+ import * as i7 from "../../../ui/user-avatar/user-avatar.component";
12
+ import * as i8 from "../../../util/directive/trap-focus.directive";
13
+ let UserAvatarOverlayComponent = class UserAvatarOverlayComponent {
14
+ constructor(userService, capabilityService, router, pendingChanges) {
15
+ this.userService = userService;
16
+ this.capabilityService = capabilityService;
17
+ this.router = router;
18
+ this.pendingChanges = pendingChanges;
19
+ this.capabilities = this.capabilityService.getCapabilities();
20
+ this.userService
21
+ .user$.pipe(untilDestroyed(this))
22
+ .subscribe(user => this.user = user);
23
+ }
24
+ openState(state) {
25
+ if (!this.pendingChanges.check()) {
26
+ this.router.navigateByUrl(state);
27
+ }
28
+ }
29
+ };
30
+ UserAvatarOverlayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: UserAvatarOverlayComponent, deps: [{ token: i1.UserService }, { token: i1.CapabilitiesService }, { token: i2.Router }, { token: i3.PendingChangesService }], target: i0.ɵɵFactoryTarget.Component });
31
+ UserAvatarOverlayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: UserAvatarOverlayComponent, selector: "eo-user-avatar-overlay", inputs: { userPanel: "userPanel" }, ngImport: i0, template: "<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\" (keydown.enter)=\"userPanel?.close()\" (click)=\"userPanel?.close()\" >\n <a (keydown.enter)=\"openState('/settings')\" (click)=\"openState('/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\" (keydown.enter)=\"userPanel?.close()\" (click)=\"userPanel?.close()\">\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", styles: [":host::ng-deep{--profile-dropdown-width: 200px}:host::ng-deep .eo-profile{background:var(--color-primary);width:var(--profile-dropdown-width);color:var(--color-white)}:host::ng-deep .eo-profile .avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width);position:relative}:host::ng-deep .eo-profile .avatar eo-user-avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width)}:host::ng-deep .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::ng-deep .eo-profile .avatar .overlay .name,:host::ng-deep .eo-profile .avatar .overlay .mail{word-break:break-all}:host::ng-deep .eo-profile .avatar .overlay .mail{font-size:var(--font-caption)}:host::ng-deep .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::ng-deep .eo-profile .nav ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host::ng-deep .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::ng-deep .eo-profile .nav ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host::ng-deep .eo-profile .nav ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host::ng-deep .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::ng-deep .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):focus,:host::ng-deep .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}\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: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i6.RouterLinkDirective, selector: "a[routerLink]" }, { kind: "component", type: i7.UserAvatarComponent, selector: "eo-user-avatar", inputs: ["showPresence", "previewUri"] }, { kind: "directive", type: i8.TrapFocusDirective, selector: "[eoTrapFocus]" }] });
32
+ UserAvatarOverlayComponent = __decorate([
33
+ UntilDestroy()
34
+ ], UserAvatarOverlayComponent);
35
+ export { UserAvatarOverlayComponent };
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: UserAvatarOverlayComponent, decorators: [{
37
+ type: Component,
38
+ args: [{ selector: 'eo-user-avatar-overlay', template: "<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\" (keydown.enter)=\"userPanel?.close()\" (click)=\"userPanel?.close()\" >\n <a (keydown.enter)=\"openState('/settings')\" (click)=\"openState('/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\" (keydown.enter)=\"userPanel?.close()\" (click)=\"userPanel?.close()\">\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", styles: [":host::ng-deep{--profile-dropdown-width: 200px}:host::ng-deep .eo-profile{background:var(--color-primary);width:var(--profile-dropdown-width);color:var(--color-white)}:host::ng-deep .eo-profile .avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width);position:relative}:host::ng-deep .eo-profile .avatar eo-user-avatar{width:var(--profile-dropdown-width);height:var(--profile-dropdown-width)}:host::ng-deep .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::ng-deep .eo-profile .avatar .overlay .name,:host::ng-deep .eo-profile .avatar .overlay .mail{word-break:break-all}:host::ng-deep .eo-profile .avatar .overlay .mail{font-size:var(--font-caption)}:host::ng-deep .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::ng-deep .eo-profile .nav ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host::ng-deep .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::ng-deep .eo-profile .nav ::ng-deep .nav-item a{border-left:4px solid rgba(0,0,0,0)}[dir=rtl] :host::ng-deep .eo-profile .nav ::ng-deep .nav-item a{border-right:4px solid rgba(0,0,0,0)}:host::ng-deep .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::ng-deep .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):focus,:host::ng-deep .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}\n"] }]
39
+ }], ctorParameters: function () { return [{ type: i1.UserService }, { type: i1.CapabilitiesService }, { type: i2.Router }, { type: i3.PendingChangesService }]; }, propDecorators: { userPanel: [{
40
+ type: Input
41
+ }] } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hdmF0YXItb3ZlcmxheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9hcHAtc2hlbGwvYXBwLWJhci91c2VyLWF2YXRhci1vdmVybGF5L3VzZXItYXZhdGFyLW92ZXJsYXkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1iYXIvdXNlci1hdmF0YXItb3ZlcmxheS91c2VyLWF2YXRhci1vdmVybGF5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLEtBQUssRUFDakIsTUFBTSxlQUFlLENBQUM7QUFRdkIsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7OztBQVM1RCxJQUFNLDBCQUEwQixHQUFoQyxNQUFNLDBCQUEwQjtJQU1yQyxZQUFvQixXQUF3QixFQUN4QixpQkFBc0MsRUFDdEMsTUFBYyxFQUNkLGNBQXFDO1FBSHJDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBcUI7UUFDdEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUV2RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUU3RCxJQUFJLENBQUMsV0FBVzthQUNiLEtBQUssQ0FBQyxJQUFJLENBQ1gsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3BCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQzs7dUhBdkJVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLGtHQ25CdkMsdW9DQW1CQTtBREFhLDBCQUEwQjtJQU50QyxZQUFZLEVBQUU7R0FNRiwwQkFBMEIsQ0F3QnRDO1NBeEJZLDBCQUEwQjsyRkFBMUIsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHdCQUF3Qjs2TEFRekIsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCwgSW5wdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1JvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIENhcGFiaWxpdGllcyxcbiAgQ2FwYWJpbGl0aWVzU2VydmljZSxcbiAgRW9Vc2VyLFxuICBVc2VyU2VydmljZVxufSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtQZW5kaW5nQ2hhbmdlc1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi9lby1mcmFtZXdvcmstY29yZVwiO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXVzZXItYXZhdGFyLW92ZXJsYXknLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1hdmF0YXItb3ZlcmxheS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VzZXItYXZhdGFyLW92ZXJsYXkuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBVc2VyQXZhdGFyT3ZlcmxheUNvbXBvbmVudCB7XG5cbiAgdXNlcjogRW9Vc2VyO1xuICBjYXBhYmlsaXRpZXM6IENhcGFiaWxpdGllcztcbiAgQElucHV0KCkgdXNlclBhbmVsOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgY2FwYWJpbGl0eVNlcnZpY2U6IENhcGFiaWxpdGllc1NlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcGVuZGluZ0NoYW5nZXM6IFBlbmRpbmdDaGFuZ2VzU2VydmljZVxuICAgICAgICAgICAgICApIHtcbiAgICB0aGlzLmNhcGFiaWxpdGllcyA9IHRoaXMuY2FwYWJpbGl0eVNlcnZpY2UuZ2V0Q2FwYWJpbGl0aWVzKCk7XG5cbiAgICB0aGlzLnVzZXJTZXJ2aWNlXG4gICAgICAudXNlciQucGlwZShcbiAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnN1YnNjcmliZSh1c2VyID0+IHRoaXMudXNlciA9IHVzZXIpO1xuICB9XG5cbiAgb3BlblN0YXRlKHN0YXRlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMucGVuZGluZ0NoYW5nZXMuY2hlY2soKSkge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChzdGF0ZSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZW8tcHJvZmlsZVwiIHRhYmluZGV4PVwiLTFcIj5cbiAgPGRpdiBjbGFzcz1cImF2YXRhclwiIHRhYmluZGV4PVwiLTFcIj5cbiAgICA8ZW8tdXNlci1hdmF0YXIgdGFiaW5kZXg9XCItMVwiID48L2VvLXVzZXItYXZhdGFyPlxuICAgIDxkaXYgY2xhc3M9XCJvdmVybGF5XCIgdGFiaW5kZXg9XCItMVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIj57e3VzZXIuZmlyc3RuYW1lfX0ge3t1c2VyLmxhc3RuYW1lfX08L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYWlsXCI+e3t1c2VyLmVtYWlsfX08L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwcmVzZW5jZVwiICpuZ0lmPVwiIXVzZXIucHJlc2VudFwiIHRyYW5zbGF0ZT5lby5zdGF0ZS5zZXR0aW5ncy5wcmVzZW5jZS5hYnNlbnQ8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJuYXZcIiBlb1RyYXBGb2N1cz5cbiAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW0gc2V0dGluZ3NcIiAoa2V5ZG93bi5lbnRlcik9XCJ1c2VyUGFuZWw/LmNsb3NlKClcIiAoY2xpY2spPVwidXNlclBhbmVsPy5jbG9zZSgpXCIgPlxuICAgICAgPGEgKGtleWRvd24uZW50ZXIpPVwib3BlblN0YXRlKCcvc2V0dGluZ3MnKVwiIChjbGljayk9XCJvcGVuU3RhdGUoJy9zZXR0aW5ncycpXCIgaWQ9XCJzZXR0aW5nc1wiIHRhYmluZGV4PVwiMFwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmUtbGlua1wiIGZvY3VzYWJsZSB0cmFuc2xhdGU+ZW8uYmFyLmJ1dHRvbi5zZXR0aW5ncy50aXRsZTwvYT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW0gbG9nb3V0XCIgKm5nSWY9XCIhY2FwYWJpbGl0aWVzLnNzb1wiIChrZXlkb3duLmVudGVyKT1cInVzZXJQYW5lbD8uY2xvc2UoKVwiIChjbGljayk9XCJ1c2VyUGFuZWw/LmNsb3NlKClcIj5cbiAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlsnL2VudGVyJywgeyBsb2dvdXQ6IHRydWUgfV1cIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLWxpbmtcIiB0cmFuc2xhdGU+ZW8uYmFyLmJ1dHRvbi5sb2dvdXQudGl0bGU8L2E+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZW8tc2lkZWJhci1wbHVnaW4ucHJvZmlsZVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -21,6 +21,7 @@ import { AppProcessComponent } from './app-bar/app-process/app-process.component
21
21
  import { ProcessFormModule } from '../process-form/process-form.module';
22
22
  import { YvcAutocompleteModule } from '@yuuvis/components/autocomplete';
23
23
  import { YvcDialogModule } from '@yuuvis/components/dialog';
24
+ import { UserAvatarOverlayComponent } from "./app-bar/user-avatar-overlay/user-avatar-overlay.component";
24
25
  import * as i0 from "@angular/core";
25
26
  /**
26
27
  * Module holding the base components of the application shell like application bar, side, search etc.
@@ -34,7 +35,8 @@ EoAppShellModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
34
35
  AppAddComponent,
35
36
  AppAddDialogComponent,
36
37
  ContextSearchComponent,
37
- AppProcessComponent], imports: [AppShellRoutingModule,
38
+ AppProcessComponent,
39
+ UserAvatarOverlayComponent], imports: [AppShellRoutingModule,
38
40
  CommonModule,
39
41
  FormsModule,
40
42
  UiModule,
@@ -93,7 +95,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
93
95
  AppAddDialogComponent,
94
96
  ContextSearchComponent,
95
97
  AppProcessComponent,
98
+ UserAvatarOverlayComponent
96
99
  ]
97
100
  }]
98
101
  }] });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXNoZWxsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2FwcC1zaGVsbC9hcHAtc2hlbGwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDaEcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDNUMsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDOztBQUUxRDs7R0FFRztBQStCSCxNQUFNLE9BQU8sZ0JBQWdCOzs2R0FBaEIsZ0JBQWdCOzhHQUFoQixnQkFBZ0IsaUJBVHpCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixxQkFBcUI7UUFDckIsc0JBQXNCO1FBQ3RCLG1CQUFtQixhQXhCbkIscUJBQXFCO1FBQ3JCLFlBQVk7UUFDWixXQUFXO1FBQ1gsUUFBUTtRQUNSLFVBQVU7UUFDVixjQUFjO1FBQ2QsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLFlBQVk7UUFDWixTQUFTO1FBQ1QsaUJBQWlCO1FBQ2pCLHFCQUFxQjtRQUNyQixlQUFlLGFBRVAsZUFBZTs4R0FXZCxnQkFBZ0IsWUEzQnpCLHFCQUFxQjtRQUNyQixZQUFZO1FBQ1osV0FBVztRQUNYLFFBQVE7UUFDUixVQUFVO1FBQ1YsY0FBYztRQUNkLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixZQUFZO1FBQ1osU0FBUztRQUNULGlCQUFpQjtRQUNqQixxQkFBcUI7UUFDckIsZUFBZTsyRkFhTixnQkFBZ0I7a0JBN0I1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxxQkFBcUI7d0JBQ3JCLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxRQUFRO3dCQUNSLFVBQVU7d0JBQ1YsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLFlBQVk7d0JBQ1osU0FBUzt3QkFDVCxpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZUFBZSxDQUFDO29CQUMxQixZQUFZLEVBQUU7d0JBQ1osZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3FCQUNwQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1VpTW9kdWxlfSBmcm9tICcuLi91aS91aS5tb2R1bGUnO1xuaW1wb3J0IHtBcHBCYXJDb21wb25lbnR9IGZyb20gJy4vYXBwLWJhci9hcHAtYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQge0NvbnRleHRTZWFyY2hDb21wb25lbnR9IGZyb20gJy4vYXBwLWJhci9jb250ZXh0LXNlYXJjaC9jb250ZXh0LXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHtTaWRlQmFyQ29tcG9uZW50fSBmcm9tICcuL2FwcC1iYXIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7QXBwU2VhcmNoQ29tcG9uZW50fSBmcm9tICcuL2FwcC1iYXIvYXBwLXNlYXJjaC9hcHAtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQge0FwcEFkZENvbXBvbmVudH0gZnJvbSAnLi9hcHAtYmFyL2FwcC1hZGQvYXBwLWFkZC5jb21wb25lbnQnO1xuaW1wb3J0IHtFb1NoYXJlZE1vZHVsZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7WXZjVGFic01vZHVsZX0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL3RhYnMnO1xuXG5pbXBvcnQge0FwcFNoZWxsUm91dGluZ01vZHVsZX0gZnJvbSAnLi9hcHAtc2hlbGwtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHtTaG9ydGN1dHNNb2R1bGV9IGZyb20gJy4uL3Nob3J0Y3V0cy9zaG9ydGN1dHMubW9kdWxlJztcbmltcG9ydCB7Rm9ybUVsZW1lbnRzTW9kdWxlfSBmcm9tICcuLi9mb3JtLWVsZW1lbnRzL2Zvcm0tZWxlbWVudHMubW9kdWxlJztcbmltcG9ydCB7T2JqZWN0Rm9ybU1vZHVsZX0gZnJvbSAnLi4vb2JqZWN0LWZvcm0vb2JqZWN0LWZvcm0ubW9kdWxlJztcbmltcG9ydCB7QXBwQWRkRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2FwcC1iYXIvYXBwLWFkZC9hcHAtYWRkLWRpYWxvZy9hcHAtYWRkLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtBY3Rpb25Nb2R1bGV9IGZyb20gJy4uL2FjdGlvbnMvYWN0aW9uLm1vZHVsZSc7XG5pbXBvcnQge1V0aWxNb2R1bGV9IGZyb20gJy4uL3V0aWwvdXRpbC5tb2R1bGUnO1xuaW1wb3J0IHtDdGFNb2R1bGV9IGZyb20gJy4uL2N0YS9jdGEubW9kdWxlJztcbmltcG9ydCB7QXBwUHJvY2Vzc0NvbXBvbmVudH0gZnJvbSAnLi9hcHAtYmFyL2FwcC1wcm9jZXNzL2FwcC1wcm9jZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQge1Byb2Nlc3NGb3JtTW9kdWxlfSBmcm9tICcuLi9wcm9jZXNzLWZvcm0vcHJvY2Vzcy1mb3JtLm1vZHVsZSc7XG5pbXBvcnQge1l2Y0F1dG9jb21wbGV0ZU1vZHVsZX0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQge1l2Y0RpYWxvZ01vZHVsZX0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2RpYWxvZyc7XG5cbi8qKlxuICogTW9kdWxlIGhvbGRpbmcgdGhlIGJhc2UgY29tcG9uZW50cyBvZiB0aGUgYXBwbGljYXRpb24gc2hlbGwgbGlrZSBhcHBsaWNhdGlvbiBiYXIsIHNpZGUsIHNlYXJjaCBldGMuXG4gKi9cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEFwcFNoZWxsUm91dGluZ01vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgVWlNb2R1bGUsXG4gICAgVXRpbE1vZHVsZSxcbiAgICBFb1NoYXJlZE1vZHVsZSxcbiAgICBZdmNUYWJzTW9kdWxlLFxuICAgIEZvcm1FbGVtZW50c01vZHVsZSxcbiAgICBPYmplY3RGb3JtTW9kdWxlLFxuICAgIFNob3J0Y3V0c01vZHVsZSxcbiAgICBBY3Rpb25Nb2R1bGUsXG4gICAgQ3RhTW9kdWxlLFxuICAgIFByb2Nlc3NGb3JtTW9kdWxlLFxuICAgIFl2Y0F1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICBZdmNEaWFsb2dNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtBcHBCYXJDb21wb25lbnRdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBBcHBCYXJDb21wb25lbnQsXG4gICAgU2lkZUJhckNvbXBvbmVudCxcbiAgICBBcHBTZWFyY2hDb21wb25lbnQsXG4gICAgQXBwQWRkQ29tcG9uZW50LFxuICAgIEFwcEFkZERpYWxvZ0NvbXBvbmVudCxcbiAgICBDb250ZXh0U2VhcmNoQ29tcG9uZW50LFxuICAgIEFwcFByb2Nlc3NDb21wb25lbnQsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRW9BcHBTaGVsbE1vZHVsZSB7XG59XG4iXX0=
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXNoZWxsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2FwcC1zaGVsbC9hcHAtc2hlbGwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDaEcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDNUMsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLDZEQUE2RCxDQUFDOztBQUV2Rzs7R0FFRztBQWdDSCxNQUFNLE9BQU8sZ0JBQWdCOzs2R0FBaEIsZ0JBQWdCOzhHQUFoQixnQkFBZ0IsaUJBVnpCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixxQkFBcUI7UUFDckIsc0JBQXNCO1FBQ3RCLG1CQUFtQjtRQUNuQiwwQkFBMEIsYUF6QjFCLHFCQUFxQjtRQUNyQixZQUFZO1FBQ1osV0FBVztRQUNYLFFBQVE7UUFDUixVQUFVO1FBQ1YsY0FBYztRQUNkLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixZQUFZO1FBQ1osU0FBUztRQUNULGlCQUFpQjtRQUNqQixxQkFBcUI7UUFDckIsZUFBZSxhQUVQLGVBQWU7OEdBWWQsZ0JBQWdCLFlBNUJ6QixxQkFBcUI7UUFDckIsWUFBWTtRQUNaLFdBQVc7UUFDWCxRQUFRO1FBQ1IsVUFBVTtRQUNWLGNBQWM7UUFDZCxhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQixlQUFlO1FBQ2YsWUFBWTtRQUNaLFNBQVM7UUFDVCxpQkFBaUI7UUFDakIscUJBQXFCO1FBQ3JCLGVBQWU7MkZBY04sZ0JBQWdCO2tCQTlCNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQixZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsUUFBUTt3QkFDUixVQUFVO3dCQUNWLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixrQkFBa0I7d0JBQ2xCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixZQUFZO3dCQUNaLFNBQVM7d0JBQ1QsaUJBQWlCO3dCQUNqQixxQkFBcUI7d0JBQ3JCLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDMUIsWUFBWSxFQUFFO3dCQUNaLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUNyQixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsMEJBQTBCO3FCQUMzQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1VpTW9kdWxlfSBmcm9tICcuLi91aS91aS5tb2R1bGUnO1xuaW1wb3J0IHtBcHBCYXJDb21wb25lbnR9IGZyb20gJy4vYXBwLWJhci9hcHAtYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQge0NvbnRleHRTZWFyY2hDb21wb25lbnR9IGZyb20gJy4vYXBwLWJhci9jb250ZXh0LXNlYXJjaC9jb250ZXh0LXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHtTaWRlQmFyQ29tcG9uZW50fSBmcm9tICcuL2FwcC1iYXIvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7QXBwU2VhcmNoQ29tcG9uZW50fSBmcm9tICcuL2FwcC1iYXIvYXBwLXNlYXJjaC9hcHAtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQge0FwcEFkZENvbXBvbmVudH0gZnJvbSAnLi9hcHAtYmFyL2FwcC1hZGQvYXBwLWFkZC5jb21wb25lbnQnO1xuaW1wb3J0IHtFb1NoYXJlZE1vZHVsZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7WXZjVGFic01vZHVsZX0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL3RhYnMnO1xuXG5pbXBvcnQge0FwcFNoZWxsUm91dGluZ01vZHVsZX0gZnJvbSAnLi9hcHAtc2hlbGwtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHtTaG9ydGN1dHNNb2R1bGV9IGZyb20gJy4uL3Nob3J0Y3V0cy9zaG9ydGN1dHMubW9kdWxlJztcbmltcG9ydCB7Rm9ybUVsZW1lbnRzTW9kdWxlfSBmcm9tICcuLi9mb3JtLWVsZW1lbnRzL2Zvcm0tZWxlbWVudHMubW9kdWxlJztcbmltcG9ydCB7T2JqZWN0Rm9ybU1vZHVsZX0gZnJvbSAnLi4vb2JqZWN0LWZvcm0vb2JqZWN0LWZvcm0ubW9kdWxlJztcbmltcG9ydCB7QXBwQWRkRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2FwcC1iYXIvYXBwLWFkZC9hcHAtYWRkLWRpYWxvZy9hcHAtYWRkLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtBY3Rpb25Nb2R1bGV9IGZyb20gJy4uL2FjdGlvbnMvYWN0aW9uLm1vZHVsZSc7XG5pbXBvcnQge1V0aWxNb2R1bGV9IGZyb20gJy4uL3V0aWwvdXRpbC5tb2R1bGUnO1xuaW1wb3J0IHtDdGFNb2R1bGV9IGZyb20gJy4uL2N0YS9jdGEubW9kdWxlJztcbmltcG9ydCB7QXBwUHJvY2Vzc0NvbXBvbmVudH0gZnJvbSAnLi9hcHAtYmFyL2FwcC1wcm9jZXNzL2FwcC1wcm9jZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQge1Byb2Nlc3NGb3JtTW9kdWxlfSBmcm9tICcuLi9wcm9jZXNzLWZvcm0vcHJvY2Vzcy1mb3JtLm1vZHVsZSc7XG5pbXBvcnQge1l2Y0F1dG9jb21wbGV0ZU1vZHVsZX0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQge1l2Y0RpYWxvZ01vZHVsZX0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2RpYWxvZyc7XG5pbXBvcnQge1VzZXJBdmF0YXJPdmVybGF5Q29tcG9uZW50fSBmcm9tIFwiLi9hcHAtYmFyL3VzZXItYXZhdGFyLW92ZXJsYXkvdXNlci1hdmF0YXItb3ZlcmxheS5jb21wb25lbnRcIjtcblxuLyoqXG4gKiBNb2R1bGUgaG9sZGluZyB0aGUgYmFzZSBjb21wb25lbnRzIG9mIHRoZSBhcHBsaWNhdGlvbiBzaGVsbCBsaWtlIGFwcGxpY2F0aW9uIGJhciwgc2lkZSwgc2VhcmNoIGV0Yy5cbiAqL1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQXBwU2hlbGxSb3V0aW5nTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBVaU1vZHVsZSxcbiAgICBVdGlsTW9kdWxlLFxuICAgIEVvU2hhcmVkTW9kdWxlLFxuICAgIFl2Y1RhYnNNb2R1bGUsXG4gICAgRm9ybUVsZW1lbnRzTW9kdWxlLFxuICAgIE9iamVjdEZvcm1Nb2R1bGUsXG4gICAgU2hvcnRjdXRzTW9kdWxlLFxuICAgIEFjdGlvbk1vZHVsZSxcbiAgICBDdGFNb2R1bGUsXG4gICAgUHJvY2Vzc0Zvcm1Nb2R1bGUsXG4gICAgWXZjQXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIFl2Y0RpYWxvZ01vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW0FwcEJhckNvbXBvbmVudF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEFwcEJhckNvbXBvbmVudCxcbiAgICBTaWRlQmFyQ29tcG9uZW50LFxuICAgIEFwcFNlYXJjaENvbXBvbmVudCxcbiAgICBBcHBBZGRDb21wb25lbnQsXG4gICAgQXBwQWRkRGlhbG9nQ29tcG9uZW50LFxuICAgIENvbnRleHRTZWFyY2hDb21wb25lbnQsXG4gICAgQXBwUHJvY2Vzc0NvbXBvbmVudCxcbiAgICBVc2VyQXZhdGFyT3ZlcmxheUNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEVvQXBwU2hlbGxNb2R1bGUge1xufVxuIl19
@@ -22,6 +22,7 @@ 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.previousDateValue = null;
25
26
  this.propagateChange = (_) => { };
26
27
  this.validationChange = () => { };
27
28
  this.datePipe = new LocaleDatePipe(translate);
@@ -46,23 +47,37 @@ export class DatetimeRangeComponent {
46
47
  }
47
48
  registerOnTouched(fn) {
48
49
  }
49
- onValueChange() {
50
+ onValueChange(searchOption = this.searchOption) {
50
51
  let dateValue = this.formatDate(this.rangeForm.get('dateValue').value);
51
- if (this.searchOption === SearchFilter.OPERATOR.INTERVAL_INCLUDE_BOTH) {
52
- let dateValueFrom = this.formatDate(this.rangeForm.get('dateValueFrom').value) || new Date().toISOString();
52
+ if (searchOption === SearchFilter.OPERATOR.INTERVAL_INCLUDE_BOTH) {
53
+ let dateValueFrom = this.formatDate(this.rangeForm.get('dateValueFrom').value);
53
54
  if (dateValueFrom || dateValue) {
54
55
  this.isValid = this.rangeForm.valid && !!dateValueFrom && !!dateValue;
55
56
  this.swapInputs = dateValueFrom && dateValue && dateValueFrom > dateValue;
56
- this._setValue(new RangeValue(this.searchOption, this.swapInputs ? dateValue : dateValueFrom, this.swapInputs ? dateValueFrom : dateValue));
57
+ this._setValue(new RangeValue(searchOption, this.swapInputs ? dateValue : dateValueFrom, this.swapInputs ? dateValueFrom : dateValue));
57
58
  this.validationChange();
58
59
  }
59
60
  }
60
61
  else {
61
62
  this.swapInputs = false;
62
63
  this.isValid = this.rangeForm.valid;
64
+ if (searchOption === SearchFilter.OPERATOR.LESS_OR_EQUAL && dateValue) {
65
+ const newDateValue = new Date(dateValue);
66
+ newDateValue.setHours(23, 59);
67
+ dateValue = newDateValue.toISOString();
68
+ }
69
+ else if (searchOption === SearchFilter.OPERATOR.GREATER_OR_EQUAL && dateValue) {
70
+ const newDateValue = new Date(dateValue);
71
+ newDateValue.setHours(0, 0);
72
+ dateValue = newDateValue.toISOString();
73
+ }
63
74
  this._setValue(!this.isValid || !dateValue ? null : new RangeValue(this.searchOption, dateValue));
64
75
  }
65
- this.propagateChange(this.value);
76
+ if (this.previousDateValue !== dateValue || this.searchOption !== searchOption) {
77
+ this.propagateChange(this.value);
78
+ this.previousDateValue = dateValue;
79
+ }
80
+ this.searchOption = searchOption;
66
81
  }
67
82
  _setValue(value, emitEvent = false) {
68
83
  if (JSON.stringify(this.value) === JSON.stringify(value))
@@ -139,7 +154,7 @@ DatetimeRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
139
154
  useExisting: forwardRef(() => DatetimeRangeComponent),
140
155
  multi: true,
141
156
  }
142
- ], ngImport: i0, template: "<form class=\"eo-datetime-range\" [formGroup]=\"rangeForm\">\n <eo-date *ngIf=\"searchOption === 'gtelte'\" [withTime]=\"withTime\"\n formControlName=\"dateValueFrom\"></eo-date>\n\n <yvc-dropdown [(ngModel)]=\"searchOption\" (ngModelChange)=\"onValueChange()\" [ngModelOptions]=\"{standalone: true}\"\n [options]=\"availableSearchOptions\"></yvc-dropdown>\n\n <eo-date [withTime]=\"withTime\" formControlName=\"dateValue\"></eo-date>\n</form>", styles: [".eo-datetime-range{display:flex;flex-flow:row nowrap;align-items:stretch;gap:2px}.eo-datetime-range yvc-dropdown{border-radius:2px;outline:1px solid rgba(0,0,0,.2);background-color:var(--list-item-hover-background)}.eo-datetime-range yvc-dropdown:hover{background-color:var(--list-item-selected-background)}.eo-datetime-range eo-date{flex:1 1 auto}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.Dropdown, selector: "yvc-dropdown", inputs: ["options", "filter", "disabled", "multiple", "disableClearButton"] }, { kind: "component", type: i5.DateComponent, selector: "eo-date", inputs: ["withTime", "readonly", "onlyFutureDates"] }] });
157
+ ], ngImport: i0, template: "<form class=\"eo-datetime-range\" [formGroup]=\"rangeForm\">\n <eo-date *ngIf=\"searchOption === 'gtelte'\" [withTime]=\"withTime\"\n formControlName=\"dateValueFrom\"></eo-date>\n\n <yvc-dropdown [ngModel]=\"searchOption\" (ngModelChange)=\"onValueChange($event)\" [ngModelOptions]=\"{standalone: true}\"\n [options]=\"availableSearchOptions\"></yvc-dropdown>\n\n <eo-date [withTime]=\"withTime\" formControlName=\"dateValue\"></eo-date>\n</form>\n", styles: [".eo-datetime-range{display:flex;flex-flow:row nowrap;align-items:stretch;gap:2px}.eo-datetime-range yvc-dropdown{border-radius:2px;outline:1px solid rgba(0,0,0,.2);background-color:var(--list-item-hover-background)}.eo-datetime-range yvc-dropdown:hover{background-color:var(--list-item-selected-background)}.eo-datetime-range eo-date{flex:1 1 auto}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.Dropdown, selector: "yvc-dropdown", inputs: ["options", "filter", "disabled", "multiple", "disableClearButton"] }, { kind: "component", type: i5.DateComponent, selector: "eo-date", inputs: ["withTime", "readonly", "onlyFutureDates"] }] });
143
158
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: DatetimeRangeComponent, decorators: [{
144
159
  type: Component,
145
160
  args: [{ selector: 'eo-datetime-range', providers: [
@@ -155,7 +170,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
155
170
  }
156
171
  ], host: {
157
172
  class: 'form-element-range'
158
- }, template: "<form class=\"eo-datetime-range\" [formGroup]=\"rangeForm\">\n <eo-date *ngIf=\"searchOption === 'gtelte'\" [withTime]=\"withTime\"\n formControlName=\"dateValueFrom\"></eo-date>\n\n <yvc-dropdown [(ngModel)]=\"searchOption\" (ngModelChange)=\"onValueChange()\" [ngModelOptions]=\"{standalone: true}\"\n [options]=\"availableSearchOptions\"></yvc-dropdown>\n\n <eo-date [withTime]=\"withTime\" formControlName=\"dateValue\"></eo-date>\n</form>", styles: [".eo-datetime-range{display:flex;flex-flow:row nowrap;align-items:stretch;gap:2px}.eo-datetime-range yvc-dropdown{border-radius:2px;outline:1px solid rgba(0,0,0,.2);background-color:var(--list-item-hover-background)}.eo-datetime-range yvc-dropdown:hover{background-color:var(--list-item-selected-background)}.eo-datetime-range eo-date{flex:1 1 auto}\n"] }]
173
+ }, template: "<form class=\"eo-datetime-range\" [formGroup]=\"rangeForm\">\n <eo-date *ngIf=\"searchOption === 'gtelte'\" [withTime]=\"withTime\"\n formControlName=\"dateValueFrom\"></eo-date>\n\n <yvc-dropdown [ngModel]=\"searchOption\" (ngModelChange)=\"onValueChange($event)\" [ngModelOptions]=\"{standalone: true}\"\n [options]=\"availableSearchOptions\"></yvc-dropdown>\n\n <eo-date [withTime]=\"withTime\" formControlName=\"dateValue\"></eo-date>\n</form>\n", styles: [".eo-datetime-range{display:flex;flex-flow:row nowrap;align-items:stretch;gap:2px}.eo-datetime-range yvc-dropdown{border-radius:2px;outline:1px solid rgba(0,0,0,.2);background-color:var(--list-item-hover-background)}.eo-datetime-range yvc-dropdown:hover{background-color:var(--list-item-selected-background)}.eo-datetime-range eo-date{flex:1 1 auto}\n"] }]
159
174
  }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.TranslateService }]; }, propDecorators: { withTime: [{
160
175
  type: Input
161
176
  }], pickerTitle: [{
@@ -166,4 +181,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
166
181
  type: HostBinding,
167
182
  args: ['class.swap']
168
183
  }] } });
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9kYXRldGltZS1yYW5nZS9kYXRldGltZS1yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2RhdGV0aW1lLXJhbmdlL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFVLFVBQVUsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQU1MLGlCQUFpQixFQUNqQixhQUFhLEVBQ2QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBbUIsTUFBTSxjQUFjLENBQUM7QUFDeEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7O0FBc0JqRixNQUFNLE9BQU8sc0JBQXNCO0lBdUJqQyxZQUFvQixFQUFzQixFQUFTLFNBQTJCO1FBQTFELE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQVMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFuQnJFLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFRSxlQUFVLEdBQVksS0FBSyxDQUFDO1FBSS9DLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdkIsK0JBQStCO1FBQ3hCLDJCQUFzQixHQUFHO1lBQzlCLEVBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBQztZQUNyRyxFQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFDO1lBQzNILEVBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBQztZQUNySCxFQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLHFCQUFxQixFQUFDO1NBQ3RJLENBQUM7UUFvQkYsb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFBO1FBQ2hDLHFCQUFnQixHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQWYxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUM3QixTQUFTLEVBQUUsRUFBRTtZQUNiLGFBQWEsRUFBRSxFQUFFO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUtELFVBQVUsQ0FBQyxLQUFpQjtRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCx5QkFBeUIsQ0FBRSxFQUFjO1FBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87SUFDekIsQ0FBQztJQUVELGFBQWE7UUFFWCxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZFLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxZQUFZLENBQUMsUUFBUSxDQUFDLHFCQUFxQixFQUFFO1lBQ3JFLElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUUzRyxJQUFJLGFBQWEsSUFBSSxTQUFTLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUN0RSxJQUFJLENBQUMsVUFBVSxHQUFHLGFBQWEsSUFBSSxTQUFTLElBQUksYUFBYSxHQUFHLFNBQVMsQ0FBQztnQkFDMUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFVBQVUsQ0FDM0IsSUFBSSxDQUFDLFlBQVksRUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxhQUFhLEVBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUM1QyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7YUFDekI7U0FDRjthQUFNO1lBQ0wsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNwQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDbkc7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU8sU0FBUyxDQUFDLEtBQWlCLEVBQUUsU0FBUyxHQUFHLEtBQUs7UUFDcEQsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDakUsSUFBSSxLQUFLLElBQUksS0FBSyxZQUFZLFVBQVUsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBRW5GLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2hGLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBRS9FLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ2hFLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ2xFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBRW5CLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFO2dCQUN0QixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDekUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUM7d0JBQ3hCLFNBQVMsRUFBRSxFQUFFO3FCQUNkLEVBQUUsRUFBQyxTQUFTLEVBQUMsQ0FBQyxDQUFDO2lCQUNqQjthQUNGO2lCQUFNO2dCQUNMLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUM3RSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQzt3QkFDeEIsYUFBYSxFQUFFLEVBQUU7cUJBQ2xCLEVBQUUsRUFBQyxTQUFTLEVBQUMsQ0FBQyxDQUFDO2lCQUNqQjtnQkFDRCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDekUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUM7d0JBQ3hCLFNBQVMsRUFBRSxFQUFFO3FCQUNkLEVBQUUsRUFBQyxTQUFTLEVBQUMsQ0FBQyxDQUFDO2lCQUNqQjthQUNGO1NBRUY7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVc7UUFDcEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM5RyxDQUFDO0lBRUQscURBQXFEO0lBQzlDLFFBQVEsQ0FBQyxDQUFxQjtRQUVuQyxJQUFJLEdBQUcsQ0FBQztRQUNSLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRTtZQUNyRCxHQUFHLEdBQUc7Z0JBQ0osV0FBVyxFQUFFO29CQUNYLEtBQUssRUFBRSxLQUFLO2lCQUNiO2FBQ0YsQ0FBQztTQUNIO2FBQU07WUFDTCxHQUFHLEdBQUc7Z0JBQ0osU0FBUyxFQUFFO29CQUNULEtBQUssRUFBRSxLQUFLO2lCQUNiO2FBQ0YsQ0FBQztTQUNIO1FBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7O21IQWpKVSxzQkFBc0I7dUdBQXRCLHNCQUFzQixpT0FoQnRCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUM7WUFDckQsS0FBSyxFQUFFLElBQUk7U0FDWjtRQUNEO1lBQ0UsT0FBTyxFQUFFLGFBQWE7WUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztZQUNyRCxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsMEJDNUJILHNjQVFPOzJGRHlCTSxzQkFBc0I7a0JBcEJsQyxTQUFTOytCQUNFLG1CQUFtQixhQUdsQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzs0QkFDckQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDOzRCQUNyRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixRQUNLO3dCQUNKLEtBQUssRUFBRSxvQkFBb0I7cUJBQzVCO3dJQUlRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVxQixVQUFVO3NCQUFwQyxXQUFXO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmd9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVW50eXBlZEZvcm1Hcm91cCxcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgVmFsaWRhdG9yLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBOR19WQUxJREFUT1JTXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7UmFuZ2VWYWx1ZSwgU2VhcmNoRmlsdGVyLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtMb2NhbGVEYXRlUGlwZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGlwZXMvbG9jYWxlLWRhdGUucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWRhdGV0aW1lLXJhbmdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRldGltZVJhbmdlQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZXRpbWVSYW5nZUNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9XG4gIF0sXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Zvcm0tZWxlbWVudC1yYW5nZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYXRldGltZVJhbmdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcblxuICBASW5wdXQoKSB3aXRoVGltZTogYm9vbGVhbjtcbiAgQElucHV0KCkgcGlja2VyVGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgb3BlcmF0b3IgPSAnZXEnO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc3dhcCcpIHN3YXBJbnB1dHM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICByYW5nZUZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIHZhbHVlOiBSYW5nZVZhbHVlO1xuICBwcml2YXRlIGlzVmFsaWQgPSB0cnVlO1xuXG4gIC8vIG9wdGlvbnMgZm9yIHNlYXJjaCBzaXR1YXRpb25cbiAgcHVibGljIGF2YWlsYWJsZVNlYXJjaE9wdGlvbnMgPSBbXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkVRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5FUVVBTH0sXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUwpLCB2YWx1ZTogU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUx9LFxuICAgIHtsYWJlbDogUmFuZ2VWYWx1ZS5nZXRPcGVyYXRvckxhYmVsKFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMfSxcbiAgICB7bGFiZWw6IFJhbmdlVmFsdWUuZ2V0T3BlcmF0b3JMYWJlbChTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5JTlRFUlZBTF9JTkNMVURFX0JPVEh9XG4gIF07XG4gIC8vIHRoZSBzZWxlY3RlZCBzZWFyY2ggb3B0aW9uXG4gIHB1YmxpYyBzZWFyY2hPcHRpb246IHN0cmluZztcbiAgZGF0ZVBpcGU6IExvY2FsZURhdGVQaXBlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlciwgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgIHRoaXMuZGF0ZVBpcGUgPSBuZXcgTG9jYWxlRGF0ZVBpcGUodHJhbnNsYXRlKTtcbiAgfVxuXG4gIGNyZWF0ZUZvcm0oKSB7XG4gICAgdGhpcy5yYW5nZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGRhdGVWYWx1ZTogW10sXG4gICAgICBkYXRlVmFsdWVGcm9tOiBbXVxuICAgIH0pO1xuICB9XG5cbiAgb25Gb3JtVmFsdWVDaGFuZ2UoKSB7XG4gICAgdGhpcy5yYW5nZUZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uVmFsdWVDaGFuZ2UoKSk7XG4gIH1cblxuICBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7fVxuICB2YWxpZGF0aW9uQ2hhbmdlID0gKCkgPT4ge307XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogUmFuZ2VWYWx1ZSk6IHZvaWQge1xuICAgIHRoaXMuX3NldFZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVmFsaWRhdG9yQ2hhbmdlPyhmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZSgpIHtcblxuICAgIGxldCBkYXRlVmFsdWUgPSB0aGlzLmZvcm1hdERhdGUodGhpcy5yYW5nZUZvcm0uZ2V0KCdkYXRlVmFsdWUnKS52YWx1ZSk7XG4gICAgaWYgKHRoaXMuc2VhcmNoT3B0aW9uID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIKSB7XG4gICAgICBsZXQgZGF0ZVZhbHVlRnJvbSA9IHRoaXMuZm9ybWF0RGF0ZSh0aGlzLnJhbmdlRm9ybS5nZXQoJ2RhdGVWYWx1ZUZyb20nKS52YWx1ZSkgfHwgbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xuXG4gICAgICBpZiAoZGF0ZVZhbHVlRnJvbSB8fCBkYXRlVmFsdWUpIHtcbiAgICAgICAgdGhpcy5pc1ZhbGlkID0gdGhpcy5yYW5nZUZvcm0udmFsaWQgJiYgISFkYXRlVmFsdWVGcm9tICYmICEhZGF0ZVZhbHVlO1xuICAgICAgICB0aGlzLnN3YXBJbnB1dHMgPSBkYXRlVmFsdWVGcm9tICYmIGRhdGVWYWx1ZSAmJiBkYXRlVmFsdWVGcm9tID4gZGF0ZVZhbHVlO1xuICAgICAgICB0aGlzLl9zZXRWYWx1ZShuZXcgUmFuZ2VWYWx1ZShcbiAgICAgICAgICB0aGlzLnNlYXJjaE9wdGlvbixcbiAgICAgICAgICB0aGlzLnN3YXBJbnB1dHMgPyBkYXRlVmFsdWUgOiBkYXRlVmFsdWVGcm9tLFxuICAgICAgICAgIHRoaXMuc3dhcElucHV0cyA/IGRhdGVWYWx1ZUZyb20gOiBkYXRlVmFsdWVcbiAgICAgICAgKSk7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN3YXBJbnB1dHMgPSBmYWxzZTtcbiAgICAgIHRoaXMuaXNWYWxpZCA9IHRoaXMucmFuZ2VGb3JtLnZhbGlkO1xuICAgICAgdGhpcy5fc2V0VmFsdWUoIXRoaXMuaXNWYWxpZCB8fCAhZGF0ZVZhbHVlID8gbnVsbCA6IG5ldyBSYW5nZVZhbHVlKHRoaXMuc2VhcmNoT3B0aW9uLCBkYXRlVmFsdWUpKTtcbiAgICB9XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRWYWx1ZSh2YWx1ZTogUmFuZ2VWYWx1ZSwgZW1pdEV2ZW50ID0gZmFsc2UpIHtcbiAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSkgPT09IEpTT04uc3RyaW5naWZ5KHZhbHVlKSkgcmV0dXJuO1xuICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSBpbnN0YW5jZW9mIFJhbmdlVmFsdWUgJiYgKHZhbHVlLmZpcnN0VmFsdWUgfHwgdmFsdWUuc2Vjb25kVmFsdWUpKSB7XG5cbiAgICAgIGxldCBtYXRjaCA9IHRoaXMuYXZhaWxhYmxlU2VhcmNoT3B0aW9ucy5maW5kKChvKSA9PiBvLnZhbHVlID09PSB2YWx1ZS5vcGVyYXRvcik7XG4gICAgICB0aGlzLnNlYXJjaE9wdGlvbiA9IG1hdGNoID8gbWF0Y2gudmFsdWUgOiB0aGlzLmF2YWlsYWJsZVNlYXJjaE9wdGlvbnNbMF0udmFsdWU7XG5cbiAgICAgIGNvbnN0IGZWID0gdmFsdWUuZmlyc3RWYWx1ZSA/IG5ldyBEYXRlKHZhbHVlLmZpcnN0VmFsdWUpIDogbnVsbDtcbiAgICAgIGNvbnN0IHNWID0gdmFsdWUuc2Vjb25kVmFsdWUgPyBuZXcgRGF0ZSh2YWx1ZS5zZWNvbmRWYWx1ZSkgOiBudWxsO1xuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuXG4gICAgICBpZiAoIXZhbHVlLnNlY29uZFZhbHVlKSB7XG4gICAgICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnJhbmdlRm9ybS52YWx1ZS5kYXRlVmFsdWUpICE9PSBKU09OLnN0cmluZ2lmeShmVikpIHtcbiAgICAgICAgICB0aGlzLnJhbmdlRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGRhdGVWYWx1ZTogZlZcbiAgICAgICAgICB9LCB7ZW1pdEV2ZW50fSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnJhbmdlRm9ybS52YWx1ZS5kYXRlVmFsdWVGcm9tKSAhPT0gSlNPTi5zdHJpbmdpZnkoZlYpKSB7XG4gICAgICAgICAgdGhpcy5yYW5nZUZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBkYXRlVmFsdWVGcm9tOiBmVlxuICAgICAgICAgIH0sIHtlbWl0RXZlbnR9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy5yYW5nZUZvcm0udmFsdWUuZGF0ZVZhbHVlKSAhPT0gSlNPTi5zdHJpbmdpZnkoc1YpKSB7XG4gICAgICAgICAgdGhpcy5yYW5nZUZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBkYXRlVmFsdWU6IHNWXG4gICAgICAgICAgfSwge2VtaXRFdmVudH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gICAgICB0aGlzLnJhbmdlRm9ybS5yZXNldCgpO1xuICAgIH1cbiAgfVxuXG4gIGZvcm1hdERhdGUodmFsdWU6IERhdGUpOiBzdHJpbmcge1xuICAgIHJldHVybiAhdmFsdWUgPyBudWxsIDpcbiAgICAgIHRoaXMud2l0aFRpbWUgPyB2YWx1ZS50b0lTT1N0cmluZygpLnJlcGxhY2UoJzowMC4wMDAnLCAnJykgOiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJ3l5eXktTU0tZGQnKTtcbiAgfVxuXG4gIC8vIHJldHVybnMgbnVsbCB3aGVuIHZhbGlkIGVsc2UgdGhlIHZhbGlkYXRpb24gb2JqZWN0XG4gIHB1YmxpYyB2YWxpZGF0ZShjOiBVbnR5cGVkRm9ybUNvbnRyb2wpIHtcblxuICAgIGxldCBlcnI7XG4gICAgaWYgKHRoaXMuc2VhcmNoT3B0aW9uID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuRVFVQUwpIHtcbiAgICAgIGVyciA9IHtcbiAgICAgICAgZGF0ZWNvbnRyb2w6IHtcbiAgICAgICAgICB2YWxpZDogZmFsc2UsXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIGVyciA9IHtcbiAgICAgICAgZGF0ZXJhbmdlOiB7XG4gICAgICAgICAgdmFsaWQ6IGZhbHNlLFxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gKHRoaXMuaXNWYWxpZCkgPyBudWxsIDogZXJyO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZWFyY2hPcHRpb24gPSB0aGlzLm9wZXJhdG9yO1xuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xuICAgIHRoaXMub25Gb3JtVmFsdWVDaGFuZ2UoKTtcbiAgfVxufVxuIiwiPGZvcm0gY2xhc3M9XCJlby1kYXRldGltZS1yYW5nZVwiIFtmb3JtR3JvdXBdPVwicmFuZ2VGb3JtXCI+XG4gIDxlby1kYXRlICpuZ0lmPVwic2VhcmNoT3B0aW9uID09PSAnZ3RlbHRlJ1wiIFt3aXRoVGltZV09XCJ3aXRoVGltZVwiXG4gICAgZm9ybUNvbnRyb2xOYW1lPVwiZGF0ZVZhbHVlRnJvbVwiPjwvZW8tZGF0ZT5cblxuICA8eXZjLWRyb3Bkb3duIFsobmdNb2RlbCldPVwic2VhcmNoT3B0aW9uXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgpXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXG4gICAgW29wdGlvbnNdPVwiYXZhaWxhYmxlU2VhcmNoT3B0aW9uc1wiPjwveXZjLWRyb3Bkb3duPlxuXG4gIDxlby1kYXRlIFt3aXRoVGltZV09XCJ3aXRoVGltZVwiIGZvcm1Db250cm9sTmFtZT1cImRhdGVWYWx1ZVwiPjwvZW8tZGF0ZT5cbjwvZm9ybT4iXX0=
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9kYXRldGltZS1yYW5nZS9kYXRldGltZS1yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2RhdGV0aW1lLXJhbmdlL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFVLFVBQVUsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQU1MLGlCQUFpQixFQUNqQixhQUFhLEVBQ2QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBbUIsTUFBTSxjQUFjLENBQUM7QUFDeEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7O0FBc0JqRixNQUFNLE9BQU8sc0JBQXNCO0lBd0JqQyxZQUFvQixFQUFzQixFQUFTLFNBQTJCO1FBQTFELE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQVMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFwQnJFLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFRSxlQUFVLEdBQVksS0FBSyxDQUFDO1FBSS9DLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdkIsK0JBQStCO1FBQ3hCLDJCQUFzQixHQUFHO1lBQzlCLEVBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBQztZQUNyRyxFQUFDLEtBQUssRUFBRSxVQUFVLENB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LEVBQUUsSUFBSTt5QkFDWjtxQkFDRixRQUNLO3dCQUNKLEtBQUssRUFBRSxvQkFBb0I7cUJBQzVCO3dJQUlRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVxQixVQUFVO3NCQUFwQyxXQUFXO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmd9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVW50eXBlZEZvcm1Hcm91cCxcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgVmFsaWRhdG9yLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBOR19WQUxJREFUT1JTXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7UmFuZ2VWYWx1ZSwgU2VhcmNoRmlsdGVyLCBUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtMb2NhbGVEYXRlUGlwZX0gZnJvbSAnLi4vLi4vLi4vZW8tZnJhbWV3b3JrLWNvcmUvcGlwZXMvbG9jYWxlLWRhdGUucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWRhdGV0aW1lLXJhbmdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGV0aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRldGltZVJhbmdlQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZXRpbWVSYW5nZUNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9XG4gIF0sXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Zvcm0tZWxlbWVudC1yYW5nZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEYXRldGltZVJhbmdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcblxuICBASW5wdXQoKSB3aXRoVGltZTogYm9vbGVhbjtcbiAgQElucHV0KCkgcGlja2VyVGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgb3BlcmF0b3IgPSAnZXEnO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc3dhcCcpIHN3YXBJbnB1dHM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICByYW5nZUZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIHZhbHVlOiBSYW5nZVZhbHVlO1xuICBwcml2YXRlIGlzVmFsaWQgPSB0cnVlO1xuXG4gIC8vIG9wdGlvbnMgZm9yIHNlYXJjaCBzaXR1YXRpb25cbiAgcHVibGljIGF2YWlsYWJsZVNlYXJjaE9wdGlvbnMgPSBbXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkVRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5FUVVBTH0sXG4gICAge2xhYmVsOiBSYW5nZVZhbHVlLmdldE9wZXJhdG9yTGFiZWwoU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUwpLCB2YWx1ZTogU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkdSRUFURVJfT1JfRVFVQUx9LFxuICAgIHtsYWJlbDogUmFuZ2VWYWx1ZS5nZXRPcGVyYXRvckxhYmVsKFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5MRVNTX09SX0VRVUFMfSxcbiAgICB7bGFiZWw6IFJhbmdlVmFsdWUuZ2V0T3BlcmF0b3JMYWJlbChTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIKSwgdmFsdWU6IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5JTlRFUlZBTF9JTkNMVURFX0JPVEh9XG4gIF07XG4gIC8vIHRoZSBzZWxlY3RlZCBzZWFyY2ggb3B0aW9uXG4gIHB1YmxpYyBzZWFyY2hPcHRpb246IHN0cmluZztcbiAgZGF0ZVBpcGU6IExvY2FsZURhdGVQaXBlO1xuICBwcmV2aW91c0RhdGVWYWx1ZSA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogVW50eXBlZEZvcm1CdWlsZGVyLCBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG4gICAgdGhpcy5kYXRlUGlwZSA9IG5ldyBMb2NhbGVEYXRlUGlwZSh0cmFuc2xhdGUpO1xuICB9XG5cbiAgY3JlYXRlRm9ybSgpIHtcbiAgICB0aGlzLnJhbmdlRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgZGF0ZVZhbHVlOiBbXSxcbiAgICAgIGRhdGVWYWx1ZUZyb206IFtdXG4gICAgfSk7XG4gIH1cblxuICBvbkZvcm1WYWx1ZUNoYW5nZSgpIHtcbiAgICB0aGlzLnJhbmdlRm9ybS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHRoaXMub25WYWx1ZUNoYW5nZSgpKTtcbiAgfVxuXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHt9XG4gIHZhbGlkYXRpb25DaGFuZ2UgPSAoKSA9PiB7fTtcblxuICB3cml0ZVZhbHVlKHZhbHVlOiBSYW5nZVZhbHVlKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0VmFsdWUodmFsdWUpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2U/KGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy52YWxpZGF0aW9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKHNlYXJjaE9wdGlvbiA9IHRoaXMuc2VhcmNoT3B0aW9uKSB7XG4gICAgbGV0IGRhdGVWYWx1ZSA9IHRoaXMuZm9ybWF0RGF0ZSh0aGlzLnJhbmdlRm9ybS5nZXQoJ2RhdGVWYWx1ZScpLnZhbHVlKTtcbiAgICBpZiAoc2VhcmNoT3B0aW9uID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuSU5URVJWQUxfSU5DTFVERV9CT1RIKSB7XG4gICAgICBsZXQgZGF0ZVZhbHVlRnJvbSA9IHRoaXMuZm9ybWF0RGF0ZSh0aGlzLnJhbmdlRm9ybS5nZXQoJ2RhdGVWYWx1ZUZyb20nKS52YWx1ZSk7XG5cbiAgICAgIGlmIChkYXRlVmFsdWVGcm9tIHx8IGRhdGVWYWx1ZSkge1xuICAgICAgICB0aGlzLmlzVmFsaWQgPSB0aGlzLnJhbmdlRm9ybS52YWxpZCAmJiAhIWRhdGVWYWx1ZUZyb20gJiYgISFkYXRlVmFsdWU7XG4gICAgICAgIHRoaXMuc3dhcElucHV0cyA9IGRhdGVWYWx1ZUZyb20gJiYgZGF0ZVZhbHVlICYmIGRhdGVWYWx1ZUZyb20gPiBkYXRlVmFsdWU7XG4gICAgICAgIHRoaXMuX3NldFZhbHVlKG5ldyBSYW5nZVZhbHVlKFxuICAgICAgICAgIHNlYXJjaE9wdGlvbixcbiAgICAgICAgICB0aGlzLnN3YXBJbnB1dHMgPyBkYXRlVmFsdWUgOiBkYXRlVmFsdWVGcm9tLFxuICAgICAgICAgIHRoaXMuc3dhcElucHV0cyA/IGRhdGVWYWx1ZUZyb20gOiBkYXRlVmFsdWVcbiAgICAgICAgKSk7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN3YXBJbnB1dHMgPSBmYWxzZTtcbiAgICAgIHRoaXMuaXNWYWxpZCA9IHRoaXMucmFuZ2VGb3JtLnZhbGlkO1xuICAgICAgaWYgKHNlYXJjaE9wdGlvbiA9PT0gU2VhcmNoRmlsdGVyLk9QRVJBVE9SLkxFU1NfT1JfRVFVQUwgJiYgZGF0ZVZhbHVlKSB7XG4gICAgICAgIGNvbnN0IG5ld0RhdGVWYWx1ZSA9IG5ldyBEYXRlKGRhdGVWYWx1ZSk7XG4gICAgICAgIG5ld0RhdGVWYWx1ZS5zZXRIb3VycygyMywgNTkpO1xuICAgICAgICBkYXRlVmFsdWUgPSBuZXdEYXRlVmFsdWUudG9JU09TdHJpbmcoKTtcbiAgICAgIH0gZWxzZSBpZiAoc2VhcmNoT3B0aW9uID09PSBTZWFyY2hGaWx0ZXIuT1BFUkFUT1IuR1JFQVRFUl9PUl9FUVVBTCAmJiBkYXRlVmFsdWUpIHtcbiAgICAgICAgY29uc3QgbmV3RGF0ZVZhbHVlID0gbmV3IERhdGUoZGF0ZVZhbHVlKTtcbiAgICAgICAgbmV3RGF0ZVZhbHVlLnNldEhvdXJzKDAsIDApO1xuICAgICAgICBkYXRlVmFsdWUgPSBuZXdEYXRlVmFsdWUudG9JU09TdHJpbmcoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3NldFZhbHVlKCF0aGlzLmlzVmFsaWQgfHwgIWRhdGVWYWx1ZSA/IG51bGwgOiBuZXcgUmFuZ2VWYWx1ZSh0aGlzLnNlYXJjaE9wdGlvbiwgZGF0ZVZhbHVlKSk7XG4gICAgfVxuICAgIGlmICh0aGlzLnByZXZpb3VzRGF0ZVZhbHVlICE9PSBkYXRlVmFsdWUgfHwgdGhpcy5zZWFyY2hPcHRpb24gIT09IHNlYXJjaE9wdGlvbikge1xuICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICB0aGlzLnByZXZpb3VzRGF0ZVZhbHVlID0gZGF0ZVZhbHVlO1xuICAgIH1cbiAgICB0aGlzLnNlYXJjaE9wdGlvbiA9IHNlYXJjaE9wdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgX3NldFZhbHVlKHZhbHVlOiBSYW5nZVZhbHVlLCBlbWl0RXZlbnQgPSBmYWxzZSkge1xuICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKSA9PT0gSlNPTi5zdHJpbmdpZnkodmFsdWUpKSByZXR1cm47XG4gICAgaWYgKHZhbHVlICYmIHZhbHVlIGluc3RhbmNlb2YgUmFuZ2VWYWx1ZSAmJiAodmFsdWUuZmlyc3RWYWx1ZSB8fCB2YWx1ZS5zZWNvbmRWYWx1ZSkpIHtcblxuICAgICAgbGV0IG1hdGNoID0gdGhpcy5hdmFpbGFibGVTZWFyY2hPcHRpb25zLmZpbmQoKG8pID0+IG8udmFsdWUgPT09IHZhbHVlLm9wZXJhdG9yKTtcbiAgICAgIHRoaXMuc2VhcmNoT3B0aW9uID0gbWF0Y2ggPyBtYXRjaC52YWx1ZSA6IHRoaXMuYXZhaWxhYmxlU2VhcmNoT3B0aW9uc1swXS52YWx1ZTtcblxuICAgICAgY29uc3QgZlYgPSB2YWx1ZS5maXJzdFZhbHVlID8gbmV3IERhdGUodmFsdWUuZmlyc3RWYWx1ZSkgOiBudWxsO1xuICAgICAgY29uc3Qgc1YgPSB2YWx1ZS5zZWNvbmRWYWx1ZSA/IG5ldyBEYXRlKHZhbHVlLnNlY29uZFZhbHVlKSA6IG51bGw7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG5cbiAgICAgIGlmICghdmFsdWUuc2Vjb25kVmFsdWUpIHtcbiAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHRoaXMucmFuZ2VGb3JtLnZhbHVlLmRhdGVWYWx1ZSkgIT09IEpTT04uc3RyaW5naWZ5KGZWKSkge1xuICAgICAgICAgIHRoaXMucmFuZ2VGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICAgICAgZGF0ZVZhbHVlOiBmVlxuICAgICAgICAgIH0sIHtlbWl0RXZlbnR9KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHRoaXMucmFuZ2VGb3JtLnZhbHVlLmRhdGVWYWx1ZUZyb20pICE9PSBKU09OLnN0cmluZ2lmeShmVikpIHtcbiAgICAgICAgICB0aGlzLnJhbmdlRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGRhdGVWYWx1ZUZyb206IGZWXG4gICAgICAgICAgfSwge2VtaXRFdmVudH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChKU09OLnN0cmluZ2lmeSh0aGlzLnJhbmdlRm9ybS52YWx1ZS5kYXRlVmFsdWUpICE9PSBKU09OLnN0cmluZ2lmeShzVikpIHtcbiAgICAgICAgICB0aGlzLnJhbmdlRm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGRhdGVWYWx1ZTogc1ZcbiAgICAgICAgICB9LCB7ZW1pdEV2ZW50fSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICAgIHRoaXMucmFuZ2VGb3JtLnJlc2V0KCk7XG4gICAgfVxuICB9XG5cbiAgZm9ybWF0RGF0ZSh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuICF2YWx1ZSA/IG51bGwgOlxuICAgICAgdGhpcy53aXRoVGltZSA/IHZhbHVlLnRvSVNPU3RyaW5nKCkucmVwbGFjZSgnOjAwLjAwMCcsICcnKSA6IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHZhbHVlLCAneXl5eS1NTS1kZCcpO1xuICB9XG5cbiAgLy8gcmV0dXJucyBudWxsIHdoZW4gdmFsaWQgZWxzZSB0aGUgdmFsaWRhdGlvbiBvYmplY3RcbiAgcHVibGljIHZhbGlkYXRlKGM6IFVudHlwZWRGb3JtQ29udHJvbCkge1xuXG4gICAgbGV0IGVycjtcbiAgICBpZiAodGhpcy5zZWFyY2hPcHRpb24gPT09IFNlYXJjaEZpbHRlci5PUEVSQVRPUi5FUVVBTCkge1xuICAgICAgZXJyID0ge1xuICAgICAgICBkYXRlY29udHJvbDoge1xuICAgICAgICAgIHZhbGlkOiBmYWxzZSxcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXJyID0ge1xuICAgICAgICBkYXRlcmFuZ2U6IHtcbiAgICAgICAgICB2YWxpZDogZmFsc2UsXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiAodGhpcy5pc1ZhbGlkKSA/IG51bGwgOiBlcnI7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNlYXJjaE9wdGlvbiA9IHRoaXMub3BlcmF0b3I7XG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XG4gICAgdGhpcy5vbkZvcm1WYWx1ZUNoYW5nZSgpO1xuICB9XG59XG4iLCI8Zm9ybSBjbGFzcz1cImVvLWRhdGV0aW1lLXJhbmdlXCIgW2Zvcm1Hcm91cF09XCJyYW5nZUZvcm1cIj5cbiAgPGVvLWRhdGUgKm5nSWY9XCJzZWFyY2hPcHRpb24gPT09ICdndGVsdGUnXCIgW3dpdGhUaW1lXT1cIndpdGhUaW1lXCJcbiAgICBmb3JtQ29udHJvbE5hbWU9XCJkYXRlVmFsdWVGcm9tXCI+PC9lby1kYXRlPlxuXG4gIDx5dmMtZHJvcGRvd24gW25nTW9kZWxdPVwic2VhcmNoT3B0aW9uXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXG4gICAgW29wdGlvbnNdPVwiYXZhaWxhYmxlU2VhcmNoT3B0aW9uc1wiPjwveXZjLWRyb3Bkb3duPlxuXG4gIDxlby1kYXRlIFt3aXRoVGltZV09XCJ3aXRoVGltZVwiIGZvcm1Db250cm9sTmFtZT1cImRhdGVWYWx1ZVwiPjwvZW8tZGF0ZT5cbjwvZm9ybT5cbiJdfQ==
@@ -41,7 +41,7 @@ export class StringComponent {
41
41
  }
42
42
  onValueChange(evt) {
43
43
  this.formatedValue = Utils.formatMailTo(evt, this.classification === 'email');
44
- this.value = evt.length ? evt : null;
44
+ this.value = evt;
45
45
  this.propagateChange(this.value);
46
46
  }
47
47
  onBlur() {
@@ -74,7 +74,11 @@ export class StringComponent {
74
74
  .getJson(uri, base)
75
75
  .subscribe(res => {
76
76
  let r = [];
77
- res.forEach(i => r.push(i.value));
77
+ res.forEach(i => {
78
+ if ((!Array.isArray(this.value) && this.value !== i.value) || (Array.isArray(this.value) && !this.value.find(v => v === i.value))) {
79
+ r.push(i.value);
80
+ }
81
+ });
78
82
  this.autocompleteRes = r;
79
83
  });
80
84
  }
@@ -247,4 +251,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
247
251
  }], maxLength: [{
248
252
  type: Input
249
253
  }] } });
250
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvc3RyaW5nL3N0cmluZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL3N0cmluZy9zdHJpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFJTCxpQkFBaUIsRUFDakIsYUFBYSxFQUNkLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFpQixLQUFLLEVBQWlCLE1BQU0sY0FBYyxDQUFDOzs7Ozs7O0FBb0JuRSxNQUFNLE9BQU8sZUFBZTtJQUcxQixJQUNJLFlBQVksQ0FBQyxPQUFnQjtRQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFzQkQsWUFBb0IsT0FBdUI7UUFBdkIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFHM0Msb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFO1FBQzdCLENBQUMsQ0FBQztJQUhGLENBQUM7SUFLRCxZQUFZLENBQUMsS0FBSztRQUNoQiwwQ0FBMEM7UUFDMUMsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDeEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFD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RyxFQUFFLGdCQUFnQixDQUFDOzRCQUM5QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLENBQUM7NEJBQzlDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO3FHQU1HLFlBQVk7c0JBRGYsS0FBSztnQkFTRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgVmFsaWRhdG9yLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgTkdfVkFMSURBVE9SU1xufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0JhY2tlbmRTZXJ2aWNlLCBVdGlscywgRm9ybWF0ZWRNYWlsVG99IGZyb20gJ0Blby1zZGsvY29yZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tc3RyaW5nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0cmluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0cmluZy5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFN0cmluZ0NvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFN0cmluZ0NvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTdHJpbmdDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcblxuICBwcml2YXRlIF9hdXRvY29tcGxldGU6IGJvb2xlYW47XG4gIEBJbnB1dCgpXG4gIHNldCBhdXRvY29tcGxldGUoYXV0b0NvbTogYm9vbGVhbikge1xuICAgIHRoaXMuX2F1dG9jb21wbGV0ZSA9IGF1dG9Db207XG4gIH1cblxuICBnZXQgYXV0b2NvbXBsZXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9hdXRvY29tcGxldGU7XG4gIH1cblxuICBASW5wdXQoKSBtdWx0aXNlbGVjdDogYm9vbGVhbjtcbiAgQElucHV0KCkgbXVsdGlsaW5lOiBib29sZWFuO1xuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbjtcbiAgQElucHV0KCkgYXV0b2ZvY3VzOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIGNsYXNzaWZpY2F0aW9uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNpdHVhdGlvbjogc3RyaW5nO1xuICBASW5wdXQoKSByZWdleDogc3RyaW5nO1xuICBASW5wdXQoKSBxbmFtZTogc3RyaW5nO1xuICAvLyBjb3VsZCBiZSBzbWFsbCwgbWVkaXVtLCBsYXJnZVxuICBASW5wdXQoKSBzaXplOiBzdHJpbmc7XG4gIEBJbnB1dCgpIG1pbkxlbmd0aDogbnVtYmVyO1xuICBASW5wdXQoKSBtYXhMZW5ndGg6IG51bWJlcjtcblxuICBhdXRvY29tcGxldGVSZXM6IGFueVtdO1xuICBmb3JtYXRlZFZhbHVlOiBGb3JtYXRlZE1haWxUbztcbiAgLy8gbW9kZWwgdmFsdWVcbiAgdmFsdWU7XG4gIHZhbGlkOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYmFja2VuZDogQmFja2VuZFNlcnZpY2UpIHtcbiAgfVxuXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHtcbiAgfTtcblxuICBvbktleVVwRW50ZXIoZXZlbnQpIHtcbiAgICAvLyBhcHBsaWVzIHRvIG11bHRpc2VsZWN0IGFuZCBhdXRvY29tcGxldGVcbiAgICBjb25zdCBpbnB1dCA9IGV2ZW50LnRhcmdldC52YWx1ZS50cmltKCk7XG4gICAgaWYgKGlucHV0KSB7XG4gICAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZSA/IHRoaXMudmFsdWUgOiBbXTtcbiAgICAgIHRoaXMudmFsdWUgPSBbLi4udGhpcy52YWx1ZSwgaW5wdXRdO1xuICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1hdGVkVmFsdWUgPSBVdGlscy5mb3JtYXRNYWlsVG8odmFsdWUsIHRoaXMuY2xhc3NpZmljYXRpb24gPT09ICdlbWFpbCcpO1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZSB8fCBudWxsO1xuICAgIHRoaXMuX3ZhbGlkYXRlKCk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZShldnQpIHtcbiAgICB0aGlzLmZvcm1hdGVkVmFsdWUgPSBVdGlscy5mb3JtYXRNYWlsVG8oZXZ0LCB0aGlzLmNsYXNzaWZpY2F0aW9uID09PSAnZW1haWwnKTtcbiAgICB0aGlzLnZhbHVlID0gZXZ0Lmxlbmd0aCA/IGV2dCA6IG51bGw7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XG4gIH1cblxuICBvbkJsdXIoKSB7XG4gICAgaWYgKHRoaXMudHJpbVZhbHVlKCkpIHtcbiAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUcmltcyB0aGUgY3VycmVudCB2YWx1ZSBhbmQgcmV0dXJucyB3ZXRoZXIgb3Igbm90IGl0IGhhcyBiZWVuIHRyaW1tZWRcbiAgICovXG4gIHByaXZhdGUgdHJpbVZhbHVlKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5tdWx0aXNlbGVjdCkge1xuICAgICAgICBjb25zdCBsZW5ndGhCZWZvcmUgPSB0aGlzLnZhbHVlLmpvaW4oJycpLmxlbmd0aDtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMudmFsdWUubWFwKHYgPT4gdi50cmltKCkpO1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5qb2luKCcnKS5sZW5ndGggIT09IGxlbmd0aEJlZm9yZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGxlbmd0aEJlZm9yZSA9IHRoaXMudmFsdWUubGVuZ3RoO1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZS50cmltKCk7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLmxlbmd0aCAhPT0gbGVuZ3RoQmVmb3JlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBhdXRvY29tcGxldGVGbih0ZXJtOiBzdHJpbmcpIHtcbiAgICBjb25zdCB1cmkgPSBgL2F1dG9jb21wbGV0ZS9lbGVtZW50P3ByZWZpeD0ke2VuY29kZVVSSUNvbXBvbmVudCh0ZXJtKX0mcW5hbWU9JHt0aGlzLnFuYW1lfWA7XG4gICAgY29uc3QgYmFzZSA9IHRoaXMuYmFja2VuZC5nZXRTZWFyY2hCYXNlKCk7XG4gICAgdGhpcy5iYWNrZW5kXG4gICAgICAuZ2V0SnNvbih1cmksIGJhc2UpXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIGxldCByID0gW107XG4gICAgICAgIHJlcy5mb3JFYWNoKGkgPT4gci5wdXNoKGkudmFsdWUpKTtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVSZXMgPSByO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlQ2xhc3NpZmljYXRpb24oc3RyaW5nKTogYm9vbGVhbiB7XG5cbiAgICBpZiAodGhpcy5zaXR1YXRpb24gPT09ICdTRUFSQ0gnKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGV0IHBhdHRlcm47XG4gICAgICBpZiAodGhpcy5jbGFzc2lmaWNhdGlvbiA9PT0gJ2VtYWlsJykge1xuICAgICAgICBwYXR0ZXJuID0gL14oPzooLis/KVxccyo8KFxcdyspKFtcXC0rLl1bXFx3XSspKkAoXFx3W1xcLVxcd10qXFwuKXsxLDV9KFtBLVphLXpdezIsNn0pPnxbXCInXXsxfSguKz8pW1wiJ117MX1cXHMqPChcXHcrKShbXFwtKy5dW1xcd10rKSpAKFxcd1tcXC1cXHddKlxcLil7MSw1fShbQS1aYS16XXsyLDZ9KT58KFxcdyspKFtcXC0rLl1bXFx3XSspKkAoXFx3W1xcLVxcd10qXFwuKXsxLDV9KFtBLVphLXpdezIsNn0pKSQvO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmNsYXNzaWZpY2F0aW9uID09PSAndXJsJykge1xuICAgICAgICBwYXR0ZXJuID0gLyhodHRwfGZ0cHxodHRwcyk6XFwvXFwvW1xcdy1dKyhcXC5bXFx3LV0rKSsoW1xcdy4sQD9ePSUmYW1wOzpcXC9+KyMtXSpbXFx3QD9ePSUmYW1wO1xcL34rIy1dKT8vO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHBhdHRlcm4gPyBwYXR0ZXJuLnRlc3Qoc3RyaW5nKSA6IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdmFsaWRhdGUoKSB7XG4gICAgbGV0IGVycjtcbiAgICAvLyB2YWxpZGF0ZSByZWd1bGFyIGV4cHJlc3Npb25cbiAgICBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLnJlZ2V4KSB7XG4gICAgICBpZiAodGhpcy5tdWx0aXNlbGVjdCkge1xuICAgICAgICBpZiAodGhpcy52YWx1ZS5sZW5ndGggPiAwICYmICEhdGhpcy52YWx1ZS5maW5kKHYgPT4gIVJlZ0V4cCh0aGlzLnJlZ2V4KS50ZXN0KHYpKSkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsncmVnZXgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCFSZWdFeHAodGhpcy5yZWdleCkudGVzdCh0aGlzLnZhbHVlKSkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsncmVnZXgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyB2YWxpZGF0ZSBjbGFzc2lmaWNhdGlvbiBzZXR0aW5nc1xuICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMuY2xhc3NpZmljYXRpb24pIHtcbiAgICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XG4gICAgICAgIGZvciAobGV0IHYgb2YgdGhpcy52YWx1ZSkge1xuICAgICAgICAgIGlmICghdGhpcy52YWxpZGF0ZUNsYXNzaWZpY2F0aW9uKHYpKSB7XG4gICAgICAgICAgICBlcnIgPSB7fTtcbiAgICAgICAgICAgIGVyclsnY2xhc3NpZmljYXRpb24nICsgdGhpcy5jbGFzc2lmaWNhdGlvbl0gPSB7XG4gICAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghdGhpcy52YWxpZGF0ZUNsYXNzaWZpY2F0aW9uKHRoaXMudmFsdWUpKSB7XG4gICAgICAgICAgZXJyID0ge307XG4gICAgICAgICAgZXJyWydjbGFzc2lmaWNhdGlvbicgKyB0aGlzLmNsYXNzaWZpY2F0aW9uXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gdmFsaWRhdGUgbGVuZ3RoIGhlcmUgd2hlbiBtdWx0aXNlbGVjdFxuICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUgIT09IG51bGwpIHtcbiAgICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlLmxlbmd0aCA+IDAgJiYgISF0aGlzLnZhbHVlLmZpbmQodiA9PiB2Lmxlbmd0aCA8IHRoaXMubWluTGVuZ3RoKSkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsnbWlubGVuZ3RoJ10gPSB7XG4gICAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudmFsdWUubGVuZ3RoID4gMCAmJiAhIXRoaXMudmFsdWUuZmluZCh2ID0+IHYubGVuZ3RoID4gdGhpcy5tYXhMZW5ndGgpKSB7XG4gICAgICAgICAgZXJyID0ge307XG4gICAgICAgICAgZXJyWydtYXhsZW5ndGgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMudmFsdWUubGVuZ3RoID4gMCAmJiB0aGlzLnZhbHVlLmxlbmd0aCA8IHRoaXMubWluTGVuZ3RoKSB7XG4gICAgICAgICAgZXJyID0ge307XG4gICAgICAgICAgZXJyWydtaW5sZW5ndGgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy52YWx1ZS5sZW5ndGggPiB0aGlzLm1heExlbmd0aCkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsnbWF4bGVuZ3RoJ10gPSB7XG4gICAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gdmFsaWRhdGUgaW52YWxpZCBpZiBvbmx5IHdoaXRlc3BhY2VzXG4gICAgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy52YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgaWYgKHRoaXMubXVsdGlzZWxlY3QpIHtcbiAgICAgICAgZm9yIChsZXQgdiBvZiB0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgaWYgKHYubGVuZ3RoICYmICF2LnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgICAgZXJyWydvbmx5V2hpdGVzcGFjZXMnXSA9IHtcbiAgICAgICAgICAgICAgdmFsaWQ6IGZhbHNlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy52YWx1ZS5sZW5ndGggJiYgIXRoaXMudmFsdWUudHJpbSgpLmxlbmd0aCkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsnb25seVdoaXRlc3BhY2VzJ10gPSB7XG4gICAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy52YWxpZCA9ICFlcnI7XG4gICAgcmV0dXJuIGVyciB8fCBudWxsO1xuICB9XG5cbiAgLy8gcmV0dXJucyBudWxsIHdoZW4gdmFsaWQgZWxzZSB0aGUgdmFsaWRhdGlvbiBvYmplY3RcbiAgcHVibGljIHZhbGlkYXRlKGM6IFVudHlwZWRGb3JtQ29udHJvbCkge1xuICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZW8tZm9ybS1zdHJpbmdcIj5cblxuICA8aW5wdXQgKm5nSWY9XCIhbXVsdGlsaW5lICYmICFtdWx0aXNlbGVjdCAmJiAhYXV0b2NvbXBsZXRlXCIgdHlwZT1cInRleHRcIiAoYmx1cik9XCJvbkJsdXIoKVwiIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5XCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIC8+XG5cbiAgPCEtLSBzaW5nbGUgbGluZSBpbnB1dCB3aXRoIGF1dG9jb21wbGV0ZSAtLT5cbiAgPHl2Yy1hdXRvY29tcGxldGUgKm5nSWY9XCIhbXVsdGlsaW5lICYmICFtdWx0aXNlbGVjdCAmJiBhdXRvY29tcGxldGVcIiAjYXV0b2NvbXBsZXRlIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgIFtkaXNhYmxlZF09XCJyZWFkb25seVwiIFthdXRvY29tcGxldGVWYWx1ZXNdPVwiYXV0b2NvbXBsZXRlUmVzXCIgKGJsdXIpPVwib25CbHVyKClcIlxuICAgIChzdWdnZXN0aW9uU2VsZWN0KT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGF1dG9jb21wbGV0ZUZuYyk9XCJhdXRvY29tcGxldGVGbigkZXZlbnQpXCI+XG4gIDwveXZjLWF1dG9jb21wbGV0ZT5cblxuICA8IS0tIHNpbmdsZSBsaW5lIGlucHV0IHdpdGggbXVsdGlzZWxlY3QtLT5cbiAgPHl2Yy1jaGlwcyAqbmdJZj1cIiFtdWx0aWxpbmUgJiYgbXVsdGlzZWxlY3QgJiYgIWF1dG9jb21wbGV0ZVwiIFsobmdNb2RlbCldPVwidmFsdWVcIiBbZGlzYWJsZWRdPVwicmVhZG9ubHlcIlxuICAgIChibHVyKT1cIm9uQmx1cigpXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCI+XG4gIDwveXZjLWNoaXBzPlxuXG4gIDwhLS0gc2luZ2xlIGxpbmUgaW5wdXQgd2l0aCBtdWx0aXNlbGVjdCBhbmQgYXV0b2NvbXBsZXRlIC0tPlxuICA8eXZjLWF1dG9jb21wbGV0ZSAqbmdJZj1cIiFtdWx0aWxpbmUgJiYgbXVsdGlzZWxlY3QgJiYgYXV0b2NvbXBsZXRlXCIgW2F1dG9jb21wbGV0ZVZhbHVlc109XCJhdXRvY29tcGxldGVSZXNcIlxuICAgIFttdWx0aXBsZV09XCJ0cnVlXCIgW2Rpc2FibGVkXT1cInJlYWRvbmx5XCIgKGJsdXIpPVwib25CbHVyKClcIiAoYXV0b2NvbXBsZXRlRm5jKT1cImF1dG9jb21wbGV0ZUZuKCRldmVudClcIlxuICAgIFsobmdNb2RlbCldPVwidmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj5cbiAgPC95dmMtYXV0b2NvbXBsZXRlPlxuXG4gIDwhLS0gbXVsdGkgbGluZSB0ZXh0IGlucHV0cyAtLT5cbiAgPHRleHRhcmVhIGNsYXNzPVwiaW5wdXQtdGV4dGFyZWEgc2l6ZS17e3NpemV9fVwiICpuZ0lmPVwibXVsdGlsaW5lXCIgKGJsdXIpPVwib25CbHVyKClcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIiBbZGlzYWJsZWRdPVwicmVhZG9ubHlcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj48L3RleHRhcmVhPlxuXG4gIDxkaXYgY2xhc3M9XCJjbGFzc2lmeVwiIFtuZ0NsYXNzXT1cIntlbXB0eTogIXZhbHVlIHx8IHNpdHVhdGlvbiA9PT0gJ1NFQVJDSCd9XCI+XG4gICAgPGEgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj1cIm1haWx0bzp7e2Zvcm1hdGVkVmFsdWV9fVwiICpuZ0lmPVwiY2xhc3NpZmljYXRpb24gPT09ICdlbWFpbCcgJiYgdmFsaWRcIj5cbiAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgLTk2MCA5NjAgOTYwXCIgd2lkdGg9XCIyMFwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTgwLjMwOS0yMTIuMDAxcS0yNy4wMDggMC00NS42NTgtMTguNjYyLTE4LjY1LTE4LjY2Mi0xOC42NS00NS42ODZ2LTQwNy42MjZxMC0yNy4wMjQgMTguNjUtNDUuNTI0dDQ1LjY1OC0xOC41aDU5OS4zODJxMjcuMDA4IDAgNDUuNjU4IDE4LjY2MiAxOC42NSAxOC42NjIgMTguNjUgNDUuNjg2djQwNy42MjZxMCAyNy4wMjQtMTguNjUgNDUuNTI0dC00NS42NTggMTguNUgxODAuMzA5Wk00ODAtNDQ5LjY5NCAxNjgtNjMzLjMwOXYzNTdxMCA1LjM4NSAzLjQ2MiA4Ljg0NyAzLjQ2MiAzLjQ2MiA4Ljg0NyAzLjQ2Mmg1OTkuMzgycTUuMzg1IDAgOC44NDctMy40NjIgMy40NjItMy40NjIgMy40NjItOC44NDd2LTM1N0w0ODAtNDQ5LjY5NFpNNDgwLTUxN2wzMDUuODQ2LTE3OUgxNzQuMTU0TDQ4MC01MTdaTTE2OC02MzMuMzA5Vi02OTYtMjc2LjMwOXEwIDUuMzg1IDMuNDYyIDguODQ3IDMuNDYyIDMuNDYyIDguODQ3IDMuNDYySDE2OHYtMzY5LjMwOVpcIiAvPlxuICAgICAgPC9zdmc+XG4gICAgPC9hPlxuICAgIDxhIHRhcmdldD1cIl9ibGFua1wiIGhyZWY9XCJ7e3ZhbHVlfX1cIiAqbmdJZj1cImNsYXNzaWZpY2F0aW9uID09PSAndXJsJyAmJiB2YWxpZFwiPlxuICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjIwXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk00ODAtMTE2LjAwMXEtNzUuMTU0IDAtMTQxLjQ5OS0yOC40NjItNjYuMzQ2LTI4LjQ2MS0xMTUuOTYyLTc4LjA3Ni00OS42MTUtNDkuNjE2LTc4LjA3Ni0xMTUuOTYyUTExNi4wMDEtNDA0Ljg0NiAxMTYuMDAxLTQ4MHEwLTc1Ljc2OSAyOC40NjItMTQxLjgwNyAyOC40NjEtNjYuMDM4IDc4LjA3Ni0xMTUuNjU0IDQ5LjYxNi00OS42MTUgMTE1Ljk2Mi03OC4wNzZRNDA0Ljg0Ni04NDMuOTk5IDQ4MC04NDMuOTk5cTc1Ljc2OSAwIDE0MS44MDcgMjguNDYyIDY2LjAzOCAyOC40NjEgMTE1LjY1NCA3OC4wNzYgNDkuNjE1IDQ5LjYxNiA3OC4wNzYgMTE1LjY1NFE4NDMuOTk5LTU1NS43NjkgODQzLjk5OS00ODBxMCA3NS4xNTQtMjguNDYyIDE0MS40OTktMjguNDYxIDY2LjM0Ni03OC4wNzYgMTE1Ljk2Mi00OS42MTYgNDkuNjE1LTExNS42NTQgNzguMDc2UTU1NS43NjktMTE2LjAwMSA0ODAtMTE2LjAwMVptMC01My44NDVxMjEuNjE2LTIxLjYxNiA0MC41MzktNzAuNDI0IDE4LjkyMy00OC44MDggMjkuMDc3LTEwOC44MDhINDEwLjM4NHExMC45MjMgNjEuNTM5IDI5LjQ2MiAxMTAuMzQ3IDE4LjUzOCA0OC44MDggNDAuMTU0IDY4Ljg4NVptLTY0LjQ2LTVxLTE5LTMwLTM0LjMwOC03NS41Mzl0LTIzLjQ2Mi05OC42OTNIMTk3LjA3NnEzMS42OTMgNjkuMzA5IDg5LjUwMSAxMTUuMTk0IDU3LjgwOSA0NS44ODUgMTI4Ljk2MyA1OS4wMzhabTEyOC45MiAwcTcxLjE1NC0xMy4xNTMgMTI4Ljk2My01OS4wMzggNTcuODA4LTQ1Ljg4NSA4OS41MDEtMTE1LjE5NEg2MDIuMjNRNTkyLjE1My0yOTUuNTM5IDU3Ni44NDUtMjUwcS0xNS4zMDggNDUuNTM5LTMyLjM4NSA3NS4xNTRabTc5LjQ2My0yMjYuMjNoMTczLjY5M3E0LjIzMS0yMS4zMDggNi4wMzktNDAuNzMxIDEuODA4LTE5LjQyNCAxLjgwOC0zOC4xOTN0LTEuODA4LTM4LjY5M3EtMS44MDgtMTkuOTIzLTYuMDM5LTQwLjIzMUg2MjMuOTIzcTEuMjMxIDE5LjM4NSAxLjE1NCA0MC4zODUtLjA3NyAyMS0uMDc3IDQwLjUzOXQuMDc3IDM5LjUzOXEuMDc3IDIwLTEuMTU0IDM3LjM4NVptLTIxOC4zMDggMGgxNDguNzdxMi43NjktMjIuMzA4IDMuNDYyLTQxLjM0Ny42OTItMTkuMDM4LjY5Mi0zNy41NzcgMC0xOC41MzktLjY5Mi0zOC4wNzctLjY5My0xOS41MzktMy40NjItNDAuODQ3aC0xNDguNzdxLTIuNzY5IDIxLjMwOC0zLjQ2MiA0MC44NDctLjY5MiAxOS41MzgtLjY5MiAzOC4wNzcgMCAxOC41MzkuNjkyIDM4LjA3Ny42OTMgMTkuNTM5IDMuNDYyIDQwLjg0N1ptLTI0My4yMzEgMGgxNzMuNjkzcS0xLjIzMS0xOS4zODUtMS4xNTQtNDAuMzg1LjA3Ny0yMSAuMDc3LTQwLjUzOXQtLjA3Ny0zOS41MzlxLS4wNzctMjAgMS4xNTQtMzcuMzg1SDE2Mi4zODRxLTQuMjMxIDIxLjMwOC02LjAzOSA0MC43MzEtMS44MDggMTkuNDI0LTEuODA4IDM4LjE5M3QxLjgwOCAzOC4xOTNxMS44MDggMTkuNDIzIDYuMDM5IDQwLjczMVpNNjAyLjIzLTYxMC45MjJoMTYwLjY5NFE3MzAuODQ2LTY4MSA2NzQtNzI2LjExNnEtNTYuODQ3LTQ1LjExNS0xMjkuNTQtNTkuNDIzIDE5IDMxLjkyMyAzMy45MjMgNzYuODg1IDE0LjkyNCA0NC45NjIgMjMuODQ3IDk3LjczMlptLTE5MS44NDYgMGgxMzkuMjMycS0xMC45MjMtNjEuMTU0LTMwLjAzOS0xMTAuOTI0LTE5LjExNS00OS43NjktMzkuNTc3LTY4LjMwOC0yMC40NjIgMTguNTM5LTM5LjU3NyA2OC4zMDgtMTkuMTE2IDQ5Ljc3LTMwLjAzOSAxMTAuOTI0Wm0tMjEzLjMwOCAwSDM1Ny43N3E4LjkyMy01Mi43NyAyMy44NDctOTcuNzMyIDE0LjkyMy00NC45NjIgMzMuOTIzLTc2Ljg4NS03My4wNzcgMTQuMzA4LTEyOS43MzIgNTkuNjE2LTU2LjY1NCA0NS4zMDgtODguNzMyIDExNS4wMDFaXCIgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYT5cbiAgPC9kaXY+XG5cbjwvZGl2PiJdfQ==
254
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvc3RyaW5nL3N0cmluZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL3N0cmluZy9zdHJpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFJTCxpQkFBaUIsRUFDakIsYUFBYSxFQUNkLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFpQixLQUFLLEVBQWlCLE1BQU0sY0FBYyxDQUFDOzs7Ozs7O0FBb0JuRSxNQUFNLE9BQU8sZUFBZTtJQUcxQixJQUNJLFlBQVksQ0FBQyxPQUFnQjtRQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFzQkQsWUFBb0IsT0FBdUI7UUFBdkIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFHM0Msb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFO1FBQzdCLENBQUMsQ0FBQztJQUhGLENBQUM7SUFLRCxZQUFZLENBQUMsS0FBSztRQUNoQiwwQ0FBMEM7UUFDMUMsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDeEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFD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QUk7U0FDWjtRQUNEO1lBQ0UsT0FBTyxFQUFFLGFBQWE7WUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7WUFDOUMsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLDBCQzFCSCxpNklBMENNOzJGRGRPLGVBQWU7a0JBakIzQixTQUFTOytCQUNFLFdBQVcsYUFHVjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQzs0QkFDOUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGdCQUFnQixDQUFDOzRCQUM5QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtxR0FNRyxZQUFZO3NCQURmLEtBQUs7Z0JBU0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFFRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFVudHlwZWRGb3JtQ29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIFZhbGlkYXRvcixcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIE5HX1ZBTElEQVRPUlNcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtCYWNrZW5kU2VydmljZSwgVXRpbHMsIEZvcm1hdGVkTWFpbFRvfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLXN0cmluZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdHJpbmcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdHJpbmcuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTdHJpbmdDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTdHJpbmdDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU3RyaW5nQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB7XG5cbiAgcHJpdmF0ZSBfYXV0b2NvbXBsZXRlOiBib29sZWFuO1xuICBASW5wdXQoKVxuICBzZXQgYXV0b2NvbXBsZXRlKGF1dG9Db206IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9hdXRvY29tcGxldGUgPSBhdXRvQ29tO1xuICB9XG5cbiAgZ2V0IGF1dG9jb21wbGV0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0b2NvbXBsZXRlO1xuICB9XG5cbiAgQElucHV0KCkgbXVsdGlzZWxlY3Q6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG11bHRpbGluZTogYm9vbGVhbjtcbiAgQElucHV0KCkgcmVhZG9ubHk6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGF1dG9mb2N1czogYm9vbGVhbjtcblxuICBASW5wdXQoKSBjbGFzc2lmaWNhdGlvbjogc3RyaW5nO1xuICBASW5wdXQoKSBzaXR1YXRpb246IHN0cmluZztcbiAgQElucHV0KCkgcmVnZXg6IHN0cmluZztcbiAgQElucHV0KCkgcW5hbWU6IHN0cmluZztcbiAgLy8gY291bGQgYmUgc21hbGwsIG1lZGl1bSwgbGFyZ2VcbiAgQElucHV0KCkgc2l6ZTogc3RyaW5nO1xuICBASW5wdXQoKSBtaW5MZW5ndGg6IG51bWJlcjtcbiAgQElucHV0KCkgbWF4TGVuZ3RoOiBudW1iZXI7XG5cbiAgYXV0b2NvbXBsZXRlUmVzOiBhbnlbXTtcbiAgZm9ybWF0ZWRWYWx1ZTogRm9ybWF0ZWRNYWlsVG87XG4gIC8vIG1vZGVsIHZhbHVlXG4gIHZhbHVlO1xuICB2YWxpZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhY2tlbmQ6IEJhY2tlbmRTZXJ2aWNlKSB7XG4gIH1cblxuICBwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7XG4gIH07XG5cbiAgb25LZXlVcEVudGVyKGV2ZW50KSB7XG4gICAgLy8gYXBwbGllcyB0byBtdWx0aXNlbGVjdCBhbmQgYXV0b2NvbXBsZXRlXG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQudmFsdWUudHJpbSgpO1xuICAgIGlmIChpbnB1dCkge1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMudmFsdWUgPyB0aGlzLnZhbHVlIDogW107XG4gICAgICB0aGlzLnZhbHVlID0gWy4uLnRoaXMudmFsdWUsIGlucHV0XTtcbiAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gICAgfVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5mb3JtYXRlZFZhbHVlID0gVXRpbHMuZm9ybWF0TWFpbFRvKHZhbHVlLCB0aGlzLmNsYXNzaWZpY2F0aW9uID09PSAnZW1haWwnKTtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWUgfHwgbnVsbDtcbiAgICB0aGlzLl92YWxpZGF0ZSgpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UoZXZ0KSB7XG4gICAgdGhpcy5mb3JtYXRlZFZhbHVlID0gVXRpbHMuZm9ybWF0TWFpbFRvKGV2dCwgdGhpcy5jbGFzc2lmaWNhdGlvbiA9PT0gJ2VtYWlsJyk7XG4gICAgdGhpcy52YWx1ZSA9IGV2dDtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICBpZiAodGhpcy50cmltVmFsdWUoKSkge1xuICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRyaW1zIHRoZSBjdXJyZW50IHZhbHVlIGFuZCByZXR1cm5zIHdldGhlciBvciBub3QgaXQgaGFzIGJlZW4gdHJpbW1lZFxuICAgKi9cbiAgcHJpdmF0ZSB0cmltVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XG4gICAgICAgIGNvbnN0IGxlbmd0aEJlZm9yZSA9IHRoaXMudmFsdWUuam9pbignJykubGVuZ3RoO1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZS5tYXAodiA9PiB2LnRyaW0oKSk7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLmpvaW4oJycpLmxlbmd0aCAhPT0gbGVuZ3RoQmVmb3JlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbGVuZ3RoQmVmb3JlID0gdGhpcy52YWx1ZS5sZW5ndGg7XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLnZhbHVlLnRyaW0oKTtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoICE9PSBsZW5ndGhCZWZvcmU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGF1dG9jb21wbGV0ZUZuKHRlcm06IHN0cmluZykge1xuICAgIGNvbnN0IHVyaSA9IGAvYXV0b2NvbXBsZXRlL2VsZW1lbnQ/cHJlZml4PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHRlcm0pfSZxbmFtZT0ke3RoaXMucW5hbWV9YDtcbiAgICBjb25zdCBiYXNlID0gdGhpcy5iYWNrZW5kLmdldFNlYXJjaEJhc2UoKTtcbiAgICB0aGlzLmJhY2tlbmRcbiAgICAgIC5nZXRKc29uKHVyaSwgYmFzZSlcbiAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgbGV0IHIgPSBbXTtcbiAgICAgICAgcmVzLmZvckVhY2goaSA9PiB7XG4gICAgICAgICAgaWYgKCghQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSAmJiB0aGlzLnZhbHVlICE9PSBpLnZhbHVlKSB8fCAoQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSAmJiAhdGhpcy52YWx1ZS5maW5kKHYgPT4gdiA9PT0gaS52YWx1ZSkpKSB7XG4gICAgICAgICAgICByLnB1c2goaS52YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVSZXMgPSByO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlQ2xhc3NpZmljYXRpb24oc3RyaW5nKTogYm9vbGVhbiB7XG5cbiAgICBpZiAodGhpcy5zaXR1YXRpb24gPT09ICdTRUFSQ0gnKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGV0IHBhdHRlcm47XG4gICAgICBpZiAodGhpcy5jbGFzc2lmaWNhdGlvbiA9PT0gJ2VtYWlsJykge1xuICAgICAgICBwYXR0ZXJuID0gL14oPzooLis/KVxccyo8KFxcdyspKFtcXC0rLl1bXFx3XSspKkAoXFx3W1xcLVxcd10qXFwuKXsxLDV9KFtBLVphLXpdezIsNn0pPnxbXCInXXsxfSguKz8pW1wiJ117MX1cXHMqPChcXHcrKShbXFwtKy5dW1xcd10rKSpAKFxcd1tcXC1cXHddKlxcLil7MSw1fShbQS1aYS16XXsyLDZ9KT58KFxcdyspKFtcXC0rLl1bXFx3XSspKkAoXFx3W1xcLVxcd10qXFwuKXsxLDV9KFtBLVphLXpdezIsNn0pKSQvO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmNsYXNzaWZpY2F0aW9uID09PSAndXJsJykge1xuICAgICAgICBwYXR0ZXJuID0gLyhodHRwfGZ0cHxodHRwcyk6XFwvXFwvW1xcdy1dKyhcXC5bXFx3LV0rKSsoW1xcdy4sQD9ePSUmYW1wOzpcXC9+KyMtXSpbXFx3QD9ePSUmYW1wO1xcL34rIy1dKT8vO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHBhdHRlcm4gPyBwYXR0ZXJuLnRlc3Qoc3RyaW5nKSA6IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdmFsaWRhdGUoKSB7XG4gICAgbGV0IGVycjtcbiAgICAvLyB2YWxpZGF0ZSByZWd1bGFyIGV4cHJlc3Npb25cbiAgICBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLnJlZ2V4KSB7XG4gICAgICBpZiAodGhpcy5tdWx0aXNlbGVjdCkge1xuICAgICAgICBpZiAodGhpcy52YWx1ZS5sZW5ndGggPiAwICYmICEhdGhpcy52YWx1ZS5maW5kKHYgPT4gIVJlZ0V4cCh0aGlzLnJlZ2V4KS50ZXN0KHYpKSkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsncmVnZXgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCFSZWdFeHAodGhpcy5yZWdleCkudGVzdCh0aGlzLnZhbHVlKSkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsncmVnZXgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyB2YWxpZGF0ZSBjbGFzc2lmaWNhdGlvbiBzZXR0aW5nc1xuICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMuY2xhc3NpZmljYXRpb24pIHtcbiAgICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XG4gICAgICAgIGZvciAobGV0IHYgb2YgdGhpcy52YWx1ZSkge1xuICAgICAgICAgIGlmICghdGhpcy52YWxpZGF0ZUNsYXNzaWZpY2F0aW9uKHYpKSB7XG4gICAgICAgICAgICBlcnIgPSB7fTtcbiAgICAgICAgICAgIGVyclsnY2xhc3NpZmljYXRpb24nICsgdGhpcy5jbGFzc2lmaWNhdGlvbl0gPSB7XG4gICAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghdGhpcy52YWxpZGF0ZUNsYXNzaWZpY2F0aW9uKHRoaXMudmFsdWUpKSB7XG4gICAgICAgICAgZXJyID0ge307XG4gICAgICAgICAgZXJyWydjbGFzc2lmaWNhdGlvbicgKyB0aGlzLmNsYXNzaWZpY2F0aW9uXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gdmFsaWRhdGUgbGVuZ3RoIGhlcmUgd2hlbiBtdWx0aXNlbGVjdFxuICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUgIT09IG51bGwpIHtcbiAgICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlLmxlbmd0aCA+IDAgJiYgISF0aGlzLnZhbHVlLmZpbmQodiA9PiB2Lmxlbmd0aCA8IHRoaXMubWluTGVuZ3RoKSkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsnbWlubGVuZ3RoJ10gPSB7XG4gICAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudmFsdWUubGVuZ3RoID4gMCAmJiAhIXRoaXMudmFsdWUuZmluZCh2ID0+IHYubGVuZ3RoID4gdGhpcy5tYXhMZW5ndGgpKSB7XG4gICAgICAgICAgZXJyID0ge307XG4gICAgICAgICAgZXJyWydtYXhsZW5ndGgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMudmFsdWUubGVuZ3RoID4gMCAmJiB0aGlzLnZhbHVlLmxlbmd0aCA8IHRoaXMubWluTGVuZ3RoKSB7XG4gICAgICAgICAgZXJyID0ge307XG4gICAgICAgICAgZXJyWydtaW5sZW5ndGgnXSA9IHtcbiAgICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy52YWx1ZS5sZW5ndGggPiB0aGlzLm1heExlbmd0aCkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsnbWF4bGVuZ3RoJ10gPSB7XG4gICAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gdmFsaWRhdGUgaW52YWxpZCBpZiBvbmx5IHdoaXRlc3BhY2VzXG4gICAgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy52YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgaWYgKHRoaXMubXVsdGlzZWxlY3QpIHtcbiAgICAgICAgZm9yIChsZXQgdiBvZiB0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgaWYgKHYubGVuZ3RoICYmICF2LnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgICAgZXJyWydvbmx5V2hpdGVzcGFjZXMnXSA9IHtcbiAgICAgICAgICAgICAgdmFsaWQ6IGZhbHNlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy52YWx1ZS5sZW5ndGggJiYgIXRoaXMudmFsdWUudHJpbSgpLmxlbmd0aCkge1xuICAgICAgICAgIGVyciA9IHt9O1xuICAgICAgICAgIGVyclsnb25seVdoaXRlc3BhY2VzJ10gPSB7XG4gICAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy52YWxpZCA9ICFlcnI7XG4gICAgcmV0dXJuIGVyciB8fCBudWxsO1xuICB9XG5cbiAgLy8gcmV0dXJucyBudWxsIHdoZW4gdmFsaWQgZWxzZSB0aGUgdmFsaWRhdGlvbiBvYmplY3RcbiAgcHVibGljIHZhbGlkYXRlKGM6IFVudHlwZWRGb3JtQ29udHJvbCkge1xuICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZW8tZm9ybS1zdHJpbmdcIj5cblxuICA8aW5wdXQgKm5nSWY9XCIhbXVsdGlsaW5lICYmICFtdWx0aXNlbGVjdCAmJiAhYXV0b2NvbXBsZXRlXCIgdHlwZT1cInRleHRcIiAoYmx1cik9XCJvbkJsdXIoKVwiIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5XCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIC8+XG5cbiAgPCEtLSBzaW5nbGUgbGluZSBpbnB1dCB3aXRoIGF1dG9jb21wbGV0ZSAtLT5cbiAgPHl2Yy1hdXRvY29tcGxldGUgKm5nSWY9XCIhbXVsdGlsaW5lICYmICFtdWx0aXNlbGVjdCAmJiBhdXRvY29tcGxldGVcIiAjYXV0b2NvbXBsZXRlIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgIFtkaXNhYmxlZF09XCJyZWFkb25seVwiIFthdXRvY29tcGxldGVWYWx1ZXNdPVwiYXV0b2NvbXBsZXRlUmVzXCIgKGJsdXIpPVwib25CbHVyKClcIlxuICAgIChzdWdnZXN0aW9uU2VsZWN0KT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGF1dG9jb21wbGV0ZUZuYyk9XCJhdXRvY29tcGxldGVGbigkZXZlbnQpXCI+XG4gIDwveXZjLWF1dG9jb21wbGV0ZT5cblxuICA8IS0tIHNpbmdsZSBsaW5lIGlucHV0IHdpdGggbXVsdGlzZWxlY3QtLT5cbiAgPHl2Yy1jaGlwcyAqbmdJZj1cIiFtdWx0aWxpbmUgJiYgbXVsdGlzZWxlY3QgJiYgIWF1dG9jb21wbGV0ZVwiIFsobmdNb2RlbCldPVwidmFsdWVcIiBbZGlzYWJsZWRdPVwicmVhZG9ubHlcIlxuICAgIChibHVyKT1cIm9uQmx1cigpXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCI+XG4gIDwveXZjLWNoaXBzPlxuXG4gIDwhLS0gc2luZ2xlIGxpbmUgaW5wdXQgd2l0aCBtdWx0aXNlbGVjdCBhbmQgYXV0b2NvbXBsZXRlIC0tPlxuICA8eXZjLWF1dG9jb21wbGV0ZSAqbmdJZj1cIiFtdWx0aWxpbmUgJiYgbXVsdGlzZWxlY3QgJiYgYXV0b2NvbXBsZXRlXCIgW2F1dG9jb21wbGV0ZVZhbHVlc109XCJhdXRvY29tcGxldGVSZXNcIlxuICAgIFttdWx0aXBsZV09XCJ0cnVlXCIgW2Rpc2FibGVkXT1cInJlYWRvbmx5XCIgKGJsdXIpPVwib25CbHVyKClcIiAoYXV0b2NvbXBsZXRlRm5jKT1cImF1dG9jb21wbGV0ZUZuKCRldmVudClcIlxuICAgIFsobmdNb2RlbCldPVwidmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj5cbiAgPC95dmMtYXV0b2NvbXBsZXRlPlxuXG4gIDwhLS0gbXVsdGkgbGluZSB0ZXh0IGlucHV0cyAtLT5cbiAgPHRleHRhcmVhIGNsYXNzPVwiaW5wdXQtdGV4dGFyZWEgc2l6ZS17e3NpemV9fVwiICpuZ0lmPVwibXVsdGlsaW5lXCIgKGJsdXIpPVwib25CbHVyKClcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIiBbZGlzYWJsZWRdPVwicmVhZG9ubHlcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj48L3RleHRhcmVhPlxuXG4gIDxkaXYgY2xhc3M9XCJjbGFzc2lmeVwiIFtuZ0NsYXNzXT1cIntlbXB0eTogIXZhbHVlIHx8IHNpdHVhdGlvbiA9PT0gJ1NFQVJDSCd9XCI+XG4gICAgPGEgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj1cIm1haWx0bzp7e2Zvcm1hdGVkVmFsdWV9fVwiICpuZ0lmPVwiY2xhc3NpZmljYXRpb24gPT09ICdlbWFpbCcgJiYgdmFsaWRcIj5cbiAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgLTk2MCA5NjAgOTYwXCIgd2lkdGg9XCIyMFwiPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTgwLjMwOS0yMTIuMDAxcS0yNy4wMDggMC00NS42NTgtMTguNjYyLTE4LjY1LTE4LjY2Mi0xOC42NS00NS42ODZ2LTQwNy42MjZxMC0yNy4wMjQgMTguNjUtNDUuNTI0dDQ1LjY1OC0xOC41aDU5OS4zODJxMjcuMDA4IDAgNDUuNjU4IDE4LjY2MiAxOC42NSAxOC42NjIgMTguNjUgNDUuNjg2djQwNy42MjZxMCAyNy4wMjQtMTguNjUgNDUuNTI0dC00NS42NTggMTguNUgxODAuMzA5Wk00ODAtNDQ5LjY5NCAxNjgtNjMzLjMwOXYzNTdxMCA1LjM4NSAzLjQ2MiA4Ljg0NyAzLjQ2MiAzLjQ2MiA4Ljg0NyAzLjQ2Mmg1OTkuMzgycTUuMzg1IDAgOC44NDctMy40NjIgMy40NjItMy40NjIgMy40NjItOC44NDd2LTM1N0w0ODAtNDQ5LjY5NFpNNDgwLTUxN2wzMDUuODQ2LTE3OUgxNzQuMTU0TDQ4MC01MTdaTTE2OC02MzMuMzA5Vi02OTYtMjc2LjMwOXEwIDUuMzg1IDMuNDYyIDguODQ3IDMuNDYyIDMuNDYyIDguODQ3IDMuNDYySDE2OHYtMzY5LjMwOVpcIiAvPlxuICAgICAgPC9zdmc+XG4gICAgPC9hPlxuICAgIDxhIHRhcmdldD1cIl9ibGFua1wiIGhyZWY9XCJ7e3ZhbHVlfX1cIiAqbmdJZj1cImNsYXNzaWZpY2F0aW9uID09PSAndXJsJyAmJiB2YWxpZFwiPlxuICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjIwXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk00ODAtMTE2LjAwMXEtNzUuMTU0IDAtMTQxLjQ5OS0yOC40NjItNjYuMzQ2LTI4LjQ2MS0xMTUuOTYyLTc4LjA3Ni00OS42MTUtNDkuNjE2LTc4LjA3Ni0xMTUuOTYyUTExNi4wMDEtNDA0Ljg0NiAxMTYuMDAxLTQ4MHEwLTc1Ljc2OSAyOC40NjItMTQxLjgwNyAyOC40NjEtNjYuMDM4IDc4LjA3Ni0xMTUuNjU0IDQ5LjYxNi00OS42MTUgMTE1Ljk2Mi03OC4wNzZRNDA0Ljg0Ni04NDMuOTk5IDQ4MC04NDMuOTk5cTc1Ljc2OSAwIDE0MS44MDcgMjguNDYyIDY2LjAzOCAyOC40NjEgMTE1LjY1NCA3OC4wNzYgNDkuNjE1IDQ5LjYxNiA3OC4wNzYgMTE1LjY1NFE4NDMuOTk5LTU1NS43NjkgODQzLjk5OS00ODBxMCA3NS4xNTQtMjguNDYyIDE0MS40OTktMjguNDYxIDY2LjM0Ni03OC4wNzYgMTE1Ljk2Mi00OS42MTYgNDkuNjE1LTExNS42NTQgNzguMDc2UTU1NS43NjktMTE2LjAwMSA0ODAtMTE2LjAwMVptMC01My44NDVxMjEuNjE2LTIxLjYxNiA0MC41MzktNzAuNDI0IDE4LjkyMy00OC44MDggMjkuMDc3LTEwOC44MDhINDEwLjM4NHExMC45MjMgNjEuNTM5IDI5LjQ2MiAxMTAuMzQ3IDE4LjUzOCA0OC44MDggNDAuMTU0IDY4Ljg4NVptLTY0LjQ2LTVxLTE5LTMwLTM0LjMwOC03NS41Mzl0LTIzLjQ2Mi05OC42OTNIMTk3LjA3NnEzMS42OTMgNjkuMzA5IDg5LjUwMSAxMTUuMTk0IDU3LjgwOSA0NS44ODUgMTI4Ljk2MyA1OS4wMzhabTEyOC45MiAwcTcxLjE1NC0xMy4xNTMgMTI4Ljk2My01OS4wMzggNTcuODA4LTQ1Ljg4NSA4OS41MDEtMTE1LjE5NEg2MDIuMjNRNTkyLjE1My0yOTUuNTM5IDU3Ni44NDUtMjUwcS0xNS4zMDggNDUuNTM5LTMyLjM4NSA3NS4xNTRabTc5LjQ2My0yMjYuMjNoMTczLjY5M3E0LjIzMS0yMS4zMDggNi4wMzktNDAuNzMxIDEuODA4LTE5LjQyNCAxLjgwOC0zOC4xOTN0LTEuODA4LTM4LjY5M3EtMS44MDgtMTkuOTIzLTYuMDM5LTQwLjIzMUg2MjMuOTIzcTEuMjMxIDE5LjM4NSAxLjE1NCA0MC4zODUtLjA3NyAyMS0uMDc3IDQwLjUzOXQuMDc3IDM5LjUzOXEuMDc3IDIwLTEuMTU0IDM3LjM4NVptLTIxOC4zMDggMGgxNDguNzdxMi43NjktMjIuMzA4IDMuNDYyLTQxLjM0Ny42OTItMTkuMDM4LjY5Mi0zNy41NzcgMC0xOC41MzktLjY5Mi0zOC4wNzctLjY5My0xOS41MzktMy40NjItNDAuODQ3aC0xNDguNzdxLTIuNzY5IDIxLjMwOC0zLjQ2MiA0MC44NDctLjY5MiAxOS41MzgtLjY5MiAzOC4wNzcgMCAxOC41MzkuNjkyIDM4LjA3Ny42OTMgMTkuNTM5IDMuNDYyIDQwLjg0N1ptLTI0My4yMzEgMGgxNzMuNjkzcS0xLjIzMS0xOS4zODUtMS4xNTQtNDAuMzg1LjA3Ny0yMSAuMDc3LTQwLjUzOXQtLjA3Ny0zOS41MzlxLS4wNzctMjAgMS4xNTQtMzcuMzg1SDE2Mi4zODRxLTQuMjMxIDIxLjMwOC02LjAzOSA0MC43MzEtMS44MDggMTkuNDI0LTEuODA4IDM4LjE5M3QxLjgwOCAzOC4xOTNxMS44MDggMTkuNDIzIDYuMDM5IDQwLjczMVpNNjAyLjIzLTYxMC45MjJoMTYwLjY5NFE3MzAuODQ2LTY4MSA2NzQtNzI2LjExNnEtNTYuODQ3LTQ1LjExNS0xMjkuNTQtNTkuNDIzIDE5IDMxLjkyMyAzMy45MjMgNzYuODg1IDE0LjkyNCA0NC45NjIgMjMuODQ3IDk3LjczMlptLTE5MS44NDYgMGgxMzkuMjMycS0xMC45MjMtNjEuMTU0LTMwLjAzOS0xMTAuOTI0LTE5LjExNS00OS43NjktMzkuNTc3LTY4LjMwOC0yMC40NjIgMTguNTM5LTM5LjU3NyA2OC4zMDgtMTkuMTE2IDQ5Ljc3LTMwLjAzOSAxMTAuOTI0Wm0tMjEzLjMwOCAwSDM1Ny43N3E4LjkyMy01Mi43NyAyMy44NDctOTcuNzMyIDE0LjkyMy00NC45NjIgMzMuOTIzLTc2Ljg4NS03My4wNzcgMTQuMzA4LTEyOS43MzIgNTkuNjE2LTU2LjY1NCA0NS4zMDgtODguNzMyIDExNS4wMDFaXCIgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYT5cbiAgPC9kaXY+XG5cbjwvZGl2PiJdfQ==
@@ -63,10 +63,10 @@ export class CustomSortComponent {
63
63
  }
64
64
  }
65
65
  CustomSortComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: CustomSortComponent, deps: [{ token: i1.ListSettingsService }], target: i0.ɵɵFactoryTarget.Component });
66
- CustomSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: CustomSortComponent, selector: "eo-custom-sort", inputs: { eoGrid: "eoGrid", overlay: "overlay", id: "id", sortFields: "sortFields" }, outputs: { change: "change", active: "active" }, ngImport: i0, template: "<div class=\"sort\">\n <div class=\"sort-title\" translate>eo.sort.by</div>\n <div class=\"sort-option\" *ngFor=\"let sortBy of sortFields\" [ngClass]=\"{asc: sortBy.sort === 'asc', desc: sortBy.sort === 'desc'}\">\n <eo-icon class=\"asc\" [iconTitle]=\"'eo.sort.asc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_up.svg'\" (click)=\"sort(sortBy.field, 'asc')\"></eo-icon>\n <eo-icon class=\"desc\" [iconTitle]=\"'eo.sort.desc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_down.svg'\" (click)=\"sort(sortBy.field, 'desc')\"></eo-icon>\n <span class=\"title\">{{sortBy.headerName}}</span>\n <eo-icon class=\"clear\" [iconTitle]=\"'eo.sort.clear' | translate:{value: sortBy.headerName}\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"sort(sortBy.field, '')\"></eo-icon>\n </div>\n</div>\n", styles: [":host ::ng-deep .sort-title{margin:.5em 0;font-weight:700}:host ::ng-deep .sort-option{border-top:1px solid var(--color-primary-4);display:flex;flex:1;flex-direction:row;min-height:0;min-width:0;align-items:center}:host ::ng-deep .sort-option eo-icon{margin:0;cursor:pointer}:host ::ng-deep .sort-option .title{flex:1;padding:calc(var(--app-pane-padding) / 2);display:inline-block;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host ::ng-deep .sort-option.asc eo-icon.asc,:host ::ng-deep .sort-option.desc eo-icon.desc{color:var(--color-accent)}:host ::ng-deep .sort-option eo-icon.clear{visibility:hidden}:host ::ng-deep .sort-option.asc eo-icon.clear,:host ::ng-deep .sort-option.desc eo-icon.clear{visibility:visible}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
66
+ CustomSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: CustomSortComponent, selector: "eo-custom-sort", inputs: { eoGrid: "eoGrid", overlay: "overlay", id: "id", sortFields: "sortFields" }, outputs: { change: "change", active: "active" }, ngImport: i0, template: "<div class=\"sort\">\n <div class=\"sort-title\" translate>eo.sort.by</div>\n <div class=\"sort-option\" *ngFor=\"let sortBy of sortFields\" [ngClass]=\"{asc: sortBy.sort === 'asc', desc: sortBy.sort === 'desc'}\">\n <eo-icon class=\"asc\" [iconTitle]=\"'eo.sort.asc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_up.svg'\" (click)=\"sort(sortBy.field, 'asc')\"></eo-icon>\n <eo-icon class=\"desc\" [iconTitle]=\"'eo.sort.desc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_down.svg'\" (click)=\"sort(sortBy.field, 'desc')\"></eo-icon>\n <span class=\"title\">{{sortBy.headerName}}</span>\n <eo-icon class=\"clear\" [iconTitle]=\"'eo.sort.clear' | translate:{value: sortBy.headerName}\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"sort(sortBy.field, '')\"></eo-icon>\n </div>\n</div>\n", styles: [":host ::ng-deep{display:block;padding:calc(var(--app-pane-padding) / 2)}:host ::ng-deep .sort-title{margin:.5em 0;font-weight:700}:host ::ng-deep .sort-option{border-top:1px solid var(--color-primary-4);display:flex;flex:1;flex-direction:row;min-height:0;min-width:0;align-items:center}:host ::ng-deep .sort-option eo-icon{margin:0;cursor:pointer}:host ::ng-deep .sort-option .title{flex:1;padding:calc(var(--app-pane-padding) / 2);display:inline-block;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host ::ng-deep .sort-option.asc eo-icon.asc,:host ::ng-deep .sort-option.desc eo-icon.desc{color:var(--color-accent)}:host ::ng-deep .sort-option eo-icon.clear{visibility:hidden}:host ::ng-deep .sort-option.asc eo-icon.clear,:host ::ng-deep .sort-option.desc eo-icon.clear{visibility:visible}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i4.EoIconComponent, selector: "eo-icon", inputs: ["objectType", "iconId", "iconSrc", "badge", "iconTitle"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
67
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: CustomSortComponent, decorators: [{
68
68
  type: Component,
69
- args: [{ selector: 'eo-custom-sort', template: "<div class=\"sort\">\n <div class=\"sort-title\" translate>eo.sort.by</div>\n <div class=\"sort-option\" *ngFor=\"let sortBy of sortFields\" [ngClass]=\"{asc: sortBy.sort === 'asc', desc: sortBy.sort === 'desc'}\">\n <eo-icon class=\"asc\" [iconTitle]=\"'eo.sort.asc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_up.svg'\" (click)=\"sort(sortBy.field, 'asc')\"></eo-icon>\n <eo-icon class=\"desc\" [iconTitle]=\"'eo.sort.desc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_down.svg'\" (click)=\"sort(sortBy.field, 'desc')\"></eo-icon>\n <span class=\"title\">{{sortBy.headerName}}</span>\n <eo-icon class=\"clear\" [iconTitle]=\"'eo.sort.clear' | translate:{value: sortBy.headerName}\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"sort(sortBy.field, '')\"></eo-icon>\n </div>\n</div>\n", styles: [":host ::ng-deep .sort-title{margin:.5em 0;font-weight:700}:host ::ng-deep .sort-option{border-top:1px solid var(--color-primary-4);display:flex;flex:1;flex-direction:row;min-height:0;min-width:0;align-items:center}:host ::ng-deep .sort-option eo-icon{margin:0;cursor:pointer}:host ::ng-deep .sort-option .title{flex:1;padding:calc(var(--app-pane-padding) / 2);display:inline-block;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host ::ng-deep .sort-option.asc eo-icon.asc,:host ::ng-deep .sort-option.desc eo-icon.desc{color:var(--color-accent)}:host ::ng-deep .sort-option eo-icon.clear{visibility:hidden}:host ::ng-deep .sort-option.asc eo-icon.clear,:host ::ng-deep .sort-option.desc eo-icon.clear{visibility:visible}\n"] }]
69
+ args: [{ selector: 'eo-custom-sort', template: "<div class=\"sort\">\n <div class=\"sort-title\" translate>eo.sort.by</div>\n <div class=\"sort-option\" *ngFor=\"let sortBy of sortFields\" [ngClass]=\"{asc: sortBy.sort === 'asc', desc: sortBy.sort === 'desc'}\">\n <eo-icon class=\"asc\" [iconTitle]=\"'eo.sort.asc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_up.svg'\" (click)=\"sort(sortBy.field, 'asc')\"></eo-icon>\n <eo-icon class=\"desc\" [iconTitle]=\"'eo.sort.desc' | translate\" [iconSrc]=\"'assets/_default/svg/ic_arrow_down.svg'\" (click)=\"sort(sortBy.field, 'desc')\"></eo-icon>\n <span class=\"title\">{{sortBy.headerName}}</span>\n <eo-icon class=\"clear\" [iconTitle]=\"'eo.sort.clear' | translate:{value: sortBy.headerName}\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"sort(sortBy.field, '')\"></eo-icon>\n </div>\n</div>\n", styles: [":host ::ng-deep{display:block;padding:calc(var(--app-pane-padding) / 2)}:host ::ng-deep .sort-title{margin:.5em 0;font-weight:700}:host ::ng-deep .sort-option{border-top:1px solid var(--color-primary-4);display:flex;flex:1;flex-direction:row;min-height:0;min-width:0;align-items:center}:host ::ng-deep .sort-option eo-icon{margin:0;cursor:pointer}:host ::ng-deep .sort-option .title{flex:1;padding:calc(var(--app-pane-padding) / 2);display:inline-block;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host ::ng-deep .sort-option.asc eo-icon.asc,:host ::ng-deep .sort-option.desc eo-icon.desc{color:var(--color-accent)}:host ::ng-deep .sort-option eo-icon.clear{visibility:hidden}:host ::ng-deep .sort-option.asc eo-icon.clear,:host ::ng-deep .sort-option.desc eo-icon.clear{visibility:visible}\n"] }]
70
70
  }], ctorParameters: function () { return [{ type: i1.ListSettingsService }]; }, propDecorators: { eoGrid: [{
71
71
  type: Input
72
72
  }], overlay: [{
@@ -54,10 +54,10 @@ export class CustomFilterComponent {
54
54
  }
55
55
  }
56
56
  CustomFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: CustomFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
57
- CustomFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: CustomFilterComponent, selector: "eo-custom-filter", inputs: { overlay: "overlay", eoGrid: "eoGrid", activeFilter: "activeFilter", isFilterActive: "isFilterActive" }, outputs: { change: "change", active: "active", onResetFilters: "onResetFilters" }, queries: [{ propertyName: "textFilters", predicate: TextFilterComponent }, { propertyName: "setFilters", predicate: SetFilterComponent }], ngImport: i0, template: "<div class=\"filter\">\n <ng-content></ng-content>\n\n</div>\n<eo-cta [active]=\"isFilterActive\">\n<eo-reset-filter [isFilterActive]=\"isFilterActive\" (click)=\"resetFilter()\"></eo-reset-filter>\n</eo-cta>\n", styles: [":host::ng-deep .filter__header{margin-top:15px}:host::ng-deep .filter__title{color:rgba(var(--color-black-rgb),.54);font-size:13px;font-weight:700;height:15px;margin-top:6.5px;width:170px}\n"], dependencies: [{ kind: "component", type: i1.CtaComponent, selector: "eo-cta", inputs: ["active"] }, { kind: "component", type: i2.ResetFilterComponent, selector: "eo-reset-filter", inputs: ["isFilterActive"] }] });
57
+ CustomFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: CustomFilterComponent, selector: "eo-custom-filter", inputs: { overlay: "overlay", eoGrid: "eoGrid", activeFilter: "activeFilter", isFilterActive: "isFilterActive" }, outputs: { change: "change", active: "active", onResetFilters: "onResetFilters" }, queries: [{ propertyName: "textFilters", predicate: TextFilterComponent }, { propertyName: "setFilters", predicate: SetFilterComponent }], ngImport: i0, template: "<div class=\"filter\">\n <ng-content></ng-content>\n\n</div>\n<eo-cta [active]=\"isFilterActive\">\n<eo-reset-filter [isFilterActive]=\"isFilterActive\" (click)=\"resetFilter()\"></eo-reset-filter>\n</eo-cta>\n", styles: [":host::ng-deep{display:block;padding:calc(var(--app-pane-padding) / 2);overflow-x:hidden}:host::ng-deep .filter{display:grid}:host::ng-deep .filter-title{margin:.5em 0;font-weight:700}:host::ng-deep .filter__header{margin-top:15px}:host::ng-deep .filter__title{color:rgba(var(--color-black-rgb),.54);font-size:13px;font-weight:700;height:15px;margin-top:6.5px;width:170px}:host::ng-deep .reset-filter{font-size:13px;font-weight:400;border:0;cursor:pointer;background-color:transparent;color:rgba(var(--color-black-rgb),.54);padding:10px 0;transition:all .2s ease-in-out}:host::ng-deep .reset-filter:hover{color:var(--color-accent)!important;background:0 0!important;border:none!important}:host::ng-deep .type-filters .option{margin:1.5em 0}:host::ng-deep .inbox-filters{position:relative;bottom:15px;left:25px}\n"], dependencies: [{ kind: "component", type: i1.CtaComponent, selector: "eo-cta", inputs: ["active"] }, { kind: "component", type: i2.ResetFilterComponent, selector: "eo-reset-filter", inputs: ["isFilterActive"] }] });
58
58
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: CustomFilterComponent, decorators: [{
59
59
  type: Component,
60
- args: [{ selector: 'eo-custom-filter', template: "<div class=\"filter\">\n <ng-content></ng-content>\n\n</div>\n<eo-cta [active]=\"isFilterActive\">\n<eo-reset-filter [isFilterActive]=\"isFilterActive\" (click)=\"resetFilter()\"></eo-reset-filter>\n</eo-cta>\n", styles: [":host::ng-deep .filter__header{margin-top:15px}:host::ng-deep .filter__title{color:rgba(var(--color-black-rgb),.54);font-size:13px;font-weight:700;height:15px;margin-top:6.5px;width:170px}\n"] }]
60
+ args: [{ selector: 'eo-custom-filter', template: "<div class=\"filter\">\n <ng-content></ng-content>\n\n</div>\n<eo-cta [active]=\"isFilterActive\">\n<eo-reset-filter [isFilterActive]=\"isFilterActive\" (click)=\"resetFilter()\"></eo-reset-filter>\n</eo-cta>\n", styles: [":host::ng-deep{display:block;padding:calc(var(--app-pane-padding) / 2);overflow-x:hidden}:host::ng-deep .filter{display:grid}:host::ng-deep .filter-title{margin:.5em 0;font-weight:700}:host::ng-deep .filter__header{margin-top:15px}:host::ng-deep .filter__title{color:rgba(var(--color-black-rgb),.54);font-size:13px;font-weight:700;height:15px;margin-top:6.5px;width:170px}:host::ng-deep .reset-filter{font-size:13px;font-weight:400;border:0;cursor:pointer;background-color:transparent;color:rgba(var(--color-black-rgb),.54);padding:10px 0;transition:all .2s ease-in-out}:host::ng-deep .reset-filter:hover{color:var(--color-accent)!important;background:0 0!important;border:none!important}:host::ng-deep .type-filters .option{margin:1.5em 0}:host::ng-deep .inbox-filters{position:relative;bottom:15px;left:25px}\n"] }]
61
61
  }], propDecorators: { overlay: [{
62
62
  type: Input
63
63
  }], eoGrid: [{