@eo-sdk/client 8.16.7 → 8.16.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.d.ts +1 -0
  2. package/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.d.ts +1 -0
  3. package/app/eo-framework-core/api/grid.service.d.ts +2 -0
  4. package/assets/_default/config/main.json +1 -7
  5. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +45 -20
  6. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
  7. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +2 -2
  8. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
  9. package/bundles/eo-sdk-client.umd.js +54 -35
  10. package/bundles/eo-sdk-client.umd.js.map +1 -1
  11. package/bundles/eo-sdk-client.umd.min.js +1 -1
  12. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  13. package/eo-sdk-client.metadata.json +1 -1
  14. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  15. package/esm2015/app/eo-framework/app-shell/app-bar/app-process/app-process.component.js +2 -2
  16. package/esm2015/app/eo-framework/form-elements/form-input/form-input.component.js +2 -2
  17. package/esm2015/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.js +7 -3
  18. package/esm2015/app/eo-framework/form-elements/string/string.component.js +2 -2
  19. package/esm2015/app/eo-framework/grid/column-configurator/column-configurator.component.js +1 -1
  20. package/esm2015/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.js +4 -2
  21. package/esm2015/app/eo-framework/grid/filters/list-filter.component.js +2 -2
  22. package/esm2015/app/eo-framework/inbox-details/inbox-details.component.js +5 -1
  23. package/esm2015/app/eo-framework/object-form/object-form/form-element/form-element.component.js +5 -2
  24. package/esm2015/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.js +3 -2
  25. package/esm2015/app/eo-framework-core/api/grid.service.js +30 -26
  26. package/esm2015/app/eo-framework-core/api/plugins.service.js +2 -1
  27. package/esm2015/projects/eo-sdk/core/lib/service/auth/auth.service.js +5 -5
  28. package/esm2015/projects/eo-sdk/core/lib/service/backend/backend.service.js +21 -14
  29. package/esm2015/projects/eo-sdk/core/lib/service/config/config.service.js +22 -4
  30. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +45 -20
  31. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
  32. package/fesm2015/eo-sdk-client.js +54 -35
  33. package/fesm2015/eo-sdk-client.js.map +1 -1
  34. package/package.json +2 -2
  35. package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.metadata.json +1 -1
  36. package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts +2 -0
  37. package/projects/eo-sdk/core/lib/service/config/config.service.d.ts +5 -0
  38. package/projects/eo-sdk/core/package.json +1 -1
  39. package/scss/_form.scss +2 -2
  40. package/styles.css +1 -1
@@ -1357,6 +1357,7 @@
1357
1357
  return {
1358
1358
  serviceBase: this.backend.getServiceBase()
1359
1359
  // todo: do we have to provide the plugin developers with these informations?
1360
+ // after speaking to Andreas also removed from documentation
1360
1361
  // pluginsBase: $eoConfig.getPluginBase(),
1361
1362
  // pluginStatesBase: $eoConfig.getPluginStatesBase(),
1362
1363
  // themeBase: $eoConfig.getThemeBase()
@@ -2288,14 +2289,14 @@
2288
2289
  return CellRenderer[type + 'CellRenderer'](Object.assign({}, param, newParam));
2289
2290
  };
2290
2291
  CellRenderer.filesizeCellRenderer = function (param) {
2291
- if (param.value === null) {
2292
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2292
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2293
+ return this.noValueRenderer(param);
2293
2294
  }
2294
2295
  return param.value ? param.context.fileSizePipe.transform(param.value) : '';
2295
2296
  };
