@eo-sdk/client 9.0.0-rc.8 → 9.0.0

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 (28) hide show
  1. package/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.d.ts +3 -2
  2. package/app/eo-framework/ui/user-avatar/user-avatar.component.d.ts +4 -2
  3. package/assets/_default/i18n/de.json +1 -1
  4. package/assets/_default/i18n/en.json +3 -3
  5. package/bundles/eo-sdk-client.umd.js +73 -34
  6. package/bundles/eo-sdk-client.umd.js.map +1 -1
  7. package/bundles/eo-sdk-client.umd.min.js +1 -1
  8. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  9. package/eo-sdk-client.metadata.json +1 -1
  10. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  11. package/esm2015/app/eo-client/inbox-state/inbox-state/inbox-state.component.js +4 -6
  12. package/esm2015/app/eo-client/settings/settings.component.js +3 -3
  13. package/esm2015/app/eo-framework/accordion/simple-accordion/simple-accordion.component.js +3 -3
  14. package/esm2015/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.js +2 -2
  15. package/esm2015/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.js +25 -6
  16. package/esm2015/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.js +2 -2
  17. package/esm2015/app/eo-framework/form-elements/string/string.component.js +2 -2
  18. package/esm2015/app/eo-framework/frame/frame.component.js +1 -1
  19. package/esm2015/app/eo-framework/result-list/result-list.component.js +2 -2
  20. package/esm2015/app/eo-framework/settings/change-password/change-password-form/change-password-form.component.js +3 -3
  21. package/esm2015/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.js +9 -4
  22. package/esm2015/app/eo-framework/tree/tree-node/tree-node.component.js +1 -1
  23. package/esm2015/app/eo-framework/tree/tree.component.js +2 -2
  24. package/esm2015/app/eo-framework/ui/user-avatar/user-avatar.component.js +15 -4
  25. package/fesm2015/eo-sdk-client.js +63 -30
  26. package/fesm2015/eo-sdk-client.js.map +1 -1
  27. package/package.json +2 -2
  28. package/projects/eo-sdk/core/package.json +1 -1
@@ -17,9 +17,19 @@ export class UserAvatarComponent {
17
17
  this.refreshUserImage();
18
18
  });
19
19
  }
20
+ ngOnInit() {
21
+ if (this.previewUri) {
22
+ this.refreshUserImage();
23
+ }
24
+ }
20
25
  refreshUserImage() {
21
- const timestamp = new Date().getTime().toString();
22
- this.backgroundImage = `url(${this.userService.getUserImageUri(this.userId) + '&t=' + timestamp}), url(${this.defImg})`;
26
+ if (this.previewUri) {
27
+ this.backgroundImage = `url(${this.previewUri})`;
28
+ }
29
+ else {
30
+ const timestamp = new Date().getTime().toString();
31
+ this.backgroundImage = `url(${this.userService.getUserImageUri(this.userId) + '&t=' + timestamp}), url(${this.defImg})`;
32
+ }
23
33
  }
