@eo-sdk/client 7.16.3 → 8.0.0-rc.3

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 (24) hide show
  1. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts +5 -0
  2. package/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.d.ts +10 -2
  3. package/assets/_default/config/main.json +1 -1
  4. package/assets/_default/i18n/de.json +7 -4
  5. package/assets/_default/i18n/en.json +12 -9
  6. package/assets/_default/img/yuuvis-agent.png +0 -0
  7. package/assets/_default/svg/ic_book.svg +1 -0
  8. package/bundles/eo-sdk-client.umd.js +75 -10
  9. package/bundles/eo-sdk-client.umd.js.map +1 -1
  10. package/bundles/eo-sdk-client.umd.min.js +1 -1
  11. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  12. package/eo-sdk-client.metadata.json +1 -1
  13. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  14. package/esm2015/app/eo-framework/app-shell/app-bar/app-bar.component.js +45 -1
  15. package/esm2015/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.js +20 -6
  16. package/esm2015/app/eo-framework/form-elements/organization/organization.component.js +2 -2
  17. package/esm2015/app/eo-framework/grid/filters/organization-filter.component.js +2 -2
  18. package/esm2015/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.js +4 -1
  19. package/esm2015/app/eo-framework/process/history/process-history.component.js +2 -2
  20. package/esm2015/app/eo-framework/upload-overlay/upload-overlay.component.js +2 -2
  21. package/fesm2015/eo-sdk-client.js +71 -10
  22. package/fesm2015/eo-sdk-client.js.map +1 -1
  23. package/package.json +2 -2
  24. package/projects/eo-sdk/core/package.json +1 -1
@@ -24,9 +24,14 @@ export declare class AppBarComponent extends UnsubscribeOnDestroy implements OnI
24
24
  options: any;
25
25
  iconTitles: any;
26
26
  logo: string;
27
+ pageVisible: boolean;
27
28
  constructor(userService: UserService, capabilityService: CapabilitiesService, translate: TranslateService, inboxService: InboxService, prepareService: PrepareService, clipboard: ClipboardService, renderer: Renderer2, router: Router, bpmService: BpmService, eventService: EventService, config: Config);
28
29
  openDashboard(openInNewWindow: boolean): void;
29
30
  updateOnSchemaChange(): void;
30
31
  setIconTitles(): void;
32
+ private sendNotification;
33
+ private initNotification;
34
+ private initNotificationClickListener;
35
+ private initVisibilityChangeListener;
31
36
  ngOnInit(): void;
32
37
  }
@@ -1,6 +1,6 @@
1
1
  import { ChangeDetectorRef, EventEmitter, OnInit, ElementRef } from '@angular/core';
2
2
  import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
3
- import { Capabilities, CapabilitiesService, Config } from '@eo-sdk/core';
3
+ import { Capabilities, CapabilitiesService, Config, UserService } from '@eo-sdk/core';
4
4
  import { UnsubscribeOnDestroy } from '../../../util/unsubscribe/unsubscribe.component';
5
5
  export declare class SideBarComponent extends UnsubscribeOnDestroy implements OnInit {
6
6
  private capabilityService;
@@ -8,10 +8,18 @@ export declare class SideBarComponent extends UnsubscribeOnDestroy implements On
8
8
  private cd;
9
9
  private sanitizer;
10
10
  private elemRef;
11
+ private userService;
11
12
  capabilities: Capabilities;
12
13
  backgroundImage: SafeResourceUrl;
14
+ userLang: string;
15
+ docu: {
16
+ link: string;
17
+ label: string;
18
+ };
13
19
  eoOutsideClick: EventEmitter<any>;
14
- constructor(capabilityService: CapabilitiesService, config: Config, cd: ChangeDetectorRef, sanitizer: DomSanitizer, elemRef: ElementRef);
20
+ constructor(capabilityService: CapabilitiesService, config: Config, cd: ChangeDetectorRef, sanitizer: DomSanitizer, elemRef: ElementRef, userService: UserService);
21
+ getDocumentation(): void;
22
+ getUserLang(): void;
15
23
  getCapabilities(): void;
16
24
  setBackgroundImage(): void;
17
25
  close(): void;
@@ -35,7 +35,7 @@
35
35
  },
36
36
  "about": {
37
37
  "docu": {
38
- "link": "https://help.optimal-systems.com/yuuvisRAD/v70/user/client/###userLang###/index.html",
38
+ "link": "https://help.optimal-systems.com/yuuvisRAD/v80/user/client/###userLang###/index.html",
39
39
  "label": "eo.sidebar.help.manual"
40
40
  }
41
41
  },