2296
2297
  CellRenderer.numberCellRenderer = function (param) {
2297
- if (param.value === null) {
2298
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2298
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2299
+ return this.noValueRenderer(param);
2299
2300
  }
2300
2301
  if (param.value || param.value === 0) {
2301
2302
  if (param.value.operator) {
@@ -2323,14 +2324,14 @@
2323
2324
  return context.numberPipe.transform(value, grouping, pattern, scale);
2324
2325
  };
2325
2326
  CellRenderer.stringCellrenderer = function (param) {
2326
- if (param.value === null) {
2327
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2327
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2328
+ return this.noValueRenderer(param);
2328
2329
  }
2329
2330
  return GridService.escapeHtml(param.value);
2330
2331
  };
2331
2332
  CellRenderer.typeCellRenderer = function (param) {
2332
- if (param.value === null) {
2333
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2333
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2334
+ return this.noValueRenderer(param);
2334
2335
  }
2335
2336
  var val = '';
2336
2337
  if (param.value) {
@@ -2343,8 +2344,8 @@
2343
2344
  return val;
2344
2345
  };
2345
2346
  CellRenderer.iconCellRenderer = function (param) {
2346
- if (param.value === null) {
2347
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2347
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2348
+ return this.noValueRenderer(param);
2348
2349
  }
2349
2350
  var val = '';
2350
2351
  if (param.value && (param.value.url || param.value.iconId)) {
@@ -2360,24 +2361,24 @@
2360
2361
  return val;
2361
2362
  };
2362
2363
  CellRenderer.emailCellRenderer = function (param) {
2363
- if (param.value === null) {
2364
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2364
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2365
+ return this.noValueRenderer(param);
2365
2366
  }
2366
2367
  return param.value
2367
2368
  ? "<a href=\"mailto:" + param.value + "\">" + GridService.escapeHtml(param.value) + "</a>"
2368
2369
  : '';
2369
2370
  };
2370
2371
  CellRenderer.urlCellRenderer = function (param) {
2371
- if (param.value === null) {
2372
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2372
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2373
+ return this.noValueRenderer(param);
2373
2374
  }
2374
2375
  return param.value
2375
2376
  ? "<a target=\"_blank \" href=\"" + param.value + "\">" + GridService.escapeHtml(param.value) + "</a>"
2376
2377
  : '';
2377
2378
  };
2378
2379
  CellRenderer.dateTimeCellRenderer = function (param) {
2379
- if (param.value === null) {
2380
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2380
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2381
+ return this.noValueRenderer(param);
2381
2382
  }
2382
2383
  if (param.value) {
2383
2384
  if (param.value.operator) {
@@ -2402,14 +2403,14 @@
2402
2403
  }
2403
2404
  };
2404
2405
  CellRenderer.dateTimeCellRendererTemplate = function (value, context, pattern) {
2405
- if (value === null) {
2406
+ if (value === null && CellRenderer.situation === 'SEARCH') {
2406
2407
  return "<span class=\"no-value\">" + context.translate.instant('eo.form.input.null') + "</span>";
2407
2408
  }
2408
2409
  return "<span date=\"" + value + "\">" + context.datePipe.transform(value, pattern) + "</span>";
2409
2410
  };
2410
2411
  CellRenderer.booleanCellRenderer = function (param) {
2411
- if (param.value === null) {
2412
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2412
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2413
+ return this.noValueRenderer(param);
2413
2414
  }
2414
2415
  var val = "<path class=\"background\" d=\"M19,3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h14c1.1,0,2-0.9,2-2V5C21,3.9,20.1,3,19,3z\"/>";
2415
2416
  if (param.value === true || param.value === 'true') {
@@ -2421,8 +2422,8 @@
2421
2422
  return "<svg class=\"checkbox\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" xmlns=\"http://www.w3.org/2000/svg\">" + val + "</svg>";
2422
2423
  };
2423
2424
  CellRenderer.multiSelectCellRenderer = function (param) {
2424
- if (param.value === null) {
2425
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2425
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2426
+ return this.noValueRenderer(param);
2426
2427
  }
2427
2428
  var val = '';
2428
2429
  if (param.value) {
@@ -2433,8 +2434,8 @@
2433
2434
  return val;
2434
2435
  };
2435
2436
  CellRenderer.linkCellRenderer = function (param) {
2436
- if (param.value === null) {
2437
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2437
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2438
+ return this.noValueRenderer(param);
2438
2439
  }
2439
2440
  var val = '';
2440
2441
  if (param.value) {
@@ -2456,8 +2457,8 @@
2456
2457
  return val;
2457
2458
  };
2458
2459
  CellRenderer.referenceCellRenderer = function (param) {
2459
- if (param.value === null) {
2460
- return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2460
+ if (param.value === null && CellRenderer.situation === 'SEARCH') {
2461
+ return this.noValueRenderer(param);
2461
2462
  }
2462
2463
  var text = '';
2463
2464
  var value = param.data ? param.data[param.colDef.field] : '';
@@ -2480,8 +2481,12 @@
2480
2481
  }
2481
2482
  return text || param.value;
2482
2483
  };
2484
+ CellRenderer.noValueRenderer = function (param) {
2485
+ return "<span class=\"no-value\">" + param.context.translate.instant('eo.form.input.null') + "</span>";
2486
+ };
2483
2487
  return CellRenderer;
2484
2488
  }());
2489
+ CellRenderer.situation = '';
2485
2490
 
2486
2491
  /**
2487
2492
  * EditingObserver service is used to track changes made inside the application, that should prevent
@@ -5634,7 +5639,7 @@
5634
5639
  AppProcessComponent.decorators = [
5635
5640
  { type: i0.Component, args: [{
5636
5641
  selector: 'eo-app-process',
5637
- template: "<eo-dialog [title]=\"'eo.bar.button.execute.actions.tooltip' | translate\"\n [visible]=\"true\"\n [minWidth]=\"400\"\n [styleClass]=\"'more-actions'\"\n (hide)=\"close($event)\">\n\n <section *ngIf=\"processes?.length; else loading\">\n\n <div class=\"process-item\" *ngFor=\"let process of processes\" (click)=\"selectProcess(process)\">\n <eo-icon [iconId]=\"process.iconid\" *ngIf=\"process.iconid; else defaulticon\"></eo-icon>\n <ng-template #defaulticon><eo-icon [iconSrc]=\"'assets/_default/svg/ic_bpm.svg'\"></eo-icon></ng-template>\n <div class=\"pi-content\">\n <div class=\"title\">{{process.title}}</div>\n <div class=\"description\">{{process.description}}</div>\n </div>\n </div>\n\n </section>\n\n <ng-container *ngIf=\"!processForm; else tplProcessForm\" class=\"select-process\"></ng-container>\n\n <ng-template #loading>\n <eo-loading-spinner [size]=\"'medium'\"></eo-loading-spinner>\n </ng-template>\n\n\n <ng-template #tplProcessForm>\n\n <eo-dialog [title]=\"selectedProcess?.title\"\n [subtitle]=\"selectedProcess?.description\"\n [visible]=\"true\"\n [dirtyCheck]=\"pendingTaskIds\"\n [minWidth]=\"1000\"\n [minHeight]=\"630\"\n [styleClass]=\"'process-form-dialog'\"\n (hide)=\"cancelDialog()\" #dialog>\n\n <eo-process-form [formOptions]=\"processForm\"\n (onResetForm)=\"formReset($event)\"\n (onCancel)=\"(dialog.visible = false)\"\n (onSaveForm)=\"startProcessWithFormData($event)\"\n (statusChanged)=\"onIndexDataChanged($event)\">\n </eo-process-form>\n </eo-dialog>\n </ng-template>\n\n</eo-dialog>\n",
5642
+ template: "<eo-dialog [title]=\"'eo.bar.button.execute.actions.tooltip' | translate\"\n [visible]=\"true\"\n [minWidth]=\"400\"\n [styleClass]=\"'more-actions'\"\n (hide)=\"close($event)\">\n\n <section *ngIf=\"processes?.length; else loading\">\n\n <div class=\"process-item\" *ngFor=\"let process of processes\" (click)=\"selectProcess(process)\">\n <eo-icon [iconId]=\"process.iconid\" *ngIf=\"process.iconid; else defaulticon\"></eo-icon>\n <ng-template #defaulticon><eo-icon [iconSrc]=\"'assets/_default/svg/ic_bpm.svg'\"></eo-icon></ng-template>\n <div class=\"pi-content\">\n <div class=\"title\">{{process.title}}</div>\n <div class=\"description\">{{process.description}}</div>\n </div>\n </div>\n\n </section>\n\n <ng-container *ngIf=\"!processForm; else tplProcessForm\" class=\"select-process\"></ng-container>\n\n <ng-template #loading>\n <eo-loading-spinner [size]=\"'medium'\"></eo-loading-spinner>\n </ng-template>\n\n\n <ng-template #tplProcessForm>\n\n <eo-dialog [title]=\"selectedProcess?.title\"\n [subtitle]=\"selectedProcess?.description\"\n [visible]=\"true\"\n [dirtyCheck]=\"pendingTaskIds\"\n [minWidth]=\"1000\"\n [styleClass]=\"'process-form-dialog'\"\n (hide)=\"cancelDialog()\" #dialog>\n\n <eo-process-form [formOptions]=\"processForm\"\n (onResetForm)=\"formReset($event)\"\n (onCancel)=\"(dialog.visible = false)\"\n (onSaveForm)=\"startProcessWithFormData($event)\"\n (statusChanged)=\"onIndexDataChanged($event)\">\n </eo-process-form>\n </eo-dialog>\n </ng-template>\n\n</eo-dialog>\n",
5638
5643
  styles: [".process-item{align-items:center;border-bottom:1px solid var(--list-item-border-color);cursor:pointer;display:flex;padding:var(--app-pane-padding)}.process-item:hover{background-color:var(--list-item-hover-background)}.process-item eo-icon{opacity:.7}.process-item .pi-content{padding:0 var(--app-pane-padding)}.process-item .pi-content .description{color:var(--text-color-caption)}eo-loading-spinner{display:flex;justify-content:center;padding:var(--app-pane-padding)}"]
5639
5644
  },] }
5640
5645
  ];
@@ -7635,7 +7640,7 @@
7635
7640
  FormInputComponent.decorators = [
7636
7641
  { type: i0.Component, args: [{
7637
7642
  selector: 'eo-form-input',
7638
- template: "<div class=\"fe-wrapper\" eoInputFocus>\n <div class=\"tag\" *ngIf=\"tag\" title=\"{{tag.title}}\">{{tag.label}}</div>\n <label class=\"form-input__label\" (click)=\"toggle()\">{{_label}}</label>\n <div class=\"control\">\n <ng-content *ngIf=\"!toggled; else tplnull\"></ng-content>\n\n <ng-template #tplnull><span translate>eo.form.input.null</span></ng-template>\n </div>\n</div>\n<div class=\"description\" *ngIf=\"description\">{{description}}</div>\n\n",
7643
+ template: "<div class=\"fe-wrapper\" eoInputFocus [disabled]=\"isDisabled\">\n <div class=\"tag\" *ngIf=\"tag\" title=\"{{tag.title}}\">{{tag.label}}</div>\n <label class=\"form-input__label\" (click)=\"toggle()\">{{_label}}</label>\n <div class=\"control\">\n <ng-content *ngIf=\"!toggled; else tplnull\"></ng-content>\n\n <ng-template #tplnull><span translate>eo.form.input.null</span></ng-template>\n </div>\n</div>\n<div class=\"description\" *ngIf=\"description\">{{description}}</div>\n\n",
7639
7644
  styles: [":host .fe-wrapper{-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;border-bottom:1px solid rgba(var(--color-black-rgb),.15);display:flex;flex-flow:row nowrap;padding:calc(var(--app-pane-padding)/4) 0;transition:all var(--app-default-transition-duration) ease-in-out}:host .fe-wrapper.focused{border-color:var(--color-accent)}:host .fe-wrapper.focused>label{color:var(--color-accent)}:host .fe-wrapper>div.control{flex:1 1 auto;order:1;padding:0 calc(var(--app-pane-padding)/4)}:host .fe-wrapper>div.control>span{background-color:var(--color-accent);border-radius:2px;color:var(--color-white);display:inline-block;font-size:var(--font-hint);padding:0 calc(var(--app-pane-padding)/4)}:host .fe-wrapper>.form-input__label{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-moz-user-select:none;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-user-select:none;border-radius:2px;color:var(--text-color-caption);flex:0 1 auto;font-size:var(--font-caption);margin-right:3px;order:2;padding:2px calc(var(--app-pane-padding)/4);text-align:end;transition:all var(--app-default-transition-duration) ease-in-out;user-select:none}:host .fe-wrapper>.tag{background-color:var(--color-primary-2);border-radius:2px;color:var(--color-white);cursor:default;display:inline-block;flex:0 0 auto;font-size:var(--font-hint);line-height:1em;order:3;padding:2px}:host.checkbox .fe-wrapper>label{text-align:start}:host .description{color:var(--text-color-caption);font-size:var(--font-hint);font-style:italic;padding:calc(var(--app-pane-padding)/8) calc(var(--app-pane-padding)/8) 0 calc(var(--app-pane-padding)/8)}:host.required .fe-wrapper>label{background-color:rgba(var(--color-black-rgb),.06)}:host.required .fe-wrapper>label:after{content:\"*\";font-weight:700;padding:0 4px}:host.invalid .fe-wrapper{background:rgba(var(--color-error),.15);border-color:var(--color-error)}:host.invalid .fe-wrapper>label{background-color:var(--color-error);color:var(--color-white);margin:0 4px}:host.invalid .fe-wrapper>label:after{content:\"!\";margin-left:calc(var(--app-pane-padding)/2)}:host.disabled{opacity:.5}:host.checkbox .fe-wrapper{border-color:transparent!important}:host.checkbox .fe-wrapper>div.control{flex:0 0 auto}:host.checkbox .fe-wrapper>label{flex:0 1 auto}:host-context(.dark) .fe-wrapper{border-color:rgba(var(--color-white-rgb),.54)}:host-context(.dark) .fe-wrapper>label{color:rgba(var(--color-white-rgb),.84)}:host-context(.dark) .fe-wrapper.focused{border-color:var(--color-white)}:host-context(.dark) .fe-wrapper.focused>label{color:var(--color-white)}:host-context(.dark) ::ng-deep .ui-dropdown.range{background-color:rgba(var(--color-white-rgb),.1)}:host-context(.fe-wrapper) .fe-wrapper{background:transparent;padding:0}:host ::ng-deep .ui-inputtext,:host ::ng-deep input{align-items:center;border:0!important;display:flex;flex-wrap:wrap;padding:0;width:100%}:host ::ng-deep input{background-color:transparent}:host ::ng-deep button.ui-button{background:rgba(var(--color-black-rgb),.08);border:0;border-radius:2px;color:var(--text-color-caption);cursor:pointer;height:20px;width:20px}:host ::ng-deep button.ui-button.ui-spinner-button:enabled:hover,:host ::ng-deep button.ui-button:enabled:active,:host ::ng-deep button.ui-button:enabled:focus,:host ::ng-deep button.ui-button:enabled:hover{background:var(--color-accent);border:0;color:var(--color-white)}:host ::ng-deep button.ui-button .fa{color:currentColor!important}:host ::ng-deep button.ui-button eo-icon{height:16px;margin:auto;width:16px}:host ::ng-deep .ui-dropdown.range{-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-black-rgb),.1);border:0;border-radius:2px;margin:0 4px;transition:all var(--app-default-transition-duration) ease-in-out;width:20px!important}:host ::ng-deep .ui-dropdown.range.ui-state-focus{background:var(--color-accent)!important}:host ::ng-deep .ui-dropdown.range.ui-state-focus label{color:var(--color-primary-4)}:host ::ng-deep .ui-dropdown.range:not(.ui-state-disabled):hover{background:rgba(var(--color-black-rgb),.2)}:host ::ng-deep .ui-dropdown.range .ui-dropdown-panel .ui-dropdown-items .ui-dropdown-item{padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}:host ::ng-deep .ui-dropdown.range .ui-dropdown-trigger{display:none}:host ::ng-deep .ui-dropdown.range .ui-dropdown-item,:host ::ng-deep .ui-dropdown.range label{display:block;font-family:monospace;text-align:center}:host ::ng-deep .ui-dropdown.range label:after{display:none}"]
7640
7645
  },] }
7641
7646
  ];
@@ -7659,9 +7664,12 @@
7659
7664
  this.renderer = renderer;
7660
7665
  this.element = element;
7661
7666
  this.formInput = this.element.nativeElement;
7667
+ this.disabled = false;
7662
7668
  }
7663
7669
  InputFocusDirective.prototype.onFocusIn = function (evt) {
7664
- this.renderer.addClass(this.formInput, 'focused');
7670
+ if (!this.disabled) {
7671
+ this.renderer.addClass(this.formInput, 'focused');
7672
+ }
7665
7673
  };
7666
7674
  InputFocusDirective.prototype.onFocusOut = function (evt) {
7667
7675
  this.renderer.removeClass(this.formInput, 'focused');
@@ -7678,6 +7686,7 @@
7678
7686
  { type: i0.ElementRef }
7679
7687
  ]; };
7680
7688
  InputFocusDirective.propDecorators = {
7689
+ disabled: [{ type: i0.Input }],
7681
7690
  onFocusIn: [{ type: i0.HostListener, args: ['focusin', ['$event'],] }],
7682
7691
  onFocusOut: [{ type: i0.HostListener, args: ['focusout', ['$event'],] }]
7683
7692
  };
@@ -9260,7 +9269,7 @@
9260
9269
  StringComponent.decorators = [
9261
9270
  { type: i0.Component, args: [{
9262
9271
  selector: 'eo-string',
9263
- template: "<div class=\"eo-form-string\">\n\n <input *ngIf=\"!multiline && !multiselect && !autocomplete\"\n type=\"text\"\n pInputText\n (blur)=\"onBlur()\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"/>\n\n <!-- single line input with autocomplete -->\n <p-autoComplete *ngIf=\"!multiline && !multiselect && autocomplete\"\n #autocomplete\n [(ngModel)]=\"value\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [suggestions]=\"autocompleteRes\"\n (onBlur)=\"onBlur()\"\n (onSelect)=\"onValueChange($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\">\n </p-autoComplete>\n\n <!-- single line input with multiselect-->\n <p-chips *ngIf=\"!multiline && multiselect && !autocomplete\"\n [(ngModel)]=\"value\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\">\n </p-chips>\n\n <p-autoComplete *ngIf=\"!multiline && multiselect && autocomplete\"\n [(ngModel)]=\"value\"\n [suggestions]=\"autocompleteRes\"\n [minLength]=\"1\"\n [multiple]=\"true\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\"\n (keyup.enter)=\"onKeyUpEnter($event)\">\n </p-autoComplete>\n\n <!-- multi line text inputs -->\n <textarea class=\"input-textarea size-{{size}}\" pInputTextarea\n *ngIf=\"multiline\"\n (blur)=\"onBlur()\"\n [(ngModel)]=\"value\"\n [readonly]=\"readonly\"\n (ngModelChange)=\"onValueChange($event)\"></textarea>\n\n <div class=\"classify\" [ngClass]=\"{empty: !value || situation === 'SEARCH'}\">\n <a href=\"mailto:{{formatedValue}}\" *ngIf=\"classification === 'email' && valid\">\n <i class=\"fa fa-envelope-o\"></i>\n </a>\n <a target=\"_blank\" href=\"{{value}}\" *ngIf=\"classification === 'url' && valid\">\n <i class=\"fa fa-globe\"></i>\n </a>\n </div>\n\n</div>\n",
9272
+ template: "<div class=\"eo-form-string\">\n\n <input *ngIf=\"!multiline && !multiselect && !autocomplete\"\n type=\"text\"\n pInputText\n (blur)=\"onBlur()\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"/>\n\n <!-- single line input with autocomplete -->\n <p-autoComplete *ngIf=\"!multiline && !multiselect && autocomplete\"\n #autocomplete\n [(ngModel)]=\"value\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [suggestions]=\"autocompleteRes\"\n (onBlur)=\"onBlur()\"\n (onSelect)=\"onValueChange($event)\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\">\n </p-autoComplete>\n\n <!-- single line input with multiselect-->\n <p-chips *ngIf=\"!multiline && multiselect && !autocomplete\"\n [(ngModel)]=\"value\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\">\n </p-chips>\n\n <p-autoComplete *ngIf=\"!multiline && multiselect && autocomplete\"\n [(ngModel)]=\"value\"\n [suggestions]=\"autocompleteRes\"\n [minLength]=\"1\"\n [multiple]=\"true\"\n [minLength]=\"3\"\n [delay]=\"500\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n (onBlur)=\"onBlur()\"\n (ngModelChange)=\"onValueChange($event)\"\n (completeMethod)=\"autocompleteFn($event)\"\n (keyup.enter)=\"onKeyUpEnter($event)\">\n </p-autoComplete>\n\n <!-- multi line text inputs -->\n <textarea class=\"input-textarea size-{{size}}\" pInputTextarea\n *ngIf=\"multiline\"\n (blur)=\"onBlur()\"\n [(ngModel)]=\"value\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n (ngModelChange)=\"onValueChange($event)\"></textarea>\n\n <div class=\"classify\" [ngClass]=\"{empty: !value || situation === 'SEARCH'}\">\n <a href=\"mailto:{{formatedValue}}\" *ngIf=\"classification === 'email' && valid\">\n <i class=\"fa fa-envelope-o\"></i>\n </a>\n <a target=\"_blank\" href=\"{{value}}\" *ngIf=\"classification === 'url' && valid\">\n <i class=\"fa fa-globe\"></i>\n </a>\n </div>\n\n</div>\n",
9264
9273
  providers: [
9265
9274
  {
9266
9275
  provide: forms.NG_VALUE_ACCESSOR,
@@ -11082,6 +11091,9 @@
11082
11091
  this.formElementRef._eoFormElement.maxlen = 32;
11083
11092
  }
11084
11093
  this.fetchTags();
11094
+ if (this.formElementRef._eoFormElement.readonly && this.formElementRef._eoFormElement.required) {
11095
+ this.formElementRef._eoFormElement.required = false;
11096
+ }
11085
11097
  }
11086
11098
  },
11087
11099
  enumerable: false,
@@ -11137,7 +11149,7 @@
11137
11149
  FormElementComponent.decorators = [
11138
11150
  { type: i0.Component, args: [{
11139
11151
  selector: 'eo-form-element',
11140
- template: "<div class=\"form-element\" [formGroup]=\"element\" *ngIf=\"element\">\n\n <div class=\"form-field t-{{formElementRef._eoFormElement.type}}\" #formField\n [ngSwitch]=\"formElementRef._eoFormElement.type\"\n [ngClass]=\"{disabled: !!formElementRef._eoFormElement.readonly}\">\n\n <!-- STRING -->\n <eo-form-input *ngSwitchCase=\"'STRING'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-string\n *ngIf=\"!formElementRef._eoFormElement.reference && formElementRef._eoFormElement.classification !== 'selector'\"\n [situation]=\"element._eoFormControlWrapper.situation\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [autocomplete]=\"formElementRef._eoFormElement.autocomplete\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [multiline]=\"formElementRef._eoFormElement.multiline\"\n [classification]=\"formElementRef._eoFormElement.classification\"\n [regex]=\"formElementRef._eoFormElement.regex\"\n [qname]=\"formElementRef._eoFormElement.qname\"\n [size]=\"formElementRef._eoFormElement.size\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [minLength]=\"formElementRef._eoFormElement.minlen\"\n [maxLength]=\"formElementRef._eoFormElement.maxlen\"\n ></eo-string>\n\n <!-- Dynamic List -->\n <eo-dynamic-list\n *ngIf=\"!formElementRef._eoFormElement.reference && formElementRef._eoFormElement.classification === 'selector'\"\n [situation]=\"element._eoFormControlWrapper.situation\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [filterFunction]=\"formElementRef._eoFormElement.filterFunction\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [listObject]=\"formElementRef._eoFormElement.list\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"></eo-dynamic-list>\n\n\n <!-- Reference -->\n <eo-reference *ngIf=\"formElementRef._eoFormElement.reference\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [reference]=\"formElementRef._eoFormElement.reference\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [minLength]=\"formElementRef._eoFormElement.minlen\"\n [maxLength]=\"formElementRef._eoFormElement.maxlen\"\n ></eo-reference>\n </eo-form-input>\n\n <!-- ID-Reference -->\n <eo-form-input *ngSwitchCase=\"'REFERENCE'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-id-reference\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [situation]=\"element._eoFormControlWrapper.situation\"\n [dataToRender]=\"formElementRef._eoFormElement.dataToRender\"\n [reference]=\"formElementRef._eoFormElement.reference\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [contextId]=\"formElementRef._eoFormElement.contextId\"\n [exceptionIDs]=\"formElementRef._eoFormElement.exceptionIDs\"\n [queryFilters]=\"formElementRef._eoFormElement.queryFilters\"\n [objectTypesFilter]=\"formElementRef._eoFormElement.objectTypesFilter\"\n ></eo-id-reference>\n </eo-form-input>\n\n <!-- ID -->\n <eo-form-input *ngSwitchCase=\"'ID'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-string\n [situation]=\"element._eoFormControlWrapper.situation\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [autocomplete]=\"formElementRef._eoFormElement.autocomplete\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [regex]=\"'^[0-9a-fA-F]*$'\"\n [qname]=\"formElementRef._eoFormElement.qname\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [minLength]=\"32\"\n [maxLength]=\"32\"\n ></eo-string>\n\n </eo-form-input>\n\n\n <!-- BOOLEAN -->\n <eo-form-input *ngSwitchCase=\"'BOOLEAN'\" [tag]=\"tag\" class=\"checkbox\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n [required]=\"formElementRef._eoFormElement.required\"\n (onToggleLabel)=\"labelToggled($event)\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-checkbox [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [tristate]=\"true\"></eo-checkbox>\n </eo-form-input>\n\n <!-- CODESYSTEM -->\n <eo-form-input *ngSwitchCase=\"'CODESYSTEM'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-codesystem [situation]=\"element._eoFormControlWrapper.situation\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [codesystem]=\"formElementRef._eoFormElement.codesystem\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [filterFunction]=\"formElementRef._eoFormElement.filterFunction\"\n [disablingFilterFunction]=\"formElementRef._eoFormElement.disablingFilterFunction\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-codesystem>\n </eo-form-input>\n\n <!-- ORGANIZATION -->\n <eo-form-input *ngSwitchCase=\"'ORGANIZATION'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-organization [situation]=\"element._eoFormControlWrapper.situation\"\n [dataMeta]=\"formElementRef._eoFormElement.dataMeta\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [filterObject]=\"formElementRef._eoFormElement.filter\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n (onDataMetaChanged)=\"organizationDataMetaResolved($event)\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-organization>\n </eo-form-input>\n\n <!-- NUMBER -->\n\n <eo-form-input *ngSwitchCase=\"'NUMBER'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-number *ngIf=\"situation !== 'SEARCH'\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [precision]=\"formElementRef._eoFormElement.precision\"\n [scale]=\"formElementRef._eoFormElement.scale\"\n [grouping]=\"formElementRef._eoFormElement.grouping\"\n [pattern]=\"formElementRef._eoFormElement.pattern\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\">\n </eo-number>\n\n <eo-number-range *ngIf=\"situation === 'SEARCH'\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [precision]=\"formElementRef._eoFormElement.precision\"\n [scale]=\"formElementRef._eoFormElement.scale\"\n [grouping]=\"formElementRef._eoFormElement.grouping\"\n [pattern]=\"formElementRef._eoFormElement.pattern\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-number-range>\n </eo-form-input>\n\n <!-- TABLE -->\n <div class=\"table\" *ngSwitchCase=\"'TABLE'\">\n <eo-table [params]=\"{\n situation: element._eoFormControlWrapper.situation,\n element: formElementRef._eoFormElement,\n size: formElementRef._eoFormElement.size,\n object: formElementRef._eoFormElement.object\n }\" [formControlName]=\"element._eoFormControlWrapper.controlName\"></eo-table>\n </div>\n\n <!-- DATE AND DATETIME -->\n <eo-form-input *ngSwitchCase=\"'DATETIME'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-datetime *ngIf=\"situation !== 'SEARCH'\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [withTime]=\"formElementRef._eoFormElement.withtime\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [validateDatabaseTimeRange]=\"formElementRef._eoFormElement.withtime\"\n ></eo-datetime>\n\n <eo-datetime-range *ngIf=\"situation === 'SEARCH'\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [withTime]=\"formElementRef._eoFormElement.withtime\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-datetime-range>\n </eo-form-input>\n\n\n <!-- print out the type if it's not matching anything -->\n <div *ngSwitchDefault><b>{{formElementRef._eoFormElement.type}}</b></div>\n\n\n <!-- the fields description -->\n <div class=\"description\" *ngIf=\"formElementRef._eoFormElement.description\">{{formElementRef._eoFormElement.description}}</div>\n\n <!-- error/validation messages -->\n <div class=\"err-msg\" *ngIf=\"formElementRef.errors\">\n\n <div *ngIf=\"formElementRef.errors.daterange\" translate>eo.form.property.daterange.invalid</div>\n <div *ngIf=\"formElementRef.errors.numberrange\" translate>eo.form.property.numberrange.invalid</div>\n <div *ngIf=\"formElementRef.errors.number\" translate>eo.form.property.number</div>\n <div *ngIf=\"formElementRef.errors.precision\" translate\n [translateParams]=\"formElementRef.errors.precision.translateValues\">{{formElementRef.errors.precision.translateKey}}</div>\n <div *ngIf=\"formElementRef.errors.scale\" translate\n [translateParams]=\"formElementRef.errors.scale.translateValues\">{{formElementRef.errors.scale.translateKey}}</div>\n\n <div *ngIf=\"formElementRef.errors.regex || formElementRef.errors.pattern\" translate>eo.form.property.string.regex.nomatch</div>\n <div *ngIf=\"formElementRef.errors.classificationemail\" translate>eo.form.property.string.error.classification.email</div>\n <div *ngIf=\"formElementRef.errors.classificationurl\" translate>eo.form.property.string.error.classification.url</div>\n <div *ngIf=\"formElementRef.errors.onlyWhitespaces\" translate>eo.form.property.string.error.whitespaces</div>\n <div *ngIf=\"formElementRef.errors.datecontrol\" translate>eo.form.property.date.invalid</div>\n <div *ngIf=\"formElementRef.errors.codesystem\" translate>eo.form.property.codesystem.value.invalid</div>\n <div *ngIf=\"formElementRef.errors.eoformScript\">{{formElementRef._eoFormElement.error.msg}}</div>\n <div *ngIf=\"formElementRef.errors.required\" translate>eo.form.property.required</div>\n <div *ngIf=\"formElementRef.errors.maxlength\" translate [translateParams]=\"{maxlength: formElementRef._eoFormElement.maxlen}\">eo.form.property.maxlength</div>\n <div *ngIf=\"formElementRef.errors.minlength\" translate [translateParams]=\"{minlength: formElementRef._eoFormElement.minlen}\">eo.form.property.minlength</div>\n <div *ngIf=\"formElementRef.errors.deletedIDReference\" translate>eo.form.property.idreference.deleted</div>\n <div *ngIf=\"formElementRef.errors.deletedOrgObject\" translate>eo.form.property.orgobject.deleted</div>\n </div>\n\n </div>\n</div>\n",
11152
+ template: "<div class=\"form-element\" [formGroup]=\"element\" *ngIf=\"element\">\n\n <div class=\"form-field t-{{formElementRef._eoFormElement.type}}\" #formField\n [ngSwitch]=\"formElementRef._eoFormElement.type\"\n [ngClass]=\"{disabled: !!formElementRef._eoFormElement.readonly}\">\n\n <!-- STRING -->\n <eo-form-input *ngSwitchCase=\"'STRING'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-string\n *ngIf=\"!formElementRef._eoFormElement.reference && formElementRef._eoFormElement.classification !== 'selector'\"\n [situation]=\"element._eoFormControlWrapper.situation\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [autocomplete]=\"formElementRef._eoFormElement.autocomplete\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [multiline]=\"formElementRef._eoFormElement.multiline\"\n [classification]=\"formElementRef._eoFormElement.classification\"\n [regex]=\"formElementRef._eoFormElement.regex\"\n [qname]=\"formElementRef._eoFormElement.qname\"\n [size]=\"formElementRef._eoFormElement.size\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [minLength]=\"formElementRef._eoFormElement.minlen\"\n [maxLength]=\"formElementRef._eoFormElement.maxlen\"\n ></eo-string>\n\n <!-- Dynamic List -->\n <eo-dynamic-list\n *ngIf=\"!formElementRef._eoFormElement.reference && formElementRef._eoFormElement.classification === 'selector'\"\n [situation]=\"element._eoFormControlWrapper.situation\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [filterFunction]=\"formElementRef._eoFormElement.filterFunction\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [listObject]=\"formElementRef._eoFormElement.list\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"></eo-dynamic-list>\n\n\n <!-- Reference -->\n <eo-reference *ngIf=\"formElementRef._eoFormElement.reference\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [reference]=\"formElementRef._eoFormElement.reference\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [minLength]=\"formElementRef._eoFormElement.minlen\"\n [maxLength]=\"formElementRef._eoFormElement.maxlen\"\n ></eo-reference>\n </eo-form-input>\n\n <!-- ID-Reference -->\n <eo-form-input *ngSwitchCase=\"'REFERENCE'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-id-reference\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [situation]=\"element._eoFormControlWrapper.situation\"\n [dataToRender]=\"formElementRef._eoFormElement.dataToRender\"\n [reference]=\"formElementRef._eoFormElement.reference\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [contextId]=\"formElementRef._eoFormElement.contextId\"\n [exceptionIDs]=\"formElementRef._eoFormElement.exceptionIDs\"\n [queryFilters]=\"formElementRef._eoFormElement.queryFilters\"\n [objectTypesFilter]=\"formElementRef._eoFormElement.objectTypesFilter\"\n ></eo-id-reference>\n </eo-form-input>\n\n <!-- ID -->\n <eo-form-input *ngSwitchCase=\"'ID'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-string\n [situation]=\"element._eoFormControlWrapper.situation\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [autocomplete]=\"formElementRef._eoFormElement.autocomplete\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [regex]=\"'^[0-9a-fA-F]*$'\"\n [qname]=\"formElementRef._eoFormElement.qname\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [minLength]=\"32\"\n [maxLength]=\"32\"\n ></eo-string>\n\n </eo-form-input>\n\n\n <!-- BOOLEAN -->\n <eo-form-input *ngSwitchCase=\"'BOOLEAN'\" [tag]=\"tag\" class=\"checkbox\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n (onToggleLabel)=\"labelToggled($event)\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-checkbox [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [tristate]=\"true\"></eo-checkbox>\n </eo-form-input>\n\n <!-- CODESYSTEM -->\n <eo-form-input *ngSwitchCase=\"'CODESYSTEM'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-codesystem [situation]=\"element._eoFormControlWrapper.situation\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [codesystem]=\"formElementRef._eoFormElement.codesystem\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n [filterFunction]=\"formElementRef._eoFormElement.filterFunction\"\n [disablingFilterFunction]=\"formElementRef._eoFormElement.disablingFilterFunction\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-codesystem>\n </eo-form-input>\n\n <!-- ORGANIZATION -->\n <eo-form-input *ngSwitchCase=\"'ORGANIZATION'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-organization [situation]=\"element._eoFormControlWrapper.situation\"\n [dataMeta]=\"formElementRef._eoFormElement.dataMeta\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [filterObject]=\"formElementRef._eoFormElement.filter\"\n [multiselect]=\"formElementRef._eoFormElement.multiselect\"\n (onDataMetaChanged)=\"organizationDataMetaResolved($event)\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-organization>\n </eo-form-input>\n\n <!-- NUMBER -->\n\n <eo-form-input *ngSwitchCase=\"'NUMBER'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-number *ngIf=\"situation !== 'SEARCH'\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [precision]=\"formElementRef._eoFormElement.precision\"\n [scale]=\"formElementRef._eoFormElement.scale\"\n [grouping]=\"formElementRef._eoFormElement.grouping\"\n [pattern]=\"formElementRef._eoFormElement.pattern\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\">\n </eo-number>\n\n <eo-number-range *ngIf=\"situation === 'SEARCH'\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [precision]=\"formElementRef._eoFormElement.precision\"\n [scale]=\"formElementRef._eoFormElement.scale\"\n [grouping]=\"formElementRef._eoFormElement.grouping\"\n [pattern]=\"formElementRef._eoFormElement.pattern\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-number-range>\n </eo-form-input>\n\n <!-- TABLE -->\n <div class=\"table\" *ngSwitchCase=\"'TABLE'\">\n <eo-table [params]=\"{\n situation: element._eoFormControlWrapper.situation,\n element: formElementRef._eoFormElement,\n size: formElementRef._eoFormElement.size,\n object: formElementRef._eoFormElement.object\n }\" [formControlName]=\"element._eoFormControlWrapper.controlName\"></eo-table>\n </div>\n\n <!-- DATE AND DATETIME -->\n <eo-form-input *ngSwitchCase=\"'DATETIME'\" [tag]=\"tag\" [label]=\"formElementRef._eoFormElement.label\"\n [isNull]=\"isNull\"\n [skipToggle]=\"skipToggle || situation !== 'SEARCH'\"\n (onToggleLabel)=\"labelToggled($event)\"\n [required]=\"formElementRef._eoFormElement.required\"\n [disabled]=\"formElementRef._eoFormElement.readonly\"\n [invalid]=\"formElementRef.invalid\">\n\n <eo-datetime *ngIf=\"situation !== 'SEARCH'\"\n [readonly]=\"formElementRef._eoFormElement.readonly\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [withTime]=\"formElementRef._eoFormElement.withtime\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n [validateDatabaseTimeRange]=\"formElementRef._eoFormElement.withtime\"\n ></eo-datetime>\n\n <eo-datetime-range *ngIf=\"situation === 'SEARCH'\"\n [pickerTitle]=\"formElementRef._eoFormElement.label\"\n [withTime]=\"formElementRef._eoFormElement.withtime\"\n [formControlName]=\"element._eoFormControlWrapper.controlName\"\n ></eo-datetime-range>\n </eo-form-input>\n\n\n <!-- print out the type if it's not matching anything -->\n <div *ngSwitchDefault><b>{{formElementRef._eoFormElement.type}}</b></div>\n\n\n <!-- the fields description -->\n <div class=\"description\" *ngIf=\"formElementRef._eoFormElement.description\">{{formElementRef._eoFormElement.description}}</div>\n\n <!-- error/validation messages -->\n <div class=\"err-msg\" *ngIf=\"formElementRef.errors\">\n\n <div *ngIf=\"formElementRef.errors.daterange\" translate>eo.form.property.daterange.invalid</div>\n <div *ngIf=\"formElementRef.errors.numberrange\" translate>eo.form.property.numberrange.invalid</div>\n <div *ngIf=\"formElementRef.errors.number\" translate>eo.form.property.number</div>\n <div *ngIf=\"formElementRef.errors.precision\" translate\n [translateParams]=\"formElementRef.errors.precision.translateValues\">{{formElementRef.errors.precision.translateKey}}</div>\n <div *ngIf=\"formElementRef.errors.scale\" translate\n [translateParams]=\"formElementRef.errors.scale.translateValues\">{{formElementRef.errors.scale.translateKey}}</div>\n\n <div *ngIf=\"formElementRef.errors.regex || formElementRef.errors.pattern\" translate>eo.form.property.string.regex.nomatch</div>\n <div *ngIf=\"formElementRef.errors.classificationemail\" translate>eo.form.property.string.error.classification.email</div>\n <div *ngIf=\"formElementRef.errors.classificationurl\" translate>eo.form.property.string.error.classification.url</div>\n <div *ngIf=\"formElementRef.errors.onlyWhitespaces\" translate>eo.form.property.string.error.whitespaces</div>\n <div *ngIf=\"formElementRef.errors.datecontrol\" translate>eo.form.property.date.invalid</div>\n <div *ngIf=\"formElementRef.errors.codesystem\" translate>eo.form.property.codesystem.value.invalid</div>\n <div *ngIf=\"formElementRef.errors.eoformScript\">{{formElementRef._eoFormElement.error.msg}}</div>\n <div *ngIf=\"formElementRef.errors.required\" translate>eo.form.property.required</div>\n <div *ngIf=\"formElementRef.errors.maxlength\" translate [translateParams]=\"{maxlength: formElementRef._eoFormElement.maxlen}\">eo.form.property.maxlength</div>\n <div *ngIf=\"formElementRef.errors.minlength\" translate [translateParams]=\"{minlength: formElementRef._eoFormElement.minlen}\">eo.form.property.minlength</div>\n <div *ngIf=\"formElementRef.errors.deletedIDReference\" translate>eo.form.property.idreference.deleted</div>\n <div *ngIf=\"formElementRef.errors.deletedOrgObject\" translate>eo.form.property.orgobject.deleted</div>\n </div>\n\n </div>\n</div>\n",
11141
11153
  styles: [":host-context(.dark) .form-element .form-field .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)}:host{flex:1 1 auto}:host.label-toggled::ng-deep eo-form-input label{text-decoration:line-through}.form-element{box-sizing:border-box}.form-element .form-field{margin:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}.form-element .form-field .description{border:0;font-size:var(--font-hint);font-style:italic;padding:calc(var(--app-pane-padding)/8) calc(var(--app-pane-padding)/8) 0 calc(var(--app-pane-padding)/8)}.form-element .form-field .err-msg{border:0;color:var(--color-error);padding:calc(var(--app-pane-padding)/4) 0}.form-element .form-field .table{align-items:flex-start;border-color:transparent;flex-flow:column}.form-element .form-field .table .label{padding-bottom:calc(var(--app-pane-padding)/4)}.form-element.ng-dirty:not(.ng-invalid)>.form-field:not(.focused)::ng-deep label{background-color:var(--color-dirty-background);color:var(--color-dirty-font)!important}"]
11142
11154
  },] }
11143
11155
  ];
@@ -11232,6 +11244,7 @@
11232
11244
  set: function (p) {
11233
11245
  if (p) {
11234
11246
  this._params = p;
11247
+ CellRenderer.situation = this._params.situation;
11235
11248
  if (this._params.situation === 'SEARCH') {
11236
11249
  this._params.size = 'supersmall';
11237
11250
  }
@@ -13384,6 +13397,7 @@
13384
13397
  _this.title = '';
13385
13398
  _this.searchLimit = 10;
13386
13399
  _this.operator = 'OR'; // AND | OR
13400
+ _this.selectedAllFilters = false;
13387
13401
  _this.id = '#set';
13388
13402
  return _this;
13389
13403
  }
@@ -13394,6 +13408,7 @@
13394
13408
  set: function (opts) {
13395
13409
  var _this = this;
13396
13410
  this._options = this.defaultValue ? opts || [] : this.settingsService.setupSettings(this.id, opts);
13411
+ this.selectedAllFilters = this.options.every(function (opt) { return opt.value; });
13397
13412
  if (this.options && this.params && this.isFilterActive()) {
13398
13413
  setTimeout(function () { return _this.params.filterChangedCallback(); }, 0);
13399
13414
  }
@@ -13442,7 +13457,7 @@
13442
13457
  SetFilterComponent.decorators = [
13443
13458
  { type: i0.Component, args: [{
13444
13459
  selector: 'eo-set-filter',
13445
- 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]=\"operator === 'OR'\" [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>",
13460
+ 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",
13446
13461
  styles: [".title{font-weight:700;margin-top:.5em}.option{margin:.5em 0}label{padding:0 .5em}input{border:none}"]
13447
13462
  },] }
13448
13463
  ];
@@ -13503,7 +13518,7 @@
13503
13518
  ListFilterComponent.decorators = [
13504
13519
  { type: i0.Component, args: [{
13505
13520
  selector: 'eo-list-filter',
13506
- 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]=\"operator === 'OR'\" [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>",
13521
+ 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",
13507
13522
  styles: [".title{font-weight:700;margin-top:.5em}.option{margin:.5em 0}label{padding:0 .5em}input{border:none}"]
13508
13523
  },] }
13509
13524
  ];
@@ -14115,7 +14130,7 @@
14115
14130
  { type: i0.Component, args: [{
14116
14131
  selector: 'eo-column-configurator',
14117
14132
  template: "<div class=\"configurator\">\n\n <div class=\"bar\">\n <div class=\"title\" translate>eo.column.config.title</div>\n <button (click)=\"resetDefault()\" *ngIf=\"!isDefaultConfig\" translate>eo.column.config.action.resetdefault</button>\n <button (click)=\"toggleConfigMode()\" translate>eo.column.config.action.close</button>\n <button (click)=\"saveConfig(true)\" class=\"primary\" [disabled]=\"!currentFields?.length\" *ngIf=\"hasPrivilege\" translate>eo.column.config.action.save.default</button>\n <button (click)=\"saveConfig()\" class=\"primary\" [disabled]=\"!currentFields?.length\" translate>eo.column.config.action.save</button>\n </div>\n\n <div class=\"info\" *ngIf=\"info\">{{info}}</div>\n\n <div class=\"column-config\" cdkDropListGroup>\n\n <div class=\"scroller current\">\n <div class=\"headline\" translate>eo.column.config.headline.current</div>\n <div class=\"items\" cdkDropList (cdkDropListDropped)=\"drop($event, 'current')\" [cdkDropListData]=\"currentFields\">\n <div class=\"item\" cdkDragHandle cdkDrag [cdkDragData]=\"field\" *ngFor=\"let field of currentFields; index as i\">\n <div class=\"entry\" [ngClass]=\"{modified: field.confmeta.modified, sfe: field.selectedforenrichment}\">\n <div class=\"label\" [ngClass]=\"{baseparam: field.baseparameter}\">{{field.label}}</div>\n <div class=\"group\" [ngClass]=\"{on: field.confmeta.pinned}\" (click)=\"togglePinned(field, $event)\" translate>eo.column.config.pinned</div>\n <!--<div class=\"group\" [ngClass]=\"{on: field.confmeta.group}\" (click)=\"toggleGroup(field, $event)\" translate>eo.column.config.group</div>-->\n <div class=\"sort\" [ngClass]=\"{on: field.confmeta.sort, asc: field.confmeta.sort === 'asc', desc: field.confmeta.sort === 'desc', disabled: !field.sortable}\" \n (click)=\"field.sortable && toggleSort(field, $event)\" translate>eo.column.config.sort</div>\n </div>\n </div>\n\n </div>\n </div>\n\n <div class=\"scroller available\">\n <div class=\"headline\" translate>eo.column.config.headline.available</div>\n <div class=\"items\" cdkDropList (cdkDropListDropped)=\"drop($event, 'available')\" [cdkDropListData]=\"availableFields\">\n <div class=\"item\" cdkDragHandle cdkDrag [cdkDragData]=\"field\" *ngFor=\"let field of availableFields; index as i\">\n <div class=\"entry\" [ngClass]=\"{modified: field.confmeta.modified, sfe: field.selectedforenrichment}\">\n <div class=\"label\" [ngClass]=\"{baseparam: field.baseparameter}\">{{field.label}}</div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n\n</div>\n",
14118
- styles: [".cdk-drag-preview{display:none}.cdk-drag-placeholder .entry{border-style:dashed!important;opacity:.9}.cdk-drop-list-dragging .cdk-drag{transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-animating{transition:transform .3s cubic-bezier(0,0,.2,1)}:host{-webkit-animation:eoFadeIn var(--app-default-transition-duration) 1 ease-in-out;animation:eoFadeIn var(--app-default-transition-duration) 1 ease-in-out;background:var(--color-white);bottom:0;display:flex;display:none;flex:1;flex-direction:column;height:100%;left:0;min-height:0;min-width:0;position:absolute;right:0;top:0;width:100%;z-index:10}:host.visible{display:block;overflow-x:auto}:host .configurator{flex:1;flex-direction:column;height:100%}:host .bar,:host .configurator{display:flex;min-height:0;min-width:0}:host .bar{align-items:center;background:var(--color-accent);color:var(--color-white);flex:none;flex-direction:row;min-width:560px;padding:calc(var(--app-pane-padding)/2) var(--app-pane-padding)}:host .bar .title{flex:1 1 auto;font-size:var(--font-subhead)}:host .bar button{color:rgba(var(--color-white-rgb),.87);margin:4px}:host .bar button.primary,:host .bar button:hover{background:rgba(var(--color-white-rgb),.1)}:host .bar button.primary{border:1px solid var(--color-white);color:var(--color-white);white-space:nowrap}:host .bar button.primary:hover{background:rgba(var(--color-white-rgb),.3)}:host .info{color:var(--color-accent);font-size:var(--font-title);font-weight:var(--font-weight-light);line-height:1em;margin:var(--app-pane-padding)}:host .column-config{--cc-border-color:rgba(var(--color-black-rgb),0.15);display:flex;flex:1;flex-direction:row;margin:var(--app-pane-padding);min-height:0;min-width:0}:host .column-config .scroller{background:var(--panel-background-lightgrey);border:1px solid var(--cc-border-color);display:flex;flex:2;flex-direction:column;min-height:0;min-width:0;min-width:300px}:host .column-config .scroller:last-child{flex:1;min-width:200px}[dir=ltr] :host .column-config .scroller:last-child{margin-left:var(--app-pane-padding)}[dir=rtl] :host .column-config .scroller:last-child{margin-right:var(--app-pane-padding)}:host .column-config .scroller .headline{border-bottom:1px solid var(--cc-border-color);color:var(--text-color-caption);padding:calc(var(--app-pane-padding)/2)}:host .column-config .scroller .items{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;overflow-y:auto;padding:calc(var(--app-pane-padding)/2)}:host .column-config .scroller .items .entry{-khtml-user-select:none;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-moz-user-select:none;-ms-user-select:none;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-touch-callout:none;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-user-select:none;background:var(--color-white);border:1px solid var(--cc-border-color);cursor:default;cursor:move;display:flex;flex:1;flex-direction:row;margin:4px 0;min-height:0;min-width:0;overflow:hidden;padding:calc(var(--app-pane-padding)/2);transition:all var(--app-default-transition-duration) ease-in-out;user-select:none}:host .column-config .scroller .items .entry:before{background:rgba(var(--color-black-rgb),.06);content:\" \";height:1.5em;width:calc(var(--app-pane-padding)/2)}[dir=ltr] :host .column-config .scroller .items .entry:before{margin-right:calc(var(--app-pane-padding)/2)}[dir=rtl] :host .column-config .scroller .items .entry:before{margin-left:calc(var(--app-pane-padding)/2)}:host .column-config .scroller .items .entry.sfe:before{background:rgba(var(--color-black-rgb),.26);color:var(--color-white);content:\"*\";text-align:center}:host .column-config .scroller .items .entry.modified:before{background:var(--color-accent)}:host .column-config .scroller .items .entry .label{flex:1 1 auto}:host .column-config .scroller .items .entry .label.baseparam{font-style:italic}:host .column-config .scroller .items .entry .sort:after{-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-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAMAAADz0U65AAAAGFBMVEUAAAD///8AAAAAAAAAAAAAAAAAAAAAAAB5sPD/AAAACHRSTlMAAAEnK2xwihv2e6MAAAAkSURBVAgdBcGBAQAgDMMgmvn/zcIGMO6xUBHXIqLkYkmQDfABCHAAOCt/xSYAAAAASUVORK5CYII=);content:\"\";display:inline-block;height:8px;opacity:0;transition:all var(--app-default-transition-duration) ease-in-out;width:8px}[dir=ltr] :host .column-config .scroller .items .entry .sort:after{margin-left:4px}[dir=rtl] :host .column-config .scroller .items .entry .sort:after{margin-right:4px}:host .column-config .scroller .items .entry .sort.asc:after{opacity:1}:host .column-config .scroller .items .entry .sort.desc:after{opacity:1;transform:rotate(180deg)}:host .column-config .scroller .items .entry .group,:host .column-config .scroller .items .entry .sort{-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-black-rgb),.06);border:1px solid rgba(var(--color-black-rgb),0);border-radius:2px;color:rgba(var(--color-black-rgb),.33);font-size:var(--font-hint);margin:0 4px;padding:0 4px;transition:all var(--app-default-transition-duration) ease-in-out;white-space:nowrap}:host .column-config .scroller .items .entry .group:hover,:host .column-config .scroller .items .entry .sort:hover{border-color:rgba(var(--color-black-rgb),.22);color:var(--text-color-caption)}:host .column-config .scroller .items .entry .group.on,:host .column-config .scroller .items .entry .sort.on{border-color:var(--color-accent-light);color:var(--color-accent-light)}:host .column-config .scroller .items .entry .group.disabled,:host .column-config .scroller .items .entry .sort.disabled{border:1px solid rgba(var(--color-black-rgb),0);color:rgba(var(--color-black-rgb),.33);cursor:default;text-decoration:line-through}"]
14133
+ styles: [".cdk-drag-preview{display:none}.cdk-drag-placeholder .entry{border-style:dashed!important;opacity:.9}.cdk-drop-list-dragging .cdk-drag{transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-animating{transition:transform .3s cubic-bezier(0,0,.2,1)}:host{-webkit-animation:eoFadeIn var(--app-default-transition-duration) 1 ease-in-out;animation:eoFadeIn var(--app-default-transition-duration) 1 ease-in-out;background:var(--color-white);bottom:0;display:flex;display:none;flex:1;flex-direction:column;height:100%;left:0;min-height:0;min-width:0;position:absolute;right:0;top:0;width:100%;z-index:10}:host.visible{display:block;overflow-x:auto}:host .configurator{flex:1;flex-direction:column;height:100%}:host .bar,:host .configurator{display:flex;min-height:0;min-width:0}:host .bar{align-items:center;background:var(--color-accent);color:var(--color-white);flex:none;flex-direction:row;min-width:560px;padding:calc(var(--app-pane-padding)/2) var(--app-pane-padding)}:host .bar .title{flex:1 1 auto;font-size:var(--font-subhead)}:host .bar button{color:rgba(var(--color-white-rgb),.87);margin:4px}:host .bar button.primary,:host .bar button:hover{background:rgba(var(--color-white-rgb),.1)}:host .bar button.primary{border:1px solid var(--color-white);color:var(--color-white);white-space:nowrap}:host .bar button.primary:hover{background:rgba(var(--color-white-rgb),.3)}:host .info{color:var(--color-accent);font-size:var(--font-title);font-weight:var(--font-weight-light);line-height:1em;margin:var(--app-pane-padding)}:host .column-config{--cc-border-color:rgba(var(--color-black-rgb),0.15);display:flex;flex:1;flex-direction:row;margin:var(--app-pane-padding);min-height:0;min-width:0}:host .column-config .scroller{background:var(--panel-background-lightgrey);border:1px solid var(--cc-border-color);display:flex;flex:2;flex-direction:column;min-height:0;min-width:0;min-width:300px}:host .column-config .scroller:last-child{flex:1;min-width:200px}[dir=ltr] :host .column-config .scroller:last-child{margin-left:var(--app-pane-padding)}[dir=rtl] :host .column-config .scroller:last-child{margin-right:var(--app-pane-padding)}:host .column-config .scroller .headline{border-bottom:1px solid var(--cc-border-color);color:var(--text-color-caption);padding:calc(var(--app-pane-padding)/2)}:host .column-config .scroller .items{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;overflow-y:auto;padding:calc(var(--app-pane-padding)/2)}:host .column-config .scroller .items .entry{-khtml-user-select:none;-moz-transition:all var(--app-default-transition-duration) ease-in-out;-moz-user-select:none;-ms-user-select:none;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-touch-callout:none;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-user-select:none;background:var(--color-white);border:1px solid var(--cc-border-color);cursor:default;cursor:move;display:flex;flex:1;flex-direction:row;margin:4px 0;min-height:0;min-width:0;overflow:hidden;padding:calc(var(--app-pane-padding)/2);transition:all var(--app-default-transition-duration) ease-in-out;user-select:none}:host .column-config .scroller .items .entry:before{background:rgba(var(--color-black-rgb),.06);content:\" \";height:1.5em;width:calc(var(--app-pane-padding)/2)}[dir=ltr] :host .column-config .scroller .items .entry:before{margin-right:calc(var(--app-pane-padding)/2)}[dir=rtl] :host .column-config .scroller .items .entry:before{margin-left:calc(var(--app-pane-padding)/2)}:host .column-config .scroller .items .entry.sfe:before{background:rgba(var(--color-black-rgb),.26);color:var(--color-white);content:\"*\";text-align:center}:host .column-config .scroller .items .entry.modified:before{background:var(--color-accent)}:host .column-config .scroller .items .entry .label{flex:1 1 auto}:host .column-config .scroller .items .entry .label.baseparam{font-style:italic}:host .column-config .scroller .items .entry .sort:after{-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-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAMAAADz0U65AAAAGFBMVEUAAAD///8AAAAAAAAAAAAAAAAAAAAAAAB5sPD/AAAACHRSTlMAAAEnK2xwihv2e6MAAAAkSURBVAgdBcGBAQAgDMMgmvn/zcIGMO6xUBHXIqLkYkmQDfABCHAAOCt/xSYAAAAASUVORK5CYII=);content:\"\";display:inline-block;height:8px;opacity:0;transition:all var(--app-default-transition-duration) ease-in-out;width:8px}[dir=ltr] :host .column-config .scroller .items .entry .sort:after{margin-left:4px}[dir=rtl] :host .column-config .scroller .items .entry .sort:after{margin-right:4px}:host .column-config .scroller .items .entry .sort.asc:after{opacity:1}:host .column-config .scroller .items .entry .sort.desc:after{opacity:1;transform:rotate(180deg)}:host .column-config .scroller .items .entry .group,:host .column-config .scroller .items .entry .sort{-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-black-rgb),.06);border:1px solid rgba(var(--color-black-rgb),0);border-radius:2px;color:rgba(var(--color-black-rgb),.33);cursor:pointer;font-size:var(--font-hint);margin:0 4px;padding:0 4px;transition:all var(--app-default-transition-duration) ease-in-out;white-space:nowrap}:host .column-config .scroller .items .entry .group:hover,:host .column-config .scroller .items .entry .sort:hover{border-color:rgba(var(--color-black-rgb),.22);color:var(--text-color-caption)}:host .column-config .scroller .items .entry .group.on,:host .column-config .scroller .items .entry .sort.on{border-color:var(--color-accent-light);color:var(--color-accent-light)}:host .column-config .scroller .items .entry .group.disabled,:host .column-config .scroller .items .entry .sort.disabled{border:1px solid rgba(var(--color-black-rgb),0);color:rgba(var(--color-black-rgb),.33);cursor:default;text-decoration:line-through}"]
14119
14134
  },] }
14120
14135
  ];
14121
14136
  ColumnConfiguratorComponent.ctorParameters = function () { return [
@@ -22680,6 +22695,10 @@
22680
22695
  */
22681
22696
  InboxDetailsComponent.prototype.executeWorkItemAction = function (action) {
22682
22697
  var _this = this;
22698
+ this.preventClickThrough = true;
22699
+ setTimeout(function () {
22700
+ _this.preventClickThrough = false;
22701
+ }, 1000);
22683
22702
  setTimeout(function () {
22684
22703
  if (!_this.formState || !_this.formState.invalid) {
22685
22704
  if (action.url) {
@@ -24557,10 +24576,10 @@
24557
24576
  this.http = http;
24558
24577
  this.userService = userService;
24559
24578
  this.config = config;
24560
- this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "8.16.7", "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" }];
24579
+ this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "8.16.9", "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" }];
24561
24580
  this.ctrl = {
24562
24581
  productName: 'yuuvis® RAD client',
24563
- clientVersion: '8.16.7'
24582
+ clientVersion: '8.16.9'
24564
24583
  };
24565
24584
  this.licenses = {
24566
24585
  'MIT': {