24
34
  ngOnDestroy() {
25
35
  this.subscription.unsubscribe();
@@ -38,6 +48,7 @@ UserAvatarComponent.ctorParameters = () => [
38
48
  ];
39
49
  UserAvatarComponent.propDecorators = {
40
50
  backgroundImage: [{ type: HostBinding, args: ['style.background-image',] }],
41
- showPresence: [{ type: Input }]
51
+ showPresence: [{ type: Input }],
52
+ previewUri: [{ type: Input }]
42
53
  };
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hdmF0YXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvdWkvdXNlci1hdmF0YXIvdXNlci1hdmF0YXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWEsS0FBSyxFQUFFLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFPbkUsTUFBTSxPQUFPLG1CQUFtQjtJQVc5QixZQUFvQixXQUF3QixFQUNsQyxZQUEwQjtRQURoQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNsQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVRwQywyQ0FBMkM7UUFDbkMsV0FBTSxHQUFHLDQ4SEFBNDhILENBQUM7UUFJdjdILG9CQUFlLEdBQUcsU0FBUyxDQUFDO1FBS2pFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLO2FBQ3ZDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUNELGdCQUFnQjtRQUNkLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLEdBQUcsU0FBUyxVQUFVLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQztJQUMxSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQzs7O1lBbkNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUUsa0VBQWtFOzthQUU3RTs7O1lBTmlDLFdBQVc7WUFBekIsWUFBWTs7OzhCQWU3QixXQUFXLFNBQUMsd0JBQXdCOzJCQUNwQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uRGVzdHJveSwgSW5wdXQsIEhvc3RCaW5kaW5nfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7RW5haW9FdmVudCwgRXZlbnRTZXJ2aWNlLCBVc2VyU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tdXNlci1hdmF0YXInLFxuICB0ZW1wbGF0ZTogYDxzcGFuIGNsYXNzPVwicHJlc2VuY2VcIiAqbmdJZj1cInNob3dQcmVzZW5jZSAmJiAhcHJlc2VudFwiPlg8L3NwYW4+YCxcbiAgc3R5bGVVcmxzOiBbJy4vdXNlci1hdmF0YXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBVc2VyQXZhdGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bWF4LWxpbmUtbGVuZ3RoXG4gIHByaXZhdGUgZGVmSW1nID0gJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBTFFBQUFDMENBWUFBQUE5elFZeUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBeVpwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVOaTFqTVRNNElEYzVMakUxT1RneU5Dd2dNakF4Tmk4d09TOHhOQzB3TVRvd09Ub3dNU0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdQU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2SWlCNGJXeHVjenA0YlhCTlRUMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMMjF0THlJZ2VHMXNibk02YzNSU1pXWTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl6Vkhsd1pTOVNaWE52ZFhKalpWSmxaaU1pSUhodGNEcERjbVZoZEc5eVZHOXZiRDBpUVdSdlltVWdVR2h2ZEc5emFHOXdJRU5ESURJd01UY2dLRmRwYm1SdmQzTXBJaUI0YlhCTlRUcEpibk4wWVc1alpVbEVQU0o0YlhBdWFXbGtPa1pEUVRaRFFrRkZNRFJFUkRFeFJUZzRPVUl4UXprNE9USTROMFF6UkVWQ0lpQjRiWEJOVFRwRWIyTjFiV1Z1ZEVsRVBTSjRiWEF1Wkdsa09rWkRRVFpEUWtGR01EUkVSREV4UlRnNE9VSXhRems0T1RJNE4wUXpSRVZDSWo0Z1BIaHRjRTFOT2tSbGNtbDJaV1JHY205dElITjBVbVZtT21sdWMzUmhibU5sU1VROUluaHRjQzVwYVdRNlJrTkJOa05DUVVNd05FUkVNVEZGT0RnNVFqRkRPVGc1TWpnM1JETkVSVUlpSUhOMFVtVm1PbVJ2WTNWdFpXNTBTVVE5SW5odGNDNWthV1E2UmtOQk5rTkNRVVF3TkVSRU1URkZPRGc1UWpGRE9UZzVNamczUkRORVJVSWlMejRnUEM5eVpHWTZSR1Z6WTNKcGNIUnBiMjQrSUR3dmNtUm1PbEpFUmo0Z1BDOTRPbmh0Y0cxbGRHRStJRHcvZUhCaFkydGxkQ0JsYm1ROUluSWlQejdvUnJUSEFBQUlOa2xFUVZSNDJ1eWRmMU1UU1JCQU95RUVBZ1pCRUJTdHVqL3UrMzhqNjZxODh6aU1xQWdFQWlTczI1ZmVJbkpYeVNRN3k4N092RmMxVlNySXNyT1BwcWZueDdheUxCT0FXR2pUQllEUUFBZ05nTkFBQ0EwSURZRFFBQWdOZ05BQUNBMElEWURRQUFnTmdOQUFDQTBJRFlEUUFBZ05nTkFBQ0EwSURZRFFBQWdOZ05BQUNBMElEWURRQUFnTmdOQUFDQTBJRFlEUUFBZ05nTkFBQ0EwSURZRFFBQWdOZ05DQTBBQUlEWURRQUFnTmdOQ0EwQUFJRFlEUUFGWFJvUXU4MGNyYlJ0NjZlVnZQMjVxMXRuMU15Zkwya0xlSnRmdTgzZVh0MWo0R0NGMXIzMjNuYlN0dlBaTzVEQ3IxVGQ2dTh6Yk0yNWd1WGlHcVpCbUJZUWswOHU1WTI2ejRXcU84WFZpN3Arc1IyaWY5dk8zbTdVVk4xNy9LMjNuZUxua1VDRjBtSjlaSWZHQjVjUWhvdm4xbVVac0hoOUJMUmVURGdFVCtQN0VIUkd5RVhvUUsvTVlHZTAxQUI0K25KamdnOUMrOHNxamNhdGozblZtMC9zWWpSR2hGeTIvSERZcks4NkwxaVNSZTdrdGRhSzBmdjVkNDZ2RXE4eWVaMXJNUk9qRjJMREszSXJ1dnpDTDFCVUtubFM4ZlJYNlBuMVBNcTFOY25MU2ZnTXhpOTdpUDBQRkg1c09FN3ZmUTdobWhJODJaanlROWp1emVFVG9pZWpZQVRKVmo2d09FamdBdHlXbHB6bmMxNDd0TTF6WTNZdkF2Y1pVbmt4YjZ1SUlIcVNMcjdOeHB3MzZ3anhHNitZUEFLbVlBaStqOHcvN2NGTFpqSHlUR0xIUlhxcWxvcU1oZlovNnVVWHJZb0g0SmVSVWhRcy9oalZRekM2Z3lUNTc4VzVPbW0xdldOd2pkSVBvVnBScjNUNkx6Yk5UK3MwRlNiMXNmSVhSRElsQlZreWVhWG1SelVoR1YrcnBCcVVjTG9jTm5wNkljVVJmN1hEbmsxMzlKTTNhU2RDWENDWmNZaFQ2bzRHdU94YjFFOTJBNTlWbWlmWVhRbm5ObjM5RTVNMEVuUy82L0x4YXRKd0gzVnplMlhEbzJvWGNyK0pxREVvTTlUVkgrY0VoVll1c3poUGFBSGdMais5d01QUXVqN0pyaXNVWHFrMENqOVF2ck80UU9jRERvRXgzWS9lUHg2K21zNGdlWmx2Mnl5UHNPb1FON0tGcDYrN3VDNzdGWUEvTEJJbitHMEg3cFJIUWZ2czZhdXpLWnE1Uk4weERkSW5WbU9leGV6Yi8yTjYwUHh3Z2RCcjVtQlg5WW12RmNrWE5pS1lpMkxZdVUvWnFleTdiZFAwSUh3SmFIci9GRjZxMGRYMXM3dFlpcGd2V3NkVXIrMEl3Y2Z1aTNFRG9jZWlVZitJbUVWVm9iV1p0OVRsMXJIV3Z0SjJPZ0IzazhURjFUaHp0cnhWRzh2OHY4R24wVU8xcGlFTG80T1gvVnFIZ2k0WisvUExaV1pwM0ljSUhRRzlhWGpUN1hJb1lxeHlveVA5aXY5bytTem1IaU54WDFKUkhhTTh0T2RXdWVPSkQwem9DN2RlekxFVUxYaTJ1NTY5SUdmcmVTSnJjZSt4S2hLMlROWWREM01XR1JDekw3cmRRcDBaZmswQUVJUFVibVgvcENFTHJaOXpCcGFMOVZjWTJIMkgySXBXeFg1aUV1TS9oOExkUFZhVzM3dWxlV2w5ODE1QnBaeWI1RTZBWUk3NExPc3IxL0VzSDB6enNtbjI0QUdEYmdHdEVUUThxUlZYeVBtbGUrbS9OMTJ2Ynh0Y0N2NGRJWEdVTFhUOVY1NGE2RFNHdFNidWZIYzF6RHBTOGVFTHArSmc0aWxLSG4rZlBxdW9aTFgwd1FPbnloT3lYdnMrWDU4K3E2UnR0aHpJVFFBZUN5RnFQTVR2QmJ6NTlYMXpXNm52b1NvU3ZHcFp4Vlp0SE5oZWZQcStzYUc1NzZFcUVyeGlWcWxjazlkYkhPMXdXZjgxWEtMZXA1am12MFBQVmwwTVJRaDg3c1FjeUxRR1czYUJXcjgxN0xmeGZWNjZTSGo5ZW5WWDJOYlFlWk00UU9nNXNGUW12K3VGNHlSMVNoOUp5T0xhc1c2QURxV3Z5V3VxcTZ4cnBERGgzRjIyZGpFVm9mK3FJYWJkOURsQ3Vtb3F1a2ltdjBIZnV3OGNSeUxvZkxsUEJMU1plWG52b1FvWitKc2NPQWFWTWkyR0swWW5WajBaa2xJNGxrQjA5TUp5ZTVsTFQyRWhSNnoxUGZJWFNBUXU5S0dpc01aOGRJdXdqZFRPNGRCbE02ZFp6U0M5MzNaZkYwK1pWRXRQTTl0dk9oengxL0JYY1RrTG5ybUc2Y3gzVFRzUW10TzdzWFRkOUcvVnF6R1Z4ZWEzY256WGdmVExKQ0t5N24wK21zV2N4bHZKZmlOanQ2RnR1Tnh5ajBoYmd0c2ptU2lFNnVuMkhkN20wUmR6RU5CbU1XV3RjakRCdytyOWoyRk5PNytscml2bFZySUJHczNVaEI2Q0tYZHBuNTBoVm9ieU82NzdmaXRxcHVHRnZ1SEx2UXlxbGpCTko4TTRiMzlSMDRqZ3N5Y1gvbklrSUh4SjFqNnFIb2tzMG0xNmYzN1I1Y0dFZ0VDL2xURkZyNUp1NkxiZzRiR3FrUHhQM2Q1a1B4czNZYm9XdEVEelIzWFhpalVlNjRJUVBGbG4ydnJwRjViSDBSTmEwc3l4SncrdCtCMG05TGlLcUwzZlZOV0tGT0NXdHA3cDI0YnkzVGgveFJJbG5FajlCVGRrd0NWM1MzaUw1NkxiUVg2ZWpBVCt2TXk1dzNvaitjRnlrODVKU0VWbDZKMjZURDA3enpOSUNCbEs3TjBPbnNaZmRIZm80OWIwNVo2S0lpY0xqay85Rk8raTdUbmRmUHZSQytZOS96M2dxNS9VQVc3eVpINkVRamRTSDJ1Y2xkOVpiL0RaTjRkOFZCYWxLUk9YV2hpNXk2VEVWalpQbjFwY2ZCb3c3MitwWW5yL3FxNTh5cUdSY3BQdFNVaFJhckVyeVg4cnRZN2l6WHZySElyWDkzT1JXMWE1RzRaN2x4MlhYYW1nNTlTcUdhZ2REemM5Umo4ZmUrOEZtNUp2TDRodGRDNHJaVktIeHZCUnZLY2pWM2hFNGdyejZVNXEyK0sxWVhmdU1SSXZSVFZpMk4xVVVvSlVXRURweStSZXRROXg0V0M2OHVlVlFJN2R3M01xMkVIQVFrdG9wOFpoVU1IaHhDbDRyWVdnOStVZFAxOWFpQmN5SXlRdnRtM2FLMnRzMktyeld5U0t6dG5xNUg2S3JwMk9CUmo3N1ZPbkxaYy9PMGZxMzE0MnNiN0kzcFlvU3VPK2Zla01lenFOZXN0ZVd4RktpZHJUWHBpYlY3eTR1ak9Hd2NvUUU4MDZZTEFLRUJFQm9Bb1FFUUdoQWFBS0VCRUJvQW9RRVFHaEFhQUtFQkVCb0FvUUVRR2hBYUFLRUJFQm9Bb1FFUUdoQWFBS0VCRUJvQW9RRVFHaEFhQUtFQkVCb0FvUUVRR2hBYUFLRUJFQm9Bb1FFUUdoQWFBS0VCRUJvQW9RR2hBUkFhQUtFQkVCb0FvUUdoQVJBYUFLRUJxdUtuQUFNQW5NRFpWU2JweVZzQUFBQUFTVVZPUks1Q1lJST0nO1xuXG4gIHByZXNlbnQ6IGJvb2xlYW47XG4gIHVzZXJJZDogc3RyaW5nO1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLmJhY2tncm91bmQtaW1hZ2UnKSBiYWNrZ3JvdW5kSW1hZ2UgPSAnaW5pdGlhbCc7XG4gIEBJbnB1dCgpIHNob3dQcmVzZW5jZTogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogRXZlbnRTZXJ2aWNlLCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy51c2VyU2VydmljZS51c2VyJFxuICAgICAgLnN1YnNjcmliZSh1ID0+IHtcbiAgICAgICAgdGhpcy51c2VySWQgPSB1LmlkO1xuICAgICAgICB0aGlzLnByZXNlbnQgPSB1LnByZXNlbnQ7XG4gICAgICAgIHRoaXMucmVmcmVzaFVzZXJJbWFnZSgpO1xuICAgICAgfSk7XG4gICAgdGhpcy5ldmVudFNlcnZpY2Uub24oRW5haW9FdmVudC5TWVNURU1fU1RBVFVTX0lNQUdFX0NIQU5HRSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVmcmVzaFVzZXJJbWFnZSgpO1xuICAgIH0pXG4gIH1cbiAgcmVmcmVzaFVzZXJJbWFnZSgpIHtcbiAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKS50b1N0cmluZygpO1xuICAgIHRoaXMuYmFja2dyb3VuZEltYWdlID0gYHVybCgke3RoaXMudXNlclNlcnZpY2UuZ2V0VXNlckltYWdlVXJpKHRoaXMudXNlcklkKSArICcmdD0nICsgdGltZXN0YW1wfSksIHVybCgke3RoaXMuZGVmSW1nfSlgO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hdmF0YXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmsvdWkvdXNlci1hdmF0YXIvdXNlci1hdmF0YXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWEsS0FBSyxFQUFFLFdBQVcsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFPbkUsTUFBTSxPQUFPLG1CQUFtQjtJQVk5QixZQUFvQixXQUF3QixFQUNsQyxZQUEwQjtRQURoQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNsQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVZwQywyQ0FBMkM7UUFDbkMsV0FBTSxHQUFHLDQ4SEFBNDhILENBQUM7UUFJdjdILG9CQUFlLEdBQUcsU0FBUyxDQUFDO1FBTWpFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLO2FBQ3ZDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUM7U0FDbEQ7YUFBTTtZQUNMLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLEdBQUcsU0FBUyxVQUFVLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQztTQUN6SDtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDOzs7WUEvQ0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLFFBQVEsRUFBRSxrRUFBa0U7O2FBRTdFOzs7WUFOaUMsV0FBVztZQUF6QixZQUFZOzs7OEJBZTdCLFdBQVcsU0FBQyx3QkFBd0I7MkJBQ3BDLEtBQUs7eUJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkRlc3Ryb3ksIElucHV0LCBIb3N0QmluZGluZywgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7RW5haW9FdmVudCwgRXZlbnRTZXJ2aWNlLCBVc2VyU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tdXNlci1hdmF0YXInLFxuICB0ZW1wbGF0ZTogYDxzcGFuIGNsYXNzPVwicHJlc2VuY2VcIiAqbmdJZj1cInNob3dQcmVzZW5jZSAmJiAhcHJlc2VudFwiPlg8L3NwYW4+YCxcbiAgc3R5bGVVcmxzOiBbJy4vdXNlci1hdmF0YXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBVc2VyQXZhdGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTptYXgtbGluZS1sZW5ndGhcbiAgcHJpdmF0ZSBkZWZJbWcgPSAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFMUUFBQUMwQ0FZQUFBQTl6UVl5QUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUF5WnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU5pMWpNVE00SURjNUxqRTFPVGd5TkN3Z01qQXhOaTh3T1M4eE5DMHdNVG93T1Rvd01TQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJaUI0Yld4dWN6cDRiWEJOVFQwaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOTRZWEF2TVM0d0wyMXRMeUlnZUcxc2JuTTZjM1JTWldZOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXpWSGx3WlM5U1pYTnZkWEpqWlZKbFppTWlJSGh0Y0RwRGNtVmhkRzl5Vkc5dmJEMGlRV1J2WW1VZ1VHaHZkRzl6YUc5d0lFTkRJREl3TVRjZ0tGZHBibVJ2ZDNNcElpQjRiWEJOVFRwSmJuTjBZVzVqWlVsRVBTSjRiWEF1YVdsa09rWkRRVFpEUWtGRk1EUkVSREV4UlRnNE9VSXhRems0T1RJNE4wUXpSRVZDSWlCNGJYQk5UVHBFYjJOMWJXVnVkRWxFUFNKNGJYQXVaR2xrT2taRFFUWkRRa0ZHTURSRVJERXhSVGc0T1VJeFF6azRPVEk0TjBRelJFVkNJajRnUEhodGNFMU5Pa1JsY21sMlpXUkdjbTl0SUhOMFVtVm1PbWx1YzNSaGJtTmxTVVE5SW5odGNDNXBhV1E2UmtOQk5rTkNRVU13TkVSRU1URkZPRGc1UWpGRE9UZzVNamczUkRORVJVSWlJSE4wVW1WbU9tUnZZM1Z0Wlc1MFNVUTlJbmh0Y0M1a2FXUTZSa05CTmtOQ1FVUXdORVJFTVRGRk9EZzVRakZET1RnNU1qZzNSRE5FUlVJaUx6NGdQQzl5WkdZNlJHVnpZM0pwY0hScGIyNCtJRHd2Y21SbU9sSkVSajRnUEM5NE9uaHRjRzFsZEdFK0lEdy9lSEJoWTJ0bGRDQmxibVE5SW5JaVB6N29SclRIQUFBSU5rbEVRVlI0MnV5ZGYxTVRTUkJBT3lFRUFnWkJFQlN0dWovdSszOGo2NnE4OHppTXFBZ0VBaVNzMjVmZUluSlh5U1E3eTg3T3ZGYzFWU3JJc3JPUHBxZm54N2F5TEJPQVdHalRCWURRQUFnTmdOQUFDQTBJRFlEUUFBZ05nTkFBQ0EwSURZRFFBQWdOZ05BQUNBMElEWURRQUFnTmdOQUFDQTBJRFlEUUFBZ05nTkFBQ0EwSURZRFFBQWdOZ05BQUNBMElEWURRQUFnTmdOQUFDQTBJRFlEUUFBZ05nTkNBMEFBSURZRFFBQWdOZ05DQTBBQUlEWURRQUZYUm9RdTgwY3JiUnQ2NmVWdlAyNXExdG4xTXlmTDJrTGVKdGZ1ODNlWHQxajRHQ0YxcjMyM25iU3R2UFpPNURDcjFUZDZ1OHpiTTI1Z3VYaUdxWkJtQllRazA4dTVZMjZ6NFdxTzhYVmk3cCtzUjJpZjl2TzNtN1VWTjE3L0syM25lTG5rVUNGMG1KOVpJZkdCNWNRaG92bjFtVVpzSGg5QkxSZVREZ0VUK1A3RUhSR3lFWG9RSy9NWUdlMDFBQjQrbkpqZ2c5Qys4c3FqY2F0ajNuVm0wL3NZalJHaEZ5Mi9IRFlySzg2TDFpU1JlN2t0ZGFLMGZ2NWQ0NnZFcTh5ZVoxck1ST2pGMkxESzNJcnV2ekNMMUJVS25sUzhmUlg2UG4xUE1xMU5jbkxTZmdNeGk5N2lQMFBGSDVzT0U3dmZRN2htaEk4MlpqeVE5anV6ZUVUb2llallBVEpWajZ3T0VqZ0F0eVdscHpuYzE0N3RNMXpZM1l2QXZjWlVua3hiNnVJSUhxU0xyN054cHczNndqeEc2K1lQQUttWUFpK2o4dy83Y0ZMWmpIeVRHTEhSWHFxbG9xTWhmWi82dVVYcllvSDRKZVJVaFFzL2hqVlF6QzZneVQ1NzhXNU9tbTF2V053amRJUG9WcFJyM1Q2THpiTlQrczBGU2Ixc2ZJWFJESWxCVmt5ZWFYbVJ6VWhHVitycEJxVWNMb2NObnA2SWNVUmY3WERuazEzOUpNM2FTZENYQ0NaY1loVDZvNEd1T3hiMUU5MkE1OVZtaWZZWFFubk5uMzlFNU0wRW5TLzYvTHhhdEp3SDNWemUyWERvMm9YY3IrSnFERW9NOVRWSCtjRWhWWXVzemhQYUFIZ0xqKzl3TVBRdWo3SnJpc1VYcWswQ2o5UXZyTzRRT2NERG9FeDNZL2VQeDYrbXM0Z2VabHYyeXlQc09vUU43S0ZwNis3dUM3N0ZZQS9MQkluK0cwSDdwUkhRZnZzNmF1ektacTVSTjB4RGRJblZtT2V4ZXpiLzJONjBQeHdnZEJyNW1CWDlZbXZGY2tYTmlLWWkyTFl1VS9acWV5N2JkUDBJSHdKYUhyL0ZGNnEwZFgxczd0WWlwZ3ZXc2RVciswSXdjZnVpM0VEb2NlaVVmK0ltRVZWb2JXWnQ5VGwxckhXdnRKMk9nQjNrOFRGMVRoenRyeFZHOHY4djhHbjBVTzFwaUVMbzRPWC9WcUhnaTRaKy9QTFpXWnAzSWNJSFFHOWFYalQ3WElvWXF4eW95UDlpdjlvK1N6bUhpTnhYMUpSSGFNOHRPZFd1ZU9KRDB6b0M3ZGV6TEVVTFhpMnU1NjlJR2ZyZVNKcmNlK3hLaEsyVE5ZZEQzTVdHUkN6TDdyZFFwMFpmazBBRUlQVWJtWC9wQ0VMclo5ekJwYUw5VmNZMkgySDJJcFd4WDVpRXVNL2g4TGRQVmFXMzd1bGVXbDk4MTVCcFp5YjVFNkFZSTc0TE9zcjEvRXNIMHp6c21uMjRBR0RiZ0d0RVRROHFSVlh5UG1sZSttL04xMnZieHRjQ3Y0ZElYR1VMWFQ5VjU0YTZEU0d0U2J1ZkhjMXpEcFM4ZUVMcCtKZzRpbEtIbitmUHF1b1pMWDB3UU9ueWhPeVh2cytYNTgrcTZSdHRoeklUUUFlQ3lGcVBNVHZCYno1OVgxelc2bnZvU29TdkdwWnhWWnRITmhlZlBxK3NhRzU3NkVxRXJ4aVZxbGNrOWRiSE8xd1dmODFYS0xlcDVqbXYwUFBWbDBNUlFoODdzUWN5TFFHVzNhQldyODE3TGZ4ZlY2NlNIajllblZYMk5iUWVaTTRRT2c1c0ZRbXYrdUY0eVIxU2g5SnlPTGFzVzZBRHFXdnlXdXFxNnhycEREaDNGMjJkakVWb2YrcUlhYmQ5RGxDdW1vcXVraW12MEhmdXc4Y1J5TG9mTGxQQkxTWmVYbnZvUW9aK0pzY09BYVZNaTJHSzBZblZqMFprbEk0bGtCMDlNSnllNWxMVDJFaFI2ejFQZklYU0FRdTlLR2lzTVo4ZEl1d2pkVE80ZEJsTTZkWnpTQzkzM1pmRjArWlZFdFBNOXR2T2h6eDEvQlhjVGtMbnJtRzZjeDNUVHNRbXRPN3NYVGQ5Ry9WcXpHVnhlYTNjbnpYZ2ZUTEpDS3k3bjArbXNXY3hsdkpmaU5qdDZGdHVOeHlqMGhiZ3Rzam1TaUU2dW4ySGQ3bTBSZHpFTkJtTVdXdGNqREJ3K3I5ajJGTk83K2xyaXZsVnJJQkdzM1VoQjZDS1hkcG41MGhWb2J5TzY3N2ZpdHFwdUdGdnVITHZReXFsakJOSjhNNGIzOVIwNGpnc3ljWC9uSWtJSHhKMWo2cUhva3MwbTE2ZjM3UjVjR0VnRUMvbFRGRnI1SnU2TGJnNGJHcWtQeFAzZDVrUHhzM1lib1d0RUR6UjNYWGlqVWU2NElRUEZsbjJ2cnBGNWJIMFJOYTBzeXhKdyt0K0IwbTlMaUtxTDNmVk5XS0ZPQ1d0cDdwMjRieTNUaC94UklsbkVqOUJUZGt3Q1YzUzNpTDU2TGJRWDZlakFUK3ZNeTV3M29qK2NGeWs4NUpTRVZsNkoyNlREMDd6ek5JQ0JsSzdOME9uc1pmZEhmbzQ5YjA1WjZLSWljTGprLzlGTytpN1RuZGZQdlJDK1k5L3ozZ3E1L1VBVzd5Wkg2RVFqZFNIMnVjbGQ5WmIvRFpONGQ4VkJhbEtST1hXaGk1eTZURVZqWlBuMXBjZkJvdzcyK3BZbnIvcXE1OHlxR1JjcFB0U1VoUmFyRXJ5WDhydFk3aXpYdnJISXJYOTNPUlcxYTVHNFo3bHgyWFhhbWc1OVNxR2FnZER6YzlSajhmZSs4Rm01SnZMNGh0ZEM0clpWS0h4dkJSdktjalYzaEU0Z3J6NlU1cTIrSzFZWGZ1TVJJdlJUVmkyTjFVVW9KVVdFRHB5K1JldFE5eDRXQzY4dWVWUUk3ZHczTXEyRUhBUWt0b3A4WmhVTUhoeENsNHJZV2c5K1VkUDE5YWlCY3lJeVF2dG0zYUsydHMyS3J6V3lTS3p0bnE1SDZLcnAyT0JSajc3Vk9uTFpjL08wZnEzMTQyc2I3STNwWW9TdU8rZmVrTWV6cU5lc3RlV3hGS2lkclRYcGliVjd5NHVqT0d3Y29RRTgwNllMQUtFQkVCb0FvUUVRR2hBYUFLRUJFQm9Bb1FFUUdoQWFBS0VCRUJvQW9RRVFHaEFhQUtFQkVCb0FvUUVRR2hBYUFLRUJFQm9Bb1FFUUdoQWFBS0VCRUJvQW9RRVFHaEFhQUtFQkVCb0FvUUVRR2hBYUFLRUJFQm9Bb1FHaEFSQWFBS0VCRUJvQW9RR2hBUkFhQUtFQnF1S25BQU1Bbk1EWlZTYnB5VnNBQUFBQVNVVk9SSzVDWUlJPSc7XG5cbiAgcHJlc2VudDogYm9vbGVhbjtcbiAgdXNlcklkOiBzdHJpbmc7XG4gIEBIb3N0QmluZGluZygnc3R5bGUuYmFja2dyb3VuZC1pbWFnZScpIGJhY2tncm91bmRJbWFnZSA9ICdpbml0aWFsJztcbiAgQElucHV0KCkgc2hvd1ByZXNlbmNlOiBib29sZWFuO1xuICBASW5wdXQoKSBwcmV2aWV3VXJpOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBldmVudFNlcnZpY2U6IEV2ZW50U2VydmljZSwpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMudXNlclNlcnZpY2UudXNlciRcbiAgICAgIC5zdWJzY3JpYmUodSA9PiB7XG4gICAgICAgIHRoaXMudXNlcklkID0gdS5pZDtcbiAgICAgICAgdGhpcy5wcmVzZW50ID0gdS5wcmVzZW50O1xuICAgICAgICB0aGlzLnJlZnJlc2hVc2VySW1hZ2UoKTtcbiAgICAgIH0pO1xuICAgIHRoaXMuZXZlbnRTZXJ2aWNlLm9uKEVuYWlvRXZlbnQuU1lTVEVNX1NUQVRVU19JTUFHRV9DSEFOR0UpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlZnJlc2hVc2VySW1hZ2UoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnByZXZpZXdVcmkpIHtcbiAgICAgIHRoaXMucmVmcmVzaFVzZXJJbWFnZSgpO1xuICAgIH1cbiAgfVxuXG4gIHJlZnJlc2hVc2VySW1hZ2UoKSB7XG4gICAgaWYgKHRoaXMucHJldmlld1VyaSkge1xuICAgICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dGhpcy5wcmV2aWV3VXJpfSlgO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKS50b1N0cmluZygpO1xuICAgICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dGhpcy51c2VyU2VydmljZS5nZXRVc2VySW1hZ2VVcmkodGhpcy51c2VySWQpICsgJyZ0PScgKyB0aW1lc3RhbXB9KSwgdXJsKCR7dGhpcy5kZWZJbWd9KWA7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
@@ -2895,7 +2895,7 @@ class SimpleAccordionComponent {
2895
2895
  SimpleAccordionComponent.decorators = [
2896
2896
  { type: Component, args: [{
2897
2897
  selector: 'eo-simple-accordion',
2898
- template: "<header tabindex=\"0\" role=\"tab\" (click)=\"open = !open\">{{header}}</header>\n<section *ngIf=\"open\" role=\"tabpanel\"><ng-content></ng-content></section>",
2898
+ template: "<header tabindex=\"0\" role=\"tab\" (click)=\"open = !open\" (keydown.enter)=\"open = !open\">{{header}}</header>\n<section *ngIf=\"open\" role=\"tabpanel\"><ng-content></ng-content></section>",
2899
2899
  styles: [":host{--accordion-arrow-color:rgba(0,0,0,0.26);--accordion-outline-color:rgba(0,0,0,0.15)}:host.open>header:before{transform:translateY(.15em) rotate(225deg)}:host>header{-moz-user-select:none;-webkit-user-select:none;align-items:center;background-color:var(--panel-background-grey);border:1px solid var(--accordion-outline-color);border-radius:2px;cursor:pointer;display:flex;padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2);user-select:none}:host>header:focus,:host>header:focus-visible{outline:2px solid var(--color-accent)}:host>header:before{-webkit-margin-end:.5em;border-color:var(--accordion-arrow-color);border-style:solid;border-width:0 2px 2px 0;content:\"\";display:inline-block;height:.5em;margin-inline-end:.5em;transform:translateY(-.15em) rotate(45deg);transition:transform .2s ease-in-out;width:.5em}"]
2900
2900
  },] }
2901
2901
  ];
@@ -2904,7 +2904,7 @@ SimpleAccordionComponent.propDecorators = {
2904
2904
  header: [{ type: Input }],
2905
2905
  onOpen: [{ type: Output }],
2906
2906
  open: [{ type: HostBinding, args: ['class.open',] }, { type: Input }],
2907
- onKeyDown: [{ type: HostListener, args: ['keydown.enter', ['$event'],] }, { type: HostListener, args: ['keydown.space', ['$event'],] }]
2907
+ onKeyDown: [{ type: HostListener, args: ['keydown.space', ['$event'],] }]
2908
2908
  };
2909
2909
 
2910
2910
  class AccordionModule {
@@ -3494,9 +3494,19 @@ class UserAvatarComponent {
3494
3494
  this.refreshUserImage();
3495
3495
  });
3496
3496
  }
3497
+ ngOnInit() {
3498
+ if (this.previewUri) {
3499
+ this.refreshUserImage();
3500
+ }
3501
+ }
3497
3502
  refreshUserImage() {
3498
- const timestamp = new Date().getTime().toString();
3499
- this.backgroundImage = `url(${this.userService.getUserImageUri(this.userId) + '&t=' + timestamp}), url(${this.defImg})`;
3503
+ if (this.previewUri) {
3504
+ this.backgroundImage = `url(${this.previewUri})`;
3505
+ }
3506
+ else {
3507
+ const timestamp = new Date().getTime().toString();
3508
+ this.backgroundImage = `url(${this.userService.getUserImageUri(this.userId) + '&t=' + timestamp}), url(${this.defImg})`;
3509
+ }
3500
3510
  }
3501
3511
  ngOnDestroy() {
3502
3512
  this.subscription.unsubscribe();
@@ -3515,7 +3525,8 @@ UserAvatarComponent.ctorParameters = () => [
3515
3525
  ];
3516
3526
  UserAvatarComponent.propDecorators = {
3517
3527
  backgroundImage: [{ type: HostBinding, args: ['style.background-image',] }],
3518
- showPresence: [{ type: Input }]
3528
+ showPresence: [{ type: Input }],
3529
+ previewUri: [{ type: Input }]
3519
3530
  };
3520
3531
 
3521
3532
  class OverlayComponent {
@@ -5418,7 +5429,7 @@ TreeNodeComponent.decorators = [
5418
5429
  selector: 'eo-tree-node',
5419
5430
  template: "<div class=\"tree-node\"\n [ngClass]=\"{selected: node.selected,\n expanded: node.expanded,\n notSelectable: !node.selectable && !(node.children?.length),\n branch: node.children && node.children.length > 0}\">\n <div class=\"node-line\"></div>\n <div class=\"node-content\">\n\n <div class=\"node-item\">\n <div class=\"spacer\"></div>\n <div class=\"ico\" (click)=\"node.children?.length ? onNodeExpandedChanged.emit(node) : onNodeSelected.emit(node)\"></div>\n <div class=\"values\">\n <div class=\"label\" (click)=\"onNodeSelected.emit(node)\" [ngClass]=\"{focused: node.focused}\">\n <span>{{node.name}}</span>\n </div>\n <div class=\"badge\" *ngIf=\"node.badges && node.badges.length > 0\">\n <span *ngFor=\"let badge of node.badges\"\n class=\"{{badge.cssClass}}\"\n [ngClass]=\"{highlighted: node.highlighted}\">\n {{badge.value}}\n </span>\n </div>\n </div>\n </div>\n\n <div class=\"node-children\" *ngIf=\"node.children?.length\">\n <eo-tree-node [node]=\"_node\" *ngFor=\"let _node of node.children; trackBy: trackById\"\n (onNodeExpandedChanged)=\"onNodeExpandedChanged.emit($event)\"\n (onNodeSelected)=\"onNodeSelected.emit($event)\"></eo-tree-node>\n </div>\n </div>\n</div>\n",
5420
5431
  encapsulation: ViewEncapsulation.None,
5421
- styles: [".eo-tree.rtl .tree-node .node-content .node-children{padding-left:0;padding-right:var(--app-pane-padding)}.eo-tree.rtl .tree-node .node-content .node-item .label{margin-left:0;margin-right:calc(var(--app-pane-padding)/4)}.eo-tree{color:var(--text-color-caption)}.eo-tree eo-tree-node{display:flex;flex:1;flex-direction:row;min-height:0;min-width:0}.eo-tree>eo-tree-node:last-child>.tree-node>.node-line{height:calc(var(--app-pane-padding)/2 + var(--app-pane-padding)/2 + 1px)}.eo-tree>eo-tree-node:first-child>.tree-node>.node-line{margin-top:calc(var(--app-pane-padding)/2 + var(--app-pane-padding)/2)}.eo-tree .tree-node{display:flex;flex:1;flex-direction:row;flex-wrap:nowrap;min-height:0;min-width:0}.eo-tree .tree-node.notSelectable{color:var(--text-color-hint)}.eo-tree .tree-node.notSelectable .label{cursor:default!important}.eo-tree .tree-node.notSelectable .label.focused span,.eo-tree .tree-node.notSelectable .label:hover span{border-color:transparent!important;color:var(--text-color-hint)!important}.eo-tree .tree-node .node-line{align-self:stretch;background:rgba(var(--color-black-rgb),.2);flex:0 0 auto;width:1px}.eo-tree .tree-node .node-content{flex:1 1 auto;min-width:0;padding:calc(var(--app-pane-padding)/2) 0}.eo-tree .tree-node .node-content .node-item{align-items:center;display:flex;flex:1;flex-direction:row;flex-wrap:nowrap;height:var(--app-pane-padding);min-height:0;min-width:0}.eo-tree .tree-node .node-content .node-item .spacer{align-self:stretch;display:flex;flex-flow:column;width:calc(var(--app-pane-padding)/2)}.eo-tree .tree-node .node-content .node-item .spacer:before{border-bottom:1px solid rgba(var(--color-black-rgb),.2);content:\"\";flex:0 0 50%}.eo-tree .tree-node .node-content .node-item .ico{align-items:center;border:1px solid rgba(var(--color-black-rgb),.2);border-radius:50%;box-sizing:border-box;display:flex;flex-flow:row nowrap;height:var(--app-pane-padding);justify-content:center;width:var(--app-pane-padding)}.eo-tree .tree-node .node-content .node-item .values{align-items:center;display:flex;flex:1;flex-direction:row;justify-content:space-between;min-height:0;min-width:0}.eo-tree .tree-node .node-content .node-item .label{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;cursor:pointer;display:inline-block;margin-left:calc(var(--app-pane-padding)/4);max-width:none;overflow:hidden;padding:1px;text-overflow:ellipsis;transition:all var(--app-default-transition-duration) ease-in-out;white-space:nowrap;width:100%;word-wrap:break-word}.eo-tree .tree-node .node-content .node-item .label.focused span,.eo-tree .tree-node .node-content .node-item .label:hover span{border-color:var(--color-accent);color:var(--color-accent)}.eo-tree .tree-node .node-content .node-item .label span{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;border:1px solid transparent;border-radius:3px;box-sizing:border-box;display:inline-block;padding:0 calc(var(--app-pane-padding)/4);transition:all var(--app-default-transition-duration) ease-in-out;white-space:nowrap}.eo-tree .tree-node .node-content .node-item .badge span{border:1px solid var(--text-color-hint);border-radius:calc(var(--app-pane-padding)/4);box-sizing:content-box;color:var(--text-color-caption);font-size:var(--font-hint);line-height:1em;margin:0 calc(var(--app-pane-padding)/4);padding:0 calc(var(--app-pane-padding)/4) 1px calc(var(--app-pane-padding)/4)}.eo-tree .tree-node .node-content .node-item .badge span:last-child{background:var(--color-primary-3);border-color:transparent;color:var(--color-white)}.eo-tree .tree-node .node-content .node-item .badge span.highlighted:last-child{background:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-white)}.eo-tree .tree-node .node-content .node-children{display:none;padding-left:var(--app-pane-padding)}.eo-tree .tree-node .node-content .node-children>eo-tree-node:last-child>.tree-node>.node-line{height:calc(var(--app-pane-padding)/2 + var(--app-pane-padding)/2 + 1px)}.eo-tree .tree-node.selected>.node-content>.node-item>.label span{background:var(--color-accent);color:var(--color-white)}.eo-tree .tree-node.selected>.node-content>.node-item>.label.focused,.eo-tree .tree-node.selected>.node-content>.node-item>.label:hover{border-color:var(--color-accent)}.eo-tree .tree-node.selected:not(.branch)>.node-content>.node-item .ico:before{background:var(--color-accent);border-radius:50%;content:\"\";height:calc(var(--app-pane-padding)/2);width:calc(var(--app-pane-padding)/2)}.eo-tree .tree-node.selected.branch>.node-content>.node-item .ico{border-color:var(--color-accent)}.eo-tree .tree-node.selected.branch>.node-content>.node-item .ico:before{background:var(--color-accent);color:var(--color-white)}.eo-tree .tree-node.branch>.node-content>.node-item>.ico{border-radius:2px}.eo-tree .tree-node.branch>.node-content>.node-item>.ico:hover{background:rgba(var(--color-black-rgb),.1)}.eo-tree .tree-node.branch>.node-content>.node-item>.ico:before{color:var(--text-color-caption);content:\"+\";font-family:monospace;font-size:14px;height:calc(var(--app-pane-padding) - 2px);line-height:calc(var(--app-pane-padding) - 2px);text-align:center;width:calc(var(--app-pane-padding) - 2px)}.eo-tree .tree-node.branch.expanded>.node-content>.node-item>.ico:before{content:\"-\"}.eo-tree .tree-node.branch.expanded>.node-content>.node-children{display:block}"]
5432
+ styles: [".eo-tree.rtl .tree-node .node-content .node-children{padding-left:0;padding-right:var(--app-pane-padding)}.eo-tree.rtl .tree-node .node-content .node-item .label{margin-left:0;margin-right:calc(var(--app-pane-padding)/4)}.eo-tree{color:var(--text-color-caption)}.eo-tree eo-tree-node{display:flex;flex:1;flex-direction:row;min-height:0;min-width:0}.eo-tree>eo-tree-node:last-child>.tree-node>.node-line{height:calc(var(--app-pane-padding)/2 + var(--app-pane-padding)/2 + 1px)}.eo-tree>eo-tree-node:first-child>.tree-node>.node-line{margin-top:calc(var(--app-pane-padding)/2 + var(--app-pane-padding)/2)}.eo-tree .tree-node{display:flex;flex:1;flex-direction:row;flex-wrap:nowrap;min-height:0;min-width:0}.eo-tree .tree-node.notSelectable{color:var(--text-color-hint);display:none}.eo-tree .tree-node.notSelectable .label{cursor:default!important}.eo-tree .tree-node.notSelectable .label.focused span,.eo-tree .tree-node.notSelectable .label:hover span{border-color:transparent!important;color:var(--text-color-hint)!important}.eo-tree .tree-node .node-line{align-self:stretch;background:rgba(var(--color-black-rgb),.2);flex:0 0 auto;width:1px}.eo-tree .tree-node .node-content{flex:1 1 auto;min-width:0;padding:calc(var(--app-pane-padding)/2) 0}.eo-tree .tree-node .node-content .node-item{align-items:center;display:flex;flex:1;flex-direction:row;flex-wrap:nowrap;height:var(--app-pane-padding);min-height:0;min-width:0}.eo-tree .tree-node .node-content .node-item .spacer{align-self:stretch;display:flex;flex-flow:column;width:calc(var(--app-pane-padding)/2)}.eo-tree .tree-node .node-content .node-item .spacer:before{border-bottom:1px solid rgba(var(--color-black-rgb),.2);content:\"\";flex:0 0 50%}.eo-tree .tree-node .node-content .node-item .ico{align-items:center;border:1px solid rgba(var(--color-black-rgb),.2);border-radius:50%;box-sizing:border-box;display:flex;flex-flow:row nowrap;height:var(--app-pane-padding);justify-content:center;width:var(--app-pane-padding)}.eo-tree .tree-node .node-content .node-item .values{align-items:center;display:flex;flex:1;flex-direction:row;justify-content:space-between;min-height:0;min-width:0}.eo-tree .tree-node .node-content .node-item .label{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;cursor:pointer;display:inline-block;margin-left:calc(var(--app-pane-padding)/4);max-width:none;overflow:hidden;padding:1px;text-overflow:ellipsis;transition:all var(--app-default-transition-duration) ease-in-out;white-space:nowrap;width:100%;word-wrap:break-word}.eo-tree .tree-node .node-content .node-item .label.focused span,.eo-tree .tree-node .node-content .node-item .label:hover span{border-color:var(--color-accent);color:var(--color-accent)}.eo-tree .tree-node .node-content .node-item .label span{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;border:1px solid transparent;border-radius:3px;box-sizing:border-box;display:inline-block;padding:0 calc(var(--app-pane-padding)/4);transition:all var(--app-default-transition-duration) ease-in-out;white-space:nowrap}.eo-tree .tree-node .node-content .node-item .badge span{border:1px solid var(--text-color-hint);border-radius:calc(var(--app-pane-padding)/4);box-sizing:content-box;color:var(--text-color-caption);font-size:var(--font-hint);line-height:1em;margin:0 calc(var(--app-pane-padding)/4);padding:0 calc(var(--app-pane-padding)/4) 1px calc(var(--app-pane-padding)/4)}.eo-tree .tree-node .node-content .node-item .badge span:last-child{background:var(--color-primary-3);border-color:transparent;color:var(--color-white)}.eo-tree .tree-node .node-content .node-item .badge span.highlighted:last-child{background:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-white)}.eo-tree .tree-node .node-content .node-children{display:none;padding-left:var(--app-pane-padding)}.eo-tree .tree-node .node-content .node-children>eo-tree-node:last-child>.tree-node>.node-line{height:calc(var(--app-pane-padding)/2 + var(--app-pane-padding)/2 + 1px)}.eo-tree .tree-node.selected>.node-content>.node-item>.label span{background:var(--color-accent);color:var(--color-white)}.eo-tree .tree-node.selected>.node-content>.node-item>.label.focused,.eo-tree .tree-node.selected>.node-content>.node-item>.label:hover{border-color:var(--color-accent)}.eo-tree .tree-node.selected:not(.branch)>.node-content>.node-item .ico:before{background:var(--color-accent);border-radius:50%;content:\"\";height:calc(var(--app-pane-padding)/2);width:calc(var(--app-pane-padding)/2)}.eo-tree .tree-node.selected.branch>.node-content>.node-item .ico{border-color:var(--color-accent)}.eo-tree .tree-node.selected.branch>.node-content>.node-item .ico:before{background:var(--color-accent);color:var(--color-white)}.eo-tree .tree-node.branch>.node-content>.node-item>.ico{border-radius:2px}.eo-tree .tree-node.branch>.node-content>.node-item>.ico:hover{background:rgba(var(--color-black-rgb),.1)}.eo-tree .tree-node.branch>.node-content>.node-item>.ico:before{color:var(--text-color-caption);content:\"+\";font-family:monospace;font-size:14px;height:calc(var(--app-pane-padding) - 2px);line-height:calc(var(--app-pane-padding) - 2px);text-align:center;width:calc(var(--app-pane-padding) - 2px)}.eo-tree .tree-node.branch.expanded>.node-content>.node-item>.ico:before{content:\"-\"}.eo-tree .tree-node.branch.expanded>.node-content>.node-children{display:block}"]
5422
5433
  },] }
5423
5434
  ];