@@ -1,4 +1,5 @@
1
1
  {
2
+ "eo.form.property.organization.error.usernotfound": "gelöschter Benutzer",
2
3
  "eo.bar.button.layout.remember": "merken",
3
4
  "eo.state.object.tree.references": "Referenzen",
4
5
  "eo.state.object.tree.references.tooltip": "Objekte, die auf diesen Ordner referenzieren",
@@ -353,6 +354,8 @@
353
354
  "eo.inbox.filter.unread": "Ungelesene",
354
355
  "eo.inbox.filter.absent": "Stellvertretung",
355
356
  "eo.inbox.filter.overdue": "Überfällig",
357
+ "eo.inbox.notification.title": "Neue Aufgaben",
358
+ "eo.inbox.notification.body": "Sie haben neue Aufgaben im Eingangskorb.",
356
359
  "eo.no.filter.result": "Kein Treffer vorhanden.",
357
360
  "eo.reset.filter": "Filter zurücksetzen",
358
361
  "eo.inbox.sort.title": "Titel",
@@ -455,13 +458,13 @@
455
458
  "eo.object.history.entry.type.SHARING_ENABLED_GROUP.description": "Das Objekt wurde geteilt und ist jetzt sichtbar für die Mitglieder der Gruppe {{orgtitle}}.",
456
459
  "eo.object.history.entry.type.SHARING_REVOKED_GROUP.title": "Objekt nicht mehr mit Gruppe geteilt",
457
460
  "eo.object.history.entry.type.SHARING_REVOKED_GROUP.description": "Das Objekt wird nicht mehr geteilt und ist nicht mehr sichtbar für die Mitglieder der Gruppe {{orgtitle}}.",
458
- "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_ENABLED.title": "Unterobjekte mit Benutzer geteilt.",
461
+ "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_ENABLED.title": "Unterobjekte mit Benutzer geteilt",
459
462
  "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_ENABLED.description": "Die Unterobjekte des Objekts wurden geteilt mit Benutzer {{orgtitle}} ({{orgname}}).",
460
- "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_ENABLED.title": "Unterobjekte mit Gruppe geteilt.",
463
+ "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_ENABLED.title": "Unterobjekte mit Gruppe geteilt",
461
464
  "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_ENABLED.description": "Die Unterobjekte des Objekts wurden geteilt mit Mitgliedern der Gruppe {{orgtitle}}.",
462
- "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_DISABLED.title": "Unterobjekte nicht mehr mit Benutzer geteilt.",
465
+ "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_DISABLED.title": "Unterobjekte nicht mehr mit Benutzer geteilt",
463
466
  "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_DISABLED.description": "Die Unterobjekte des Objekts werden nicht mehr geteilt mit Benutzer {{orgtitle}} ({{orgname}}).",
464
- "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_DISABLED.title": "Unterobjekte nicht mehr mit Benutzer geteilt.",
467
+ "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_DISABLED.title": "Unterobjekte nicht mehr mit Gruppe geteilt",
465
468
  "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_DISABLED.description": "Die Unterobjekte des Objekts werden nicht mehr geteilt mit Mitgliedern der Gruppe {{orgtitle}}.",
466
469
  "eo.object.history.entry.type.CONTENT_RENAMED.title": "Dokumentdatei umbenannt",
467
470
  "eo.object.history.entry.type.CONTENT_RENAMED.description": "Die Dokumentdatei wurde umbenannt in {{contentname}}.",
@@ -1,4 +1,5 @@
1
1
  {
2
+ "eo.form.property.organization.error.usernotfound": "deleted user",
2
3
  "eo.bar.button.layout.remember": "remember",
3
4
  "eo.state.object.tree.references": "References",
4
5
  "eo.state.object.tree.references.tooltip": "Objects that reference this folder",
@@ -355,6 +356,8 @@
355
356
  "eo.inbox.filter.unread": "Unread",
356
357
  "eo.inbox.filter.absent": "Substitution",
357
358
  "eo.inbox.filter.overdue": "Overdue",
359
+ "eo.inbox.notification.title": "New tasks",
360
+ "eo.inbox.notification.body": "You have new tasks in the inbox.",
358
361
  "eo.no.filter.result": "No hits available.",
359
362
  "eo.reset.filter": "Reset filter",
360
363
  "eo.inbox.sort.title": "Title",
@@ -456,14 +459,14 @@
456
459
  "eo.object.history.entry.type.SHARING_REVOKED_GROUP.title": "Object no longer shared with group",
457
460
  "eo.object.history.entry.type.SHARING_REVOKED_USER.description": "The object is no longer shared and is not visible any longer to the user: {{orgtitle}} ({{orgname}}).",
458
461
  "eo.object.history.entry.type.SHARING_REVOKED_USER.title": "Object no longer shared with user",
459
- "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_ENABLED.title": "Children shared with user.",
460
- "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_ENABLED.description": "The object’s children are visible for user {{orgtitle}} ({{orgname}}).",
461
- "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_ENABLED.title": "Children shared with group.",
462
- "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_ENABLED.description": "The object’s children are visible for members of the group {{orgtitle}}.",
463
- "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_DISABLED.title": "Children no longer shared with user.",
464
- "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_DISABLED.description": "The object’s children are not longer visible for user {{orgtitle}} ({{orgname}}).",
465
- "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_DISABLED.title": "Children no longer shared with group.",
466
- "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_DISABLED.description": "The object’s children are not longer visible for members of the group {{orgtitle}}.",
462
+ "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_ENABLED.title": "Sub-objects shared with user",
463
+ "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_ENABLED.description": "The sub-objects of the object were shared with user {{orgtitle}} ({{orgname}}).",
464
+ "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_ENABLED.title": "Sub-objects shared with group",
465
+ "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_ENABLED.description": "The sub-objects of the object were shared with members of group {{orgtitle}}.",
466
+ "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_DISABLED.title": "Sub-objects no longer shared with user",
467
+ "eo.object.history.entry.type.SHARING_UPDATED_USER_CHILDREN_DISABLED.description": "The sub-objects of the object will no longer be shared with user {{orgtitle}} ({{orgname}}).",
468
+ "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_DISABLED.title": "Sub-objects no longer shared with group",
469
+ "eo.object.history.entry.type.SHARING_UPDATED_GROUP_CHILDREN_DISABLED.description": "The sub-objects of the object will no longer be shared with members of group {{orgtitle}}.",
467
470
  "eo.object.history.entry.type.START_WITH_PROCESS.description": "The object was added to the process file upon starting the process.",
468
471
  "eo.object.history.entry.type.START_WITH_PROCESS.title": "Process started",
469
472
  "eo.object.history.entry.type.VERSION_RESTORED.description": "Version {{sourceversion}} was restored and set up as a new active version.",
@@ -492,7 +495,7 @@
492
495
  "eo.prepare.details.content.subtitle": "Add file",
493
496
  "eo.prepare.details.indexdata.subtitle": "Add metadata",
494
497
  "eo.prepare.details.delete.content.dialog.title": "Delete file",
495
- "eo.prepare.details.delete.content.dialog.message": "Are you sure you want to delete the '{{contentPath}}' file?",
498
+ "eo.prepare.details.delete.content.dialog.message": "Are you sure you want to delete file '{{contentPath}}'?",
496
499
  "eo.prepare.details.delete.dialog.title": "Delete object",
497
500
  "eo.prepare.details.delete.dialog.message": "Are you sure you want to delete this object?",
498
501
  "eo.prepare.details.delete.dialog.cancel": "Cancel",
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><g/><g><path d="M21,5c-1.11-0.35-2.33-0.5-3.5-0.5c-1.95,0-4.05,0.4-5.5,1.5c-1.45-1.1-3.55-1.5-5.5-1.5S2.45,4.9,1,6v14.65 c0,0.25,0.25,0.5,0.5,0.5c0.1,0,0.15-0.05,0.25-0.05C3.1,20.45,5.05,20,6.5,20c1.95,0,4.05,0.4,5.5,1.5c1.35-0.85,3.8-1.5,5.5-1.5 c1.65,0,3.35,0.3,4.75,1.05c0.1,0.05,0.15,0.05,0.25,0.05c0.25,0,0.5-0.25,0.5-0.5V6C22.4,5.55,21.75,5.25,21,5z M21,18.5 c-1.1-0.35-2.3-0.5-3.5-0.5c-1.7,0-4.15,0.65-5.5,1.5V8c1.35-0.85,3.8-1.5,5.5-1.5c1.2,0,2.4,0.15,3.5,0.5V18.5z"/><g><path d="M17.5,10.5c0.88,0,1.73,0.09,2.5,0.26V9.24C19.21,9.09,18.36,9,17.5,9c-1.7,0-3.24,0.29-4.5,0.83v1.66 C14.13,10.85,15.7,10.5,17.5,10.5z"/><path d="M13,12.49v1.66c1.13-0.64,2.7-0.99,4.5-0.99c0.88,0,1.73,0.09,2.5,0.26V11.9c-0.79-0.15-1.64-0.24-2.5-0.24 C15.8,11.66,14.26,11.96,13,12.49z"/><path d="M17.5,14.33c-1.7,0-3.24,0.29-4.5,0.83v1.66c1.13-0.64,2.7-0.99,4.5-0.99c0.88,0,1.73,0.09,2.5,0.26v-1.52 C19.21,14.41,18.36,14.33,17.5,14.33z"/></g></g></g></svg>
@@ -4451,6 +4451,7 @@
4451
4451
  _this.config = config;
4452
4452
  _this.transparent = false;
4453
4453
  _this.sidebarShow = false;
4454
+ _this.pageVisible = true;
4454
4455
  _this.capabilities = _this.capabilityService.getCapabilities();
4455
4456
  _this.logo = _this.config.getNavigationBarImage();
4456
4457
  // listen for routing events to hide any active overlays
@@ -4469,6 +4470,9 @@
4469
4470
  _this.inboxService
4470
4471
  .inboxState$.pipe(operators.takeUntil(_this.componentDestroyed$))
4471
4472
  .subscribe(function (inboxState) {
4473
+ if (_this.inboxState && _this.inboxState.unreadmessages < inboxState.unreadmessages) {
4474
+ _this.sendNotification();
4475
+ }
4472
4476
  _this.inboxState = inboxState;
4473
4477
  });
4474
4478
  _this.eventService.on(i1.EnaioEvent.SYSTEM_STATUS_INBOX_CHANGED).subscribe(function () { return _this.inboxService.refreshInboxState(); });
@@ -4516,6 +4520,48 @@
4516
4520
  profile: this.translate.instant('eo.bar.button.user.profile.title'),
4517
4521
  };
4518
4522
  };
