@eo-sdk/client 9.1.0-rc.1 → 9.2.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/app/eo-client/inbox-state/inbox-state/inbox.types.enum.d.ts +2 -2
  2. package/app/eo-framework/actions/action-menu/action-menu.component.d.ts +4 -2
  3. package/app/eo-framework/actions/action.module.d.ts +2 -1
  4. package/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.d.ts +2 -1
  5. package/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.d.ts +2 -1
  6. package/app/eo-framework/actions/actions/delete-action/delete/delete.component.d.ts +4 -2
  7. package/app/eo-framework/actions/actions/finalize/finalize-action.d.ts +5 -5
  8. package/app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component.d.ts +14 -0
  9. package/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.d.ts +5 -2
  10. package/app/eo-framework/form-elements/organization/organization.component.d.ts +3 -2
  11. package/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.d.ts +0 -1
  12. package/app/eo-framework/grid/extensions/filter/text/text-filter.component.d.ts +8 -4
  13. package/app/eo-framework/util/directive/prevent-double-click.directive.d.ts +1 -0
  14. package/assets/_default/i18n/de.json +11 -6
  15. package/assets/_default/i18n/en.json +11 -5
  16. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +547 -515
  17. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
  18. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +2 -3
  19. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
  20. package/bundles/eo-sdk-client.umd.js +326 -214
  21. package/bundles/eo-sdk-client.umd.js.map +1 -1
  22. package/bundles/eo-sdk-client.umd.min.js +1 -1
  23. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  24. package/eo-sdk-client.d.ts +60 -60
  25. package/eo-sdk-client.metadata.json +1 -1
  26. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  27. package/esm2015/app/eo-client/dashboard/dashboard.component.js +2 -4
  28. package/esm2015/app/eo-client/inbox-state/inbox-state/inbox-state.component.js +9 -7
  29. package/esm2015/app/eo-client/inbox-state/inbox-state/inbox.types.enum.js +3 -3
  30. package/esm2015/app/eo-client/object-state/object-state/object-state.component.js +2 -2
  31. package/esm2015/app/eo-framework/actions/action-menu/action-menu.component.js +14 -5
  32. package/esm2015/app/eo-framework/actions/action.module.js +4 -1
  33. package/esm2015/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.js +7 -3
  34. package/esm2015/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.js +8 -4
  35. package/esm2015/app/eo-framework/actions/actions/delete-action/delete/delete.component.js +11 -4
  36. package/esm2015/app/eo-framework/actions/actions/finalize/finalize-action.js +12 -11
  37. package/esm2015/app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component.js +39 -0
  38. package/esm2015/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.js +43 -16
  39. package/esm2015/app/eo-framework/app-shell/app-shell.module.js +1 -3
  40. package/esm2015/app/eo-framework/form-elements/organization/organization.component.js +5 -2
  41. package/esm2015/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.js +2 -4
  42. package/esm2015/app/eo-framework/grid/extensions/filter/text/text-filter.component.js +30 -17
  43. package/esm2015/app/eo-framework/grid/extensions/quick-filter/quick-filter.component.js +2 -2
  44. package/esm2015/app/eo-framework/grid/filters/codesystem-filter.component.js +2 -2
  45. package/esm2015/app/eo-framework/grid/filters/dynamic-list-filter.component.js +1 -2
  46. package/esm2015/app/eo-framework/grid/filters/list-filter.component.js +2 -3
  47. package/esm2015/app/eo-framework/grid/filters/organization-filter.component.js +3 -3
  48. package/esm2015/app/eo-framework/result-list/result-list.module.js +2 -2
  49. package/esm2015/app/eo-framework/ui/ui.module.js +6 -3
  50. package/esm2015/app/eo-framework/util/directive/prevent-double-click.directive.js +8 -2
  51. package/esm2015/eo-sdk-client.js +61 -61
  52. package/esm2015/projects/eo-sdk/core/lib/model/inbox-item.model.js +2 -2
  53. package/esm2015/projects/eo-sdk/core/lib/service/backend/backend.service.js +35 -9
  54. package/esm2015/projects/eo-sdk/core/lib/service/dms/dms.service.js +10 -11
  55. package/esm2015/projects/eo-sdk/core/lib/service/user/user.service.js +11 -1
  56. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +54 -19
  57. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
  58. package/fesm2015/eo-sdk-client.js +257 -150
  59. package/fesm2015/eo-sdk-client.js.map +1 -1
  60. package/package.json +2 -2
  61. package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.metadata.json +1 -1
  62. package/projects/eo-sdk/core/lib/model/inbox-item.model.d.ts +2 -2
  63. package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts +1 -0
  64. package/projects/eo-sdk/core/lib/service/dms/dms.service.d.ts +3 -2
  65. package/projects/eo-sdk/core/lib/service/user/user.service.d.ts +5 -0
  66. package/projects/eo-sdk/core/package.json +1 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('rxjs'), require('rxjs/operators'), require('@eo-sdk/core'), require('@angular/router'), require('@ag-grid-community/core'), require('@angular/platform-browser'), require('@angular/forms'), require('primeng/accordion'), require('@angular/platform-browser/animations'), require('primeng/primeng'), require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@angular/cdk/a11y'), require('@angular/animations'), require('moment'), require('moment/min/locales'), require('lodash'), require('@ag-grid-community/angular'), require('@ag-grid-community/client-side-row-model'), require('@ag-grid-community/csv-export'), require('@angular/cdk/drag-drop')) :