5424
5435
  TreeNodeComponent.ctorParameters = () => [];
@@ -5566,7 +5577,7 @@ class TreeComponent {
5566
5577
  }
5567
5578
  // Recursive function walking the tree nodes and setting the nodes `selected` flags
5568
5579
  updateTreeNode(node, parents) {
5569
- node.selected = !!this.selectedNodes.find(n => node.id === n.id);
5580
+ node.selected = !!this.selectedNodes.find(n => node.id === n.value);
5570
5581
  node.expanded = this._expandedNodes.length ? !!this._expandedNodes.find(id => id === node.id) : node.expanded;
5571
5582
  node.highlighted = !!this._highlightedNodes.find(id => id === node.id);
5572
5583
  node.focused = this.focusedNode && this.focusedNode.id === node.id ? this.focusedNode.focused : false;
@@ -6670,6 +6681,20 @@ class DynamicListComponent {
6670
6681
  this.selectedNodes = null;
6671
6682
  }
6672
6683
  }
6684
+ else {
6685
+ if (this.multiselect) {
6686
+ this.selectedNodes = values.map(v => {
6687
+ let node = {};
6688
+ node[this.valueField] = v;
6689
+ return node;
6690
+ });
6691
+ }
6692
+ else {
6693
+ let node = {};
6694
+ node[this.valueField] = value;
6695
+ this.selectedNodes = node;
6696
+ }
6697
+ }
6673
6698
  const nodes = !this.selectedNodes || Array.isArray(this.selectedNodes) ? this.selectedNodes || [] : [this.selectedNodes];