4523
+ AppBarComponent.prototype.sendNotification = function () {
4524
+ var _this = this;
4525
+ if (Notification.permission === 'granted') {
4526
+ this.initNotification();
4527
+ }
4528
+ else if (Notification.permission !== 'denied') {
4529
+ Notification.requestPermission().then(function () {
4530
+ _this.initNotification();
4531
+ });
4532
+ }
4533
+ };
4534
+ AppBarComponent.prototype.initNotification = function () {
4535
+ var title = this.translate.instant('eo.inbox.notification.title');
4536
+ var body = this.translate.instant('eo.inbox.notification.body');
4537
+ var icon = 'assets/_default/img/yuuvis-agent.png';
4538
+ var notification = new Notification(title, {
4539
+ body: body,
4540
+ icon: icon
4541
+ });
4542
+ this.initNotificationClickListener(notification);
4543
+ };
4544
+ // This is listening for the navigation click event. When the client tab is active, it just navigates to the inbox route.
4545
+ // If not, it opens a new tab and shows the inbox there.
4546
+ AppBarComponent.prototype.initNotificationClickListener = function (notification) {
4547
+ var _this = this;
4548
+ notification.addEventListener('click', function () {
4549
+ if (_this.pageVisible) {
4550
+ _this.router.navigateByUrl('/inbox');
4551
+ }
4552
+ else {
4553
+ var fullPath = window.location.href;
4554
+ var currentRoute = _this.router.url;
4555
+ var pathToNavigate = fullPath.replace(currentRoute, '') + '/inbox';
4556
+ window.open(pathToNavigate, '_blank');
4557
+ }
4558
+ });
4559
+ };
4560
+ // This listener is needed to check, if the client tab is active or not
4561
+ AppBarComponent.prototype.initVisibilityChangeListener = function () {
4562
+ var _this = this;
4563
+ document.addEventListener('visibilitychange', function () { return _this.pageVisible = !_this.pageVisible; });
4564
+ };
4519
4565
  AppBarComponent.prototype.ngOnInit = function () {
4520
4566
  var _this = this;
4521
4567
  this.updateOnSchemaChange();
@@ -4525,6 +4571,7 @@
4525
4571
  .subscribe(function (res) {
4526
4572
  _this.exeActions = !!res.length;
4527
4573
  });
4574
+ this.initVisibilityChangeListener();
4528
4575
  };