3
- typeof define === 'function' && define.amd ? define('@eo-sdk/client', ['exports', '@angular/core', '@angular/common', '@angular/common/http', 'rxjs', 'rxjs/operators', '@eo-sdk/core', '@angular/router', '@ag-grid-community/core', '@angular/platform-browser', '@angular/forms', 'primeng/accordion', '@angular/platform-browser/animations', 'primeng/primeng', '@angular/cdk/overlay', '@angular/cdk/portal', '@angular/cdk/a11y', '@angular/animations', 'moment', 'moment/min/locales', 'lodash', '@ag-grid-community/angular', '@ag-grid-community/client-side-row-model', '@ag-grid-community/csv-export', '@angular/cdk/drag-drop'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['eo-sdk'] = global['eo-sdk'] || {}, global['eo-sdk'].client = {}), global.ng.core, global.ng.common, global.ng.common.http, global.rxjs, global.rxjs.operators, global.i1, global.ng.router, global.core, global.ng.platformBrowser, global.ng.forms, global.accordion, global.ng.platformBrowser.animations, global.primeng, global.ng.cdk.overlay, global.ng.cdk.portal, global.ng.cdk.a11y, global.ng.animations, global.moment_, null, global._, global.angular, global.clientSideRowModel, global.csvExport, global.ng.cdk.dragDrop));
5
- }(this, (function (exports, i0, common, http, rxjs, operators, i1, i2, core, i1$1, forms, accordion, animations, primeng, overlay, portal, a11y, animations$1, moment_, locales, _, angular, clientSideRowModel, csvExport, dragDrop) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('rxjs'), require('rxjs/operators'), require('@eo-sdk/core'), require('@angular/router'), require('@ag-grid-community/core'), require('@angular/platform-browser'), require('@angular/forms'), require('primeng/accordion'), require('@angular/platform-browser/animations'), require('primeng/primeng'), require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@angular/cdk/a11y'), require('@angular/animations'), require('moment'), require('moment/min/locales'), require('lodash'), require('@ag-grid-community/angular'), require('@ag-grid-community/client-side-row-model'), require('@ag-grid-community/csv-export'), require('@angular/cdk/drag-drop'), require('@ngx-translate/core')) :
3
+ typeof define === 'function' && define.amd ? define('@eo-sdk/client', ['exports', '@angular/core', '@angular/common', '@angular/common/http', 'rxjs', 'rxjs/operators', '@eo-sdk/core', '@angular/router', '@ag-grid-community/core', '@angular/platform-browser', '@angular/forms', 'primeng/accordion', '@angular/platform-browser/animations', 'primeng/primeng', '@angular/cdk/overlay', '@angular/cdk/portal', '@angular/cdk/a11y', '@angular/animations', 'moment', 'moment/min/locales', 'lodash', '@ag-grid-community/angular', '@ag-grid-community/client-side-row-model', '@ag-grid-community/csv-export', '@angular/cdk/drag-drop', '@ngx-translate/core'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['eo-sdk'] = global['eo-sdk'] || {}, global['eo-sdk'].client = {}), global.ng.core, global.ng.common, global.ng.common.http, global.rxjs, global.rxjs.operators, global.i1, global.ng.router, global.core, global.ng.platformBrowser, global.ng.forms, global.accordion, global.ng.platformBrowser.animations, global.primeng, global.ng.cdk.overlay, global.ng.cdk.portal, global.ng.cdk.a11y, global.ng.animations, global.moment_, null, global._, global.angular, global.clientSideRowModel, global.csvExport, global.ng.cdk.dragDrop, global.i1$2));
5
+ }(this, (function (exports, i0, common, http, rxjs, operators, i1, i2, core, i1$1, forms, accordion, animations, primeng, overlay, portal, a11y, animations$1, moment_, locales, _, angular, clientSideRowModel, csvExport, dragDrop, i1$2) { 'use strict';
6
6
 
7
7
  function _interopNamespace(e) {
8
8
  if (e && e.__esModule) return e;
@@ -4461,6 +4461,74 @@
4461
4461
  select: [{ type: i0.Output }]
4462
4462
  };
4463
4463
 
4464
+ /**
4465
+ * This directive traps the focus inside the element it is applied to.
4466
+ * When applied, a users can't "tab out" of the element.
4467
+ * You need at least two focusable children in the element for it to work properly.
4468
+ * See the querySelector in the trapFocus method to know which elements count as focusable.
4469
+ * Additionally you can add the attribute "focusable" to an element if you are unsure.
4470
+ */
4471
+ var TrapFocusDirective = /** @class */ (function () {
4472
+ function TrapFocusDirective(el) {
4473
+ this.el = el;
4474
+ this.focusableSelectors = 'a[href], button, textarea, input[type="text"],' +
4475
+ 'input[type="radio"], input[type="checkbox"], select, [focusable]';
4476
+ }
4477
+ TrapFocusDirective.prototype.ngAfterViewInit = function () {
4478
+ this.trapFocus(this.el.nativeElement);
4479
+ };
4480
+ TrapFocusDirective.prototype.trapFocus = function (element) {
4481
+ var focusableElements = element.querySelectorAll(this.focusableSelectors);
4482
+ focusableElements = Array.from(focusableElements)
4483
+ .filter(function (el) { return !el.disabled && !el.classList.contains('disabled'); });
4484
+ var firstFocusableElement = focusableElements[0];
4485
+ var lastFocusableElement = focusableElements[focusableElements.length - 1];
4486
+ element.addEventListener('keydown', (function (event) {
4487
+ var isTabPressed = event.keyCode === 9; // tab key code
4488
+ if (!isTabPressed)
4489
+ return;
4490
+ if (event.shiftKey) /* shift + tab */ {
4491
+ if (document.activeElement === firstFocusableElement) {
4492
+ lastFocusableElement.focus();
4493
+ event.preventDefault();
4494
+ }
4495
+ }
4496
+ else /* tab */ {
4497
+ if (document.activeElement === lastFocusableElement) {
4498
+ firstFocusableElement.focus();
4499
+ event.preventDefault();
4500
+ }
4501
+ }
4502
+ }));
4503
+ };
4504
+ TrapFocusDirective.prototype.isArrowUpOrDownPressed = function (event) {
4505
+ var key = event.key;
4506
+ if (key === 'ArrowUp' || key === 'ArrowDown') {
4507
+ event.preventDefault();
4508
+ var focusableElements = this.el.nativeElement.parentElement.querySelectorAll(this.focusableSelectors);
4509
+ var currentIndex = Array.from(focusableElements).indexOf(document.activeElement);
4510
+ if (key === 'ArrowDown' && currentIndex < focusableElements.length - 1) {
4511
+ focusableElements[currentIndex + 1].focus();
4512
+ }
4513
+ else if (key === 'ArrowUp' && currentIndex > 0) {
4514
+ focusableElements[currentIndex - 1].focus();
4515
+ }
4516
+ }
4517
+ };
4518
+ return TrapFocusDirective;
4519
+ }());
4520
+ TrapFocusDirective.decorators = [
4521
+ { type: i0.Directive, args: [{
4522
+ selector: '[eoTrapFocus]'
4523
+ },] }
4524
+ ];
4525
+ TrapFocusDirective.ctorParameters = function () { return [
4526
+ { type: i0.ElementRef }
4527
+ ]; };
4528
+ TrapFocusDirective.propDecorators = {
4529
+ isArrowUpOrDownPressed: [{ type: i0.HostListener, args: ['keydown', ['$event'],] }]
4530
+ };
4531
+
4464
4532
  /**
4465
4533
  * Shared module for all ui components that are used across the whole app
4466
4534
  * and in other components.
@@ -4502,7 +4570,8 @@
4502
4570
  OverlayComponent,
4503
4571
  ErrorMessageComponent,
4504
4572
  EoDialogComponent,
4505
- QueryScopeSelectComponent
4573
+ QueryScopeSelectComponent,
4574
+ TrapFocusDirective,
4506
4575
  ],
4507
4576
  declarations: [
4508
4577
  EoIconComponent,
@@ -4517,7 +4586,8 @@
4517
4586
  ErrorMessageComponent,
4518
4587
  EoDialogComponent,
4519
4588
  IndexdataSummaryEntryComponent,
4520
- QueryScopeSelectComponent
4589
+ QueryScopeSelectComponent,
4590
+ TrapFocusDirective
4521
4591
  ]
4522
4592
  },] }
4523
4593
  ];
@@ -8779,6 +8849,9 @@
8779
8849
  enumerable: false,
8780
8850
  configurable: true
8781
8851
  });
8852
+ OrganizationComponent.prototype.ngAfterViewInit = function () {
8853
+ this.autoCompleteInput.focusInput();
8854
+ };
8782
8855
  OrganizationComponent.prototype.validate = function () {
8783
8856
  return null;
8784
8857
  };
@@ -8906,7 +8979,7 @@
8906
8979
  multi: true
8907
8980
  }
8908
8981
  ],
8909
- 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;overflow:hidden;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}: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}"]
8982
+ 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;overflow:hidden;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}: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}:host ::ng-deep .ui-autocomplete-panel{left:0!important}"]
8910
8983
  },] }
8911
8984
  ];
8912
8985
  OrganizationComponent.ctorParameters = function () { return [
@@ -13137,7 +13210,7 @@
13137
13210
  var _this = _super.call(this, backend, translate, systemService) || this;
13138
13211
  _this.params = {};
13139
13212
  _this.multiselect = true;
13140
- _this.placeholder = translate.instant('eo.resultlist.grid.filterOoo');
13213
+ _this.placeholder = translate.instant('eo.filter.input.placeholder');
13141
13214
  return _this;
13142
13215
  }
13143
13216
  OrganizationFilterComponent.prototype.onValueChange = function () {
@@ -13187,7 +13260,7 @@
13187
13260
  { type: i0.Component, args: [{
13188
13261
  selector: 'eo-organization-filter',
13189
13262
  template: "<div class=\"eo-organization\" [ngClass]=\"{acInputHidden: !multiselect && innerValue.length}\">\n\n <p-autoComplete [(ngModel)]=\"innerValue\" [minLength]=\"1\" #autocomplete\n (onSelect)=\"onSelect($event)\" (onUnselect)=\"onUnselect($event)\"\n (onBlur)=\"onAutoCompleteBlur()\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [placeholder]=\"placeholder\"\n [suggestions]=\"autocompleteRes\" field=\"title\"\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\">\n\n <!-- template for the suggest list -->\n <ng-template let-item pTemplate=\"item\">\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\n </ng-template>\n\n <!-- template for the selected items when multiple -->\n <ng-template let-item pTemplate=\"selectedItem\">\n <div class=\"token\">\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\" [ngClass]=\"{'deleted-user-label': !item.firstname?.length && !item.lastname?.length && !item.active && !item.type}\"></i>\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length && item.active) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\n <span *ngIf=\"(!item.firstname?.length && !item.lastname?.length && !item.active && !item.type)\" class=\"ui-autocomplete-token-label deleted-user-label\">{{'eo.form.property.organization.error.usernotfound'|translate}}</span>\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.active && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\n </div>\n </ng-template>\n\n </p-autoComplete>\n</div>\n",
13190
- 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;overflow:hidden;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}: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}"]
13263
+ 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;overflow:hidden;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}: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}:host ::ng-deep .ui-autocomplete-panel{left:0!important}"]
13191
13264
  },] }
13192
13265
  ];
13193
13266
  OrganizationFilterComponent.ctorParameters = function () { return [
@@ -13204,7 +13277,7 @@
13204
13277
  _this.params = {};
13205
13278
  _this.multiselect = true;
13206
13279
  _this.situation = 'SEARCH';
13207
- _this.placeholder = translate.instant('eo.resultlist.grid.filterOoo');
13280
+ _this.placeholder = translate.instant('eo.filter.input.placeholder');
13208
13281
  return _this;
13209
13282
  }
13210
13283
  CodesystemFilterComponent.prototype.onValueChange = function () {
@@ -13296,7 +13369,6 @@
13296
13369
  _this.multiselect = true;
13297
13370
  _this.situation = 'SEARCH';
13298
13371
  return _this;
13299
- // this.placeholder = translate.instant('eo.resultlist.grid.filterOoo');
13300
13372
  }
13301
13373
  DynamicListFilterComponent.prototype.onValueChange = function () {
13302
13374
  var _this = this;
@@ -13508,7 +13580,6 @@
13508
13580
  _this.title = '';
13509
13581
  _this.searchLimit = 10;
13510
13582
  _this.operator = 'OR'; // AND | OR
13511
- _this.selectedAllFilters = false;
13512
13583
  _this.id = '#set';
13513
13584
  return _this;
13514
13585
  }
@@ -13519,7 +13590,6 @@
13519
13590
  set: function (opts) {
13520
13591
  var _this = this;
13521
13592
  this._options = this.defaultValue ? opts || [] : this.settingsService.setupSettings(this.id, opts);
13522
- this.selectedAllFilters = this.options.every(function (opt) { return opt.value; });
13523
13593
  if (this.options && this.params && this.isFilterActive()) {
13524
13594
  setTimeout(function () { return _this.params.filterChangedCallback(); }, 0);
13525
13595
  }
@@ -13568,7 +13638,7 @@
13568
13638
  SetFilterComponent.decorators = [
13569
13639
  { type: i0.Component, args: [{
13570
13640
  selector: 'eo-set-filter',
13571
- template: "<header class=\"filter__header\">\n <h3 class=\"filter__title title\" *ngIf=\"title\">{{title}}</h3>\n <input *ngIf=\"options?.length > searchLimit\" #input (ngModelChange)=\"onSearchChange($event)\" [ngModel]=\"''\"\n class=\"form-control\" placeholder=\"{{ 'eo.resultlist.grid.searchOoo' | translate}}\">\n <div class=\"option flex-row\">\n <eo-checkbox (ngModelChange)=\"onChange($event)\" [ngModel]=\"selectedAllFilters\" [tristate]=\"false\"></eo-checkbox>\n <label>({{'eo.resultlist.grid.selectAll' | translate}})</label>\n </div>\n</header>\n<div class=\"option flex-row\" *ngFor=\"let item of options\" [hidden]=\"item.hidden\">\n <eo-checkbox (ngModelChange)=\"onChange($event, item)\" [ngModel]=\"item.value\" [tristate]=\"false\"></eo-checkbox>\n <label [innerHTML]=\"item.label | safeHtml\"></label>\n</div>\n",
13641
+ template: "<header class=\"filter__header\">\n <h3 class=\"filter__title title\" *ngIf=\"title\">{{title}}</h3>\n <input *ngIf=\"options?.length > searchLimit\" #input (ngModelChange)=\"onSearchChange($event)\" [ngModel]=\"''\"\n class=\"form-control\" placeholder=\"{{ 'eo.resultlist.grid.searchOoo' | translate}}\">\n</header>\n<div class=\"option flex-row\" *ngFor=\"let item of options\" [hidden]=\"item.hidden\">\n <eo-checkbox (ngModelChange)=\"onChange($event, item)\" [ngModel]=\"item.value\" [tristate]=\"false\"></eo-checkbox>\n <label [innerHTML]=\"item.label | safeHtml\"></label>\n</div>\n",
13572
13642
  styles: [".title{font-weight:700;margin-top:.5em}.option{margin:.5em 0}label{padding:0 .5em}input{border:none}"]
13573
13643
  },] }
13574
13644
  ];
@@ -13590,7 +13660,6 @@
13590
13660
  _this.params = {};
13591
13661
  _this.operator = 'OR';
13592
13662
  return _this;
13593
- // this.placeholder = translate.instant('eo.resultlist.grid.filterOoo');
13594
13663
  }
13595
13664
  ListFilterComponent.prototype.onValueChange = function () {
13596
13665
  this.value = this.isFilterActive() ? [''].concat(this.options.filter(function (o) { return o.value; }).map(function (o) { return o.val; })) : null;
@@ -13629,7 +13698,7 @@
13629
13698
  ListFilterComponent.decorators = [
13630
13699
  { type: i0.Component, args: [{
13631
13700
  selector: 'eo-list-filter',
13632
- template: "<header class=\"filter__header\">\n <h3 class=\"filter__title title\" *ngIf=\"title\">{{title}}</h3>\n <input *ngIf=\"options?.length > searchLimit\" #input (ngModelChange)=\"onSearchChange($event)\" [ngModel]=\"''\"\n class=\"form-control\" placeholder=\"{{ 'eo.resultlist.grid.searchOoo' | translate}}\">\n <div class=\"option flex-row\">\n <eo-checkbox (ngModelChange)=\"onChange($event)\" [ngModel]=\"selectedAllFilters\" [tristate]=\"false\"></eo-checkbox>\n <label>({{'eo.resultlist.grid.selectAll' | translate}})</label>\n </div>\n</header>\n<div class=\"option flex-row\" *ngFor=\"let item of options\" [hidden]=\"item.hidden\">\n <eo-checkbox (ngModelChange)=\"onChange($event, item)\" [ngModel]=\"item.value\" [tristate]=\"false\"></eo-checkbox>\n <label [innerHTML]=\"item.label | safeHtml\"></label>\n</div>\n",
13701
+ template: "<header class=\"filter__header\">\n <h3 class=\"filter__title title\" *ngIf=\"title\">{{title}}</h3>\n <input *ngIf=\"options?.length > searchLimit\" #input (ngModelChange)=\"onSearchChange($event)\" [ngModel]=\"''\"\n class=\"form-control\" placeholder=\"{{ 'eo.resultlist.grid.searchOoo' | translate}}\">\n</header>\n<div class=\"option flex-row\" *ngFor=\"let item of options\" [hidden]=\"item.hidden\">\n <eo-checkbox (ngModelChange)=\"onChange($event, item)\" [ngModel]=\"item.value\" [tristate]=\"false\"></eo-checkbox>\n <label [innerHTML]=\"item.label | safeHtml\"></label>\n</div>\n",
13633
13702
  styles: [".title{font-weight:700;margin-top:.5em}.option{margin:.5em 0}label{padding:0 .5em}input{border:none}"]
13634
13703
  },] }
13635
13704
  ];
@@ -14320,7 +14389,7 @@
14320
14389
  QuickFilterComponent.decorators = [
14321
14390
  { type: i0.Component, args: [{
14322
14391
  selector: 'eo-quick-filter',
14323
- template: "\n <div class=\"qSearch flex-row\" *ngIf=\"eoGrid?.gridOptions?.rowData\" [style.alignItems]=\"'center'\">\n <label>\n <eo-icon class=\"small\" [iconSrc]=\"'assets/_default/svg/ic_quickfilter.svg'\" [style.margin.px]=\"4\"></eo-icon>\n </label>\n <eo-form-input>\n <input (keyup)=\"eoGrid.onQuickFilterChanged($event)\" class=\"qInput\" [style.border]=\"'none'\"\n placeholder=\"{{'eo.resultlist.grid.filterOoo' | translate}}\"/>\n </eo-form-input>\n </div>\n "
14392
+ template: "\n <div class=\"qSearch flex-row\" *ngIf=\"eoGrid?.gridOptions?.rowData\" [style.alignItems]=\"'center'\">\n <label>\n <eo-icon class=\"small\" [iconSrc]=\"'assets/_default/svg/ic_quickfilter.svg'\" [style.margin.px]=\"4\"></eo-icon>\n </label>\n <eo-form-input>\n <input (keyup)=\"eoGrid.onQuickFilterChanged($event)\" class=\"qInput\" [style.border]=\"'none'\"\n placeholder=\"{{'eo.filter.input.placeholder' | translate}}\"/>\n </eo-form-input>\n </div>\n "
14324
14393
  },] }
14325
14394
  ];
14326
14395
  QuickFilterComponent.propDecorators = {
@@ -14411,15 +14480,18 @@
14411
14480
 
14412
14481
  var TextFilterComponent = /** @class */ (function (_super) {
14413
14482
  __extends(TextFilterComponent, _super);
14414
- function TextFilterComponent(settingsService, storageService) {
14483
+ function TextFilterComponent(settingsService, storageService, userService) {
14415
14484
  var _this = _super.call(this) || this;
14416
14485
  _this.settingsService = settingsService;
14417
14486
  _this.storageService = storageService;
14487
+ _this.userService = userService;
14418
14488
  _this.title = '';
14419
- _this.placeholder = 'eo.resultlist.grid.filterOoo';
14489
+ _this.placeholder = 'eo.filter.input.placeholder';
14490
+ _this.enableSave = false;
14420
14491
  _this.focused = false;
14421
- _this.autocompleteRes = [];
14492
+ _this.savedFilters = [];
14422
14493
  _this.id = '#text';
14494
+ _this.getSavedFilters();
14423
14495
  return _this;
14424
14496
  }
14425
14497
  Object.defineProperty(TextFilterComponent.prototype, "matchFields", {
@@ -14453,14 +14525,25 @@
14453
14525
  };
14454
14526
  TextFilterComponent.prototype.focusout = function () {
14455
14527
  this.focused = false;
14456
- if (this.value && !this.autocompleteRes.includes(this.value) && this.value !== '' && this.value.trim() !== '') {
14457
- if (this.autocompleteRes.length === 5) {
14458
- this.autocompleteRes.shift();
14459
- }
14460
- this.autocompleteRes.push(this.value);
14461
- this.storageService.setItem('eo.inbox.filter.suggestions', this.autocompleteRes);
14528
+ };
14529
+ TextFilterComponent.prototype.getSavedFilters = function () {
14530
+ if (this.userService.getCurrentUser().userSettings.savedInboxFilter) {
14531
+ this.savedFilters = this.userService.getCurrentUser().userSettings.savedInboxFilter;
14532
+ }
14533
+ else {
14534
+ this.savedFilters = this.storageService.getItem('eo.inbox.filter.suggestions');
14535
+ }
14536
+ };
14537
+ TextFilterComponent.prototype.saveFilter = function (term) {
14538
+ if (!this.savedFilters.includes(term)) {
14539
+ this.savedFilters.push(term);
14540
+ this.userService.changeSavedInboxFilters(this.savedFilters).subscribe();
14462
14541
  }
14463
14542
  };
14543
+ TextFilterComponent.prototype.removeFilter = function (term) {
14544
+ this.savedFilters = this.savedFilters.filter(function (t) { return t !== term; });
14545
+ this.userService.changeSavedInboxFilters(this.savedFilters).subscribe();
14546
+ };
14464
14547
  TextFilterComponent.prototype.focus = function () {
14465
14548
  if (!this.focused) {
14466
14549
  this.focused = true;
@@ -14468,25 +14551,24 @@
14468
14551
  setTimeout(function () { document.execCommand('selectall', false, null); });
14469
14552
  }
14470
14553
  };
14471
- TextFilterComponent.prototype.autocompleteFn = function (evt) {
14472
- this.autocompleteRes = this.storageService.getItem('eo.inbox.filter.suggestions') || [];
14473
- };
14474
14554
  return TextFilterComponent;
14475
14555
  }(AbstractFilterComponent));
14476
14556
  TextFilterComponent.decorators = [
14477
14557
  { type: i0.Component, args: [{
14478
14558
  selector: 'eo-text-filter',
14479
- template: "<header class=\"filter__header\">\n <h3 class=\"filter__title title\" *ngIf=\"title\">{{title}}</h3>\n</header>\n<eo-form-input>\n <p-autoComplete #input (ngModelChange)=\"onChange($event)\" [ngModel]=\"value\" class=\"form-control\"\n placeholder=\"{{ placeholder | translate}}\" (focus)=\"focus()\" (focusout)=\"focusout()\" (completeMethod)=\"autocompleteFn($event)\" [suggestions]=\"autocompleteRes\"></p-autoComplete>\n</eo-form-input>\n",
14480
- styles: [".title{font-weight:700;margin-top:.5em}input{border:none}.form-control::-ms-clear{display:none}"]
14559
+ template: "<header class=\"filter__header\">\n <h3 class=\"filter__title title\" *ngIf=\"title\">{{title}}</h3>\n</header>\n<div class=\"flex-row\">\n <eo-form-input>\n <input (ngModelChange)=\"onChange($event)\" [ngModel]=\"value\" class=\"form-control\"\n placeholder=\"{{ placeholder | translate}}\" (focus)=\"focus()\" (focusout)=\"focusout()\">\n </eo-form-input>\n <eo-icon class=\"save-filter-icon\" *ngIf=\"enableSave\" [ngClass]=\"{'disable-save-filter': savedFilters.includes(value)}\"\n (click)=\"saveFilter(value)\"\n [iconTitle]=\"'eo.filter.save' | translate\"\n [iconSrc]=\"'assets/_default/svg/ic_add.svg'\"></eo-icon>\n</div>\n\n<div *ngIf=\"enableSave && savedFilters && savedFilters.length !== 0\">\n <h4 class=\"filter__title saved-filters-title\" translate>eo.filter.save.title</h4>\n <div class=\"saved-filters-container\">\n <div class=\"saved-filter flex-row\" *ngFor=\"let savedFilter of savedFilters\">\n <span class=\"saved-filter-text\" (click)=\"onChange(savedFilter, value)\">{{savedFilter}}</span>\n <eo-icon class=\"remove-filter-icon\" (click)=\"removeFilter(savedFilter)\"\n [iconTitle]=\"'eo.filter.delete' | translate\"\n [iconSrc]=\"'assets/_default/svg/ic_trash.svg'\"></eo-icon>\n </div>\n </div>\n</div>\n",
14560
+ styles: [".title{font-weight:700;margin-top:.5em}input{border:none}.form-control::-ms-clear{display:none}.save-filter-icon{cursor:pointer}.save-filter-icon.disable-save-filter{color:var(--color-primary-3);cursor:default}.remove-filter-icon{cursor:pointer;margin-left:auto}.saved-filter-text{cursor:pointer;margin-left:5px}.saved-filter{text-decoration:underline}.saved-filters-title{margin-top:1em}.saved-filters-container{max-height:200px;overflow:auto}"]
14481
14561
  },] }
14482
14562
  ];
14483
14563
  TextFilterComponent.ctorParameters = function () { return [
14484
14564
  { type: ListSettingsService },
14485
- { type: i1.LocalStorageService }
14565
+ { type: i1.LocalStorageService },
14566
+ { type: i1.UserService }
14486
14567
  ]; };
14487
14568
  TextFilterComponent.propDecorators = {
14488
14569
  title: [{ type: i0.Input }],
14489
14570
  placeholder: [{ type: i0.Input }],
14571
+ enableSave: [{ type: i0.Input }],
14490
14572
  matchFields: [{ type: i0.Input }]
14491
14573
  };
14492
14574
 
@@ -16071,6 +16153,11 @@
16071
16153
  event.stopPropagation();
16072
16154
  this.clicks.next(event);
16073
16155
  };
16156
+ PreventDoubleClickDirective.prototype.onkeyDown = function (event) {
16157
+ event.preventDefault();
16158
+ event.stopPropagation();
16159
+ this.clicks.next(event);
16160
+ };
16074
16161
  return PreventDoubleClickDirective;
16075
16162
  }());
16076
16163
  PreventDoubleClickDirective.decorators = [
@@ -16082,7 +16169,8 @@
16082
16169
  PreventDoubleClickDirective.propDecorators = {
16083
16170
  debounceTime: [{ type: i0.Input }],
16084
16171
  debounceClick: [{ type: i0.Output }],
16085
- clickEvent: [{ type: i0.HostListener, args: ['click', ['$event'],] }]
16172
+ clickEvent: [{ type: i0.HostListener, args: ['click', ['$event'],] }],
16173
+ onkeyDown: [{ type: i0.HostListener, args: ['keydown.enter', ['$event'],] }]
16086
16174
  };
16087
16175
 
16088
16176
  var ActionComponentAnchorDirective = /** @class */ (function () {
@@ -16102,11 +16190,12 @@
16102
16190
 
16103
16191
  var ActionMenuComponent = /** @class */ (function (_super) {
16104
16192
  __extends(ActionMenuComponent, _super);
16105
- function ActionMenuComponent(actionService, router, viewContainerRef, componentFactoryResolver) {
16193
+ function ActionMenuComponent(actionService, router, viewContainerRef, elemRef, componentFactoryResolver) {
16106
16194
  var _this = _super.call(this) || this;
16107
16195
  _this.actionService = actionService;
16108
16196
  _this.router = router;
16109
16197
  _this.viewContainerRef = viewContainerRef;
16198
+ _this.elemRef = elemRef;
16110
16199
  _this.componentFactoryResolver = componentFactoryResolver;
16111
16200
  _this.actionLists = {
16112
16201
  common: [], further: []
@@ -16160,12 +16249,19 @@
16160
16249
  event.preventDefault();
16161
16250
  this.actionDescription = i === this.actionDescription ? null : i;
16162
16251
  };
16252
+ ActionMenuComponent.prototype.catchFocus = function () {
16253
+ var _this = this;
16254
+ setTimeout(function () {
16255
+ _this.elemRef.nativeElement.querySelector('[tabindex="0"]').focus();
16256
+ });
16257
+ };
16163
16258
  ActionMenuComponent.prototype.showActionMenu = function () {
16164
16259
  this.getActions();
16165
16260
  if (this.target === 'DMS_OBJECT') {
16166
16261
  this.getMoreActions();
16167
16262
  }
16168
16263
  this.showMenu = true;
16264
+ this.catchFocus();
16169
16265
  };
16170
16266
  ActionMenuComponent.prototype.hideActionMenu = function () {
16171
16267
  this.clear();
@@ -16242,6 +16338,7 @@
16242
16338
  };
16243
16339
  ActionMenuComponent.prototype.onCancel = function () {
16244
16340
  this.clear();
16341
+ this.catchFocus();
16245
16342
  };
16246
16343
  ActionMenuComponent.prototype.onFinish = function () {
16247
16344
  this.hideActionMenu();
@@ -16251,15 +16348,16 @@
16251
16348
  ActionMenuComponent.decorators = [
16252
16349
  { type: i0.Component, args: [{
16253
16350
  selector: 'eo-action-menu',
16254
- template: "<div class=\"action-menu dark\" *ngIf=\"showMenu\" (eoOutsideClick)=\"hide()\">\n\n <div class=\"head\">\n <div class=\"left\">\n <div class=\"title\" translate>eo.actions.sticky.title</div>\n <div class=\"sub-title\" *ngIf=\"selection?.length > 1; else multi\" translate>eo.actions.sticky.title.sub.selection</div>\n <ng-template #multi>\n <div class=\"sub-title\" *ngIf=\"selection && selection.length\"><span translate>eo.actions.sticky.title.sub.for</span> '{{selection[0].title}}'</div>\n </ng-template>\n </div>\n <div class=\"right\">\n <span class=\"count\">{{subSelection?.length || selection?.length || ''}}</span>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"hide()\"></eo-icon>\n </div>\n </div>\n\n <div class=\"actions\" [hidden]=\"subActionsList || showComponent\">\n\n <ng-template #action let-entry let-id>\n\n <a *ngIf=\"isLinkAction(entry.action); else default\" class=\"link\"\n [routerLink]=\"entry.action.getLink(entry.availableSelection)\"\n [queryParams]=\"entry.action.getParams(entry.availableSelection, true)\">\n <ng-container *ngTemplateOutlet=\"default\"></ng-container>\n </a>\n\n <ng-template #default>\n <div>\n <eo-icon [iconSrc]=\"entry.action.iconSrc\" [iconId]=\"entry.action.iconId\"\n [badge]=\"entry.availableSelection?.length != selection?.length ? entry.availableSelection?.length : null\"></eo-icon>\n <div class=\"label\">{{entry.action.label}}</div>\n <!-- <div class=\"available-count\" *ngIf=\"entry.availableSelection?.length != selection?.length\">{{entry.availableSelection?.length}}</div> -->\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\" (click)=\"showActionDescription(id, $event)\"></eo-icon>\n </div>\n <div class=\"description\" [hidden]=\"id !== actionDescription\">{{entry.action.description}}</div>\n </ng-template>\n </ng-template>\n\n <div class=\"group\" *ngIf=\"actionLists?.common.length > 0\">\n <div class=\"group-title\" translate>eo.actions.group.common</div>\n <div class=\"action\" id=\"{{actionListEntry.id}}\" *ngFor=\"let actionListEntry of actionLists.common; index as i\" (click)=\"onClick(actionListEntry)\">\n\n <ng-container *ngTemplateOutlet=\"action; context: {$implicit: actionListEntry, id: +i}\"></ng-container>\n\n </div>\n </div>\n\n <div class=\"group\" *ngIf=\"!loading; else loader\">\n <div *ngIf=\"actionLists?.further.length > 0\">\n <div class=\"group-title\" translate>eo.actions.group.further_actions</div>\n <div class=\"action\" id=\"{{actionListEntry.id}}\" *ngFor=\"let actionListEntry of actionLists.further; index as i\" eoPreventDoubleClick (debounceClick)=\"onClick(actionListEntry)\">\n\n <ng-container *ngTemplateOutlet=\"action; context: {$implicit: actionListEntry, id: 'f'+i}\"></ng-container>\n\n </div>\n </div>\n </div>\n\n <div class=\"group\" *ngIf=\"!loading && !actionLists?.further.length && !actionLists?.common.length\" [style.textAlign]=\"'center'\">\n {{ 'eo.action.not.available' | translate}}\n </div>\n\n <ng-template #loader>\n <div class=\"loading-container\">\n <eo-loading-spinner [size]=\"'medium'\"></eo-loading-spinner>\n </div>\n </ng-template>\n </div>\n\n <!-- sub actions -->\n <div class=\"group sub\" *ngIf=\"subActionsList && !showComponent\">\n <div class=\"sub-actions\">\n <div class=\"group-title\">{{subActionsListHeader}}</div>\n <div class=\"action sub\" *ngFor=\"let actionListEntry of subActionsList; index as i\" (click)=\"onClick(actionListEntry)\">\n <ng-container *ngTemplateOutlet=\"action; context: {$implicit: actionListEntry, id: 's'+i}\"></ng-container>\n </div>\n </div>\n <div class=\"group-buttons\">\n <button (click)=\"onCancel()\" translate>eo.export.cancel</button>\n </div>\n </div>\n\n <div>\n <ng-template eoActionComponentAnchor></ng-template>\n </div>\n\n <div>\n <ng-template eoExtActionComponentAnchor></ng-template>\n </div>\n\n</div>\n",
16351
+ template: "<div class=\"action-menu dark\" *ngIf=\"showMenu\" (eoOutsideClick)=\"hide()\">\n\n <div class=\"head\">\n <div class=\"left\">\n <div class=\"title\" translate>eo.actions.sticky.title</div>\n <div class=\"sub-title\" *ngIf=\"selection?.length > 1; else multi\" translate>eo.actions.sticky.title.sub.selection</div>\n <ng-template #multi>\n <div class=\"sub-title\" *ngIf=\"selection && selection.length\"><span translate>eo.actions.sticky.title.sub.for</span> '{{selection[0].title}}'</div>\n </ng-template>\n </div>\n <div class=\"right\">\n <span class=\"count\">{{subSelection?.length || selection?.length || ''}}</span>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\" (click)=\"hide()\"></eo-icon>\n </div>\n </div>\n\n <div class=\"actions\" [hidden]=\"subActionsList || showComponent\">\n\n <ng-template #action let-entry let-id>\n\n <a *ngIf=\"isLinkAction(entry.action); else default\" class=\"link\"\n [routerLink]=\"entry.action.getLink(entry.availableSelection)\"\n [queryParams]=\"entry.action.getParams(entry.availableSelection, true)\">\n <ng-container *ngTemplateOutlet=\"default\"></ng-container>\n </a>\n\n <ng-template #default>\n <div tabindex=\"0\">\n <eo-icon [iconSrc]=\"entry.action.iconSrc\" [iconId]=\"entry.action.iconId\"\n [badge]=\"entry.availableSelection?.length != selection?.length ? entry.availableSelection?.length : null\"></eo-icon>\n <div class=\"label\">{{entry.action.label}}</div>\n <!-- <div class=\"available-count\" *ngIf=\"entry.availableSelection?.length != selection?.length\">{{entry.availableSelection?.length}}</div> -->\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\" (click)=\"showActionDescription(id, $event)\"></eo-icon>\n </div>\n <div class=\"description\" [hidden]=\"id !== actionDescription\">{{entry.action.description}}</div>\n </ng-template>\n </ng-template>\n\n <div class=\"group\" *ngIf=\"actionLists?.common.length > 0\">\n <div class=\"group-title\" translate>eo.actions.group.common</div>\n <div class=\"action\" id=\"{{actionListEntry.id}}\" *ngFor=\"let actionListEntry of actionLists.common; index as i\" (click)=\"onClick(actionListEntry)\" (keydown.enter)=\"onClick(actionListEntry)\">\n\n <ng-container *ngTemplateOutlet=\"action; context: {$implicit: actionListEntry, id: +i}\"></ng-container>\n\n </div>\n </div>\n\n <div class=\"group\" *ngIf=\"!loading; else loader\">\n <div *ngIf=\"actionLists?.further.length > 0\">\n <div class=\"group-title\" translate>eo.actions.group.further_actions</div>\n <div class=\"action\" id=\"{{actionListEntry.id}}\" *ngFor=\"let actionListEntry of actionLists.further; index as i\" eoPreventDoubleClick (debounceClick)=\"onClick(actionListEntry)\">\n\n <ng-container *ngTemplateOutlet=\"action; context: {$implicit: actionListEntry, id: 'f'+i}\"></ng-container>\n\n </div>\n </div>\n </div>\n\n <div class=\"group\" *ngIf=\"!loading && !actionLists?.further.length && !actionLists?.common.length\" [style.textAlign]=\"'center'\">\n {{ 'eo.action.not.available' | translate}}\n </div>\n\n <ng-template #loader>\n <div class=\"loading-container\">\n <eo-loading-spinner [size]=\"'medium'\"></eo-loading-spinner>\n </div>\n </ng-template>\n </div>\n\n <!-- sub actions -->\n <div class=\"group sub\" eoTrapFocus *ngIf=\"subActionsList && !showComponent\">\n <div class=\"sub-actions\">\n <div class=\"group-title\">{{subActionsListHeader}}</div>\n <div class=\"action sub\" *ngFor=\"let actionListEntry of subActionsList; index as i\" (click)=\"onClick(actionListEntry)\">\n <ng-container *ngTemplateOutlet=\"action; context: {$implicit: actionListEntry, id: 's'+i}\"></ng-container>\n </div>\n </div>\n <div class=\"group-buttons\">\n <button (click)=\"onCancel()\" translate>eo.export.cancel</button>\n </div>\n </div>\n\n <div>\n <ng-template eoActionComponentAnchor></ng-template>\n </div>\n\n <div>\n <ng-template eoExtActionComponentAnchor></ng-template>\n </div>\n\n</div>\n",
16255
16352
  encapsulation: i0.ViewEncapsulation.None,
16256
- styles: [".action-menu{-webkit-animation:eoFadeInRight var(--app-default-transition-duration);animation:eoFadeInRight var(--app-default-transition-duration);background-color:rgba(var(--color-primary-rgb),.95);bottom:0;box-shadow:0 0 10px 0 rgba(var(--color-black-rgb),.3);color:var(--color-white);height:100vh;min-width:300px;overflow:hidden;position:absolute;right:0;top:0;width:25vw;z-index:100}.action-menu .head{display:flex;flex:0 0 auto;flex-flow:row nowrap;order:0;padding:var(--app-pane-padding)}.action-menu .head .left{flex:1 1 auto;order:0}.action-menu .head .left .title{font-size:var(--font-headline);font-weight:var(--font-weight-light)}.action-menu .head .left .sub-title{font-size:var(--font-body);font-weight:var(--font-weight-light)}.action-menu .head .right{display:flex;flex:0 0 auto;flex-flow:row nowrap;order:1}.action-menu .head .right .count{color:rgba(var(--color-white-rgb),.3);font-size:5em;font-weight:var(--font-weight-light);line-height:1em;padding-right:var(--app-pane-padding)}.action-menu .head .right .close{margin:0;z-index:10}.action-menu .actions{height:100%;overflow:scroll}.action-menu .actions .group:last-child{margin-bottom:100px}.action-menu .group{display:inline-block;min-width:200px;padding:var(--app-pane-padding);width:90%}.action-menu .group .group-title{-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;background:rgba(var(--color-white-rgb),.1);margin-bottom:calc(var(--app-pane-padding)/4);padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2);transition:all var(--app-default-transition-duration) ease-in-out}.action-menu .group:not(.sub):hover .group-title{background:rgba(var(--color-white-rgb),.3)}.action-menu .action{border-bottom:1px solid rgba(var(--color-white-rgb),.2)}.action-menu .action a.link{color:inherit;display:block;opacity:1;text-decoration:none}.action-menu .action>a.link>div:first-child,.action-menu .action>div:first-child{-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;align-items:center;cursor:pointer;display:flex;padding:calc(var(--app-pane-padding)/2) var(--app-pane-padding) calc(var(--app-pane-padding)/2) 0;transition:all var(--app-default-transition-duration) ease-in-out}.action-menu .action.sub>div:first-child{padding-left:calc(var(--app-pane-padding)/2)}.action-menu .action .label{flex:1 1 auto}.action-menu .action .available-count{color:rgba(var(--color-white-rgb),.3)}.action-menu .action .available-count,.action-menu .action eo-icon{margin:0 calc(var(--app-pane-padding)/2)}.action-menu .action eo-icon.info-icon{border-radius:50%;box-sizing:border-box;color:rgba(var(--color-white-rgb),.3);margin:0;padding:3px}.action-menu .action eo-icon.info-icon:hover{background-color:var(--color-primary)}.action-menu .action .description{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-border-radius:2px;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;border-radius:2px;color:rgba(var(--color-white-rgb),.54);font-style:italic;padding:calc(var(--app-pane-padding)/4) var(--app-pane-padding) calc(var(--app-pane-padding)/2) var(--app-pane-padding);transition:all var(--app-default-transition-duration) ease-in-out}.action-menu .action:last-child{border:0}.action-menu .action:focus,.action-menu .action:hover{background:rgba(var(--color-white-rgb),.1)}.action-menu .group-buttons{display:flex;justify-content:flex-end;padding-top:var(--app-pane-padding)}.action-menu .group-buttons button{background-color:transparent}.action-menu .group-buttons button:hover{background-color:rgba(var(--color-white-rgb),.1)}.action-menu .loading-container{align-items:center;display:flex;justify-content:center;margin:50% auto;padding:16px}"]
16353
+ styles: [".action-menu{-webkit-animation:eoFadeInRight var(--app-default-transition-duration);animation:eoFadeInRight var(--app-default-transition-duration);background-color:rgba(var(--color-primary-rgb),.95);bottom:0;box-shadow:0 0 10px 0 rgba(var(--color-black-rgb),.3);color:var(--color-white);height:100vh;min-width:300px;overflow:hidden;position:absolute;right:0;top:0;width:25vw;z-index:100}.action-menu .head{display:flex;flex:0 0 auto;flex-flow:row nowrap;order:0;padding:var(--app-pane-padding)}.action-menu .head .left{flex:1 1 auto;order:0}.action-menu .head .left .title{font-size:var(--font-headline);font-weight:var(--font-weight-light)}.action-menu .head .left .sub-title{font-size:var(--font-body);font-weight:var(--font-weight-light)}.action-menu .head .right{display:flex;flex:0 0 auto;flex-flow:row nowrap;order:1}.action-menu .head .right .count{color:rgba(var(--color-white-rgb),.3);font-size:5em;font-weight:var(--font-weight-light);line-height:1em;padding-right:var(--app-pane-padding)}.action-menu .head .right .close{margin:0;z-index:10}.action-menu .actions{height:100%;overflow:scroll}.action-menu .actions .group:last-child{margin-bottom:100px}.action-menu .group{display:inline-block;min-width:200px;padding:var(--app-pane-padding);width:90%}.action-menu .group .group-title{-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;background:rgba(var(--color-white-rgb),.1);margin-bottom:calc(var(--app-pane-padding)/4);padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2);transition:all var(--app-default-transition-duration) ease-in-out}.action-menu .group:not(.sub):hover .group-title{background:rgba(var(--color-white-rgb),.3)}.action-menu .action{border-bottom:1px solid rgba(var(--color-white-rgb),.2)}.action-menu .action :focus{background:rgba(var(--color-white-rgb),.1)}.action-menu .action a.link{color:inherit;display:block;opacity:1;text-decoration:none}.action-menu .action>a.link>div:first-child,.action-menu .action>div:first-child{-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;align-items:center;cursor:pointer;display:flex;padding:calc(var(--app-pane-padding)/2) var(--app-pane-padding) calc(var(--app-pane-padding)/2) 0;transition:all var(--app-default-transition-duration) ease-in-out}.action-menu .action.sub>div:first-child{padding-left:calc(var(--app-pane-padding)/2)}.action-menu .action .label{flex:1 1 auto}.action-menu .action .available-count{color:rgba(var(--color-white-rgb),.3)}.action-menu .action .available-count,.action-menu .action eo-icon{margin:0 calc(var(--app-pane-padding)/2)}.action-menu .action eo-icon.info-icon{border-radius:50%;box-sizing:border-box;color:rgba(var(--color-white-rgb),.3);margin:0;padding:3px}.action-menu .action eo-icon.info-icon:hover{background-color:var(--color-primary)}.action-menu .action .description{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-border-radius:2px;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;border-radius:2px;color:rgba(var(--color-white-rgb),.54);font-style:italic;padding:calc(var(--app-pane-padding)/4) var(--app-pane-padding) calc(var(--app-pane-padding)/2) var(--app-pane-padding);transition:all var(--app-default-transition-duration) ease-in-out}.action-menu .action:last-child{border:0}.action-menu .action:focus,.action-menu .action:hover{background:rgba(var(--color-white-rgb),.1)}.action-menu .group-buttons{display:flex;justify-content:flex-end;padding-top:var(--app-pane-padding)}.action-menu .group-buttons button{background-color:transparent}.action-menu .group-buttons button:hover{background-color:rgba(var(--color-white-rgb),.1)}.action-menu .loading-container{align-items:center;display:flex;justify-content:center;margin:50% auto;padding:16px}:host ::ng-deep #default .allActionEntry{focus:red}"]
16257
16354
  },] }
16258
16355
  ];
16259
16356
  ActionMenuComponent.ctorParameters = function () { return [
16260
16357
  { type: ActionService },
16261
16358
  { type: i2.Router },
16262
16359
  { type: i0.ViewContainerRef },
16360
+ { type: i0.ElementRef },
16263
16361
  { type: i0.ComponentFactoryResolver }
16264
16362
  ]; };
16265
16363
  ActionMenuComponent.propDecorators = {
@@ -17008,13 +17106,14 @@
17008
17106
  ]; };
17009
17107
 
17010
17108
  var DeleteComponent = /** @class */ (function () {
17011
- function DeleteComponent(translate, backend, toast, router, capabilitiesService, dmsService, eventService) {
17109
+ function DeleteComponent(translate, backend, toast, router, capabilitiesService, dmsService, elemRef, eventService) {
17012
17110
  this.translate = translate;
17013
17111
  this.backend = backend;
17014
17112
  this.toast = toast;
17015
17113
  this.router = router;
17016
17114
  this.capabilitiesService = capabilitiesService;
17017
17115
  this.dmsService = dmsService;
17116
+ this.elemRef = elemRef;
17018
17117
  this.eventService = eventService;
17019
17118
  this.deleting = false;
17020
17119
  this.folder = '';
@@ -17065,6 +17164,12 @@
17065
17164
  DeleteComponent.prototype.isExpired = function (dateString) {
17066
17165
  return new Date(dateString).setHours(0, 0, 0, 0) < new Date().setHours(0, 0, 0, 0);
17067
17166
  };
17167
+ DeleteComponent.prototype.ngAfterViewInit = function () {
17168
+ var _this = this;
17169
+ setTimeout(function () {
17170
+ _this.elemRef.nativeElement.querySelector('.primary').focus();
17171
+ });
17172
+ };
17068
17173
  DeleteComponent.prototype.ngOnInit = function () {
17069
17174
  var _this = this;
17070
17175
  if (this.selection[0].isContextFolder) {
@@ -17085,7 +17190,7 @@
17085
17190
  DeleteComponent.decorators = [
17086
17191
  { type: i0.Component, args: [{
17087
17192
  selector: 'eo-delete',
17088
- template: "<div class=\"eo-delete\">\n\n <h2 *ngIf=\"!folder && !retentionTime\" translate [translateParams]=\"{item: selection[0].title}\">eo.action.delete.dms.object.confirm.message</h2>\n <h2 *ngIf=\"folder && !retentionTime\" translate [translateParams]=\"{folder: folder, count: count}\">eo.action.delete.dms.object.confirm.context.folder.title</h2>\n <h2 *ngIf=\"retentionTime\" translate [translateParams]=\"{retentionTime: retentionTime}\">eo.action.delete.dms.object.error.retention.title</h2>\n\n <div *ngIf=\"!deleting\">\n <div class=\"form-buttons\">\n <button (click)=\"cancel()\" translate>eo.checkout.cancel</button>\n <button *ngIf=\"!retentionTime\" class=\"primary\" (click)=\"run()\">OK</button>\n </div>\n </div>\n\n <div class=\"spinner-container\" *ngIf=\"deleting\">\n <eo-loading-spinner></eo-loading-spinner>\n </div>\n</div>\n",
17193
+ template: "<div class=\"eo-delete\" eoTrapFocus>\n\n <h2 *ngIf=\"!folder && !retentionTime\" translate [translateParams]=\"{item: selection[0].title}\">eo.action.delete.dms.object.confirm.message</h2>\n <h2 *ngIf=\"folder && !retentionTime\" translate [translateParams]=\"{folder: folder, count: count}\">eo.action.delete.dms.object.confirm.context.folder.title</h2>\n <h2 *ngIf=\"retentionTime\" translate [translateParams]=\"{retentionTime: retentionTime}\">eo.action.delete.dms.object.error.retention.title</h2>\n\n <div *ngIf=\"!deleting\">\n <div class=\"form-buttons\">\n <button (click)=\"cancel()\" translate>eo.checkout.cancel</button>\n <button *ngIf=\"!retentionTime\" class=\"primary\" (click)=\"run()\">OK</button>\n </div>\n </div>\n\n <div class=\"spinner-container\" *ngIf=\"deleting\">\n <eo-loading-spinner></eo-loading-spinner>\n </div>\n</div>\n",
17089
17194
  styles: [".eo-delete{display:flex;flex-flow:column;justify-content:center;margin:var(--app-pane-padding)}.eo-delete h2{font-size:var(--font-subhead);font-weight:var(--font-weight-light)}.eo-delete .form-buttons{padding:5px 0;text-align:right}.eo-delete .form-buttons button:nth-child(2n):not(:last-child){margin:0 calc(var(--app-pane-padding)/2)}.eo-delete .form-buttons button:nth-child(2n):last-child{margin-left:calc(var(--app-pane-padding)/2);margin-right:0}.eo-delete .spinner-container{align-items:center;display:flex;justify-content:center}"]
17090
17195
  },] }
17091
17196
  ];
@@ -17096,6 +17201,7 @@
17096
17201
  { type: i2.Router },
17097
17202
  { type: i1.CapabilitiesService },
17098
17203
  { type: i1.DmsService },
17204
+ { type: i0.ElementRef },
17099
17205
  { type: i1.EventService }
17100
17206
  ]; };
17101
17207
  DeleteComponent.propDecorators = {
@@ -17301,6 +17407,7 @@
17301
17407
  configurable: true
17302
17408
  });
17303
17409
  AddSubscriptionComponent.prototype.ngOnInit = function () {
17410
+ var _this = this;
17304
17411
  this.header = this.translate.instant('eo.object.inlinemenu.addsubscription');
17305
17412
  this.titleFieldLabel = this.translate.instant('eo.subscription.field.info');
17306
17413
  this.inboxCbLabel = this.translate.instant('eo.subscription.field.notification.inbox');
@@ -17342,6 +17449,9 @@
17342
17449
  ]
17343
17450
  };
17344
17451
  }
17452
+ setTimeout(function () {
17453
+ _this.titleField.nativeElement.getElementsByTagName('input')[0].select();
17454
+ });
17345
17455
  };
17346
17456
  Object.defineProperty(AddSubscriptionComponent.prototype, "titleValidity", {
17347
17457
  get: function () {
@@ -17395,7 +17505,7 @@
17395
17505
  AddSubscriptionComponent.decorators = [
17396
17506
  { type: i0.Component, args: [{
17397
17507
  selector: 'eo-add-subscription',
17398
- template: "<div class=\"eo-subscription\">\n <h2>{{header}}</h2>\n <form [formGroup]=\"addSubscriptionForm\">\n <eo-form-input [skipToggle]=\"true\" [label]=\"titleFieldLabel\" [required]=\"true\" [invalid]=\"titleValidity\" *ngIf=\"selection.length === 1\">\n <eo-string formControlName=\"titleFieldFCN\"></eo-string>\n </eo-form-input>\n <div class=\"err-msg\" *ngIf=\"titleValidity\">\n <div translate>eo.form.property.required</div>\n </div>\n <eo-form-input [skipToggle]=\"true\" [label]=\"inboxCbLabel\">\n <eo-checkbox formControlName=\"inboxCbFCN\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"emailCbLabel\">\n <eo-checkbox formControlName=\"emailCbFCN\" [readonly]=\"!hasEmail\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.subscription.field.mode.label' | translate\">\n <eo-codesystem formControlName=\"modeFieldFCN\" [codesystem]=\"subscriptionModeCodesystem\" [pickerTitle]=\"'eo.subscription.field.mode.label' | translate\"></eo-codesystem>\n </eo-form-input>\n </form>\n\n <!-- error/validation messages -->\n <div class=\"errors\">\n <div class=\"err-msg\" *ngIf=\"addSubscriptionForm.errors?.addSubscriptionForm\" translate>eo.subscription.error.msg</div>\n </div>\n\n <div class=\"form-buttons\" *ngIf=\"!processing; else indicator\">\n <button class=\"secondary\" (click)=\"cancel()\"translate>eo.subscription.cancel</button>\n <button class=\"primary\" [disabled]=\"addSubscriptionForm.errors || titleValidity\" (click)=\"createSubscription()\"translate>eo.subscription.add</button>\n </div>\n\n <ng-template #indicator>\n <div class=\"process-indicator\"><eo-icon [iconSrc]=\"'assets/_default/svg/ic_kitt-loader.svg'\"></eo-icon></div>\n </ng-template>\n</div>\n\n",
17508
+ template: "<div class=\"eo-subscription\" eoTrapFocus>\n <h2>{{header}}</h2>\n <form #titleField [formGroup]=\"addSubscriptionForm\">\n <eo-form-input [skipToggle]=\"true\" [label]=\"titleFieldLabel\" [required]=\"true\" [invalid]=\"titleValidity\" *ngIf=\"selection.length === 1\">\n <eo-string formControlName=\"titleFieldFCN\"></eo-string>\n </eo-form-input>\n <div class=\"err-msg\" *ngIf=\"titleValidity\">\n <div translate>eo.form.property.required</div>\n </div>\n <eo-form-input [skipToggle]=\"true\" [label]=\"inboxCbLabel\">\n <eo-checkbox formControlName=\"inboxCbFCN\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"emailCbLabel\">\n <eo-checkbox formControlName=\"emailCbFCN\" [readonly]=\"!hasEmail\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"'eo.subscription.field.mode.label' | translate\">\n <eo-codesystem formControlName=\"modeFieldFCN\" [codesystem]=\"subscriptionModeCodesystem\" [pickerTitle]=\"'eo.subscription.field.mode.label' | translate\"></eo-codesystem>\n </eo-form-input>\n </form>\n\n <!-- error/validation messages -->\n <div class=\"errors\">\n <div class=\"err-msg\" *ngIf=\"addSubscriptionForm.errors?.addSubscriptionForm\" translate>eo.subscription.error.msg</div>\n </div>\n\n <div class=\"form-buttons\" *ngIf=\"!processing; else indicator\">\n <button class=\"secondary\" (click)=\"cancel()\"translate>eo.subscription.cancel</button>\n <button class=\"primary\" [disabled]=\"addSubscriptionForm.errors || titleValidity\" (click)=\"createSubscription()\"translate>eo.subscription.add</button>\n </div>\n\n <ng-template #indicator>\n <div class=\"process-indicator\"><eo-icon [iconSrc]=\"'assets/_default/svg/ic_kitt-loader.svg'\"></eo-icon></div>\n </ng-template>\n</div>\n\n",
17399
17509
  styles: [".eo-subscription{display:flex;flex-flow:column;justify-content:center;margin:var(--app-pane-padding)}.eo-subscription h2{font-size:var(--font-subhead);font-weight:var(--font-weight-light)}.eo-subscription .form-buttons{padding:5px 0;text-align:right}.eo-subscription .form-buttons button:nth-child(2n):not(:last-child){margin:0 calc(var(--app-pane-padding)/2)}.eo-subscription .form-buttons button:nth-child(2n):last-child{margin-left:calc(var(--app-pane-padding)/2);margin-right:0}.eo-subscription .process-indicator{display:flex;justify-content:flex-end}.eo-subscription .err-msg{background-color:var(--color-error);border:0;border-radius:2px;color:var(--color-white);margin:calc(var(--app-pane-padding)/4) 0;padding:calc(var(--app-pane-padding)/4)}.eo-subscription .errors .err-msg:before{content:\"!\";padding:0 calc(var(--app-pane-padding)/4)}"]
17400
17510
  },] }
17401
17511
  ];
@@ -17408,7 +17518,8 @@
17408
17518
  AddSubscriptionComponent.propDecorators = {
17409
17519
  selection: [{ type: i0.Input }],
17410
17520
  finished: [{ type: i0.Output }],
17411
- canceled: [{ type: i0.Output }]
17521
+ canceled: [{ type: i0.Output }],
17522
+ titleField: [{ type: i0.ViewChild, args: ['titleField', { static: true },] }]
17412
17523
  };
17413
17524
 
17414
17525
  var AddSubscriptionActionComponent = /** @class */ (function (_super) {
@@ -17678,18 +17789,22 @@
17678
17789
  this.canceled.emit();
17679
17790
  };
17680
17791
  AddResubmissionComponent.prototype.ngOnInit = function () {
17792
+ var _this = this;
17681
17793
  this.dueFieldLabel = this.translate.instant('eo.resubmission.field.due');
17682
17794
  this.titleFieldLabel = this.translate.instant('eo.resubmission.field.info');
17683
17795
  this.inboxCbLabel = this.translate.instant('eo.resubmission.field.notification.inbox');
17684
17796
  this.emailCbLabel = this.translate.instant('eo.resubmission.field.notification.email');
17685
17797
  this.createResubmissionForm();
17798
+ setTimeout(function () {
17799
+ _this.titleField.nativeElement.getElementsByTagName('input')[0].select();
17800
+ });
17686
17801
  };
17687
17802
  return AddResubmissionComponent;
17688
17803
  }());
17689
17804
  AddResubmissionComponent.decorators = [
17690
17805
  { type: i0.Component, args: [{
17691
17806
  selector: 'eo-add-resubmission',
17692
- template: "<div class=\"eo-resubmission\">\n <h2>{{header}}</h2>\n <form [formGroup]=\"addResubmissionForm\">\n <eo-form-input [skipToggle]=\"true\" [label]=\"dueFieldLabel\">\n <eo-datetime [withTime]=\"true\" [onlyFutureDates]=\"true\" formControlName=\"dueFieldFCN\"></eo-datetime>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"titleFieldLabel\" [required]=\"true\" [invalid]=\"titleValidity\" *ngIf=\"selection.length === 1\">\n <eo-string formControlName=\"titleFieldFCN\"></eo-string>\n </eo-form-input>\n <div class=\"err-msg\" *ngIf=\"titleValidity\">\n <div translate>eo.form.property.required</div>\n </div>\n <eo-form-input [skipToggle]=\"true\" [label]=\"inboxCbLabel\">\n <eo-checkbox formControlName=\"inboxCbFCN\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"emailCbLabel\">\n <eo-checkbox formControlName=\"emailCbFCN\" [tristate]=\"false\" [readonly]=\"!hasEmail\"></eo-checkbox>\n </eo-form-input>\n </form>\n\n <!-- error/validation messages -->\n <div class=\"errors\">\n <div class=\"err-msg\" *ngIf=\"notificationMethodValidation\" translate>eo.resubmission.error.msg</div>\n <div class=\"err-msg\" *ngIf=\"dateValidation\" translate>eo.resubmission.error.msg.date</div>\n </div>\n\n <div class=\"form-buttons\" *ngIf=\"!processing; else indicator\">\n <button class=\"secondary\" (click)=\"cancel()\" translate>eo.resubmission.cancel</button>\n <button class=\"secondary\" *ngIf=\"selection[0].resubmissions.length\" (click)=\"removeResubmission()\" translate>eo.resubmission.delete</button>\n <button class=\"primary\" [disabled]=\"addResubmissionForm.errors || titleValidity\" *ngIf=\"selection[0].resubmissions.length\" (click)=\"updateResubmission()\" translate>eo.resubmission.apply</button>\n <button class=\"primary\" [disabled]=\"addResubmissionForm.errors || titleValidity\" *ngIf=\"!selection[0].resubmissions.length\" (click)=\"createResubmission()\" translate>eo.resubmission.add</button>\n </div>\n\n <ng-template #indicator>\n <div class=\"process-indicator\"><eo-icon [iconSrc]=\"'ic_kitt-loader.svg'\"></eo-icon></div>\n </ng-template>\n</div>\n\n",
17807
+ template: "<div class=\"eo-resubmission\" eoTrapFocus>\n <h2>{{header}}</h2>\n <form #titleField [formGroup]=\"addResubmissionForm\">\n <eo-form-input [skipToggle]=\"true\" [label]=\"dueFieldLabel\">\n <eo-datetime [withTime]=\"true\" [onlyFutureDates]=\"true\" formControlName=\"dueFieldFCN\"></eo-datetime>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"titleFieldLabel\" [required]=\"true\" [invalid]=\"titleValidity\" *ngIf=\"selection.length === 1\">\n <eo-string formControlName=\"titleFieldFCN\"></eo-string>\n </eo-form-input>\n <div class=\"err-msg\" *ngIf=\"titleValidity\">\n <div translate>eo.form.property.required</div>\n </div>\n <eo-form-input [skipToggle]=\"true\" [label]=\"inboxCbLabel\">\n <eo-checkbox formControlName=\"inboxCbFCN\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input [skipToggle]=\"true\" [label]=\"emailCbLabel\">\n <eo-checkbox formControlName=\"emailCbFCN\" [tristate]=\"false\" [readonly]=\"!hasEmail\"></eo-checkbox>\n </eo-form-input>\n </form>\n\n <!-- error/validation messages -->\n <div class=\"errors\">\n <div class=\"err-msg\" *ngIf=\"notificationMethodValidation\" translate>eo.resubmission.error.msg</div>\n <div class=\"err-msg\" *ngIf=\"dateValidation\" translate>eo.resubmission.error.msg.date</div>\n </div>\n\n <div class=\"form-buttons\" *ngIf=\"!processing; else indicator\">\n <button class=\"secondary\" (click)=\"cancel()\" translate>eo.resubmission.cancel</button>\n <button class=\"secondary\" *ngIf=\"selection[0].resubmissions.length\" (click)=\"removeResubmission()\" translate>eo.resubmission.delete</button>\n <button class=\"primary\" [disabled]=\"addResubmissionForm.errors || titleValidity\" *ngIf=\"selection[0].resubmissions.length\" (click)=\"updateResubmission()\" translate>eo.resubmission.apply</button>\n <button class=\"primary\" [disabled]=\"addResubmissionForm.errors || titleValidity\" *ngIf=\"!selection[0].resubmissions.length\" (click)=\"createResubmission()\" translate>eo.resubmission.add</button>\n </div>\n\n <ng-template #indicator>\n <div class=\"process-indicator\"><eo-icon [iconSrc]=\"'ic_kitt-loader.svg'\"></eo-icon></div>\n </ng-template>\n</div>\n\n",
17693
17808
  styles: [".eo-resubmission{display:flex;flex-flow:column;justify-content:center;margin:var(--app-pane-padding)}.eo-resubmission h2{font-size:var(--font-subhead);font-weight:var(--font-weight-light)}.eo-resubmission .form-buttons{padding:5px 0;text-align:right}.eo-resubmission .form-buttons button:nth-child(2n):not(:last-child){margin:0 calc(var(--app-pane-padding)/2)}.eo-resubmission .form-buttons button:nth-child(2n):last-child{margin-left:calc(var(--app-pane-padding)/2);margin-right:0}.eo-resubmission .process-indicator{display:flex;justify-content:flex-end}.eo-resubmission .err-msg{background-color:var(--color-error);border:0;border-radius:2px;color:var(--color-white);margin:calc(var(--app-pane-padding)/4) 0;padding:calc(var(--app-pane-padding)/4)}.eo-resubmission .errors .err-msg:before{content:\"!\";padding:0 calc(var(--app-pane-padding)/4)}"]
17694
17809
  },] }
17695
17810
  ];
@@ -17701,6 +17816,7 @@
17701
17816
  ]; };
17702
17817
  AddResubmissionComponent.propDecorators = {
17703
17818
  selection: [{ type: i0.Input }],
17819
+ titleField: [{ type: i0.ViewChild, args: ['titleField', { static: true },] }],
17704
17820
  finished: [{ type: i0.Output }],
17705
17821
  canceled: [{ type: i0.Output }]
17706
17822
  };
@@ -17791,10 +17907,11 @@
17791
17907
  ]; };
17792
17908
 
17793
17909
  var ShareObjectComponent = /** @class */ (function () {
17794
- function ShareObjectComponent(translate, dms, toast) {
17910
+ function ShareObjectComponent(translate, dms, toast, elemRef) {
17795
17911
  this.translate = translate;
17796
17912
  this.dms = dms;
17797
17913
  this.toast = toast;
17914
+ this.elemRef = elemRef;
17798
17915
  this.finished = new i0.EventEmitter();
17799
17916
  this.canceled = new i0.EventEmitter();
17800
17917
  this.dataMeta = [];
@@ -17808,37 +17925,63 @@
17808
17925
  }
17809
17926
  ShareObjectComponent.prototype.ngOnInit = function () {
17810
17927
  var orgaValue = [];
17811
- var shareChildren = this.selection[0].shares[0] ? this.selection[0].shares[0].sharechildren : true;
17812
- this.includeChildrenField.setValue(shareChildren);
17928
+ var shareChildren = [];
17929
+ this.elemRef.nativeElement.querySelector('[tabindex="0"]').focus();
17813
17930
  if (this.selection[0].isFolder) {
17814
17931
  this.header = this.translate.instant('eo.manage.rights.folder.title');
17815
17932
  }
17816
- this.selection[0].additionalvisibility.forEach(function (avObject) {
17817
- orgaValue.push(avObject.name);
17933
+ this.selection[0].shares.forEach(function (avObject) {
17934
+ if (avObject.sharechildren === true) {
17935
+ shareChildren.push(avObject.name);
17936
+ }
17937
+ else {
17938
+ orgaValue.push(avObject.name);
17939
+ }
17818
17940
  });
17819
17941
  this.orgaField.setValue(orgaValue);
17820
- this.dataMeta = this.dataMeta.concat(this.selection[0].additionalvisibility);
17942
+ this.includeChildrenField.setValue(shareChildren);
17821
17943
  };
17822
17944
  ShareObjectComponent.prototype.shareMessage = function () {
17823
17945
  var _this = this;
17946
+ var shared = '';
17947
+ var field = '';
17824
17948
  if (this.orgaField.value.length > 0) {
17825
- this.translate.get('eo.manage.rights.message', {
17826
- title: this.selection[0].title,
17827
- shared: this.orgaField.value.toString()
17828
- }).subscribe(function (val) { return _this.toast.info(val); });
17949
+ shared = this.orgaField.value.toString();
17950
+ }
17951
+ else if (this.includeChildrenField.value.length > 0) {
17952
+ shared = this.includeChildrenField.value.toString();
17829
17953
  }
17830
17954
  else {
17831
17955
  this.toast.info(this.translate.instant('eo.manage.rights.message.notshared'));
17956
+ return;
17957
+ }
17958
+ field = 'eo.manage.rights.message';
17959
+ if (this.orgaField.value.length > 0 && this.includeChildrenField.value.length > 0) {
17960
+ shared = this.orgaField.value.toString() + ", " + this.includeChildrenField.value.toString();
17832
17961
  }
17962
+ this.translate.get(field, {
17963
+ title: this.selection[0].title,
17964
+ shared: shared,
17965
+ }).subscribe(function (val) { return _this.toast.info(val); });
17833
17966
  };
17834
17967
  ShareObjectComponent.prototype.save = function () {
17835
17968
  var _this = this;
17836
- this.dms.setOrganizationObjectsWithReadRights(this.selection, this.orgaField.value, this.includeChildrenField.value)
17969
+ this.objectId = this.selection[0].id;
17970
+ this.dms.setOrganizationObjectsWithReadRights(this.selection, this.objectId, this.orgaField.value, this.includeChildrenField.value)
17837
17971
  .subscribe(function () {
17838
17972
  _this.shareMessage();
17839
17973
  _this.finished.emit();
17840
17974
  });
17841
17975
  };
17976
+ ShareObjectComponent.prototype.stop = function () {
17977
+ var _this = this;
17978
+ this.objectId = this.selection[0].id;
17979
+ this.dms.setOrganizationObjectsWithReadRights(this.selection, this.objectId, [], [])
17980
+ .subscribe(function () {
17981
+ _this.toast.info(_this.translate.instant('eo.manage.rights.message.notshared'));
17982
+ _this.finished.emit();
17983
+ });
17984
+ };
17842
17985
  ShareObjectComponent.prototype.cancel = function () {
17843
17986
  this.canceled.emit();
17844
17987
  };
@@ -17847,14 +17990,15 @@
17847
17990
  ShareObjectComponent.decorators = [
17848
17991
  { type: i0.Component, args: [{
17849
17992
  selector: 'eo-share-object',
17850
- template: "<div class=\"eo-share-object\">\n <h2>{{header}}</h2>\n\n <form [formGroup]=\"shareForm\">\n <eo-form-input [label]=\"orgaLabel\">\n <eo-organization [dataMeta]=\"dataMeta\" [multiselect]=\"true\" formControlName=\"orgaFieldFCN\"></eo-organization>\n </eo-form-input>\n <eo-form-input *ngIf=\"selection[0].isFolder\" [label]=\"('eo.manage.rights.folder.include.documents.label' | translate)\">\n <eo-checkbox formControlName=\"includeChildren\" [tristate]=\"false\"></eo-checkbox>\n </eo-form-input>\n </form>\n\n <div class=\"form-buttons\">\n <button class=\"secondary\" (click)=\"cancel()\" translate>eo.manage.rights.cancel</button>\n <button class=\"primary\" (click)=\"save()\" [disabled]=\"shareForm.errors || !shareForm.dirty\" translate>eo.manage.rights.apply</button>\n </div>\n</div>\n",
17851
- styles: [".eo-share-object{display:flex;flex-flow:column;justify-content:center;margin:var(--app-pane-padding)}.eo-share-object h2{font-size:var(--font-subhead);font-weight:var(--font-weight-light)}.eo-share-object .form-buttons{padding:5px 0;text-align:right}.eo-share-object .form-buttons button:nth-child(2n):not(:last-child){margin:0 calc(var(--app-pane-padding)/2)}.eo-share-object .form-buttons button:nth-child(2n):last-child{margin-left:calc(var(--app-pane-padding)/2);margin-right:0}"]
17993
+ template: "<div class=\"eo-share-object\" eoTrapFocus>\n <h2>{{header}}</h2>\n <div class=\"fieldset\">\n <div class=\"legend\"><span style=\"background-color: transparent !important;\" *ngIf=\"selection[0].isFolder\" translate>eo.manage.rights.folder.label</span></div>\n <div>\n <form [formGroup]=\"shareForm\">\n <eo-form-input [label]=\"orgaLabel\" tabindex=\"0\">\n <eo-organization [dataMeta]=\"dataMeta\" [multiselect]=\"true\" formControlName=\"orgaFieldFCN\"></eo-organization>\n </eo-form-input>\n </form>\n </div>\n <div *ngIf=\"selection[0].isFolder\">\n <div class=\"legend\"><span translate>eo.manage.rights.folder.include.children.label</span></div>\n <form [formGroup]=\"shareForm\">\n <eo-form-input [label]=\"orgaLabel\">\n <eo-organization [dataMeta]=\"dataMeta\" [multiselect]=\"true\" formControlName=\"includeChildren\"></eo-organization>\n </eo-form-input>\n </form>\n </div>\n </div>\n <div class=\"form-buttons\">\n <button class=\"secondary\" (click)=\"cancel()\" translate>eo.manage.rights.cancel</button>\n <button class=\"danger\" (click)=\"stop()\" *ngIf=\"selection[0].additionalvisibility.length\" translate>eo.manage.rights.stop</button>\n <button class=\"primary\" (click)=\"save()\" [disabled]=\"shareForm.errors || !shareForm.dirty\" translate>eo.manage.rights.apply</button>\n </div>\n</div>\n",
17994
+ styles: [".eo-share-object{display:flex;flex-flow:column;justify-content:center;margin:var(--app-pane-padding)}.eo-share-object h2{font-size:var(--font-subhead);font-weight:var(--font-weight-light)}.eo-share-object>.fieldset>:not(.legend){align-content:flex-start;align-items:flex-start;display:contents;flex-flow:row wrap;justify-content:flex-start}.eo-share-object>.fieldset>:not(.legend) span{background-color:transparent!important}.eo-share-object>.fieldset>:not(.legend) eo-form-group{flex:1 1 auto;min-width:200px}.eo-share-object .form-buttons{padding:5px 0;text-align:right}.eo-share-object .form-buttons button:nth-child(2n):not(:last-child){margin:0 calc(var(--app-pane-padding)/2)}.eo-share-object .form-buttons button:nth-child(2n):last-child{margin-left:calc(var(--app-pane-padding)/2);margin-right:0}"]
17852
17995
  },] }
17853
17996
  ];
17854
17997
  ShareObjectComponent.ctorParameters = function () { return [
17855
17998
  { type: i1.TranslateService },
17856
17999
  { type: i1.DmsService },
17857
- { type: i1.NotificationsService }
18000
+ { type: i1.NotificationsService },
18001
+ { type: i0.ElementRef }
17858
18002
  ]; };
17859
18003
 
17860
18004
  var ShareObjectActionComponent = /** @class */ (function (_super) {
@@ -17937,6 +18081,45 @@
17937
18081
  { type: ActionService }
17938
18082
  ]; };
17939
18083
 
18084
+ var FinalizeObjectActionComponent = /** @class */ (function () {
18085
+ function FinalizeObjectActionComponent(elemRef, dmsService) {
18086
+ this.elemRef = elemRef;
18087
+ this.dmsService = dmsService;
18088
+ this.finished = new i0.EventEmitter();
18089
+ this.canceled = new i0.EventEmitter();
18090
+ }
18091
+ FinalizeObjectActionComponent.prototype.onClick = function () {
18092
+ this.dmsService.finalize(this.selection[0]).subscribe();
18093
+ this.finished.emit();
18094
+ };
18095
+ FinalizeObjectActionComponent.prototype.cancel = function () {
18096
+ this.canceled.emit();
18097
+ };
18098
+ FinalizeObjectActionComponent.prototype.ngAfterViewInit = function () {
18099
+ var _this = this;
18100
+ setTimeout(function () {
18101
+ _this.elemRef.nativeElement.querySelector('.primary').focus();
18102
+ });
18103
+ };
18104
+ return FinalizeObjectActionComponent;
18105
+ }());
18106
+ FinalizeObjectActionComponent.decorators = [
18107
+ { type: i0.Component, args: [{
18108
+ selector: 'eo-finalize-object-action',
18109
+ template: "<div class=\"finalize\">\n\n <h2 translate>eo.action.finalize.confirm</h2>\n\n <div class=\"form-buttons\" eoTrapFocus>\n <button (click)=\"cancel()\" translate>eo.checkout.cancel</button>\n <button class=\"primary\" (click)=\"onClick()\">OK</button>\n </div>\n\n</div>",
18110
+ styles: [".finalize{display:flex;flex-flow:column;justify-content:center;margin:var(--app-pane-padding)}.finalize h2{font-size:var(--font-subhead);font-weight:var(--font-weight-light)}.finalize .form-buttons{padding:5px 0;text-align:right}.finalize .form-buttons button:nth-child(2n):not(:last-child){margin:0 calc(var(--app-pane-padding)/2)}.finalize .form-buttons button:nth-child(2n):last-child{margin-left:calc(var(--app-pane-padding)/2);margin-right:0}"]
18111
+ },] }
18112
+ ];
18113
+ FinalizeObjectActionComponent.ctorParameters = function () { return [
18114
+ { type: i0.ElementRef },
18115
+ { type: i1.DmsService }
18116
+ ]; };
18117
+ FinalizeObjectActionComponent.propDecorators = {
18118
+ selection: [{ type: i0.Input }],
18119
+ finished: [{ type: i0.Output }],
18120
+ canceled: [{ type: i0.Output }]
18121
+ };
18122
+
17940
18123
  var FinalizeActionComponent = /** @class */ (function (_super) {
17941
18124
  __extends(FinalizeActionComponent, _super);
17942
18125
  function FinalizeActionComponent(translate, dmsService) {
@@ -17946,7 +18129,8 @@
17946
18129
  _this.priority = 13;
17947
18130
  _this.iconSrc = 'assets/_default/svg/ic_finalized.svg';
17948
18131
  _this.group = 'common';
17949
- _this.range = exports.SelectionRange.MULTI_SELECT;
18132
+ _this.range = exports.SelectionRange.SINGLE_SELECT;
18133
+ _this.component = FinalizeObjectActionComponent;
17950
18134
  _this.label = _this.translate.instant('eo.action.finalize.label');
17951
18135
  _this.description = _this.translate.instant('eo.action.finalize.description');
17952
18136
  return _this;
@@ -17954,21 +18138,16 @@
17954
18138
  FinalizeActionComponent.prototype.isExecutable = function (item) {
17955
18139
  return rxjs.of((item.rights && item.rights.finalize) && !item.lock && !item.isFinalized && !window.location.href.includes('/versions'));
17956
18140
  };
17957
- ;
17958
- FinalizeActionComponent.prototype.run = function (selection) {
17959
- var _this = this;
17960
- if (confirm(this.translate.instant('eo.action.finalize.confirm'))) {
17961
- selection.forEach(function (item) {
17962
- _this.dmsService.finalize(item).subscribe();
17963
- });
17964
- }
17965
- };
17966
18141
  return FinalizeActionComponent;
17967
18142
  }(DmsObjectTarget));
18143
+ FinalizeActionComponent.ɵprov = i0.ɵɵdefineInjectable({ factory: function FinalizeActionComponent_Factory() { return new FinalizeActionComponent(i0.ɵɵinject(i1$2.TranslateService), i0.ɵɵinject(i1.DmsService)); }, token: FinalizeActionComponent, providedIn: "root" });
17968
18144
  FinalizeActionComponent.decorators = [
17969
18145
  { type: i0.Component, args: [{
17970
18146
  selector: 'eo-finalize-action',
17971
18147
  template: ""
18148
+ },] },
18149
+ { type: i0.Injectable, args: [{
18150
+ providedIn: 'root'
17972
18151
  },] }
17973
18152
  ];
17974
18153
  FinalizeActionComponent.ctorParameters = function () { return [
@@ -18197,6 +18376,7 @@
18197
18376
  ShareObjectComponent,
18198
18377
  CutActionComponent,
18199
18378
  FinalizeActionComponent,
18379
+ FinalizeObjectActionComponent,
18200
18380
  DefinalizeActionComponent,
18201
18381
  DeleteContentActionComponent,
18202
18382
  UnlockActionComponent,
@@ -18289,6 +18469,7 @@
18289
18469
  ShareObjectComponent,
18290
18470
  CutActionComponent,
18291
18471
  FinalizeActionComponent,
18472
+ FinalizeObjectActionComponent,
18292
18473
  DefinalizeActionComponent,
18293
18474
  DeleteContentActionComponent,
18294
18475
  UnlockActionComponent,
@@ -18369,74 +18550,6 @@
18369
18550
  undockArea: [{ type: i0.Input }]
18370
18551
  };
18371
18552
 
18372
- /**
18373
- * This directive traps the focus inside the element it is applied to.
18374
- * When applied, a users can't "tab out" of the element.
18375
- * You need at least two focusable children in the element for it to work properly.
18376
- * See the querySelector in the trapFocus method to know which elements count as focusable.
18377
- * Additionally you can add the attribute "focusable" to an element if you are unsure.
18378
- */
18379
- var TrapFocusDirective = /** @class */ (function () {
18380
- function TrapFocusDirective(el) {
18381
- this.el = el;
18382
- this.focusableSelectors = 'a[href], button, textarea, input[type="text"],' +
18383
- 'input[type="radio"], input[type="checkbox"], select, [focusable]';
18384
- }
18385
- TrapFocusDirective.prototype.ngAfterViewInit = function () {
18386
- this.trapFocus(this.el.nativeElement);
18387
- };
18388
- TrapFocusDirective.prototype.trapFocus = function (element) {
18389
- var focusableElements = element.querySelectorAll(this.focusableSelectors);
18390
- focusableElements = Array.from(focusableElements)
18391
- .filter(function (el) { return !el.disabled && !el.classList.contains('disabled'); });
18392
- var firstFocusableElement = focusableElements[0];
18393
- var lastFocusableElement = focusableElements[focusableElements.length - 1];
18394
- element.addEventListener('keydown', (function (event) {
18395
- var isTabPressed = event.keyCode === 9; // tab key code
18396
- if (!isTabPressed)
18397
- return;
18398
- if (event.shiftKey) /* shift + tab */ {
18399
- if (document.activeElement === firstFocusableElement) {
18400
- lastFocusableElement.focus();
18401
- event.preventDefault();
18402
- }
18403
- }
18404
- else /* tab */ {
18405
- if (document.activeElement === lastFocusableElement) {
18406
- firstFocusableElement.focus();
18407
- event.preventDefault();
18408
- }
18409
- }
18410
- }));
18411
- };
18412
- TrapFocusDirective.prototype.isArrowUpOrDownPressed = function (event) {
18413
- var key = event.key;
18414
- if (key === 'ArrowUp' || key === 'ArrowDown') {
18415
- event.preventDefault();
18416
- var focusableElements = this.el.nativeElement.parentElement.querySelectorAll(this.focusableSelectors);
18417
- var currentIndex = Array.from(focusableElements).indexOf(document.activeElement);
18418
- if (key === 'ArrowDown' && currentIndex < focusableElements.length - 1) {
18419
- focusableElements[currentIndex + 1].focus();
18420
- }
18421
- else if (key === 'ArrowUp' && currentIndex > 0) {
18422
- focusableElements[currentIndex - 1].focus();
18423
- }
18424
- }
18425
- };
18426
- return TrapFocusDirective;
18427
- }());
18428
- TrapFocusDirective.decorators = [
18429
- { type: i0.Directive, args: [{
18430
- selector: '[eoTrapFocus]'
18431
- },] }
18432
- ];
18433
- TrapFocusDirective.ctorParameters = function () { return [
18434
- { type: i0.ElementRef }
18435
- ]; };
18436
- TrapFocusDirective.propDecorators = {
18437
- isArrowUpOrDownPressed: [{ type: i0.HostListener, args: ['keydown', ['$event'],] }]
18438
- };
18439
-
18440
18553
  /**
18441
18554
  * Module holding the base components of the application shell like application bar, side, search etc.
18442
18555
  */
@@ -18474,7 +18587,6 @@
18474
18587
  AppLayoutComponent,
18475
18588
  ContextSearchComponent,
18476
18589
  AppProcessComponent,
18477
- TrapFocusDirective,
18478
18590
  ]
18479
18591
  },] }
18480
18592
  ];
@@ -19815,12 +19927,6 @@
19815
19927
  },] }
19816
19928
  ];
19817
19929
 
19818
- (function (TypeFilter) {
19819
- TypeFilter["favored"] = "favorite";
19820
- TypeFilter["shared"] = "roles";
19821
- TypeFilter["others"] = "others";
19822
- })(exports.TypeFilter || (exports.TypeFilter = {}));
19823
-
19824
19930
  var ResultListModule = /** @class */ (function () {
19825
19931
  function ResultListModule() {
19826
19932
  }
@@ -24111,6 +24217,12 @@
24111
24217
  ])
24112
24218
  ]);
24113
24219
 
24220
+ (function (TypeFilter) {
24221
+ TypeFilter["favored"] = "favorite";
24222
+ TypeFilter["shared"] = "roles";
24223
+ TypeFilter["others"] = "others";
24224
+ })(exports.TypeFilter || (exports.TypeFilter = {}));
24225
+
24114
24226
  var DashboardComponent = /** @class */ (function (_super) {
24115
24227
  __extends(DashboardComponent, _super);
24116
24228
  function DashboardComponent(userService, titleService, router, route, config, searchService, authService, systemService, inboxService, prepareService, envService, capabilityService, storedQueriesService) {
@@ -24233,9 +24345,7 @@
24233
24345
  .pipe(operators.takeUntil(this.componentDestroyed$))
24234
24346
  .subscribe(function (user) {
24235
24347
  _this.user = user;
24236
- if (!_this.isCloud) {
24237
- _this.captureObjectLists();
24238
- }
24348
+ _this.captureObjectLists();
24239
24349
  });
24240
24350
  this.capabilities = this.capabilityService.getCapabilities();
24241
24351
  if (this.capabilities.storedqueries) {
@@ -24862,10 +24972,10 @@
24862
24972
  this.backend = backend;
24863
24973
  this.userService = userService;
24864
24974
  this.config = config;
24865
- 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.1.0-rc.1", "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" }];
24975
+ 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.2.0-rc.1", "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" }];
24866
24976
  this.ctrl = {
24867
24977
  componentName: 'yuuvis® RAD client',
24868
- componentVersion: '9.1.0-rc.1',
24978
+ componentVersion: '9.2.0-rc.1',
24869
24979
  productName: '',
24870
24980
  productVersion: ''
24871
24981
  };
@@ -26222,7 +26332,7 @@
26222
26332
  ObjectStateComponent.decorators = [
26223
26333
  { type: i0.Component, args: [{
26224
26334
  selector: 'eo-object-state',
26225
- template: "<div class=\"file\" [ngClass]=\"{ready: context || context === null}\" *ngIf=\"!error; else errorTmpl\">\n\n <div class=\"file-head\" *ngIf=\"context && context.isContextFolder\">\n <div class=\"left\">\n <eo-icon class=\"type-icon\" [objectType]=\"context.type\"></eo-icon>\n <div class=\"title\" (click)=\"setupFrontPage()\" (contextmenu)=\"onContextMenuClicked($event)\">\n <div class=\"label\">{{context.title || '&nbsp;'}}</div>\n <div class=\"description\">{{context.description || '&nbsp;'}}</div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"fold\">\n <span class=\"created-date\">{{context.created.on | localeDate}}</span>\n <span class=\"created-title\">{{context.created.by.title}}</span>\n </div>\n <div class=\"actions\">\n </div>\n </div>\n </div>\n\n <div class=\"file-body\">\n <div class=\"file-body-wrap\">\n\n <eo-undock-split>\n <eo-split [gutterSize]=\"16\" [visibleTransition]=\"true\" [cacheLayout]=\"cacheLayout\">\n\n <eo-split-area [size]=\"20\" [minSizePixel]=\"230\" class=\"tree\">\n <ng-template pTemplate=\"content\">\n\n <div class=\"tree-panel-error\" *ngIf=\"loadingState.tree.isError(); else tplTree\" translate>eo.state.object.tree.error</div>\n\n <ng-template #tplTree>\n\n <eo-list-container #eoList [loading]=\"!contextTree\" [tabs]=\"false\">\n <div class=\"eo-header dark\">\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\" translate>eo.state.object.tree.title</h2>\n <form name=\"structureForm\" class=\"tree-filter-form\" [ngClass]=\"{active: !!termFilter}\">\n <eo-form-input [skipToggle]=\"true\" [label]=\" 'eo.state.object.tree.filter.label' | translate\">\n <input [(ngModel)]=\"termFilter\" maxlength=\"250\" [ngModelOptions]=\"{standalone: true}\" (ngModelChange)=\"onTermFilterChange.emit($event)\"/>\n </eo-form-input>\n </form>\n </div>\n </div>\n <div class=\"eo-body tree\">\n <eo-tree [tree]=\"contextTree\" [options]=\"{multiselect: false, disableDeselection: true}\" [@panelLoading]=\"loadingState.tree.state\"\n *ngIf=\"contextTree\" [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\"></eo-tree>\n <h3 *ngIf=\"contextTreeRef?.length\" title=\"{{'eo.state.object.tree.references.tooltip'|translate}}\" translate>eo.state.object.tree.references</h3> \n <eo-tree [tree]=\"contextTreeRef\" [options]=\"{multiselect: false, disableDeselection: true}\" [@panelLoading]=\"loadingState.treeRef.state\"\n *ngIf=\"contextTreeRef?.length\" [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeRefUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\" class=\"reference\"></eo-tree>\n </div>\n </eo-list-container>\n\n </ng-template>\n </ng-template>\n </eo-split-area>\n\n <eo-split-area [size]=\"35\" [minSizePixel]=\"250\" [@panelLoading]=\"loadingState.list.state\">\n <ng-template pTemplate=\"content\">\n\n <eo-object-state-details *ngIf=\"context\" [context]=\"context\" [frontPageData]=\"frontPageData\" [visible]=\"frontPage\" (onTabChange)=\"setupFrontPage(true)\">\n <eo-tab-plugin [type]=\"'object-state-details-tab.object'\"></eo-tab-plugin>\n </eo-object-state-details>\n\n <eo-result-list *ngIf=\"!frontPage && searchResult\" [selectFirst]=\"false\" [title]=\"gridTitle\" [reference]=\"selectedNode?.isReference\"\n [searchResult]=\"searchResult\" [configType]=\"configType\" [configContext]=\"\"\n [emptyMessage]=\"'eo.state.object.list.error'\" (onRefresh)=\"refreshList()\">\n </eo-result-list>\n\n </ng-template>\n </eo-split-area>\n\n <eo-split-area [size]=\"45\" [minSizePixel]=\"250\" [cache]=\"false\" [@panelLoading]=\"loadingState.details.state\">\n <ng-template pTemplate=\"content\">\n <eo-object-details [applySelection]=\"{}\" [reference]=\"isReferenceActive\" [cacheLayout]=\"'object.state--' + typeName + '.object-details'\">\n <eo-tab-plugin [type]=\"'object-details-tab.object'\"></eo-tab-plugin>\n </eo-object-details>\n </ng-template>\n </eo-split-area>\n\n </eo-split>\n </eo-undock-split>\n </div>\n </div>\n</div>\n\n<ng-template #errorTmpl>\n <eo-error404></eo-error404>\n</ng-template>\n\n",
26335
+ template: "<div class=\"file\" [ngClass]=\"{ready: context || context === null}\" *ngIf=\"!error; else errorTmpl\">\n\n <div class=\"file-head\" *ngIf=\"context && context.isContextFolder\">\n <div class=\"left\">\n <eo-icon class=\"type-icon\" [objectType]=\"context.type\"></eo-icon>\n <div class=\"title\" (click)=\"setupFrontPage()\" (contextmenu)=\"onContextMenuClicked($event)\">\n <div class=\"label\">{{context.title || '&nbsp;'}}</div>\n <div class=\"description\">{{context.description || '&nbsp;'}}</div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"fold\">\n <span class=\"created-date\">{{context.created.on | localeDate}}</span>\n <span class=\"created-title\">{{context.created.by.title}}</span>\n </div>\n <div class=\"actions\">\n </div>\n </div>\n </div>\n\n <div class=\"file-body\">\n <div class=\"file-body-wrap\">\n\n <eo-undock-split>\n <eo-split [gutterSize]=\"16\" [visibleTransition]=\"true\" [cacheLayout]=\"cacheLayout\">\n\n <eo-split-area [size]=\"20\" [minSizePixel]=\"230\" class=\"tree\">\n <ng-template pTemplate=\"content\">\n\n <div class=\"tree-panel-error\" *ngIf=\"loadingState.tree.isError(); else tplTree\" translate>eo.state.object.tree.error</div>\n\n <ng-template #tplTree>\n\n <eo-list-container #eoList [loading]=\"!contextTree\" [tabs]=\"false\">\n <div class=\"eo-header dark\">\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\" translate>eo.state.object.tree.title</h2>\n <form name=\"structureForm\" class=\"tree-filter-form\" [ngClass]=\"{active: !!termFilter}\">\n <eo-form-input [skipToggle]=\"true\" [label]=\" 'eo.state.object.tree.filter.label' | translate\">\n <input [(ngModel)]=\"termFilter\" maxlength=\"250\" [ngModelOptions]=\"{standalone: true}\" (ngModelChange)=\"onTermFilterChange.emit($event)\"/>\n </eo-form-input>\n </form>\n </div>\n </div>\n <div class=\"eo-body tree\">\n <eo-tree [tree]=\"contextTree\" [options]=\"{multiselect: false, disableDeselection: true}\" [@panelLoading]=\"loadingState.tree.state\"\n *ngIf=\"contextTree\" [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\"></eo-tree>\n <h3 *ngIf=\"contextTreeRef?.length\" title=\"{{'eo.state.object.tree.references.tooltip'|translate}}\" translate>eo.state.object.tree.references</h3> \n <eo-tree [tree]=\"contextTreeRef\" [options]=\"{multiselect: false, disableDeselection: true}\" [@panelLoading]=\"loadingState.treeRef.state\"\n *ngIf=\"contextTreeRef?.length\" [highlightedNodes]=\"highlightedNodes\" [treeUpdate]=\"contextTreeRefUpdate\"\n [(ngModel)]=\"selectedNodes\" (ngModelChange)=\"onTreeSelectionChanged($event)\" class=\"reference\"></eo-tree>\n </div>\n </eo-list-container>\n\n </ng-template>\n </ng-template>\n </eo-split-area>\n\n <eo-split-area [size]=\"35\" [minSizePixel]=\"250\" [@panelLoading]=\"loadingState.list.state\">\n <ng-template pTemplate=\"content\">\n\n <eo-object-state-details *ngIf=\"context\" [context]=\"context\" [frontPageData]=\"frontPageData\" [visible]=\"frontPage\" (onTabChange)=\"setupFrontPage(true)\">\n <eo-tab-plugin [type]=\"'object-state-details-tab.object'\"></eo-tab-plugin>\n </eo-object-state-details>\n\n <eo-result-list *ngIf=\"!frontPage && searchResult\" [selectFirst]=\"false\" [title]=\"gridTitle\" [reference]=\"selectedNode?.isReference\"\n [searchResult]=\"searchResult\" [configType]=\"configType\" [configContext]=\"\"\n [emptyMessage]=\"'eo.state.object.list.error'\" (onRefresh)=\"refreshList()\">\n </eo-result-list>\n\n </ng-template>\n </eo-split-area>\n\n <eo-split-area [size]=\"45\" [minSizePixel]=\"250\" [cache]=\"false\" [@panelLoading]=\"loadingState.details.state\">\n <ng-template pTemplate=\"content\">\n <eo-object-details eoTrapFocus [applySelection]=\"{}\" [reference]=\"isReferenceActive\" [cacheLayout]=\"'object.state--' + typeName + '.object-details'\">\n <eo-tab-plugin [type]=\"'object-details-tab.object'\"></eo-tab-plugin>\n </eo-object-details>\n </ng-template>\n </eo-split-area>\n\n </eo-split>\n </eo-undock-split>\n </div>\n </div>\n</div>\n\n<ng-template #errorTmpl>\n <eo-error404></eo-error404>\n</ng-template>\n\n",
26226
26336
  providers: [ObjectStateService],
26227
26337
  animations: [panelLoadingAnimations],
26228
26338
  styles: [":host{bottom:var(--app-pane-padding);left:var(--app-pane-padding);position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding)}:host eo-split-area{box-shadow:0 2px 5px 0 rgba(0,0,0,.2)}:host .eo-body.tree h3{border-top:1px solid var(--list-item-border-color);color:var(--text-color-caption);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);margin:0;padding:calc(var(--app-pane-padding)/2) var(--app-pane-padding) 0 var(--app-pane-padding)}:host .file{display:flex;flex-flow:column;height:100%}:host .file .file-body,:host .file .file-head{-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;opacity:0;transition:all var(--app-default-transition-duration) ease-in-out}:host .file.ready .file-body,:host .file.ready .file-head{opacity:1}:host .file .empty-state{align-items:center;background:rgba(var(--color-white-rgb),.3);display:flex;flex-flow:column;height:100%;justify-content:center}:host .file.undocked .empty-state{background:var(--main-background)}:host .file-head{color:var(--text-color-caption);display:flex;flex-flow:row nowrap;margin-bottom:calc(var(--app-pane-padding)/4);width:100%}:host .file-head eo-icon{box-sizing:content-box;padding:var(--app-pane-padding)}:host .file-head .left,:host .file-head .right{border-bottom:4px solid var(--color-primary-3);box-sizing:border-box}:host .file-head .left{background:var(--color-white);display:flex;flex:0 0 auto;flex-flow:row nowrap;max-width:calc(100% - 350px)}:host .file-head .left div.title{cursor:pointer;flex:0 0 auto;padding:var(--app-pane-padding) 0}[dir=ltr] :host .file-head .left div.title{padding-left:0;padding-right:calc(var(--app-pane-padding)*2)}[dir=rtl] :host .file-head .left div.title{padding-left:calc(var(--app-pane-padding)*2);padding-right:0}:host .file-head .left div.title .description,:host .file-head .left div.title .label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}:host .file-head .left div.title .label{font-size:var(--font-title)}:host .file-head .right{display:flex;flex:1 1 auto;flex-flow:column;min-width:350px}:host .file-head .right .fold{background:var(--main-background);color:var(--text-color-caption);display:flex;flex:0 0 auto;justify-content:flex-end;padding-bottom:calc(var(--app-pane-padding)/2);text-align:right}[dir=rtl] :host .file-head .right .fold{text-align:right;text-align:left}:host .file-head .right .fold .created-date{padding-right:5px}:host .file-head .right .actions{align-items:center;background:var(--color-white);display:flex;flex:1 1 auto;justify-content:flex-end;padding:0 var(--app-pane-padding)}:host .file-body{flex:1 1 auto;position:relative}:host .file-body .file-body-wrap,:host .file-body .file-body-wrap .frontPage{bottom:0;left:0;position:absolute;right:0;top:0}:host ::ng-deep .tree .tree-panel-error{align-items:center;color:var(--text-color-caption);display:flex;flex-flow:column;height:100%;justify-content:center}:host ::ng-deep .tree .eo-head{background-color:var(--color-primary-3)}:host ::ng-deep .tree .eo-head .eo-header-info{padding:0}:host ::ng-deep .tree .eo-head .eo-header-info h2{color:var(--color-white);flex:1 1 auto}:host ::ng-deep .tree .eo-head .eo-header-info form.tree-filter-form{align-self:flex-end;flex:0 0 auto;margin-bottom:var(--app-pane-padding);min-width:200px;width:61%}:host ::ng-deep eo-tree{padding:var(--app-pane-padding)}:host ::ng-deep eo-object-details{background:var(--panel-background-grey)}"]
@@ -26282,8 +26392,8 @@
26282
26392
  ];
26283
26393
 
26284
26394
  (function (InboxTypesFilter) {
26285
- InboxTypesFilter["mytasks"] = "mytasks";
26286
- InboxTypesFilter["opentasks"] = "opentasks";
26395
+ InboxTypesFilter["acceptedTasks"] = "acceptedtasks";
26396
+ InboxTypesFilter["unacceptedTasks"] = "unacceptedtasks";
26287
26397
  InboxTypesFilter["absent"] = "isdeputy";
26288
26398
  InboxTypesFilter["overdue"] = "overdue";
26289
26399
  })(exports.InboxTypesFilter || (exports.InboxTypesFilter = {}));
@@ -26360,15 +26470,17 @@
26360
26470
  };
26361
26471
  InboxStateComponent.prototype.itemFilterFields = function (node, item) {
26362
26472
  var value = node.data[exports.InboxTypesFilter[item]];
26473
+ var acceptedAndUnacceptedCombined = this.inboxFilterFields.find(function (filter) { return filter.id === 'acceptedTasks'; }).value
26474
+ && this.inboxFilterFields.find(function (filter) { return filter.id === 'unacceptedTasks'; }).value;
26363
26475
  switch (exports.InboxTypesFilter[item]) {
26364
26476
  case exports.InboxTypesFilter.overdue:
26365
26477
  return node.data.isOverdue();
26366
26478
  case exports.InboxTypesFilter.absent:
26367
26479
  return !!value;
26368
- case exports.InboxTypesFilter.mytasks:
26369
- return !(node.data.type === 'BPM' && !node.data.read);
26370
- case exports.InboxTypesFilter.opentasks:
26371
- return (node.data.type === 'BPM' && !node.data.read);
26480
+ case exports.InboxTypesFilter.acceptedTasks:
26481
+ return acceptedAndUnacceptedCombined ? node.data.type === 'BPM' : node.data.type === 'BPM' && !!node.data.accepted;
26482
+ case exports.InboxTypesFilter.unacceptedTasks:
26483
+ return acceptedAndUnacceptedCombined ? node.data.type === 'BPM' : node.data.type === 'BPM' && !node.data.accepted;
26372
26484
  }
26373
26485
  };
26374
26486
  InboxStateComponent.prototype.fieldFilters = function () {
@@ -26458,8 +26570,8 @@
26458
26570
  InboxStateComponent.decorators = [
26459
26571
  { type: i0.Component, args: [{
26460
26572
  selector: 'eo-inbox-state',
26461
- template: "<eo-undock-split>\n <eo-split [gutterSize]=\"16\" [visibleTransition]=\"true\" [cacheLayout]=\"'inbox.state'\">\n <eo-split-area [size]=\"30\" [minSizePixel]=\"300\">\n <ng-template pTemplate=\"content\">\n <eo-list-container #eoList [applySelection]=\"{out: inboxSelectionId}\">\n <div class=\"eo-header\">\n\n <eo-icon class=\"eo-header-icon\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"eo-header-info\">\n <div class=\"eo-header-title\" translate>eo.inbox.list.title</div>\n </div>\n <div class=\"eo-header-actions\">\n <eo-icon class=\"button primary refresh-button\"\n [ngClass]=\"{inboxChanged: inboxChanged}\"\n (click)=\"cFilter.resetFilter(); refreshGrid()\"\n [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\"\n [iconTitle]=\"('eo.list.refresh' | translate)\"></eo-icon>\n\n <eo-overlay #oFilter class=\"overlay-filter\"\n [iconSrc]=\"'assets/_default/svg/ic_filter.svg'\"\n [iconClass]=\"'primary'\"\n [iconTitle]=\"'eo.list.filter' | translate\">\n <eo-custom-filter #cFilter\n (change)=\"cFilter.updateGrid(eoList.eoGridSubject, $event)\"\n (active)=\"oFilter.onActiveChanged($event)\">\n <eo-text-filter [title]=\"'eo.inbox.filter.title' | translate\"\n [filterParams]=\"defaultFilterParams\" [id]=\"'inbox.text'\"\n [matchFields]=\"['title','description','id']\"></eo-text-filter>\n <eo-set-filter [operator]=\"'AND'\" [id]=\"'inbox.set'\" [filterParams]=\"defaultFilterParams\" [options]=\"inboxFilterFields\"></eo-set-filter>\n <eo-set-filter [operator]=\"'OR'\" [id]=\"'inbox.type'\" [filterParams]=\"defaultFilterParams\" [options]=\"typeFilterFields\"\n [title]=\"'eo.inbox.filter.section.type' | translate\"></eo-set-filter>\n </eo-custom-filter>\n </eo-overlay>\n\n <eo-overlay #oSort class=\"overlay-sort\"\n [iconSrc]=\"'assets/_default/svg/ic_sort.svg'\"\n [iconTitle]=\"'eo.list.sort' | translate\"\n [iconClass]=\"'primary'\">\n <eo-custom-sort #cSort [id]=\"'inbox.sort'\"\n (change)=\"cSort.updateGrid(eoList.eoGrid, $event)\"\n (active)=\"oSort.onActiveChanged($event)\"\n [sortFields]=\"sortFields\"></eo-custom-sort>\n </eo-overlay>\n\n </div>\n </div>\n <div class=\"eo-body\">\n <eo-grid #eoGrid\n *ngIf=\"gridOptions?.rowData\"\n [gridOptions]=\"gridOptions\"\n [fullWidth]=\"true\"\n [showHeader]=\"true\"\n [showFooter]=\"true\"\n [selectFirst]=\"selectFirst\"\n [options]=\"{filterActive: oFilter.active}\"\n (eoGridCountChanged)=\"eoList.onCountChanged($event);onCountChanged($event)\"\n (eoGridSelectionChanged)=\"eoList.onSelectionChanged($event)\"\n (eoGridFocusChanged)=\"eoList.onFocusChanged($event)\">\n <div class=\"header\">\n </div>\n\n <div class=\"footer\">\n <eo-total-count [gridCount]=\"eoList.gridCount\" [outsideGrid]=\"false\" class=\"flex-row\"></eo-total-count>\n </div>\n\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_inbox.svg', text: oFilter.active ? 'eo.no.filter.result' : 'eo.inbox.list.empty'}\"></eo-error-message>\n <eo-reset-filter [isFilterActive]=\"oFilter.active\" (click)=\"cFilter.resetFilter();cSort.reset();refreshGrid()\"></eo-reset-filter>\n </div>\n\n </eo-grid>\n </div>\n </eo-list-container>\n </ng-template>\n </eo-split-area>\n <eo-split-area [size]=\"30\" [minSizePixel]=\"400\">\n <ng-template pTemplate=\"content\">\n <eo-inbox-details [applySelection]=\"{in: inboxSelectionId, out: inboxDmsObjectSelectionId}\" [emptyState]=\"emptyState\">\n <eo-tab-plugin [type]=\"'inbox-details-tab.inbox'\"></eo-tab-plugin>\n </eo-inbox-details>\n </ng-template>\n </eo-split-area>\n <eo-split-area [size]=\"40\" [minSizePixel]=\"400\" [cache]=\"false\">\n <ng-template pTemplate=\"content\">\n\n <eo-object-details [applySelection]=\"{in: inboxDmsObjectSelectionId}\" [cacheLayout]=\"'inbox.state.object-details'\">\n <eo-tab-plugin [type]=\"'object-details-tab.inbox'\"></eo-tab-plugin>\n </eo-object-details>\n </ng-template>\n </eo-split-area>\n </eo-split>\n</eo-undock-split>\n",
26462
- styles: [":host{bottom:var(--app-pane-padding);left:var(--app-pane-padding);position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding)}:host eo-split-area{background-color:var(--panel-background-grey);box-shadow:0 2px 5px 0 rgba(0,0,0,.2)}:host .inboxChanged,:host .inboxChanged:hover{background:var(--color-success);color:#fff}:host ::ng-deep .ag-cell .list-item{align-items:center;display:flex;flex:1;flex-direction:row;height:80px;min-height:0;min-width:0}:host ::ng-deep .ag-cell .list-item[unselectable]{-moz-user-select:none;-webkit-user-select:none;user-select:none}:host ::ng-deep .ag-cell .list-item .content{display:inline-block;flex:1;max-width:none;overflow:hidden;padding:var(--app-pane-padding);text-overflow:ellipsis;white-space:nowrap}:host ::ng-deep .ag-cell .list-item .content .notes>span{-webkit-border-radius:2px;background-color:var(--color-primary-4);border-radius:2px;color:var(--color-white);font-size:var(--font-hint);padding:1px calc(var(--app-pane-padding)/4) 0 calc(var(--app-pane-padding)/4)}:host ::ng-deep .ag-cell .list-item .content .notes.pastDue span.period{background-color:var(--color-error)}:host ::ng-deep .ag-cell .list-item .content .title{font-size:var(--font-body);font-weight:var(--font-weight-bold)}:host ::ng-deep .ag-cell .list-item .content .description{color:var(--text-color-caption);font-size:var(--font-caption)}:host ::ng-deep .ag-cell .list-item.read .title{font-weight:var(--font-weight-normal)}:host ::ng-deep .ag-cell .list-item .meta{align-items:flex-end;display:flex;flex-flow:column;padding:0 calc(var(--app-pane-padding)/2)}:host ::ng-deep .ag-cell .list-item .meta .date{color:rgba(var(--color-black-rgb),.4)}"]
26573
+ template: "<eo-undock-split>\n <eo-split [gutterSize]=\"16\" [visibleTransition]=\"true\" [cacheLayout]=\"'inbox.state'\">\n <eo-split-area [size]=\"30\" [minSizePixel]=\"300\">\n <ng-template pTemplate=\"content\">\n <eo-list-container #eoList [applySelection]=\"{out: inboxSelectionId}\">\n <div class=\"eo-header\">\n\n <eo-icon class=\"eo-header-icon\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"eo-header-info\">\n <div class=\"eo-header-title\" translate>eo.inbox.list.title</div>\n </div>\n <div class=\"eo-header-actions\">\n <eo-icon class=\"button primary refresh-button\"\n [ngClass]=\"{inboxChanged: inboxChanged}\"\n (click)=\"refreshGrid()\"\n [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\"\n [iconTitle]=\"('eo.list.refresh' | translate)\"></eo-icon>\n\n <eo-overlay #oFilter class=\"overlay-filter\"\n [iconSrc]=\"'assets/_default/svg/ic_filter.svg'\"\n [iconClass]=\"'primary'\"\n [iconTitle]=\"'eo.list.filter' | translate\">\n <eo-custom-filter #cFilter\n (change)=\"cFilter.updateGrid(eoList.eoGridSubject, $event)\"\n (active)=\"oFilter.onActiveChanged($event)\">\n <eo-text-filter [title]=\"'eo.inbox.filter.title' | translate\"\n [filterParams]=\"defaultFilterParams\" [id]=\"'inbox.text'\"\n [matchFields]=\"['title','description','id']\" [enableSave]=\"true\"></eo-text-filter>\n <eo-set-filter class=\"type-filters\" [operator]=\"'OR'\" [id]=\"'inbox.type'\" [filterParams]=\"defaultFilterParams\" [options]=\"typeFilterFields\"></eo-set-filter>\n <eo-set-filter class=\"inbox-filters\" [operator]=\"'AND'\" [id]=\"'inbox.set'\" [filterParams]=\"defaultFilterParams\" [options]=\"inboxFilterFields\"></eo-set-filter>\n </eo-custom-filter>\n </eo-overlay>\n\n <eo-overlay #oSort class=\"overlay-sort\"\n [iconSrc]=\"'assets/_default/svg/ic_sort.svg'\"\n [iconTitle]=\"'eo.list.sort' | translate\"\n [iconClass]=\"'primary'\">\n <eo-custom-sort #cSort [id]=\"'inbox.sort'\"\n (change)=\"cSort.updateGrid(eoList.eoGrid, $event)\"\n (active)=\"oSort.onActiveChanged($event)\"\n [sortFields]=\"sortFields\"></eo-custom-sort>\n </eo-overlay>\n\n </div>\n </div>\n <div class=\"eo-body\">\n <eo-grid #eoGrid\n *ngIf=\"gridOptions?.rowData\"\n [gridOptions]=\"gridOptions\"\n [fullWidth]=\"true\"\n [showHeader]=\"true\"\n [showFooter]=\"true\"\n [selectFirst]=\"selectFirst\"\n [options]=\"{filterActive: oFilter.active}\"\n (eoGridCountChanged)=\"eoList.onCountChanged($event);onCountChanged($event)\"\n (eoGridSelectionChanged)=\"eoList.onSelectionChanged($event)\"\n (eoGridFocusChanged)=\"eoList.onFocusChanged($event)\">\n <div class=\"header\">\n </div>\n\n <div class=\"footer\">\n <eo-total-count [gridCount]=\"eoList.gridCount\" [outsideGrid]=\"false\" class=\"flex-row\"></eo-total-count>\n </div>\n\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_inbox.svg', text: oFilter.active ? 'eo.no.filter.result' : 'eo.inbox.list.empty'}\"></eo-error-message>\n <eo-reset-filter [isFilterActive]=\"oFilter.active\" (click)=\"cFilter.resetFilter();cSort.reset();refreshGrid()\"></eo-reset-filter>\n </div>\n\n </eo-grid>\n </div>\n </eo-list-container>\n </ng-template>\n </eo-split-area>\n <eo-split-area [size]=\"30\" [minSizePixel]=\"400\">\n <ng-template pTemplate=\"content\">\n <eo-inbox-details [applySelection]=\"{in: inboxSelectionId, out: inboxDmsObjectSelectionId}\" [emptyState]=\"emptyState\">\n <eo-tab-plugin [type]=\"'inbox-details-tab.inbox'\"></eo-tab-plugin>\n </eo-inbox-details>\n </ng-template>\n </eo-split-area>\n <eo-split-area [size]=\"40\" [minSizePixel]=\"400\" [cache]=\"false\">\n <ng-template pTemplate=\"content\">\n\n <eo-object-details [applySelection]=\"{in: inboxDmsObjectSelectionId}\" [cacheLayout]=\"'inbox.state.object-details'\">\n <eo-tab-plugin [type]=\"'object-details-tab.inbox'\"></eo-tab-plugin>\n </eo-object-details>\n </ng-template>\n </eo-split-area>\n </eo-split>\n</eo-undock-split>\n",
26574
+ styles: [":host{bottom:var(--app-pane-padding);left:var(--app-pane-padding);position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding)}:host eo-split-area{background-color:var(--panel-background-grey);box-shadow:0 2px 5px 0 rgba(0,0,0,.2)}:host .inboxChanged,:host .inboxChanged:hover{background:var(--color-success);color:#fff}:host ::ng-deep .ag-cell .list-item{align-items:center;display:flex;flex:1;flex-direction:row;height:80px;min-height:0;min-width:0}:host ::ng-deep .ag-cell .list-item[unselectable]{-moz-user-select:none;-webkit-user-select:none;user-select:none}:host ::ng-deep .ag-cell .list-item .content{display:inline-block;flex:1;max-width:none;overflow:hidden;padding:var(--app-pane-padding);text-overflow:ellipsis;white-space:nowrap}:host ::ng-deep .ag-cell .list-item .content .notes>span{-webkit-border-radius:2px;background-color:var(--color-primary-4);border-radius:2px;color:var(--color-white);font-size:var(--font-hint);padding:1px calc(var(--app-pane-padding)/4) 0 calc(var(--app-pane-padding)/4)}:host ::ng-deep .ag-cell .list-item .content .notes.pastDue span.period{background-color:var(--color-error)}:host ::ng-deep .ag-cell .list-item .content .title{font-size:var(--font-body);font-weight:var(--font-weight-bold)}:host ::ng-deep .ag-cell .list-item .content .description{color:var(--text-color-caption);font-size:var(--font-caption)}:host ::ng-deep .ag-cell .list-item.read .title{font-weight:var(--font-weight-normal)}:host ::ng-deep .ag-cell .list-item .meta{align-items:flex-end;display:flex;flex-flow:column;padding:0 calc(var(--app-pane-padding)/2)}:host ::ng-deep .ag-cell .list-item .meta .date{color:rgba(var(--color-black-rgb),.4)}:host ::ng-deep .type-filters .option{margin:1.5em 0}:host ::ng-deep .inbox-filters{bottom:15px;left:25px;position:relative}"]
26463
26575
  },] }
26464
26576
  ];
26465
26577
  InboxStateComponent.ctorParameters = function () { return [
@@ -26934,48 +27046,48 @@
26934
27046
  exports.ɵ1 = ɵ1;
26935
27047
  exports.ɵa = PendingChangesGuard;
26936
27048
  exports.ɵb = UploadOverlayGuard;
26937
- exports.ɵba = DownloadOriginalActionComponent;
26938
- exports.ɵbb = DownloadPdfActionComponent;
26939
- exports.ɵbc = OpenDocumentActionComponent;
26940
- exports.ɵbd = EmailActionComponent;
26941
- exports.ɵbe = EmailLinkActionComponent;
26942
- exports.ɵbf = EmailOriginalActionComponent;
26943
- exports.ɵbg = EmailPdfActionComponent;
26944
- exports.ɵbh = ClipboardActionComponent;
26945
- exports.ɵbi = ClipboardLinkActionComponent;
26946
- exports.ɵbj = ClipboardOriginalActionComponent;
26947
- exports.ɵbk = ClipboardPdfActionComponent;
26948
- exports.ɵbl = DeleteActionComponent;
26949
- exports.ɵbm = DeleteComponent;
26950
- exports.ɵbn = OpenVersionsActionComponent;
26951
- exports.ɵbo = RestoreVersionActionComponent;
26952
- exports.ɵbp = DeletePreparedActionComponent;
26953
- exports.ɵbq = AddSubscriptionActionComponent;
26954
- exports.ɵbr = AddSubscriptionComponent;
26955
- exports.ɵbs = RemoveSubscriptionActionComponent;
26956
- exports.ɵbt = WorkflowActionComponent;
26957
- exports.ɵbu = WorkflowComponent;
26958
- exports.ɵbv = CustomActionsComponent;
26959
- exports.ɵbw = AddResubmissionActionComponent;
26960
- exports.ɵbx = AddResubmissionComponent;
26961
- exports.ɵby = UpdateResubmissionActionComponent;
26962
- exports.ɵbz = ShareObjectActionComponent;
27049
+ exports.ɵba = DownloadActionComponent;
27050
+ exports.ɵbb = DownloadOriginalActionComponent;
27051
+ exports.ɵbc = DownloadPdfActionComponent;
27052
+ exports.ɵbd = OpenDocumentActionComponent;
27053
+ exports.ɵbe = EmailActionComponent;
27054
+ exports.ɵbf = EmailLinkActionComponent;
27055
+ exports.ɵbg = EmailOriginalActionComponent;
27056
+ exports.ɵbh = EmailPdfActionComponent;
27057
+ exports.ɵbi = ClipboardActionComponent;
27058
+ exports.ɵbj = ClipboardLinkActionComponent;
27059
+ exports.ɵbk = ClipboardOriginalActionComponent;
27060
+ exports.ɵbl = ClipboardPdfActionComponent;
27061
+ exports.ɵbm = DeleteActionComponent;
27062
+ exports.ɵbn = DeleteComponent;
27063
+ exports.ɵbo = OpenVersionsActionComponent;
27064
+ exports.ɵbp = RestoreVersionActionComponent;
27065
+ exports.ɵbq = DeletePreparedActionComponent;
27066
+ exports.ɵbr = AddSubscriptionActionComponent;
27067
+ exports.ɵbs = AddSubscriptionComponent;
27068
+ exports.ɵbt = RemoveSubscriptionActionComponent;
27069
+ exports.ɵbu = WorkflowActionComponent;
27070
+ exports.ɵbv = WorkflowComponent;
27071
+ exports.ɵbw = CustomActionsComponent;
27072
+ exports.ɵbx = AddResubmissionActionComponent;
27073
+ exports.ɵby = AddResubmissionComponent;
27074
+ exports.ɵbz = UpdateResubmissionActionComponent;
26963
27075
  exports.ɵc = AppShellRoutingModule;
26964
- exports.ɵca = ShareObjectComponent;
26965
- exports.ɵcb = CutActionComponent;
26966
- exports.ɵcc = FinalizeActionComponent;
26967
- exports.ɵcd = DefinalizeActionComponent;
26968
- exports.ɵce = DeleteContentActionComponent;
26969
- exports.ɵcf = UnlockActionComponent;
26970
- exports.ɵcg = SimpleWorkflowActionComponent;
26971
- exports.ɵch = FavoriteActionComponent;
26972
- exports.ɵci = PreventDoubleClickDirective;
26973
- exports.ɵcj = UserAvatarComponent;
26974
- exports.ɵck = TrapFocusDirective;
26975
- exports.ɵcl = EditIconComponent;
26976
- exports.ɵcm = DuetimeInfoComponent;
26977
- exports.ɵcn = PrepareContentExistsInfoComponent;
26978
- exports.ɵco = StoredQueryModule;
27076
+ exports.ɵca = ShareObjectActionComponent;
27077
+ exports.ɵcb = ShareObjectComponent;
27078
+ exports.ɵcc = CutActionComponent;
27079
+ exports.ɵcd = FinalizeActionComponent;
27080
+ exports.ɵce = FinalizeObjectActionComponent;
27081
+ exports.ɵcf = DefinalizeActionComponent;
27082
+ exports.ɵcg = DeleteContentActionComponent;
27083
+ exports.ɵch = UnlockActionComponent;
27084
+ exports.ɵci = SimpleWorkflowActionComponent;
27085
+ exports.ɵcj = FavoriteActionComponent;
27086
+ exports.ɵck = PreventDoubleClickDirective;
27087
+ exports.ɵcl = UserAvatarComponent;
27088
+ exports.ɵcm = EditIconComponent;
27089
+ exports.ɵcn = DuetimeInfoComponent;
27090
+ exports.ɵco = PrepareContentExistsInfoComponent;
26979
27091
  exports.ɵcp = ObjectStateRoutingModule;
26980
27092
  exports.ɵcq = InboxStateRoutingModule;
26981
27093
  exports.ɵcr = PrepareStateRoutingModule;
@@ -26985,25 +27097,25 @@
26985
27097
  exports.ɵe = PipesModule;
26986
27098
  exports.ɵf = UnsubscribeOnDestroy;
26987
27099
  exports.ɵg = QueryScopeSelectComponent;
26988
- exports.ɵh = IndexdataSummaryEntryComponent;
26989
- exports.ɵi = OrderByPipe;
26990
- exports.ɵj = TreeNodeComponent;
26991
- exports.ɵk = DatepickerService;
26992
- exports.ɵl = YearRangeDirective;
26993
- exports.ɵm = ReferenceFinderComponent;
26994
- exports.ɵn = fadeInOut;
26995
- exports.ɵo = ReferenceFinderService;
26996
- exports.ɵp = ReferenceFinderEntryComponent;
26997
- exports.ɵq = DynamicListFilterComponent;
26998
- exports.ɵr = ListFilterComponent;
26999
- exports.ɵs = PaginationComponent;
27000
- exports.ɵt = ProcessFormModule;
27001
- exports.ɵu = ProcessFormComponent;
27002
- exports.ɵv = ActionComponentAnchorDirective;
27003
- exports.ɵw = OpenDocumentComponent;
27004
- exports.ɵx = CopyActionComponent;
27005
- exports.ɵy = OpenContextActionComponent;
27006
- exports.ɵz = DownloadActionComponent;
27100
+ exports.ɵh = TrapFocusDirective;
27101
+ exports.ɵi = IndexdataSummaryEntryComponent;
27102
+ exports.ɵj = OrderByPipe;
27103
+ exports.ɵk = TreeNodeComponent;
27104
+ exports.ɵl = DatepickerService;
27105
+ exports.ɵm = YearRangeDirective;
27106
+ exports.ɵn = ReferenceFinderComponent;
27107
+ exports.ɵo = fadeInOut;
27108
+ exports.ɵp = ReferenceFinderService;
27109
+ exports.ɵq = ReferenceFinderEntryComponent;
27110
+ exports.ɵr = DynamicListFilterComponent;
27111
+ exports.ɵs = ListFilterComponent;
27112
+ exports.ɵt = PaginationComponent;
27113
+ exports.ɵu = ProcessFormModule;
27114
+ exports.ɵv = ProcessFormComponent;
27115
+ exports.ɵw = ActionComponentAnchorDirective;
27116
+ exports.ɵx = OpenDocumentComponent;
27117
+ exports.ɵy = CopyActionComponent;
27118
+ exports.ɵz = OpenContextActionComponent;
27007
27119
 
27008
27120
  Object.defineProperty(exports, '__esModule', { value: true });
27009
27121