6674
6699
  if (this._list && (nodes.length !== values.length || nodes.some((n, i) => n[this.valueField] !== values[i]))) {
6675
6700
  this.buildTree();
@@ -6686,7 +6711,7 @@ class DynamicListComponent {
6686
6711
  this.setFormControlValue(wasInvalid);
6687
6712
  }
6688
6713
  onAutoCompleteUnselect(node) {
6689
- this.selectedNodes = this.selectedNodes.filter((sNode) => sNode.id !== node.id);
6714
+ this.selectedNodes = this.selectedNodes.filter((sNode) => sNode.value !== node.value);
6690
6715
  this.setFormControlValue();
6691
6716
  }
6692
6717
  onTreeSelectionChanged(evt) {
@@ -6712,7 +6737,7 @@ class DynamicListComponent {
6712
6737
  let v;
6713
6738
  let changed;
6714
6739
  if (this.multiselect) {
6715
- v = this.selectedNodes ? this.selectedNodes.map((node) => node.data[this.valueField]) : [];
6740
+ v = this.selectedNodes ? this.selectedNodes.map((node) => node[this.valueField]) : [];
6716
6741
  changed = !this.value || !(v.length === this.value.length && v.every((val) => this.value.some((curVal) => curVal === val)));
6717
6742
  }
6718
6743
  else {
@@ -6725,7 +6750,6 @@ class DynamicListComponent {
6725
6750
  }
6726
6751
  }
6727
6752
  buildTree() {
6728
- this.selectedNodes = [];
6729
6753
  this.autocompleteValues = [];
6730
6754
  let tree = [];
6731
6755
  for (let i = 0; i < this._list.entries.length; i++) {
@@ -6758,8 +6782,14 @@ class DynamicListComponent {
6758
6782
  for (let i = 0; i < this.value.length; i++) {
6759
6783
  const isTreeNodeValueInValue = node.data[this.valueField] === this.value[i];
6760
6784
  if (isTreeNodeValueInValue) {
6761
- node.selected = true;
6762
- this.selectedNodes.push(node);
6785
+ const selectedNodeThatHasValue = this.selectedNodes.find(sN => sN[this.valueField] === this.value[i]);
6786
+ if (!selectedNodeThatHasValue) {
6787
+ node.selected = true;
6788
+ this.selectedNodes.push(node);
6789
+ }
6790
+ else {
6791
+ selectedNodeThatHasValue.selected = true;
6792
+ }
6763
6793
  }
6764
6794
  }
6765
6795
  }
@@ -7317,7 +7347,7 @@ class ReferenceFinderComponent {
7317
7347
  this.resultList = this.referenceFinderService.generateResults(this.clipboardItems, hits, this.currentSelection, this.types);
7318
7348
  }
7319
7349
  else {
7320
- this.resultList = [];
7350
+ this.searchTerm$.next('*');
7321
7351
  this.clipboardOpen = true;
7322
7352
  }
7323
7353
  this.markedItem = null;
@@ -8374,7 +8404,7 @@ class StringComponent {
8374
8404
  StringComponent.decorators = [
8375
8405
  { type: Component, args: [{
8376
8406
  selector: 'eo-string',
8377
- template: "<div class=\"eo-form-string\">\n\n <input *ngIf=\"!multiline && !multiselect && !autocomplete\"\n type=\"text\"\n pInputText\n (blur)=\"onBlur()\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"/>\n\n <!-- single line input with autocomplete -->\n <p-autoComplete *ngIf=\"!multiline && !multiselect && autocomplete\"\n #autocomplete\n [(ngModel)]=\"value\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [suggestions]=\"autocompleteRes\"\n (onBlur)=\"onBlur()\"\n (onSelect)=\"onValueChange($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\">\n </p-autoComplete>\n\n <!-- single line input with multiselect-->\n <p-chips *ngIf=\"!multiline && multiselect && !autocomplete\"\n [(ngModel)]=\"value\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\">\n </p-chips>\n\n <p-autoComplete *ngIf=\"!multiline && multiselect && autocomplete\"\n [(ngModel)]=\"value\"\n [suggestions]=\"autocompleteRes\"\n [minLength]=\"1\"\n [multiple]=\"true\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\"\n (keyup.enter)=\"onKeyUpEnter($event)\">\n </p-autoComplete>\n\n <!-- multi line text inputs -->\n <textarea class=\"input-textarea size-{{size}}\" pInputTextarea\n *ngIf=\"multiline\"\n (blur)=\"onBlur()\"\n [(ngModel)]=\"value\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n (ngModelChange)=\"onValueChange($event)\"></textarea>\n\n <div class=\"classify\" [ngClass]=\"{empty: !value || situation === 'SEARCH'}\">\n <a href=\"mailto:{{formatedValue}}\" *ngIf=\"classification === 'email' && valid\">\n <i class=\"fa fa-envelope-o\"></i>\n </a>\n <a target=\"_blank\" href=\"{{value}}\" *ngIf=\"classification === 'url' && valid\">\n <i class=\"fa fa-globe\"></i>\n </a>\n </div>\n\n</div>\n",
8407
+ template: "<div class=\"eo-form-string\">\n\n <input *ngIf=\"!multiline && !multiselect && !autocomplete\"\n type=\"text\"\n pInputText\n (blur)=\"onBlur()\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"/>\n\n <!-- single line input with autocomplete -->\n <p-autoComplete *ngIf=\"!multiline && !multiselect && autocomplete\"\n #autocomplete\n [(ngModel)]=\"value\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [suggestions]=\"autocompleteRes\"\n (onBlur)=\"onBlur()\"\n (onSelect)=\"onValueChange($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\">\n </p-autoComplete>\n\n <!-- single line input with multiselect-->\n <p-chips *ngIf=\"!multiline && multiselect && !autocomplete\"\n [(ngModel)]=\"value\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\"\n [addOnBlur]=\"true\">\n </p-chips>\n\n <p-autoComplete *ngIf=\"!multiline && multiselect && autocomplete\"\n [(ngModel)]=\"value\"\n [suggestions]=\"autocompleteRes\"\n [minLength]=\"1\"\n [multiple]=\"true\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\"\n (keyup.enter)=\"onKeyUpEnter($event)\">\n </p-autoComplete>\n\n <!-- multi line text inputs -->\n <textarea class=\"input-textarea size-{{size}}\" pInputTextarea\n *ngIf=\"multiline\"\n (blur)=\"onBlur()\"\n [(ngModel)]=\"value\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n (ngModelChange)=\"onValueChange($event)\"></textarea>\n\n <div class=\"classify\" [ngClass]=\"{empty: !value || situation === 'SEARCH'}\">\n <a href=\"mailto:{{formatedValue}}\" *ngIf=\"classification === 'email' && valid\">\n <i class=\"fa fa-envelope-o\"></i>\n </a>\n <a target=\"_blank\" href=\"{{value}}\" *ngIf=\"classification === 'url' && valid\">\n <i class=\"fa fa-globe\"></i>\n </a>\n </div>\n\n</div>\n",
8378
8408
  providers: [
8379
8409
  {
8380
8410
  provide: NG_VALUE_ACCESSOR,
@@ -16083,7 +16113,7 @@ class ShareObjectComponent {
16083
16113
  }
16084
16114
  ngOnInit() {
16085
16115
  let orgaValue = [];
16086
- const shareChildren = this.selection[0].shares ? this.selection[0].shares[0].sharechildren : true;
16116
+ const shareChildren = this.selection[0].shares[0] ? this.selection[0].shares[0].sharechildren : true;
16087
16117
  this.includeChildrenField.setValue(shareChildren);
16088
16118
  if (this.selection[0].isFolder) {
16089
16119
  this.header = this.translate.instant('eo.manage.rights.folder.title');
@@ -16814,8 +16844,8 @@ class ChangePasswordFormComponent {
16814
16844
  ChangePasswordFormComponent.decorators = [
16815
16845
  { type: Component, args: [{
16816
16846
  selector: 'eo-change-password-form',
16817
- template: "<section class=\"change-password\">\n <form #changePasswordFormElement [formGroup]=\"changePasswordForm\" (ngSubmit)=\"onSubmit()\" autocomplete=\"off\">\n <div class=\"form-item\">\n\n <eo-form-input [label]=\"('eo.password.reset.current-password' | translate)\" [required]=\"true\" [invalid]=\"passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'currentPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.current-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.new-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords || passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'password'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.new-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.confirm-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'confirmPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.confirm-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <div class=\"invalid error\" *ngIf=\"passwordIsNew\">\n {{'eo.password.reset.error.same.password' | translate}}\n </div>\n\n <div class=\"invalid error\" *ngIf=\"matchingPasswords\">\n {{'eo.password.reset.error.matiching.password' | translate}}\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'short'\">\n eo.password.reset.error.new.password.short\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'number'\">\n eo.password.reset.error.new.password.number\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'specialchars'\">\n eo.password.reset.error.new.password.specialchars\n </div>\n\n <section class=\"change-password__cta\">\n <button class=\"change-password__submit-button\" type=\"submit\"\n [disabled]=\"changePasswordForm.invalid || passwordValidation.type !== 'valid'\" translate>eo.password.reset.confirm-button</button>\n\n <a (click)=\"showPasswords()\">\n <eo-icon class=\"change-password__icon-show\"\n [iconSrc]=\"'assets/_default/svg/ic_eye.svg'\"\n [iconTitle]=\"('eo.password.reset.toogle.icon' | translate)\"\n [ngClass]=\"{'visible': passwordIsVisible}\"></eo-icon>\n </a>\n </section>\n </div>\n </form>\n\n</section>\n",
16818
- styles: [".change-password .invalid.error{color:var(--color-error);padding:5px 0}.change-password__cta{align-items:center;display:flex;margin-top:10px}.change-password__submit-button{margin-right:10px}.change-password__icon-show{color:var(--text-color-caption);cursor:pointer}.change-password__icon-show.visible{color:var(--color-primary-3)}"]
16847
+ template: "<section class=\"change-password\">\n <form #changePasswordFormElement [formGroup]=\"changePasswordForm\" (ngSubmit)=\"onSubmit()\" autocomplete=\"off\">\n <div class=\"form-item\">\n\n <eo-form-input [label]=\"('eo.password.reset.current-password' | translate)\" [required]=\"true\" [invalid]=\"passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'currentPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.current-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.new-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords || passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'password'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.new-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.confirm-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'confirmPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.confirm-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <div class=\"invalid error\" *ngIf=\"passwordIsNew\">\n {{'eo.password.reset.error.same.password' | translate}}\n </div>\n\n <div class=\"invalid error\" *ngIf=\"matchingPasswords\">\n {{'eo.password.reset.error.matiching.password' | translate}}\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'short'\">\n eo.password.reset.error.new.password.short\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'number'\">\n eo.password.reset.error.new.password.number\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'specialchars'\">\n eo.password.reset.error.new.password.specialchars\n </div>\n\n <section class=\"change-password__cta\">\n <button class=\"change-password__submit-button\" type=\"submit\"\n [disabled]=\"changePasswordForm.invalid || passwordValidation.type !== 'valid'\" translate>eo.password.reset.confirm-button</button>\n\n <a (click)=\"showPasswords()\" tabindex=\"0\" (keydown.enter)=\"showPasswords()\" >\n <eo-icon class=\"change-password__icon-show\"\n [iconSrc]=\"'assets/_default/svg/ic_eye.svg'\"\n [iconTitle]=\"('eo.password.reset.toogle.icon' | translate)\"\n [ngClass]=\"{'visible': passwordIsVisible}\"></eo-icon>\n </a>\n </section>\n </div>\n </form>\n\n</section>\n",
16848
+ styles: [".change-password .invalid.error{color:var(--color-error);padding:5px 0}.change-password :focus{outline:2px solid var(--text-color-caption)}.change-password__cta{align-items:center;display:flex;margin-top:10px}.change-password__submit-button{margin-right:10px}.change-password__icon-show{color:var(--text-color-caption);cursor:pointer}.change-password__icon-show:hover{color:var(--color-accent)}.change-password__icon-show.visible{color:var(--color-primary-3)}"]
16819
16849
  },] }
16820
16850
  ];
16821
16851
  ChangePasswordFormComponent.ctorParameters = () => [
@@ -17109,7 +17139,7 @@ class ResultListComponent extends UnsubscribeOnDestroy {
17109
17139
  // todo: implement
17110
17140
  }
17111
17141
  resultHasReferences() {
17112
- return this._result.fields.elements.some(element => element.type === 'ORGANISATION' || element.type === 'REFERENCE');
17142
+ return this._result.fields.elements.some(element => element.type === 'ORGANIZATION' || element.type === 'REFERENCE');
17113
17143
  }
17114
17144
  exportCSV(ignoreThreshold = false) {
17115
17145
  if (!ignoreThreshold && this.resolveReferencesCsv && this.list.gridCount.totalCount > this.resolveReferencesCsvThreshold && this.resultHasReferences()) {
@@ -17399,7 +17429,7 @@ StoredQueryComponent.propDecorators = {
17399
17429
  };
17400
17430
 
17401
17431
  class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17402
- constructor(router, searchService, userService, systemService, selection, pendingChanges, storedQueriesService, formHelperService, translate) {
17432
+ constructor(router, searchService, userService, systemService, selection, pendingChanges, storedQueriesService, formHelperService, elemRef, translate) {
17403
17433
  super();
17404
17434
  this.router = router;
17405
17435
  this.searchService = searchService;
@@ -17409,6 +17439,7 @@ class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17409
17439
  this.pendingChanges = pendingChanges;
17410
17440
  this.storedQueriesService = storedQueriesService;
17411
17441
  this.formHelperService = formHelperService;
17442
+ this.elemRef = elemRef;
17412
17443
  this.translate = translate;
17413
17444
  this.FORM_INPUT_TITLE = 'storedQueryTitle';
17414
17445
  this.FORM_INPUT_FULLTEXT = 'storedQueryFulltext';
@@ -17447,6 +17478,9 @@ class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17447
17478
  this.edit();
17448
17479
  this.startPending();
17449
17480
  this.notifyList.emit({ unselect: true, update: false });
17481
+ setTimeout(() => {
17482
+ this.elemRef.nativeElement.querySelector('[name="storedQueryTitle"]').focus();
17483
+ }, 500);
17450
17484
  }
17451
17485
  }
17452
17486
  }
@@ -17855,7 +17889,7 @@ class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17855
17889
  StoredQueryDetailsComponent.decorators = [
17856
17890
  { type: Component, args: [{
17857
17891
  selector: 'eo-stored-query-details',
17858
- template: "<ng-container *ngIf=\"storedQuery\">\n <div class=\"eo-head\">\n <header class=\"eo-header\">\n <eo-icon class=\"eo-header-icon\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"\n [iconTitle]=\"('eo.sidebar.navigation.storedqueries' | translate)\">\n </eo-icon>\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\">{{storedQuery.name}}</h2>\n <h3 class=\"eo-header-subtitle\" translate>eo.search.title.storedqueries</h3>\n </div>\n </header>\n </div>\n\n <div class=\"eo-body\">\n\n <div class=\"form\">\n\n <ng-template #queryForm>\n <eo-stored-query [query]=\"storedQuery\" [formOnly]=\"true\" #storedQueryForm\n (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </ng-template>\n\n <form class=\"edit-form\" [formGroup]=\"editForm.form\" *ngIf=\"editForm.form; else queryForm\">\n\n <div class=\"context dark\">\n\n <!-- title and fulltext term fields -->\n <eo-form-input class=\"title\">\n <input type=\"text\" name=\"storedQueryTitle\" maxlength=\"64\" autofocus=\"autofocus\" [formControlName]=\"'storedQueryTitle'\"/>\n </eo-form-input>\n \n <eo-query-scope-select [selection]=\"queryScope\" (select)=\"setQueryScope($event)\"></eo-query-scope-select>\n <div class=\"form-field\">\n <eo-form-element [skipToggle]=\"true\" [element]=\"editForm.fulltextFormControl\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"editForm.fulltextFormControl\"\n (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n\n <!-- context type form controls -->\n <h3>{{storedQuery.contextFolderTypes[0]?.label}}</h3>\n <div class=\"form-field\" *ngFor=\"let ctxElement of editForm.contextControls; trackBy: trackByQName\">\n <eo-form-element [element]=\"ctxElement\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"ctxElement\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n\n <!-- object type form controls -->\n <div class=\"form-fields\" [ngClass]=\"{empty: !editForm.controls?.length}\">\n <div class=\"form-field\" *ngFor=\"let element of editForm.controls; trackBy: trackByQName\">\n <eo-form-element [element]=\"element\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"element\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n </form>\n </div>\n\n <aside class=\"aside\" *ngIf=\"!isNewQuery\">\n\n <!-- favorite and share -->\n <div class=\"meta-actions\">\n\n <ng-container *ngIf=\"isOwnQuery; else sharedWithMe\">\n <eo-icon class=\"button btn-share\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" *ngIf=\"enableSharing\"\n [ngClass]=\"{active: storedQuery.shared || storedQuery.roles.length, editing: editingShare}\"\n (click)=\"toggleShareEdit()\"\n [iconTitle]=\"iconTitles.share\"></eo-icon>\n\n <eo-icon class=\"button btn-fav\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"\n [ngClass]=\"{active: storedQuery.favorite}\"\n (click)=\"toggleFavoriteState()\"\n [iconTitle]=\"iconTitles.favor\"></eo-icon>\n </ng-container>\n\n <ng-template #sharedWithMe>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" [iconTitle]=\"iconTitles.shared\"></eo-icon>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\" [iconTitle]=\"iconTitles.favored\"></eo-icon>\n </ng-template>\n\n </div>\n\n <!-- roles that share this query -->\n <div class=\"meta-roles\" [ngClass]=\"{dark: editingShare, empty: !storedQuery.roles?.length}\">\n\n <div class=\"label\" translate>eo.storedquery.share.sharedwith</div>\n <div class=\"form-field\" *ngIf=\"rolesPicker?.codesystem?.entries\">\n <eo-codesystem [pickerTitle]=\"rolesPicker.title\"\n [codesystem]=\"rolesPicker.codesystem\"\n [multiselect]=\"true\"\n [readonly]=\"!editingShare\"\n [inputStyleClass]=\"'stored-query__share'\"\n [(ngModel)]=\"rolesPicker.value\"></eo-codesystem>\n </div>\n\n <div class=\"share-actions\" *ngIf=\"editingShare\">\n <button class=\"secondary\" (click)=\"cancelShare()\" translate>eo.storedquery.share.cancel</button>\n <button class=\"primary\" (click)=\"share()\" translate>eo.storedquery.share.ok</button>\n </div>\n </div>\n\n <!-- queries meta info like baseparam settings -->\n <div class=\"meta-data\" *ngIf=\"restrictions?.length\">\n <div class=\"restriction\" *ngFor=\"let restriction of restrictions; trackBy: trackByIndex\">\n <div class=\"label\">{{restriction.label}}</div>\n <div class=\"items\">\n <div *ngFor=\"let item of restriction.items; trackBy: trackByIndex\">{{item}}</div>\n </div>\n </div>\n </div>\n\n </aside>\n\n </div>\n\n <div class=\"actions\">\n <ng-container *ngIf=\"!editForm.form; else actionEdit\">\n <button class=\"secondary btn-delete\" (click)=\"delete()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.delete</button>\n <button class=\"secondary btn-open\" (click)=\"setQueryToAppSearch()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.load</button>\n <button class=\"primary grey btn-edit\" (click)=\"edit()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.edit</button>\n <button class=\"primary btn-search\" [disabled]=\"storedQuery.state?.isEmpty\" (click)=\"executeQuery()\" translate>eo.storedquery.run</button>\n </ng-container>\n\n <ng-template #actionEdit>\n <!-- action while editing the query form -->\n <button class=\"secondary btn-cancel\" (click)=\"cancelEdit()\" translate>eo.storedquery.action.cancel</button>\n <button class=\"primary btn-save\" (click)=\"updateStoredQuery()\" [disabled]=\"editForm.form.invalid\" translate>eo.storedquery.action.save</button>\n </ng-template>\n </div>\n\n</ng-container>\n",
17892
+ template: "<ng-container *ngIf=\"storedQuery\">\n <div class=\"eo-head\">\n <header class=\"eo-header\">\n <eo-icon class=\"eo-header-icon\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"\n [iconTitle]=\"('eo.sidebar.navigation.storedqueries' | translate)\">\n </eo-icon>\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\">{{storedQuery.name}}</h2>\n <h3 class=\"eo-header-subtitle\" translate>eo.search.title.storedqueries</h3>\n </div>\n </header>\n </div>\n\n <div class=\"eo-body\">\n\n <div class=\"form\">\n\n <ng-template #queryForm>\n <eo-stored-query [query]=\"storedQuery\" [formOnly]=\"true\" #storedQueryForm\n (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </ng-template>\n\n <form class=\"edit-form\" [formGroup]=\"editForm.form\" *ngIf=\"editForm.form; else queryForm\">\n\n <div class=\"context dark\">\n\n <!-- title and fulltext term fields -->\n <eo-form-input class=\"title\">\n <input type=\"text\" name=\"storedQueryTitle\" maxlength=\"64\" onfocus=\"this.select()\" [formControlName]=\"'storedQueryTitle'\"/>\n </eo-form-input>\n \n <eo-query-scope-select [selection]=\"queryScope\" (select)=\"setQueryScope($event)\"></eo-query-scope-select>\n <div class=\"form-field\">\n <eo-form-element [skipToggle]=\"true\" [element]=\"editForm.fulltextFormControl\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"editForm.fulltextFormControl\"\n (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n\n <!-- context type form controls -->\n <h3>{{storedQuery.contextFolderTypes[0]?.label}}</h3>\n <div class=\"form-field\" *ngFor=\"let ctxElement of editForm.contextControls; trackBy: trackByQName\">\n <eo-form-element [element]=\"ctxElement\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"ctxElement\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n\n <!-- object type form controls -->\n <div class=\"form-fields\" [ngClass]=\"{empty: !editForm.controls?.length}\">\n <div class=\"form-field\" *ngFor=\"let element of editForm.controls; trackBy: trackByQName\">\n <eo-form-element [element]=\"element\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"element\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n </form>\n </div>\n\n <aside class=\"aside\" *ngIf=\"!isNewQuery\">\n\n <!-- favorite and share -->\n <div class=\"meta-actions\">\n\n <ng-container *ngIf=\"isOwnQuery; else sharedWithMe\">\n <eo-icon class=\"button btn-share\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" *ngIf=\"enableSharing\"\n [ngClass]=\"{active: storedQuery.shared || storedQuery.roles.length, editing: editingShare}\"\n (click)=\"toggleShareEdit()\"\n [iconTitle]=\"iconTitles.share\"></eo-icon>\n\n <eo-icon class=\"button btn-fav\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"\n [ngClass]=\"{active: storedQuery.favorite}\"\n (click)=\"toggleFavoriteState()\"\n [iconTitle]=\"iconTitles.favor\"></eo-icon>\n </ng-container>\n\n <ng-template #sharedWithMe>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" [iconTitle]=\"iconTitles.shared\"></eo-icon>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\" [iconTitle]=\"iconTitles.favored\"></eo-icon>\n </ng-template>\n\n </div>\n\n <!-- roles that share this query -->\n <div class=\"meta-roles\" [ngClass]=\"{dark: editingShare, empty: !storedQuery.roles?.length}\">\n\n <div class=\"label\" translate>eo.storedquery.share.sharedwith</div>\n <div class=\"form-field\" *ngIf=\"rolesPicker?.codesystem?.entries\">\n <eo-codesystem [pickerTitle]=\"rolesPicker.title\"\n [codesystem]=\"rolesPicker.codesystem\"\n [multiselect]=\"true\"\n [readonly]=\"!editingShare\"\n [inputStyleClass]=\"'stored-query__share'\"\n [(ngModel)]=\"rolesPicker.value\"></eo-codesystem>\n </div>\n\n <div class=\"share-actions\" *ngIf=\"editingShare\">\n <button class=\"secondary\" (click)=\"cancelShare()\" translate>eo.storedquery.share.cancel</button>\n <button class=\"primary\" (click)=\"share()\" translate>eo.storedquery.share.ok</button>\n </div>\n </div>\n\n <!-- queries meta info like baseparam settings -->\n <div class=\"meta-data\" *ngIf=\"restrictions?.length\">\n <div class=\"restriction\" *ngFor=\"let restriction of restrictions; trackBy: trackByIndex\">\n <div class=\"label\">{{restriction.label}}</div>\n <div class=\"items\">\n <div *ngFor=\"let item of restriction.items; trackBy: trackByIndex\">{{item}}</div>\n </div>\n </div>\n </div>\n\n </aside>\n\n </div>\n\n <div class=\"actions\">\n <ng-container *ngIf=\"!editForm.form; else actionEdit\">\n <button class=\"secondary btn-delete\" (click)=\"delete()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.delete</button>\n <button class=\"secondary btn-open\" (click)=\"setQueryToAppSearch()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.load</button>\n <button class=\"primary grey btn-edit\" (click)=\"edit()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.edit</button>\n <button class=\"primary btn-search\" [disabled]=\"storedQuery.state?.isEmpty\" (click)=\"executeQuery()\" translate>eo.storedquery.run</button>\n </ng-container>\n\n <ng-template #actionEdit>\n <!-- action while editing the query form -->\n <button class=\"secondary btn-cancel\" (click)=\"cancelEdit()\" translate>eo.storedquery.action.cancel</button>\n <button class=\"primary btn-save\" (click)=\"updateStoredQuery()\" [disabled]=\"editForm.form.invalid\" translate>eo.storedquery.action.save</button>\n </ng-template>\n </div>\n\n</ng-container>\n",
17859
17893
  styles: [":host{--stored-query-aside-width:300px;background:var(--panel-background-grey);display:flex;flex:1;flex-direction:column;height:100%;min-height:0;min-width:0;overflow-y:auto}:host .eo-head{background-color:var(--color-white);border-bottom:1px solid var(--panel-header-border-bottom-color)}:host .eo-body{overflow-y:hidden}:host .eo-body .form{overflow-y:auto;padding:var(--app-pane-padding);padding-right:calc(var(--stored-query-aside-width) + var(--app-pane-padding)*2)}:host .eo-body .form eo-stored-query{background-color:var(--color-white);padding:var(--app-pane-padding)}:host .eo-body .aside{background-color:rgba(var(--color-black-rgb),.02);border:1px solid rgba(var(--color-black-rgb),.1);box-sizing:border-box;padding:var(--app-pane-padding);position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding);width:var(--stored-query-aside-width)}:host .eo-body .aside .meta-actions{display:flex;justify-content:flex-end;margin:0 -2px}:host .eo-body .aside .meta-actions eo-icon{color:var(--text-color-hint);margin:0 2px;padding:4px}:host .eo-body .aside .meta-actions eo-icon.active{color:var(--color-favorite)}:host .eo-body .aside .meta-actions eo-icon.editing{background-color:var(--color-primary-2);border-radius:2px 2px 0 0;color:var(--color-white)}:host .eo-body .aside .meta-actions eo-icon.sharedWithMe{background-color:var(--text-color-hint);border-radius:2px;color:var(--color-white)}:host .eo-body .aside .meta-roles.dark{background-color:var(--color-primary-2);border-radius:2px;color:var(--color-white);margin-bottom:var(--app-pane-padding);padding:calc(var(--app-pane-padding)/2)}:host .eo-body .aside .meta-roles.dark .actions{display:flex}:host .eo-body .aside .meta-roles.dark .label{display:none}:host .eo-body .aside .meta-roles.dark .form-field,:host .eo-body .aside .meta-roles .form-field{background-color:rgba(var(--color-white-rgb),.2)}:host .eo-body .aside .meta-roles .form-field{border:1px solid rgba(var(--color-black-rgb),.1);margin-bottom:calc(var(--app-pane-padding)/2);padding:2px 2px 4px 4px}:host .eo-body .aside .meta-roles .label{color:var(--text-color-caption);font-style:italic;margin-bottom:calc(var(--app-pane-padding)/4)}:host .eo-body .aside .meta-roles .share-actions{display:flex;justify-content:flex-end;margin:0 calc(var(--app-pane-padding)/8*-1)}:host .eo-body .aside .meta-roles .share-actions button{margin:0 calc(var(--app-pane-padding)/8);padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}:host .eo-body .aside .meta-roles.empty:not(.dark) .form-field,:host .eo-body .aside .meta-roles.empty:not(.dark) .label{display:none}:host .eo-body .aside .meta-data{border-collapse:collapse;display:table;flex:1 1 40%;margin:0 0 var(--app-pane-padding) 0;order:1}:host .eo-body .aside .meta-data .restriction{display:table-row}:host .eo-body .aside .meta-data .restriction .label{color:var(--text-color-caption);display:table-cell;font-style:italic;padding-right:calc(var(--app-pane-padding)/2)}:host .eo-body .aside .meta-data .restriction .items{border-left:1px solid rgba(var(--color-black-rgb),.1);display:table-cell;padding:0 0 calc(var(--app-pane-padding)/2) calc(var(--app-pane-padding)/2)}:host .actions{background-color:var(--color-white);border-top:1px solid var(--panel-header-border-bottom-color);display:flex;flex-flow:row;justify-content:flex-end;padding:var(--app-pane-padding) calc(var(--app-pane-padding) - 2px)}:host .actions button{margin:0 2px}:host .edit-form{background-color:var(--color-white);max-width:500px}:host .edit-form .context{background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding)/2)}:host .edit-form .context h3{color:var(--color-white);display:flex;font-size:var(--font-subhead);font-weight:var(--font-weight-light);justify-content:flex-end;margin:0;padding:var(--app-pane-padding) 0 calc(var(--app-pane-padding)/2) 0}:host .edit-form .form-fields{padding:calc(var(--app-pane-padding)/2)}:host .edit-form .form-fields.empty{display:none}:host .edit-form .form-field{align-items:center;display:flex;flex-flow:row nowrap}:host .edit-form .form-field eo-form-element{flex:1 1 auto}:host .edit-form .form-field eo-dynamic-property-switch{flex:0 0 auto}:host eo-stored-query{display:block;max-width:500px}:host ::ng-deep eo-form-input.title{display:block;margin-bottom:var(--app-pane-padding)}:host ::ng-deep eo-form-input.title input{font-size:var(--font-title);font-weight:var(--font-weight-light)}"]
17860
17894
  },] }
17861
17895
  ];
@@ -17868,6 +17902,7 @@ StoredQueryDetailsComponent.ctorParameters = () => [
17868
17902
  { type: PendingChangesService },
17869
17903
  { type: StoredQueriesService },
17870
17904
  { type: ObjectFormHelperService },
17905
+ { type: ElementRef },
17871
17906
  { type: TranslateService }
17872
17907
  ];
17873
17908
  StoredQueryDetailsComponent.propDecorators = {
@@ -21617,7 +21652,7 @@ FrameComponent.decorators = [
21617
21652
  { type: Component, args: [{
21618
21653
  selector: 'eo-frame',
21619
21654
  template: "<!-- global upload component -->\n<eo-upload-overlay *ngIf=\"authenticated && capabilities?.intray\"></eo-upload-overlay>\n\n<!-- main application skeleton -->\n<div class=\"application\" [dir]=\"dir\" [eoShortcuts]=\"navShortcuts\">\n\n <div class=\"app\" *ngIf=\"!initError\" [eoShortcuts]=\"shortcuts\">\n <eo-app-bar [transparent]=\"transparentBar\" *ngIf=\"authenticated\">\n <eo-sidebar-plugin class=\"navi\" [type]=\"'sidebar-navigation'\"></eo-sidebar-plugin>\n <eo-sidebar-plugin class=\"help\" [type]=\"'sidebar-help'\"></eo-sidebar-plugin>\n <eo-sidebar-plugin class=\"profile\" [type]=\"'sidebar-profile'\"></eo-sidebar-plugin>\n </eo-app-bar>\n <div class=\"eo-app-content\">\n <router-outlet></router-outlet>\n </div>\n </div>\n\n <!-- app init failed notification -->\n <div class=\"init-error\" *ngIf=\"initError\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_error.svg'\"></eo-icon>\n <div class=\"message\">\n <div translate>eo.app.init.fail.title</div>\n <div class=\"cause\" translate>eo.app.init.fail.message</div>\n <div class=\"cause error\">{{initError.cause}}</div>\n </div>\n </div>\n\n <div class=\"overlay\">\n <!--<ng-progress [positionUsing]=\"'marginLeft'\" [minimum]=\"0.3\" [maximum]=\"1\"-->\n <!--[speed]=\"300\" [showSpinner]=\"false\"-->\n <!--[direction]=\"dir === 'rtl' ? 'rightToLeftIncreased' : 'leftToRightIncreased'\"-->\n <!--[color]=\"'#bb3f5a'\" [trickleSpeed]=\"300\" [thick]=\"true\" [ease]=\"'linear'\"-->\n <!--&gt;</ng-progress>-->\n </div>\n <router-outlet name=\"modal\"></router-outlet>\n <eo-global-shortcuts *ngIf=\"authenticated && !isMobileEnv\"></eo-global-shortcuts>\n <eo-action-menu></eo-action-menu>\n <section #externalDialog></section>\n</div>\n",
21620
- styles: [":host .application{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0;transition:all .5s ease-in-out}:host.view-no-bar:not(.dashboard) .application{top:calc(var(--app-bar-height)*-1 - var(--app-pane-padding))}:host.view-no-header:not(.dashboard) .application{top:calc(var(--app-bar-height)*-1 - var(--app-pane-padding) - var(--app-pane-header-height) + 30px)}:host.view-no-header.object-state .application{top:calc(var(--app-bar-height)*-1 - var(--app-pane-padding) - var(--app-pane-header-height) - 36px)}:host .app{overflow:hidden}:host .app,:host .init-error{background:var(--main-background);bottom:0;display:flex;flex-flow:column;left:0;position:absolute;right:0;top:0}:host .init-error{align-items:center;justify-content:center}:host .init-error eo-icon{color:var(--color-error);height:80px;width:80px}:host .init-error .message{color:var(--color-error);font-size:var(--font-headline);max-width:500px;padding:var(--app-pane-padding)}:host .init-error .message .cause{font-size:var(--font-caption);margin-top:var(--app-pane-padding)}:host .init-error .message .cause.error{font-style:italic;margin-top:var(--app-pane-padding)}:host .overlay{position:absolute;width:100%;z-index:1001}:host .eo-app-content{bottom:0;left:0;overflow-x:auto;position:absolute;right:0;top:var(--app-bar-height)}:host.dashboard .eo-app-content{background-position:50%;background-size:cover;top:0}:host ::ng-deep split-gutter{background-color:transparent!important}"]
21655
+ styles: [":host .application{bottom:0;left:0;position:absolute;right:0;top:0;transition:all .5s ease-in-out}:host.view-no-bar:not(.dashboard) .application{top:calc(var(--app-bar-height)*-1 - var(--app-pane-padding))}:host.view-no-header:not(.dashboard) .application{top:calc(var(--app-bar-height)*-1 - var(--app-pane-padding) - var(--app-pane-header-height) + 30px)}:host.view-no-header.object-state .application{top:calc(var(--app-bar-height)*-1 - var(--app-pane-padding) - var(--app-pane-header-height) - 36px)}:host .app{overflow:hidden}:host .app,:host .init-error{background:var(--main-background);bottom:0;display:flex;flex-flow:column;left:0;position:absolute;right:0;top:0}:host .init-error{align-items:center;justify-content:center}:host .init-error eo-icon{color:var(--color-error);height:80px;width:80px}:host .init-error .message{color:var(--color-error);font-size:var(--font-headline);max-width:500px;padding:var(--app-pane-padding)}:host .init-error .message .cause{font-size:var(--font-caption);margin-top:var(--app-pane-padding)}:host .init-error .message .cause.error{font-style:italic;margin-top:var(--app-pane-padding)}:host .overlay{position:absolute;width:100%;z-index:1001}:host .eo-app-content{bottom:0;left:0;overflow-x:auto;position:absolute;right:0;top:var(--app-bar-height)}:host.dashboard .eo-app-content{background-position:50%;background-size:cover;top:0}:host ::ng-deep split-gutter{background-color:transparent!important}"]
21621
21656
  },] }
21622
21657
  ];
21623
21658
  FrameComponent.ctorParameters = () => [
@@ -22306,8 +22341,8 @@ class SettingsComponent extends UnsubscribeOnDestroy {
22306
22341
  SettingsComponent.decorators = [
22307
22342
  { type: Component, args: [{
22308
22343
  selector: 'eo-settings',
22309
- template: "<div class=\"eo-settings\" *ngIf=\"user\" eoRtlAware>\n\n <div class=\"header\">\n\n <div #headerBg class=\"bg\"></div>\n <div class=\"fill\">\n <div class=\"meta username\">{{user.name}}</div>\n <h1>{{user.firstname}} {{user.lastname}}</h1>\n <div class=\"meta email\">{{user.email}}</div>\n\n <div class=\"presence\" *ngIf=\"capabilities.inbox\">\n <button class=\"toggle dark present\" id=\"presence\" (click)=\"setPresence(true)\" [ngClass]=\"{active: user.present}\"\n translate>eo.state.settings.presence.present</button>\n <button class=\"toggle dark absent\" (click)=\"setPresence(false)\" (keydown.tab)=\"tabAction($event.target)\" [ngClass]=\"{active: !user.present}\"\n translate>eo.state.settings.presence.absent</button>\n </div>\n </div>\n <div (mouseenter)=\"mouseEnter()\" (mouseleave)=\"mouseLeave()\" (keydown.tab)=\"mouseEnter()\">\n\n <eo-user-avatar #userAvatar class=\"userImage\" tabindex=\"-1\" eoRtlAware=\"full\">\n <input type=\"file\" accept=\".jpg, .png\" style=\"display:none;\" #files (change)=\"selectImage($event.target)\" (click)=\"$event.target.value=null\">\n </eo-user-avatar>\n <eo-dialog [styleClass]=\"'view'\" [minWidth]=\"'300px'\" [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\"\n [(visible)]=\"showPreviewDialog\" [focusOnShow]=\"false\">\n <ng-container>\n <div class=\"contain\">\n <div class=\"attachments\">\n <div class=\"atta\">\n <img [src]=\"preview\">\n </div>\n <div class=\"user-avatar\">\n <img [src]=\"preview\">\n </div>\n </div>\n </div>\n <div class=\"button-block\">\n <button type=\"button\" (click)=\"closePreviewDialog()\" class=\"button danger\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"uploadNewUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.dialog.save</button>\n </div>\n </ng-container>\n </eo-dialog>\n\n <div class=\"overlay\" #profileImageOverlay tabindex=\"0\">\n <span class=\"updateMessage\" *ngIf=\"hoverSelector\">\n <eo-icon tabindex=\"0\" (keydown.enter)=\"files.click()\" [iconSrc]=\"'assets/_default/svg/ic_edit.svg'\"\n (click)=\"files.click()\"></eo-icon>\n <eo-icon tabindex=\"0\" (keydown.enter)=\"trashIconClick()\" *ngIf=\"showDeleteIconTrash\"\n [iconSrc]=\"'assets/_default/svg/ic_trash.svg'\" aria-disabled=\"true\" (click)=\"trashIconClick()\"></eo-icon>\n </span>\n </div>\n </div>\n\n </div>\n\n <div class=\"body\" (keydown.tab)=\"tabAction($event.target)\">\n\n <div class=\"body-wrap\">\n\n <div class=\"section section-deputies\" *ngIf=\"capabilities.bpm && hasPrivilege('MANAGE_DEPUTY_LIST')\">\n <h3 translate>eo.state.settings.deputies</h3>\n\n <!-- deputies -->\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.deputies.label</div>\n <div class=\"values\">\n <form #deputiesForm=\"ngForm\" [ngClass]=\"{dirty: deputiesForm.dirty}\">\n <eo-organization name=\"deputies\" [dataMeta]=\"deputies.dataMeta\" [filterObject]=\"{type: 'USER'}\"\n [exceptions]=\"[user.name]\" [multiselect]=\"true\" [(ngModel)]=\"deputies.data\"></eo-organization>\n <div class=\"actions\" *ngIf=\"deputiesForm.valid && deputiesForm.dirty\">\n <button class=\"secondary\" (click)=\"resetDeputies()\" translate>eo.state.settings.deputies.cancel</button>\n <button class=\"primary\" (click)=\"saveDeputies()\" translate>eo.state.settings.deputies.save</button>\n </div>\n </form>\n </div>\n </div>\n\n <!-- substitute of -->\n <div class=\"entry substitute\">\n <div class=\"label\" translate>eo.state.settings.deputies.subsituteof.label</div>\n <div class=\"values\">\n <span class=\"chip\" *ngFor=\"let sub of user.substitutesOf\" [ngClass]=\"{present: sub.present}\">\n <eo-icon class=\"chip substitute substitute--present\" *ngIf=\"sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_done.svg'\"></eo-icon>\n <eo-icon class=\"chip substitute substitute--away\" *ngIf=\"!sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n <span>{{sub.title}} ({{sub.name}})</span>\n </span>\n </div>\n </div>\n </div>\n\n <!-- password -->\n <section *ngIf=\"!isCloud && !isSSO || !isCloud && isSSO\" class=\"section section-password\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.password.reset</div>\n <div class=\"values\">\n <eo-simple-accordion #simpleAcc [header]=\"('eo.password.reset' | translate)\">\n <eo-change-password-form (onFormSumbit)=\"simpleAcc.open = false\"></eo-change-password-form>\n </eo-simple-accordion>\n </div>\n </div>\n </section>\n\n <!-- language -->\n <div class=\"section section-lang\">\n <h3 translate>eo.state.settings.language</h3>\n <div class=\"entry lang-app\">\n <div class=\"label\" translate>eo.state.settings.language.client</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeClientLocale(locale.iso)\"\n [ngClass]=\"{active: translate.currentLang === locale.iso}\"\n *ngFor=\"let locale of clientLocales\">{{locale.label}}\n </button>\n </div>\n </div>\n\n <div class=\"entry lang-def\">\n <div class=\"label\" translate>eo.state.settings.language.schema</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeSchemaLocale(locale.code)\"\n [ngClass]=\"{active: activeSchema === locale.code}\"\n *ngFor=\"let locale of schemaLocales\">{{locale.displayname}}</button>\n </div>\n </div>\n </div>\n\n <!-- permissions -->\n <div class=\"section section-perm\">\n <h3 translate>eo.state.settings.permission</h3>\n <div class=\"entry perm-roles\">\n <div class=\"label\" translate>eo.state.settings.roles</div>\n <div class=\"values roles\">\n <eo-simple-accordion [header]=\"('eo.state.settings.roles' | translate)\">\n <eo-permissions [roles]=\"user.roles\"></eo-permissions>\n </eo-simple-accordion>\n </div>\n </div>\n </div>\n\n <!-- agent -->\n <div class=\"section section-others\">\n <h3 translate>eo.state.settings.others</h3>\n <ng-container *ngIf=\"showAgentConfig\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.agent</div>\n <div class=\"values\">\n <div class=\"use-agent\">\n <eo-checkbox [formControl]=\"useAgentControl\" [readonly]=\"useAgentControl.disabled\"\n *ngIf=\"useAgentControl\"></eo-checkbox>\n <span class=\"use-agent-label\" translate>eo.state.settings.agent.use</span>\n <!-- <a href=\"https://help.optimal-systems.com/yuuvisRAD/v60/user/client/de/client/integration/cln_tsk_agent_global.htm?Highlight=agent\">\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\"></eo-icon>\n </a> -->\n </div>\n </div>\n </div>\n\n\n <div class=\"entry lock-settings\" [ngClass]=\"{'lock-settings--show': (agentStatus | async)}\">\n <div class=\"label\" translate>eo.state.settings.lock</div>\n <div class=\"values\">\n <button class=\"toggle button-enabled\" (click)=\"changeLockSettings(LockSettings.always)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.always}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.enable</button>\n <button class=\"toggle button-disabled\" (click)=\"changeLockSettings(LockSettings.never)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.never}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.disable</button>\n <button class=\"toggle button-ask\" (click)=\"changeLockSettings(LockSettings.ask)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.ask}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.ask</button>\n </div>\n </div>\n\n\n </ng-container>\n\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.cache</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"clearCache()\">eo.state.settings.cache.clear</button>\n <div class=\"cache\">\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.system' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.system\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.history' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.history\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.layout' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.layout\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n <eo-dialog [title]=\"'eo.state.settings.details.delete.dialog.title' | translate\" [(visible)]=\"showDeleteDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.details.delete.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"showDeleteDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"deleteUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.delete.dialog.ok</button>\n </div>\n </eo-dialog>\n\n <eo-dialog [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n\n <div>\n <p>{{fileName}}</p>\n <p *ngIf=\"viewMode ==='size'\" translate>eo.state.settings.details.upload.dialog.sizeError</p>\n <p *ngIf=\"viewMode ==='image'\" translate>eo.state.settings.details.upload.dialog.fileError </p>\n </div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\">\n <button type=\"button\" class=\"button cancel\" (click)=\"showErrorDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"files.click(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back</button>\n </div>\n </eo-dialog>\n</div>\n",
22310
- styles: [":host{bottom:0;justify-content:center;left:0;position:absolute;right:0;top:0}:host,:host .cache{display:flex;flex-flow:row}:host .cache{margin:0 var(--app-pane-padding)}.eo-settings{background:var(--color-white);box-shadow:0 2px 5px 0 rgba(0,0,0,.2);box-sizing:border-box;display:flex;flex-flow:column;margin:var(--app-pane-padding);width:800px}@media (max-width:832px){.eo-settings{margin:0;min-width:inherit;width:100%}}.eo-settings .header{flex:1 1;max-height:300px;min-height:200px;position:relative}@media (max-width:480px){.eo-settings .header{min-height:210px}}.eo-settings .header h1{font-size:var(--font-display);font-weight:var(--font-weight-light);line-height:1em;margin:0;padding:0}.eo-settings .header .meta{margin:calc(var(--app-pane-padding)/2) 0}.eo-settings .header .presence{margin-top:calc(var(--app-pane-padding)*2)}.eo-settings .header .bg{background-position:50%;background-size:cover;bottom:0;filter:grayscale(1);left:0;position:absolute;right:0;top:0}.eo-settings .header .fill{background:rgba(var(--color-primary-rgb),.85);bottom:0;color:var(--color-white);left:0;padding:var(--app-pane-padding);position:absolute;right:0;top:0}.eo-settings .header .userImage{background-position:50%;background-size:cover;border:4px solid var(--color-white);bottom:calc(var(--app-pane-padding)*-1);box-shadow:0 2px 5px 0 rgba(var(--color-black-rgb),.26);height:150px;position:absolute;right:var(--app-pane-padding);width:150px;z-index:1}@media (max-width:480px){.eo-settings .header .userImage{height:105px;width:105px}}.eo-settings .header .userImage.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay{border:4px solid var(--color-white);bottom:calc(var(--app-pane-padding)*-1);box-shadow:0 2px 5px 0 rgba(var(--color-black-rgb),.26);height:150px;position:absolute;right:var(--app-pane-padding);width:150px;z-index:1}@media (max-width:480px){.eo-settings .header .overlay{height:105px;width:105px}}.eo-settings .header .overlay.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay:focus,.eo-settings .header .overlay:hover{border-color:var(--color-accent);opacity:1}.eo-settings .header .overlay .updateMessage{align-items:center;background-clip:border-box;background-color:rgba(192,188,188,.9450980392156862);box-sizing:border-box;display:flex;height:100%;justify-content:center;width:100%}.eo-settings .header .overlay .updateMessage eo-icon{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;color:var(--color-white);height:48px;opacity:.5;transition:all var(--app-default-transition-duration) ease-in-out;width:48px}.eo-settings .header .overlay .updateMessage eo-icon:focus,.eo-settings .header .overlay .updateMessage eo-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body{flex:1 1 auto;position:relative}.eo-settings .body .body-wrap{bottom:0;box-sizing:border-box;left:0;overflow-y:auto;padding:var(--app-pane-padding);position:absolute;right:0;top:0}.eo-settings .body .section{margin-top:var(--app-pane-padding)}.eo-settings .body .section.section-deputies form{border-radius:2px}.eo-settings .body .section.section-deputies form .actions{display:flex;justify-content:flex-end;padding-top:calc(var(--app-pane-padding)/4)}.eo-settings .body .section.section-deputies form .actions button{border-radius:2px;padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}.eo-settings .body .section.section-deputies form.dirty{background-color:rgba(var(--color-black-rgb),.06);padding:2px}.eo-settings .body .section.section-deputies .entry.substitute .values{display:flex;flex-flow:row wrap}.eo-settings .body .section.section-deputies .entry.substitute .values .chip{align-items:center;display:flex;font-size:.9em;padding:2px 4px}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute{border:0;border-radius:4px;color:var(--color-white);height:calc(var(--app-pane-padding)*0.6);width:calc(var(--app-pane-padding)*0.75)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--present{background-color:var(--color-success)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--away{background-color:var(--color-error)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip>span{margin:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-default{background-color:var(--color-white);border-color:rgba(var(--color-black-rgb),.1);border-radius:2px;min-height:27px;padding:0 0 2px 2px}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-disabled{border-color:transparent;opacity:1}.eo-settings .body .section p{line-height:1.7em}.eo-settings .body .section h3{color:var(--text-color-caption);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);margin:0;padding:0 0 0 150px}@media (max-width:480px){.eo-settings .body .section h3{padding:0}}.eo-settings .body .section .entry{display:flex;flex-flow:row nowrap;padding:var(--app-pane-padding) 0 0 0}.eo-settings .body .section .entry.lock-settings{height:0;opacity:0;overflow:hidden;transition:all .5s ease-in-out}.eo-settings .body .section .entry.lock-settings--show{height:100%;opacity:1}@media (max-width:480px){.eo-settings .body .section .entry{flex-flow:column}}.eo-settings .body .section .entry .label{color:var(--text-color-caption);flex:0 0 150px}@media (max-width:480px){.eo-settings .body .section .entry .label{flex:0 0 auto;margin-bottom:calc(var(--app-pane-padding)/2)}}.eo-settings .body .section .entry .values{flex:1 1 auto}.eo-settings .body .section .entry .values button{cursor:pointer;margin:0 4px 4px 0}.eo-settings .body .section .entry .values button.active,.eo-settings .body .section .entry .values button.toggle:disabled{cursor:default}.eo-settings .body .section .entry .use-agent{align-items:center;display:flex}.eo-settings .body .section .entry .use-agent .use-agent-label{color:var(--text-color-caption);margin:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section .entry .use-agent eo-icon.info-icon{border-radius:50%;box-sizing:border-box;color:var(--text-color-caption);margin:0;padding:3px}.eo-settings .body .section .entry .use-agent eo-icon.info-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body .section .values.roles{align-items:flex-start;display:flex;flex-flow:column}.eo-settings .body .section .values.roles .role{display:flex;flex-flow:row nowrap;margin-bottom:calc(var(--app-pane-padding)/2);word-break:break-all}.eo-settings .body .section .values.roles .role eo-icon{color:var(--text-color-hint);height:18px;width:18px}.eo-settings .body .section .values.roles .role>div{padding:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section .values.roles .role>div .description{color:var(--text-color-caption);font-size:var(--font-caption)}.eo-settings .body .toggle-btn{-webkit-border-radius:2px;background:rgba(var(--color-black-rgb),.1);border-radius:2px;color:var(--text-color-caption);cursor:pointer;display:inline-block;margin-right:3px;padding:2px 5px;text-decoration:none}.eo-settings.rtl .header .userImage{left:var(--app-pane-padding);right:auto}.eo-settings.rtl .body .section h3{padding:0 150px 0 0}::ng-deep .view{height:100%;width:100%}::ng-deep .view .eo-dialog-content{overflow:hidden}::ng-deep .view .contain{display:flex;flex-flow:column}@media (max-width:480px){::ng-deep .view .contain{min-height:210px}}::ng-deep .view .contain .attachments{align-items:center;display:flex;height:100%;justify-content:space-around;margin:5px 60px 0;width:100%}::ng-deep .view .contain .attachments .atta{display:block;padding:0;position:relative}::ng-deep .view .contain .attachments .atta img{border:2px solid #5c5959;box-sizing:border-box;max-height:200px;max-width:200px;min-height:80px;min-width:80px}::ng-deep .view .contain .attachments .user-avatar{align-items:center;display:flex;margin-right:109px}::ng-deep .view .contain .attachments .user-avatar img{background-size:cover;border:2px solid #5c5959;border-radius:50%;box-sizing:border-box;height:90px;width:90px}::ng-deep .view .button-block{display:flex;justify-content:right;margin:8px}::ng-deep .delete__dialog{min-height:unset!important;padding:8px}::ng-deep .delete__dialog--header{background:#fff!important;color:rgba(var(--color-black-rgb),.54)!important;font-size:1.17em!important;font-weight:400!important;margin:0;padding:0 0 1em!important}"]
22344
+ template: "<div class=\"eo-settings\" *ngIf=\"user\" eoRtlAware>\n\n <div class=\"header\">\n\n <div #headerBg class=\"bg\"></div>\n <div class=\"fill\">\n <div class=\"meta username\">{{user.name}}</div>\n <h1>{{user.firstname}} {{user.lastname}}</h1>\n <div class=\"meta email\">{{user.email}}</div>\n\n <div class=\"presence\" *ngIf=\"capabilities.inbox\">\n <button class=\"toggle dark present\" id=\"presence\" (click)=\"setPresence(true)\" [ngClass]=\"{active: user.present}\"\n translate>eo.state.settings.presence.present</button>\n <button class=\"toggle dark absent\" (click)=\"setPresence(false)\" (keydown.tab)=\"tabAction($event.target)\" [ngClass]=\"{active: !user.present}\"\n translate>eo.state.settings.presence.absent</button>\n </div>\n </div>\n <div (mouseenter)=\"mouseEnter()\" (mouseleave)=\"mouseLeave()\" (keydown.tab)=\"mouseEnter()\">\n\n <eo-user-avatar #userAvatar class=\"userImage\" tabindex=\"-1\" eoRtlAware=\"full\">\n <input type=\"file\" accept=\".jpg, .png\" style=\"display:none;\" #files (change)=\"selectImage($event.target)\" (click)=\"$event.target.value=null\">\n </eo-user-avatar>\n <eo-dialog [styleClass]=\"'view'\" [minWidth]=\"'300px'\" [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\"\n [(visible)]=\"showPreviewDialog\" [focusOnShow]=\"false\">\n <ng-container>\n <div class=\"contain\">\n <div class=\"attachments\">\n <div class=\"atta\">\n <img [src]=\"preview\">\n </div>\n <div class=\"user-avatar\" *ngIf=\"preview\">\n <eo-user-avatar class=\"preview-round\" [previewUri]=\"preview\"></eo-user-avatar>\n </div>\n </div>\n </div>\n <div class=\"button-block\">\n <button type=\"button\" (click)=\"closePreviewDialog()\" class=\"button danger\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"uploadNewUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.dialog.save</button>\n </div>\n </ng-container>\n </eo-dialog>\n\n <div class=\"overlay\" #profileImageOverlay tabindex=\"0\">\n <span class=\"updateMessage\" *ngIf=\"hoverSelector\">\n <eo-icon tabindex=\"0\" (keydown.enter)=\"files.click()\" [iconSrc]=\"'assets/_default/svg/ic_edit.svg'\"\n (click)=\"files.click()\"></eo-icon>\n <eo-icon tabindex=\"0\" (keydown.enter)=\"trashIconClick()\" *ngIf=\"showDeleteIconTrash\"\n [iconSrc]=\"'assets/_default/svg/ic_trash.svg'\" aria-disabled=\"true\" (click)=\"trashIconClick()\"></eo-icon>\n </span>\n </div>\n </div>\n\n </div>\n\n <div class=\"body\" (keydown.tab)=\"tabAction($event.target)\">\n\n <div class=\"body-wrap\">\n\n <div class=\"section section-deputies\" *ngIf=\"capabilities.bpm && hasPrivilege('MANAGE_DEPUTY_LIST')\">\n <h3 translate>eo.state.settings.deputies</h3>\n\n <!-- deputies -->\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.deputies.label</div>\n <div class=\"values\">\n <form #deputiesForm=\"ngForm\" [ngClass]=\"{dirty: deputiesForm.dirty}\">\n <eo-organization name=\"deputies\" [dataMeta]=\"deputies.dataMeta\" [filterObject]=\"{type: 'USER'}\"\n [exceptions]=\"[user.name]\" [multiselect]=\"true\" tabindex=\"0\" [(ngModel)]=\"deputies.data\"></eo-organization>\n <div class=\"actions\" *ngIf=\"deputiesForm.valid && deputiesForm.dirty\">\n <button class=\"secondary\" (click)=\"resetDeputies()\" translate>eo.state.settings.deputies.cancel</button>\n <button class=\"primary\" (click)=\"saveDeputies()\" translate>eo.state.settings.deputies.save</button>\n </div>\n </form>\n </div>\n </div>\n\n <!-- substitute of -->\n <div class=\"entry substitute\">\n <div class=\"label\" translate>eo.state.settings.deputies.subsituteof.label</div>\n <div class=\"values\">\n <span class=\"chip\" *ngFor=\"let sub of user.substitutesOf\" [ngClass]=\"{present: sub.present}\">\n <eo-icon class=\"chip substitute substitute--present\" *ngIf=\"sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_done.svg'\"></eo-icon>\n <eo-icon class=\"chip substitute substitute--away\" *ngIf=\"!sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n <span>{{sub.title}} ({{sub.name}})</span>\n </span>\n </div>\n </div>\n </div>\n\n <!-- password -->\n <section *ngIf=\"!isCloud && !isSSO || !isCloud && isSSO\" class=\"section section-password\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.password.reset</div>\n <div class=\"values\">\n <eo-simple-accordion #simpleAcc [header]=\"('eo.password.reset' | translate)\">\n <eo-change-password-form (onFormSumbit)=\"simpleAcc.open = false\"></eo-change-password-form>\n </eo-simple-accordion>\n </div>\n </div>\n </section>\n\n <!-- language -->\n <div class=\"section section-lang\">\n <h3 translate>eo.state.settings.language</h3>\n <div class=\"entry lang-app\">\n <div class=\"label\" translate>eo.state.settings.language.client</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeClientLocale(locale.iso)\"\n [ngClass]=\"{active: translate.currentLang === locale.iso}\"\n *ngFor=\"let locale of clientLocales\">{{locale.label}}\n </button>\n </div>\n </div>\n\n <div class=\"entry lang-def\">\n <div class=\"label\" translate>eo.state.settings.language.schema</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeSchemaLocale(locale.code)\"\n [ngClass]=\"{active: activeSchema === locale.code}\"\n *ngFor=\"let locale of schemaLocales\">{{locale.displayname}}</button>\n </div>\n </div>\n </div>\n\n <!-- permissions -->\n <div class=\"section section-perm\">\n <h3 translate>eo.state.settings.permission</h3>\n <div class=\"entry perm-roles\">\n <div class=\"label\" translate>eo.state.settings.roles</div>\n <div class=\"values roles\">\n <eo-simple-accordion [header]=\"('eo.state.settings.roles' | translate)\">\n <eo-permissions [roles]=\"user.roles\"></eo-permissions>\n </eo-simple-accordion>\n </div>\n </div>\n </div>\n\n <!-- agent -->\n <div class=\"section section-others\">\n <h3 translate>eo.state.settings.others</h3>\n <ng-container *ngIf=\"showAgentConfig\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.agent</div>\n <div class=\"values\">\n <div class=\"use-agent\">\n <eo-checkbox [formControl]=\"useAgentControl\" [readonly]=\"useAgentControl.disabled\"\n *ngIf=\"useAgentControl\"></eo-checkbox>\n <span class=\"use-agent-label\" translate>eo.state.settings.agent.use</span>\n <!-- <a href=\"https://help.optimal-systems.com/yuuvisRAD/v60/user/client/de/client/integration/cln_tsk_agent_global.htm?Highlight=agent\">\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\"></eo-icon>\n </a> -->\n </div>\n </div>\n </div>\n\n\n <div class=\"entry lock-settings\" [ngClass]=\"{'lock-settings--show': (agentStatus | async)}\">\n <div class=\"label\" translate>eo.state.settings.lock</div>\n <div class=\"values\">\n <button class=\"toggle button-enabled\" (click)=\"changeLockSettings(LockSettings.always)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.always}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.enable</button>\n <button class=\"toggle button-disabled\" (click)=\"changeLockSettings(LockSettings.never)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.never}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.disable</button>\n <button class=\"toggle button-ask\" (click)=\"changeLockSettings(LockSettings.ask)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.ask}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.ask</button>\n </div>\n </div>\n\n\n </ng-container>\n\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.cache</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"clearCache()\">eo.state.settings.cache.clear</button>\n <div class=\"cache\">\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.system' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.system\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.history' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.history\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.layout' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.layout\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n <eo-dialog [title]=\"'eo.state.settings.details.delete.dialog.title' | translate\" [(visible)]=\"showDeleteDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.details.delete.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"showDeleteDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"deleteUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.delete.dialog.ok</button>\n </div>\n </eo-dialog>\n\n <eo-dialog [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n\n <div>\n <p>{{fileName}}</p>\n <p *ngIf=\"viewMode ==='size'\" translate>eo.state.settings.details.upload.dialog.sizeError</p>\n <p *ngIf=\"viewMode ==='image'\" translate>eo.state.settings.details.upload.dialog.fileError </p>\n </div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\">\n <button type=\"button\" class=\"button cancel\" (click)=\"showErrorDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"files.click(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back</button>\n </div>\n </eo-dialog>\n</div>\n",
22345
+ styles: [":host{bottom:0;justify-content:center;left:0;position:absolute;right:0;top:0}:host,:host .cache{display:flex;flex-flow:row}:host .cache{margin:0 var(--app-pane-padding)}.eo-settings{background:var(--color-white);box-shadow:0 2px 5px 0 rgba(0,0,0,.2);box-sizing:border-box;display:flex;flex-flow:column;margin:var(--app-pane-padding);width:800px}@media (max-width:832px){.eo-settings{margin:0;min-width:inherit;width:100%}}.eo-settings .header{flex:1 1;max-height:300px;min-height:200px;position:relative}@media (max-width:480px){.eo-settings .header{min-height:210px}}.eo-settings .header h1{font-size:var(--font-display);font-weight:var(--font-weight-light);line-height:1em;margin:0;padding:0}.eo-settings .header .meta{margin:calc(var(--app-pane-padding)/2) 0}.eo-settings .header .presence{margin-top:calc(var(--app-pane-padding)*2)}.eo-settings .header .bg{background-position:50%;background-size:cover;bottom:0;filter:grayscale(1);left:0;position:absolute;right:0;top:0}.eo-settings .header .fill{background:rgba(var(--color-primary-rgb),.85);bottom:0;color:var(--color-white);left:0;padding:var(--app-pane-padding);position:absolute;right:0;top:0}.eo-settings .header .userImage{background-size:cover;border:4px solid var(--color-white);bottom:calc(var(--app-pane-padding)*-1);box-shadow:0 2px 5px 0 rgba(var(--color-black-rgb),.26);height:150px;position:absolute;right:var(--app-pane-padding);width:150px;z-index:1}@media (max-width:480px){.eo-settings .header .userImage{height:105px;width:105px}}.eo-settings .header .userImage.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay{border:4px solid var(--color-white);bottom:calc(var(--app-pane-padding)*-1);box-shadow:0 2px 5px 0 rgba(var(--color-black-rgb),.26);height:150px;position:absolute;right:var(--app-pane-padding);width:150px;z-index:1}@media (max-width:480px){.eo-settings .header .overlay{height:105px;width:105px}}.eo-settings .header .overlay.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay:focus,.eo-settings .header .overlay:hover{border-color:var(--color-accent);opacity:1}.eo-settings .header .overlay .updateMessage{align-items:center;background-clip:border-box;background-color:rgba(192,188,188,.9450980392156862);box-sizing:border-box;display:flex;height:100%;justify-content:center;width:100%}.eo-settings .header .overlay .updateMessage eo-icon{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;color:var(--color-white);height:48px;opacity:.5;transition:all var(--app-default-transition-duration) ease-in-out;width:48px}.eo-settings .header .overlay .updateMessage eo-icon:focus,.eo-settings .header .overlay .updateMessage eo-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body{flex:1 1 auto;position:relative}.eo-settings .body .body-wrap{bottom:0;box-sizing:border-box;left:0;overflow-y:auto;padding:var(--app-pane-padding);position:absolute;right:0;top:0}.eo-settings .body .section{margin-top:var(--app-pane-padding)}.eo-settings .body .section.section-deputies form{border-radius:2px}.eo-settings .body .section.section-deputies form .actions{display:flex;justify-content:flex-end;padding-top:calc(var(--app-pane-padding)/4)}.eo-settings .body .section.section-deputies form .actions button{border-radius:2px;padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}.eo-settings .body .section.section-deputies form.dirty{background-color:rgba(var(--color-black-rgb),.06);padding:2px}.eo-settings .body .section.section-deputies .entry.substitute .values{display:flex;flex-flow:row wrap}.eo-settings .body .section.section-deputies .entry.substitute .values .chip{align-items:center;display:flex;font-size:.9em;padding:2px 4px}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute{border:0;border-radius:4px;color:var(--color-white);height:calc(var(--app-pane-padding)*0.6);width:calc(var(--app-pane-padding)*0.75)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--present{background-color:var(--color-success)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--away{background-color:var(--color-error)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip>span{margin:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-default{background-color:var(--color-white);border-color:rgba(var(--color-black-rgb),.1);border-radius:2px;min-height:27px;padding:0 0 2px 2px}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-disabled{border-color:transparent;opacity:1}.eo-settings .body .section p{line-height:1.7em}.eo-settings .body .section h3{color:var(--text-color-caption);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);margin:0;padding:0 0 0 150px}@media (max-width:480px){.eo-settings .body .section h3{padding:0}}.eo-settings .body .section .entry{display:flex;flex-flow:row nowrap;padding:var(--app-pane-padding) 0 0 0}.eo-settings .body .section .entry.lock-settings{height:0;opacity:0;overflow:hidden;transition:all .5s ease-in-out}.eo-settings .body .section .entry.lock-settings--show{height:100%;opacity:1}@media (max-width:480px){.eo-settings .body .section .entry{flex-flow:column}}.eo-settings .body .section .entry .label{color:var(--text-color-caption);flex:0 0 150px}@media (max-width:480px){.eo-settings .body .section .entry .label{flex:0 0 auto;margin-bottom:calc(var(--app-pane-padding)/2)}}.eo-settings .body .section .entry .values{flex:1 1 auto}.eo-settings .body .section .entry .values button{cursor:pointer;margin:0 4px 4px 0}.eo-settings .body .section .entry .values button.active,.eo-settings .body .section .entry .values button.toggle:disabled{cursor:default}.eo-settings .body .section .entry .use-agent{align-items:center;display:flex}.eo-settings .body .section .entry .use-agent .use-agent-label{color:var(--text-color-caption);margin:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section .entry .use-agent eo-icon.info-icon{border-radius:50%;box-sizing:border-box;color:var(--text-color-caption);margin:0;padding:3px}.eo-settings .body .section .entry .use-agent eo-icon.info-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body .section .values.roles{align-items:flex-start;display:flex;flex-flow:column}.eo-settings .body .section .values.roles .role{display:flex;flex-flow:row nowrap;margin-bottom:calc(var(--app-pane-padding)/2);word-break:break-all}.eo-settings .body .section .values.roles .role eo-icon{color:var(--text-color-hint);height:18px;width:18px}.eo-settings .body .section .values.roles .role>div{padding:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section .values.roles .role>div .description{color:var(--text-color-caption);font-size:var(--font-caption)}.eo-settings .body .toggle-btn{-webkit-border-radius:2px;background:rgba(var(--color-black-rgb),.1);border-radius:2px;color:var(--text-color-caption);cursor:pointer;display:inline-block;margin-right:3px;padding:2px 5px;text-decoration:none}.eo-settings.rtl .header .userImage{left:var(--app-pane-padding);right:auto}.eo-settings.rtl .body .section h3{padding:0 150px 0 0}::ng-deep .view{height:100%;width:100%}::ng-deep .view .eo-dialog-content{overflow:hidden}::ng-deep .view .contain{display:flex;flex-flow:column}@media (max-width:480px){::ng-deep .view .contain{min-height:210px}}::ng-deep .view .contain .attachments{align-items:center;display:flex;height:100%;justify-content:space-around;margin:5px 60px 0;width:100%}::ng-deep .view .contain .attachments .atta{display:block;margin-inline:10px;margin-top:10px;padding:0;position:relative}::ng-deep .view .contain .attachments .atta img{border:2px solid #5c5959;box-sizing:border-box;max-height:200px;max-width:200px;min-height:80px;min-width:80px}::ng-deep .view .contain .attachments .user-avatar{align-items:center;display:flex;margin-right:109px}::ng-deep .view .contain .attachments .user-avatar .preview-round{border:2px solid #5c5959;border-radius:50%;height:90px;width:90px}::ng-deep .view .button-block{display:flex;justify-content:right;margin:8px}::ng-deep .delete__dialog{min-height:unset!important;padding:8px}::ng-deep .delete__dialog--header{background:#fff!important;color:rgba(var(--color-black-rgb),.54)!important;font-size:1.17em!important;font-weight:400!important;margin:0;padding:0 0 1em!important}"]
22311
22346
  },] }
22312
22347
  ];
22313
22348
  SettingsComponent.ctorParameters = () => [
@@ -22622,10 +22657,10 @@ class AboutStateComponent {
22622
22657
  this.http = http;
22623
22658
  this.userService = userService;
22624
22659
  this.config = config;
22625
- this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "9.0.0-rc.8", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "11.1.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "13.0.0", "license": "MIT" }, { "name": "@types/lodash", "version": "4.14.88", "license": "MIT" }, { "name": "core-js", "version": "2.5.7", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "keyboardevent-key-polyfill", "version": "1.1.0", "license": "CC0-1.0" }, { "name": "keycode-js", "version": "0.0.4", "license": "MIT" }, { "name": "mobile-drag-drop", "version": "2.2.0", "license": "MIT" }, { "name": "moment", "version": "2.22.2", "license": "MIT" }, { "name": "ngx-toastr", "version": "13.2.0", "license": "MIT" }, { "name": "primeicons", "version": "1.0.0-beta.6", "license": "MIT" }, { "name": "primeng", "version": "7.0.1", "license": "MIT" }, { "name": "reflect-metadata", "version": "0.1.10", "license": "Apache-2.0" }, { "name": "rxjs", "version": "6.6.3", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.1.0", "license": "0BSD" }, { "name": "zone.js", "version": "0.10.3", "license": "MIT" }];
22660
+ this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "9.0.0", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "11.1.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "13.0.0", "license": "MIT" }, { "name": "@types/lodash", "version": "4.14.88", "license": "MIT" }, { "name": "core-js", "version": "2.5.7", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "keyboardevent-key-polyfill", "version": "1.1.0", "license": "CC0-1.0" }, { "name": "keycode-js", "version": "0.0.4", "license": "MIT" }, { "name": "mobile-drag-drop", "version": "2.2.0", "license": "MIT" }, { "name": "moment", "version": "2.22.2", "license": "MIT" }, { "name": "ngx-toastr", "version": "13.2.0", "license": "MIT" }, { "name": "primeicons", "version": "1.0.0-beta.6", "license": "MIT" }, { "name": "primeng", "version": "7.0.1", "license": "MIT" }, { "name": "reflect-metadata", "version": "0.1.10", "license": "Apache-2.0" }, { "name": "rxjs", "version": "6.6.3", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.1.0", "license": "0BSD" }, { "name": "zone.js", "version": "0.10.3", "license": "MIT" }];
22626
22661
  this.ctrl = {
22627
22662
  productName: 'yuuvis® RAD client',
22628
- clientVersion: '9.0.0-rc.8'
22663
+ clientVersion: '9.0.0'
22629
22664
  };
22630
22665
  this.licenses = {
22631
22666
  'MIT': {
@@ -24192,17 +24227,15 @@ class InboxStateComponent extends UnsubscribeOnDestroy {
24192
24227
  .subscribe((data) => {
24193
24228
  this.gridData = data;
24194
24229
  this.updateGrid(this.gridData);
24195
- });
24196
- const lastInboxItemID = this.storageService.getItem(this.storageKeyLastItemID);
24197
- if (lastInboxItemID) {
24198
- if (this.gridData) {
24230
+ const lastInboxItemID = this.storageService.getItem(this.storageKeyLastItemID);
24231
+ if (lastInboxItemID) {
24199
24232
  const item = this.gridData.find(i => i.id === lastInboxItemID);
24200
24233
  if (item) {
24201
24234
  this.selectFirst = false;
24202
24235
  setTimeout(() => this.eoGrid.selectRow(item), 500);
24203
24236
  }
24204
24237
  }
24205
- }
24238
+ });
24206
24239
  }
24207
24240
  ngOnDestroy() {
24208
24241
  this.selection.clear();