4529
4576
  return AppBarComponent;
4530
4577
  }(UnsubscribeOnDestroy));
@@ -4606,16 +4653,30 @@
4606
4653
 
4607
4654
  var SideBarComponent = /** @class */ (function (_super) {
4608
4655
  __extends(SideBarComponent, _super);
4609
- function SideBarComponent(capabilityService, config, cd, sanitizer, elemRef) {
4656
+ function SideBarComponent(capabilityService, config, cd, sanitizer, elemRef, userService) {
4610
4657
  var _this = _super.call(this) || this;
4611
4658
  _this.capabilityService = capabilityService;
4612
4659
  _this.config = config;
4613
4660
  _this.cd = cd;
4614
4661
  _this.sanitizer = sanitizer;
4615
4662
  _this.elemRef = elemRef;
4663
+ _this.userService = userService;
4616
4664
  _this.eoOutsideClick = new i0.EventEmitter();
4665
+ _this.getUserLang();
4666
+ _this.getDocumentation();
4617
4667
  return _this;
4618
4668
  }
4669
+ SideBarComponent.prototype.getDocumentation = function () {
4670
+ var docu = this.config.getRaw('about.docu');
4671
+ var link = docu.link.replace('###userLang###', this.userLang);
4672
+ this.docu = Object.assign(Object.assign({}, docu), { link: link });
4673
+ };
4674
+ SideBarComponent.prototype.getUserLang = function () {
4675
+ var _this = this;
4676
+ this.userService
4677
+ .user$
4678
+ .subscribe(function (data) { return _this.userLang = data.userSettings.clientlocale; });
4679
+ };
4619
4680
  SideBarComponent.prototype.getCapabilities = function () {
4620
4681
  this.capabilities = this.capabilityService.getCapabilities();
4621
4682
  };
@@ -4635,8 +4696,8 @@
4635
4696
  SideBarComponent.decorators = [
4636
4697
  { type: i0.Component, args: [{
4637
4698
  selector: 'eo-side-bar',
4638
- template: "<div class=\"eo-side-bar\">\r\n <eo-icon (click)=\"close()\" (keydown.enter)=\"close()\" tabindex=\"0\" class=\"button white close\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\r\n\r\n <div class=\"head\" [style.background-image]=\"backgroundImage\">\r\n\r\n\r\n </div>\r\n\r\n <div class=\"body\">\r\n\r\n <a routerLink=\"/about\"><eo-icon class=\"button about\" [iconSrc]=\"'assets/_default/svg/ic_about.svg'\"></eo-icon></a>\r\n\r\n <p-tabView styleClass=\"tab-sidebar\">\r\n <p-tabPanel header=\"{{'eo.sidebar.navigation.title'|translate}}\" headerStyleClass=\"tab-nav\">\r\n\r\n <div class=\"navigation\">\r\n <div class=\"nav-item\" *ngIf=\"capabilities.favorites\">\r\n <a routerLink=\"/favorites\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.favorites</a>\r\n </div>\r\n <div class=\"nav-item\" *ngIf=\"capabilities.inbox\">\r\n <a routerLink=\"/inbox\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.inbox</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.intray\">\r\n <a routerLink=\"/prepare\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.prepare</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.bpm\">\r\n <a routerLink=\"/process\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.process</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.notifications\">\r\n <a routerLink=\"/notifications\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.notifications</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.storedqueries\">\r\n <a routerLink=\"/stored-queries\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.storedqueries</a>\r\n </div>\r\n <ng-content select=\".navi\"></ng-content>\r\n </div>\r\n\r\n </p-tabPanel>\r\n </p-tabView>\r\n </div>\r\n\r\n</div>\r\n",
4639
- styles: [":host{--sidebar-header-height:250px}:host .eo-side-bar{-webkit-animation-duration:.2s;animation-duration:.2s;background-color:var(--color-primary);bottom:0;box-shadow:0 0 20px 0 rgba(var(--color-black-rgb),.5);position:absolute;top:0;width:300px;z-index:20}[dir=ltr] :host .eo-side-bar{left:0;right:inherit}[dir=rtl] :host .eo-side-bar{left:inherit;right:0}[dir=ltr] :host .eo-side-bar{-webkit-animation-name:sidebarAppearLeft;animation-name:sidebarAppearLeft}[dir=rtl] :host .eo-side-bar{-webkit-animation-name:sidebarAppearRight;animation-name:sidebarAppearRight}:host .eo-side-bar .close{position:absolute;top:var(--app-pane-padding);z-index:22}[dir=ltr] :host .eo-side-bar .close{left:var(--app-pane-padding)}[dir=rtl] :host .eo-side-bar .close{right:var(--app-pane-padding)}:host .eo-side-bar .head{background-position:50%;background-size:cover;height:var(--sidebar-header-height);left:0;position:absolute;right:0;top:0;z-index:21}:host .eo-side-bar .body ::ng-deep{bottom:0;left:0;position:absolute;right:0;top:calc(var(--sidebar-header-height) - 30px);z-index:22}:host .eo-side-bar .body ::ng-deep p-tabView{display:flex;flex:1;flex-direction:row;height:100%;min-height:0;min-width:0}:host .eo-side-bar .body ::ng-deep p-tabView .tab-sidebar{flex:1}:host .eo-side-bar .body ::ng-deep p-tabView .ui-tabview-panels{height:100%;overflow:auto}:host .eo-side-bar .body ::ng-deep .navigation{padding-top:var(--app-pane-padding)}:host .eo-side-bar .body ::ng-deep a:focus eo-icon,:host .eo-side-bar .body ::ng-deep a:hover eo-icon{background:rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep eo-icon.about{color:var(--color-white);padding:3px;position:absolute;right:8px;top:-6px}:host .eo-side-bar .body ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item a{-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);cursor:pointer;display:block;padding:var(--app-pane-padding);text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-side-bar .body ::ng-deep .nav-item a{border-left:4px solid transparent}[dir=rtl] :host .eo-side-bar .body ::ng-deep .nav-item a{border-right:4px solid transparent}:host .eo-side-bar .body ::ng-deep .nav-item a.active-link{background:rgba(var(--color-white-rgb),.06);border-color:var(--color-accent);cursor:default}:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}@-webkit-keyframes sidebarAppearLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes sidebarAppearLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@-webkit-keyframes sidebarAppearRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes sidebarAppearRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}"]
4699
+ template: "<div class=\"eo-side-bar\">\r\n <eo-icon (click)=\"close()\" (keydown.enter)=\"close()\" tabindex=\"0\" class=\"button white close\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\r\n\r\n <div class=\"head\" [style.background-image]=\"backgroundImage\">\r\n\r\n\r\n </div>\r\n\r\n <div class=\"body\">\r\n <a href=\"{{docu.link}}\" target=\"_blank\">\r\n <eo-icon class=\"button docu\" [iconTitle]=\"docu.label | translate\" [iconSrc]=\"'assets/_default/svg/ic_book.svg'\"></eo-icon>\r\n </a>\r\n <a routerLink=\"/about\"><eo-icon class=\"button about\" [iconTitle]=\"'eo.sidebar.help.about.tooltip' | translate\" [iconSrc]=\"'assets/_default/svg/ic_about.svg'\"></eo-icon></a>\r\n\r\n <p-tabView styleClass=\"tab-sidebar\">\r\n <p-tabPanel header=\"{{'eo.sidebar.navigation.title'|translate}}\" headerStyleClass=\"tab-nav\">\r\n\r\n <div class=\"navigation\">\r\n <div class=\"nav-item\" *ngIf=\"capabilities.favorites\">\r\n <a routerLink=\"/favorites\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.favorites</a>\r\n </div>\r\n <div class=\"nav-item\" *ngIf=\"capabilities.inbox\">\r\n <a routerLink=\"/inbox\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.inbox</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.intray\">\r\n <a routerLink=\"/prepare\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.prepare</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.bpm\">\r\n <a routerLink=\"/process\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.process</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.notifications\">\r\n <a routerLink=\"/notifications\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.notifications</a>\r\n </div>\r\n\r\n <div class=\"nav-item\" *ngIf=\"capabilities.storedqueries\">\r\n <a routerLink=\"/stored-queries\" routerLinkActive=\"active-link\" translate>eo.sidebar.navigation.storedqueries</a>\r\n </div>\r\n <ng-content select=\".navi\"></ng-content>\r\n </div>\r\n\r\n </p-tabPanel>\r\n </p-tabView>\r\n </div>\r\n\r\n</div>\r\n",
4700
+ styles: [":host{--sidebar-header-height:250px}:host .eo-side-bar{-webkit-animation-duration:.2s;animation-duration:.2s;background-color:var(--color-primary);bottom:0;box-shadow:0 0 20px 0 rgba(var(--color-black-rgb),.5);position:absolute;top:0;width:300px;z-index:20}[dir=ltr] :host .eo-side-bar{left:0;right:inherit}[dir=rtl] :host .eo-side-bar{left:inherit;right:0}[dir=ltr] :host .eo-side-bar{-webkit-animation-name:sidebarAppearLeft;animation-name:sidebarAppearLeft}[dir=rtl] :host .eo-side-bar{-webkit-animation-name:sidebarAppearRight;animation-name:sidebarAppearRight}:host .eo-side-bar .close{position:absolute;top:var(--app-pane-padding);z-index:22}[dir=ltr] :host .eo-side-bar .close{left:var(--app-pane-padding)}[dir=rtl] :host .eo-side-bar .close{right:var(--app-pane-padding)}:host .eo-side-bar .head{background-position:50%;background-size:cover;height:var(--sidebar-header-height);left:0;position:absolute;right:0;top:0;z-index:21}:host .eo-side-bar .body ::ng-deep{bottom:0;left:0;position:absolute;right:0;top:calc(var(--sidebar-header-height) - 30px);z-index:22}:host .eo-side-bar .body ::ng-deep p-tabView{display:flex;flex:1;flex-direction:row;height:100%;min-height:0;min-width:0}:host .eo-side-bar .body ::ng-deep p-tabView .tab-sidebar{flex:1}:host .eo-side-bar .body ::ng-deep p-tabView .ui-tabview-panels{height:100%;overflow:auto}:host .eo-side-bar .body ::ng-deep .navigation{padding-top:var(--app-pane-padding)}:host .eo-side-bar .body ::ng-deep a:focus eo-icon,:host .eo-side-bar .body ::ng-deep a:hover eo-icon{background:rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep eo-icon.about{color:var(--color-white);padding:3px;position:absolute;right:8px;top:-6px}:host .eo-side-bar .body ::ng-deep eo-icon.docu{color:var(--color-white);padding:3px;position:absolute;right:43px;top:-6px}:host .eo-side-bar .body ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-side-bar .body ::ng-deep .nav-item a{-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);cursor:pointer;display:block;padding:var(--app-pane-padding);text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-side-bar .body ::ng-deep .nav-item a{border-left:4px solid transparent}[dir=rtl] :host .eo-side-bar .body ::ng-deep .nav-item a{border-right:4px solid transparent}:host .eo-side-bar .body ::ng-deep .nav-item a.active-link{background:rgba(var(--color-white-rgb),.06);border-color:var(--color-accent);cursor:default}:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-side-bar .body ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}@-webkit-keyframes sidebarAppearLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes sidebarAppearLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@-webkit-keyframes sidebarAppearRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes sidebarAppearRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}"]
4640
4701
  },] }
4641
4702
  ];
4642
4703
  SideBarComponent.ctorParameters = function () { return [
@@ -4644,7 +4705,8 @@
4644
4705
  { type: i1.Config },
4645
4706
  { type: i0.ChangeDetectorRef },
4646
4707
  { type: i1$1.DomSanitizer },
4647
- { type: i0.ElementRef }
4708
+ { type: i0.ElementRef },
4709
+ { type: i1.UserService }
4648
4710
  ]; };
4649
4711
  SideBarComponent.propDecorators = {
4650
4712
  eoOutsideClick: [{ type: i0.Output }]
@@ -8568,7 +8630,7 @@
8568
8630
  OrganizationComponent.decorators = [
8569
8631
  { type: i0.Component, args: [{
8570
8632
  selector: 'eo-organization',
8571
- template: "<div class=\"eo-organization\" [ngClass]=\"{acInputHidden: !multiselect && innerValue.length}\">\r\n\r\n <p-autoComplete [(ngModel)]=\"innerValue\" [minLength]=\"1\" #autocomplete\r\n (onSelect)=\"onSelect($event)\" (onUnselect)=\"onUnselect($event)\"\r\n (onBlur)=\"onAutoCompleteBlur()\"\r\n [disabled]=\"readonly\"\r\n [placeholder]=\"placeholder\"\r\n [suggestions]=\"autocompleteRes\" field=\"title\"\r\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\">\r\n\r\n <!-- template for the suggest list -->\r\n <ng-template let-item pTemplate=\"item\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </ng-template>\r\n\r\n <!-- template for the selected items when multiple -->\r\n <ng-template let-item pTemplate=\"selectedItem\">\r\n <div class=\"token\" [ngClass]=\"{deleted: item.state === 'GONE'}\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length && item.active) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"(!item.firstname?.length && !item.lastname?.length && !item.active && !item.type)\" class=\"ui-autocomplete-token-label\">{{item.id}}</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.active && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </div>\r\n </ng-template>\r\n\r\n </p-autoComplete>\r\n</div>\r\n",
8633
+ template: "<div class=\"eo-organization\" [ngClass]=\"{acInputHidden: !multiselect && innerValue.length}\">\r\n\r\n <p-autoComplete [(ngModel)]=\"innerValue\" [minLength]=\"1\" #autocomplete\r\n (onSelect)=\"onSelect($event)\" (onUnselect)=\"onUnselect($event)\"\r\n (onBlur)=\"onAutoCompleteBlur()\"\r\n [disabled]=\"readonly\"\r\n [placeholder]=\"placeholder\"\r\n [suggestions]=\"autocompleteRes\" field=\"title\"\r\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\">\r\n\r\n <!-- template for the suggest list -->\r\n <ng-template let-item pTemplate=\"item\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </ng-template>\r\n\r\n <!-- template for the selected items when multiple -->\r\n <ng-template let-item pTemplate=\"selectedItem\">\r\n <div class=\"token\" [ngClass]=\"{deleted: item.state === 'GONE'}\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length && item.active) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"(!item.firstname?.length && !item.lastname?.length && !item.active && !item.type)\" class=\"ui-autocomplete-token-label\">{{'eo.form.property.organization.error.usernotfound'|translate}}</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.active && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </div>\r\n </ng-template>\r\n\r\n </p-autoComplete>\r\n</div>\r\n",
8572
8634
  providers: [
8573
8635
  {
8574
8636
  provide: forms.NG_VALUE_ACCESSOR,
@@ -11208,6 +11270,9 @@
11208
11270
  this._elements.forEach(function (el) {
11209
11271
  // this.innerValue[rowResult.index] = {...this.innerValue[rowResult.index], ...rowResult.rowData};
11210
11272
  _this.innerValue[rowResult.index][el.name] = rowResult.rowData[el.name];
11273
+ if (_this.innerValue[rowResult.index][el.name + '_meta']) {
11274
+ _this.innerValue[rowResult.index][el.name + '_meta'] = rowResult.rowData[el.name + '_meta'];
11275
+ }
11211
11276
  });
11212
11277
  }
11213
11278
  this.updateTableValue();
@@ -12798,7 +12863,7 @@
12798
12863
  OrganizationFilterComponent.decorators = [
12799
12864
  { type: i0.Component, args: [{
12800
12865
  selector: 'eo-organization-filter',
12801
- template: "<div class=\"eo-organization\" [ngClass]=\"{acInputHidden: !multiselect && innerValue.length}\">\r\n\r\n <p-autoComplete [(ngModel)]=\"innerValue\" [minLength]=\"1\" #autocomplete\r\n (onSelect)=\"onSelect($event)\" (onUnselect)=\"onUnselect($event)\"\r\n (onBlur)=\"onAutoCompleteBlur()\"\r\n [disabled]=\"readonly\"\r\n [placeholder]=\"placeholder\"\r\n [suggestions]=\"autocompleteRes\" field=\"title\"\r\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\">\r\n\r\n <!-- template for the suggest list -->\r\n <ng-template let-item pTemplate=\"item\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </ng-template>\r\n\r\n <!-- template for the selected items when multiple -->\r\n <ng-template let-item pTemplate=\"selectedItem\">\r\n <div class=\"token\" [ngClass]=\"{deleted: item.state === 'GONE'}\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length && item.active) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"(!item.firstname?.length && !item.lastname?.length && !item.active && !item.type)\" class=\"ui-autocomplete-token-label\">{{item.id}}</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.active && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </div>\r\n </ng-template>\r\n\r\n </p-autoComplete>\r\n</div>\r\n",
12866
+ template: "<div class=\"eo-organization\" [ngClass]=\"{acInputHidden: !multiselect && innerValue.length}\">\r\n\r\n <p-autoComplete [(ngModel)]=\"innerValue\" [minLength]=\"1\" #autocomplete\r\n (onSelect)=\"onSelect($event)\" (onUnselect)=\"onUnselect($event)\"\r\n (onBlur)=\"onAutoCompleteBlur()\"\r\n [disabled]=\"readonly\"\r\n [placeholder]=\"placeholder\"\r\n [suggestions]=\"autocompleteRes\" field=\"title\"\r\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\">\r\n\r\n <!-- template for the suggest list -->\r\n <ng-template let-item pTemplate=\"item\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </ng-template>\r\n\r\n <!-- template for the selected items when multiple -->\r\n <ng-template let-item pTemplate=\"selectedItem\">\r\n <div class=\"token\" [ngClass]=\"{deleted: item.state === 'GONE'}\">\r\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\r\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length && item.active) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\r\n <span *ngIf=\"(!item.firstname?.length && !item.lastname?.length && !item.active && !item.type)\" class=\"ui-autocomplete-token-label\">{{'eo.form.property.organization.error.usernotfound'|translate}}</span>\r\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.active && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\r\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\r\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\r\n </div>\r\n </ng-template>\r\n\r\n </p-autoComplete>\r\n</div>\r\n",
12802
12867
  styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;padding:2px}:host ::ng-deep .ui-autocomplete-token .deleted{background:var(--color-error)!important;border:1px solid var(--color-error);border-color:var(--color-error)!important;color:var(--color-white)!important}:host ::ng-deep .ui-autocomplete-token .deleted:after{content:\"!\"}:host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px;opacity:1}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token{margin:0;padding:0;width:0!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token input{width:0!important}"]
12803
12868
  },] }
12804
12869
  ];
@@ -21524,7 +21589,7 @@
21524
21589
  * @returns number of files
21525
21590
  */
21526
21591
  UploadOverlayComponent.prototype.dragContainsFiles = function (event) {
21527
- return Array.from(event.dataTransfer.items || []).filter(function (i) { return i.kind === 'file' && i.type; }).length;
21592
+ return Array.from(event.dataTransfer.items || []).filter(function (i) { return i.kind === 'file'; }).length;
21528
21593
  };
21529
21594
  // ngFor tracking function for upload targets
21530
21595
  UploadOverlayComponent.prototype.targetTrackByFn = function (index, item) {
@@ -22545,7 +22610,7 @@
22545
22610
  ProcessHistoryComponent.decorators = [
22546
22611
  { type: i0.Component, args: [{
22547
22612
  selector: 'eo-process-history',
22548
- template: "<div class=\"process-history\">\r\n\r\n <div class=\"filter\">\r\n <div class=\"input\" [ngClass]=\"{inactive: !history?.length}\">\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_filter.svg'\"></eo-icon>\r\n <input type=\"text\" [ngModelOptions]=\"{standalone: true}\" [(ngModel)]=\"filterterm\">\r\n\r\n </div>\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"filterterm = null\" *ngIf=\"filterterm\"></eo-icon>\r\n </div>\r\n\r\n\r\n <ng-template #empty>\r\n <eo-error-message [emptyState]=\"{icon: 'ic_no-file.svg', text: 'eo.timeline.empty', className: 'history empty'}\"></eo-error-message>\r\n </ng-template>\r\n\r\n\r\n <div class=\"history eo-timeline\" [ngClass]=\"{single: history?.length === 1}\" *ngIf=\"history?.length; else empty\">\r\n\r\n <div class=\"timeline-entry\"\r\n *ngFor=\"let entry of history | historyFilter:filterterm; trackBy: trackByIndex\"\r\n [ngClass]=\"{user: entry.editor, error: entry.type === 'error' || entry?.errorType}\">\r\n\r\n <div class=\"when\">\r\n <div class=\"date\">{{entry.time | localeDate: 'eoShortDate'}}</div>\r\n <div class=\"time\">{{entry.time | localeDate: 'eoShortTime'}}</div>\r\n </div>\r\n <div class=\"marker\">\r\n <img *ngIf=\"entry.editor\"\r\n title=\"{{entry.editor.lastname}}, {{entry.editor.firstname}} ({{entry.editor.name}})\"\r\n [src]=\"entry.data?.image\">\r\n </div>\r\n <div class=\"what\">\r\n <div class=\"title\">{{'eo.process.details.history.entry.type.' + entry.type + '.title'|translate}}</div>\r\n\r\n <div class=\"description\" *ngIf=\"entry.data?.periodFireTime && entry.type === 'deadline_start'\">\r\n <div class=\"deadline-fire\">\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_timer.svg'\"></eo-icon>\r\n <span>{{entry.data.periodFireTime | localeDate}}</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"meta\" *ngIf=\"entry.performer?.length\">\r\n <span *ngFor=\"let p of entry.performer; trackBy: trackByIndex\">\r\n {{p.label}}\r\n </span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n",
22613
+ template: "<div class=\"process-history\">\r\n\r\n <div class=\"filter\">\r\n <div class=\"input\" [ngClass]=\"{inactive: !history?.length}\">\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_filter.svg'\"></eo-icon>\r\n <input type=\"text\" [ngModelOptions]=\"{standalone: true}\" [(ngModel)]=\"filterterm\">\r\n\r\n </div>\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"filterterm = null\" *ngIf=\"filterterm\"></eo-icon>\r\n </div>\r\n\r\n\r\n <ng-template #empty>\r\n <eo-error-message [emptyState]=\"{icon: 'ic_no-file.svg', text: 'eo.timeline.empty', className: 'history empty'}\"></eo-error-message>\r\n </ng-template>\r\n\r\n\r\n <div class=\"history eo-timeline\" [ngClass]=\"{single: history?.length === 1}\" *ngIf=\"history?.length; else empty\">\r\n\r\n <div class=\"timeline-entry\"\r\n *ngFor=\"let entry of history | historyFilter:filterterm; trackBy: trackByIndex\"\r\n [ngClass]=\"{user: entry.editor, error: entry.type === 'error' || entry?.errorType}\">\r\n\r\n <div class=\"when\">\r\n <div class=\"date\">{{entry.time | localeDate: 'eoShortDate'}}</div>\r\n <div class=\"time\">{{entry.time | localeDate: 'eoShortTime'}}</div>\r\n </div>\r\n <div class=\"marker\">\r\n <img *ngIf=\"entry.editor\"\r\n title=\"{{entry.editor.lastname}}, {{entry.editor.firstname}} ({{entry.editor.name}})\"\r\n [src]=\"entry.data?.image\">\r\n </div>\r\n <div class=\"what\">\r\n <div class=\"title\">{{'eo.process.details.history.entry.type.' + entry.type + '.title'|translate}}</div>\r\n\r\n <div class=\"description\" *ngIf=\"entry.data?.periodFireTime && entry.type === 'DEADLINE_START'; else description\">\r\n <div class=\"deadline-fire\">\r\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_timer.svg'\"></eo-icon>\r\n <span>{{entry.data.periodFireTime | localeDate}}</span>\r\n </div>\r\n </div>\r\n <ng-template #description>\r\n <div class=\"description\">\r\n {{entry.description}}\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"meta\" *ngIf=\"entry.performer?.length\">\r\n <span *ngFor=\"let p of entry.performer; trackBy: trackByIndex\">\r\n {{p.label}}\r\n </span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n",
22549
22614
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
22550
22615
  styles: [":host .process-history{display:flex;flex:1;flex-direction:column;height:100%;min-height:0;min-width:0}:host .history{flex:1 1 auto;overflow-y:auto;padding:var(--app-pane-padding)}:host .filter{background-color:var(--panel-background-lightgrey);border-bottom:1px solid var(--main-background);display:flex;flex:1;flex:0 0 auto;flex-direction:row;justify-content:space-between;min-height:0;min-width:0}:host .filter .input{background-color:var(--color-white);border:1px solid var(--main-background);display:flex;flex-flow:row nowrap;margin:calc(var(--app-pane-padding)/2);padding:2px 2px 2px 0}:host .filter .input.inactive{opacity:.5;pointer-events:none}:host .filter .input input{background-color:transparent;border:0}:host .filter .input eo-icon{margin:0 calc(var(--app-pane-padding)/4)}:host .filter .input eo-icon,:host .filter>eo-icon{align-self:center;color:var(--text-color-hint);height:16px;width:16px}:host .filter>eo-icon{box-sizing:content-box;cursor:pointer;flex:0 0 auto;padding:calc(var(--app-pane-padding)/2)}:host .timeline-entry.user img{border:2px solid var(--text-color-hint);border-radius:50%;height:30px;width:30px;z-index:1}:host .timeline-entry.user .marker:before{display:none}:host .timeline-entry .what{padding-bottom:0;width:66%}:host .timeline-entry .what .deadline-fire{align-items:center;display:flex;padding-bottom:4px}:host .timeline-entry .what .description{color:var(--text-color-body)}.deadline-fire :host .timeline-entry .what .description{align-items:center;display:flex;flex-flow:row nowrap}.deadline-fire :host .timeline-entry .what .description eo-icon{color:var(--text-color-hint);height:18px;width:18px}.deadline-fire :host .timeline-entry .what .description span{padding:0 calc(var(--app-pane-padding)/4)}:host .timeline-entry .what .meta{display:flex;flex-flow:row wrap;margin-bottom:calc(var(--app-pane-padding)/4)}:host .timeline-entry .what .meta span{background-color:rgba(var(--color-black-rgb),.08);border-radius:2px;display:block;font-size:var(--font-caption);margin:0 calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/4) 0;padding:2px 4px}:host .timeline-entry.error .what .title{color:var(--color-error)}:host .timeline-entry.error .marker:before{align-items:center;border-color:var(--color-error);border-width:4px;color:var(--color-error);content:\"!\";display:flex;flex-flow:column;font-weight:var(--font-weight-bold);justify-content:center}"]
22551
22616
  },] }
@@ -24147,10 +24212,10 @@
24147
24212
  this.http = http;
24148
24213
  this.userService = userService;
24149
24214
  this.config = config;
24150
- 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": "7.16.3", "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": "6.0.0-beta.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" }];
24215
+ 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": "8.0.0-rc.3", "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": "6.0.0-beta.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" }];
24151
24216
  this.ctrl = {
24152
24217
  productName: 'yuuvis® RAD client',
24153
- clientVersion: '7.16.3'
24218
+ clientVersion: '8.0.0-rc.3'
24154
24219
  };
24155
24220
  this.licenses = {
24156
24221
  'MIT': {