@alfresco/adf-process-services 8.6.0-27403806215 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/fesm2022/adf-process-services.mjs +704 -771
  2. package/fesm2022/adf-process-services.mjs.map +1 -1
  3. package/index.d.ts +4486 -3
  4. package/lib/form/widgets/dropdown/dropdown.widget.scss +6 -0
  5. package/lib/form/widgets/functional-group/functional-group.widget.scss +6 -0
  6. package/lib/form/widgets/people/people.widget.scss +6 -0
  7. package/lib/form/widgets/typeahead/typeahead.widget.scss +6 -0
  8. package/lib/styles/_mixins.scss +7 -0
  9. package/lib/task-list/components/start-task/start-task.component.scss +5 -5
  10. package/package.json +14 -14
  11. package/lib/app-list/apps-list.component.d.ts +0 -91
  12. package/lib/app-list/icon.model.d.ts +0 -27
  13. package/lib/app-list/index.d.ts +0 -17
  14. package/lib/app-list/public-api.d.ts +0 -22
  15. package/lib/app-list/select-apps-dialog/select-apps-dialog.component.d.ts +0 -13
  16. package/lib/attachment/create-process-attachment/create-process-attachment.component.d.ts +0 -38
  17. package/lib/attachment/create-task-attachment/create-task-attachment.component.d.ts +0 -38
  18. package/lib/attachment/index.d.ts +0 -17
  19. package/lib/attachment/process-attachment-list/process-attachment-list.component.d.ts +0 -64
  20. package/lib/attachment/public-api.d.ts +0 -25
  21. package/lib/attachment/task-attachment-list/task-attachment-list.component.d.ts +0 -60
  22. package/lib/compat/types.d.ts +0 -31
  23. package/lib/form/events/validate-dynamic-table-row.event.d.ts +0 -25
  24. package/lib/form/form-custom-outcomes.component.d.ts +0 -5
  25. package/lib/form/form-list/form-list.component.d.ts +0 -29
  26. package/lib/form/form.component.d.ts +0 -109
  27. package/lib/form/index.d.ts +0 -17
  28. package/lib/form/model/form-definition.model.d.ts +0 -25
  29. package/lib/form/process-form-rendering.service.d.ts +0 -7
  30. package/lib/form/public-api.d.ts +0 -27
  31. package/lib/form/services/activiti-alfresco.service.d.ts +0 -41
  32. package/lib/form/services/ecm-model.service.d.ts +0 -30
  33. package/lib/form/services/editor.service.d.ts +0 -41
  34. package/lib/form/services/external-alfresco-api.service.d.ts +0 -9
  35. package/lib/form/services/index.d.ts +0 -25
  36. package/lib/form/services/model.service.d.ts +0 -59
  37. package/lib/form/services/process-content.service.d.ts +0 -132
  38. package/lib/form/services/process-definition.service.d.ts +0 -44
  39. package/lib/form/services/task-form.service.d.ts +0 -69
  40. package/lib/form/services/task.service.d.ts +0 -32
  41. package/lib/form/start-form/start-form.component.d.ts +0 -50
  42. package/lib/form/widgets/content-widget/attach-file-widget-dialog-component.interface.d.ts +0 -31
  43. package/lib/form/widgets/content-widget/attach-file-widget-dialog.component.d.ts +0 -48
  44. package/lib/form/widgets/content-widget/attach-file-widget-dialog.service.d.ts +0 -47
  45. package/lib/form/widgets/content-widget/attach-file-widget.component.d.ts +0 -64
  46. package/lib/form/widgets/content-widget/attach-folder-widget.component.d.ts +0 -33
  47. package/lib/form/widgets/content-widget/index.d.ts +0 -17
  48. package/lib/form/widgets/content-widget/public-api.d.ts +0 -21
  49. package/lib/form/widgets/document/content.widget.d.ts +0 -50
  50. package/lib/form/widgets/document/document.widget.d.ts +0 -26
  51. package/lib/form/widgets/dropdown/dropdown.widget.d.ts +0 -48
  52. package/lib/form/widgets/dynamic-table/dynamic-table.widget.d.ts +0 -51
  53. package/lib/form/widgets/dynamic-table/editors/amount/amount.editor.d.ts +0 -31
  54. package/lib/form/widgets/dynamic-table/editors/boolean/boolean.editor.d.ts +0 -12
  55. package/lib/form/widgets/dynamic-table/editors/date/date.editor.d.ts +0 -20
  56. package/lib/form/widgets/dynamic-table/editors/datetime/datetime.editor.d.ts +0 -20
  57. package/lib/form/widgets/dynamic-table/editors/dropdown/dropdown.editor.d.ts +0 -39
  58. package/lib/form/widgets/dynamic-table/editors/models/cell-validator.model.d.ts +0 -23
  59. package/lib/form/widgets/dynamic-table/editors/models/date-cell-validator-model.d.ts +0 -26
  60. package/lib/form/widgets/dynamic-table/editors/models/dynamic-row-validation-summary.model.d.ts +0 -21
  61. package/lib/form/widgets/dynamic-table/editors/models/dynamic-table-column-option.model.d.ts +0 -20
  62. package/lib/form/widgets/dynamic-table/editors/models/dynamic-table-column.model.d.ts +0 -37
  63. package/lib/form/widgets/dynamic-table/editors/models/dynamic-table-row.model.d.ts +0 -21
  64. package/lib/form/widgets/dynamic-table/editors/models/dynamic-table.widget.model.d.ts +0 -40
  65. package/lib/form/widgets/dynamic-table/editors/models/number-cell-validator.model.d.ts +0 -26
  66. package/lib/form/widgets/dynamic-table/editors/models/required-cell-validator.model.d.ts +0 -25
  67. package/lib/form/widgets/dynamic-table/editors/row-editor/row.editor.d.ts +0 -42
  68. package/lib/form/widgets/dynamic-table/editors/text/text.editor.d.ts +0 -31
  69. package/lib/form/widgets/dynamic-table/index.d.ts +0 -17
  70. package/lib/form/widgets/dynamic-table/public-api.d.ts +0 -34
  71. package/lib/form/widgets/file-viewer/file-viewer.widget.d.ts +0 -22
  72. package/lib/form/widgets/functional-group/functional-group.widget.d.ts +0 -40
  73. package/lib/form/widgets/index.d.ts +0 -17
  74. package/lib/form/widgets/people/people.widget.d.ts +0 -44
  75. package/lib/form/widgets/public-api.d.ts +0 -31
  76. package/lib/form/widgets/radio-buttons/radio-buttons.widget.d.ts +0 -33
  77. package/lib/form/widgets/typeahead/typeahead.widget.d.ts +0 -39
  78. package/lib/form/widgets/upload/upload.widget.d.ts +0 -39
  79. package/lib/people/components/people/people.component.d.ts +0 -50
  80. package/lib/people/components/people-list/people-list.component.d.ts +0 -42
  81. package/lib/people/components/people-search/people-search.component.d.ts +0 -44
  82. package/lib/people/components/people-search-field/people-search-field.component.d.ts +0 -25
  83. package/lib/people/components/people-selector/people-selector.component.d.ts +0 -40
  84. package/lib/people/helpers/get-display-user.d.ts +0 -17
  85. package/lib/people/index.d.ts +0 -17
  86. package/lib/people/interfaces/perform-search-callback.interface.d.ts +0 -19
  87. package/lib/people/public-api.d.ts +0 -28
  88. package/lib/process-comments/index.d.ts +0 -20
  89. package/lib/process-comments/process-comments.component.d.ts +0 -9
  90. package/lib/process-comments/services/comment-process.service.d.ts +0 -27
  91. package/lib/process-list/components/process-filters/process-filters.component.d.ts +0 -109
  92. package/lib/process-list/components/process-instance-details/process-instance-details.component.d.ts +0 -40
  93. package/lib/process-list/components/process-instance-header/process-instance-header.component.d.ts +0 -39
  94. package/lib/process-list/components/process-instance-tasks/process-instance-tasks.component.d.ts +0 -48
  95. package/lib/process-list/components/process-list/process-list.component.d.ts +0 -141
  96. package/lib/process-list/components/start-process/start-process.component.d.ts +0 -117
  97. package/lib/process-list/index.d.ts +0 -17
  98. package/lib/process-list/public-api.d.ts +0 -31
  99. package/lib/process-list/services/process-filter.service.d.ts +0 -73
  100. package/lib/process-list/services/process.service.d.ts +0 -148
  101. package/lib/process.module.d.ts +0 -89
  102. package/lib/services/apps-process.service.d.ts +0 -22
  103. package/lib/services/people-process.service.d.ts +0 -65
  104. package/lib/services/task-comments.service.d.ts +0 -45
  105. package/lib/task-comments/index.d.ts +0 -20
  106. package/lib/task-comments/task-comments.component.d.ts +0 -9
  107. package/lib/task-list/components/attach-form/attach-form.component.d.ts +0 -50
  108. package/lib/task-list/components/checklist/checklist.component.d.ts +0 -51
  109. package/lib/task-list/components/start-task/start-task.component.d.ts +0 -64
  110. package/lib/task-list/components/task-details/task-details.component.d.ts +0 -131
  111. package/lib/task-list/components/task-filters/task-filters.component.d.ts +0 -108
  112. package/lib/task-list/components/task-form/claim-task.directive.d.ts +0 -35
  113. package/lib/task-list/components/task-form/task-form.component.d.ts +0 -119
  114. package/lib/task-list/components/task-form/unclaim-task.directive.d.ts +0 -35
  115. package/lib/task-list/components/task-header/task-header.component.d.ts +0 -148
  116. package/lib/task-list/components/task-list/task-list.component.d.ts +0 -167
  117. package/lib/task-list/components/task-standalone/task-standalone.component.d.ts +0 -44
  118. package/lib/task-list/index.d.ts +0 -17
  119. package/lib/task-list/models/form.model.d.ts +0 -24
  120. package/lib/task-list/models/task-details.event.d.ts +0 -25
  121. package/lib/task-list/models/task-preset.model.d.ts +0 -31
  122. package/lib/task-list/models/user-event.model.d.ts +0 -23
  123. package/lib/task-list/models/user-group.model.d.ts +0 -26
  124. package/lib/task-list/public-api.d.ts +0 -47
  125. package/lib/task-list/services/process-upload.service.d.ts +0 -25
  126. package/lib/task-list/services/task-filter.service.d.ts +0 -102
  127. package/lib/task-list/services/task-upload.service.d.ts +0 -25
  128. package/lib/task-list/services/tasklist.service.d.ts +0 -159
  129. package/lib/task-list/validators/task-description.validator.d.ts +0 -21
  130. package/public-api.d.ts +0 -29
@@ -1,10 +1,10 @@
1
- import { DateFnsUtils, DataTableSchema, UserPreferencesService, DEFAULT_PAGINATION, EmptyContentComponent, DataTableComponent, LoadingContentTemplateDirective, NoContentTemplateDirective, CustomEmptyContentTemplateDirective, CustomLoadingContentTemplateDirective, TranslationService, AppConfigService, CardViewTextItemModel, CardViewDateItemModel, CardViewComponent, DataColumnListComponent, DataColumnComponent, FormBaseComponent, FormService, WidgetVisibilityService, FormModel, FormOutcomeModel, FormEvent, FormErrorEvent, FormOutcomeEvent, FormRendererComponent, FormatSpacePipe, WidgetComponent, ThumbnailService, ContentLinkModel, ErrorWidgetComponent, DownloadService, UrlService, InitialUsernamePipe, ErrorMessageModel, BaseViewerWidgetComponent, FormFieldEvent, FormWidgetModel, ADF_DATE_FORMATS, AdfDateFnsAdapter, ADF_DATETIME_FORMATS, AdfDateTimeFnsAdapter, AuthenticationService, LoginDialogPanelComponent, AppConfigValues, FormRenderingService, FormFieldTypes, UserPreferenceValues, ShowHeaderMode, CardViewUpdateService, CardViewSelectItemModel, CardViewIntItemModel, CardViewMapItemModel, CardViewItemLengthValidator, CommentModel, CommentsComponent, ADF_COMMENTS_SERVICE, InfoDrawerTabComponent, InfoDrawerComponent, FormFieldModel, User, LocalizedDatePipe, EmptyListHeaderDirective, EmptyListComponent, UploadDirective, provideTranslations } from '@alfresco/adf-core';
1
+ import { DateFnsUtils, DataTableSchema, UserPreferencesService, DEFAULT_PAGINATION, EmptyContentComponent, DataTableComponent, LoadingContentTemplateDirective, NoContentTemplateDirective, CustomEmptyContentTemplateDirective, CustomLoadingContentTemplateDirective, TranslationService, AppConfigService, CardViewTextItemModel, CardViewDateItemModel, CardViewComponent, DataColumnListComponent, DataColumnComponent, FormBaseComponent, FormService, WidgetVisibilityService, FormModel, FormOutcomeModel, FormEvent, FormErrorEvent, FormOutcomeEvent, FormRendererComponent, FormatSpacePipe, WidgetComponent, ThumbnailService, ContentLinkModel, ErrorWidgetComponent, DownloadService, UrlService, InitialUsernamePipe, ErrorMessageModel, BaseViewerWidgetComponent, ADF_DATE_FORMATS, AdfDateFnsAdapter, ADF_DATETIME_FORMATS, AdfDateTimeFnsAdapter, FormFieldEvent, FormWidgetModel, AuthenticationService, LoginDialogPanelComponent, AppConfigValues, FormRenderingService, FormFieldTypes, UserPreferenceValues, ShowHeaderMode, CardViewUpdateService, CardViewSelectItemModel, CardViewIntItemModel, CardViewMapItemModel, CardViewItemLengthValidator, CommentModel, CommentsComponent, ADF_COMMENTS_SERVICE, InfoDrawerTabComponent, InfoDrawerComponent, FormFieldModel, User, LocalizedDatePipe, EmptyListHeaderDirective, EmptyListComponent, UploadDirective, provideTranslations } from '@alfresco/adf-core';
2
2
  import * as i0 from '@angular/core';
3
3
  import { inject, Injectable, EventEmitter, Output, Input, ContentChild, Component, DestroyRef, ViewEncapsulation, HostListener, Directive, ChangeDetectorRef, ViewChild, ElementRef, isDevMode, NgZone, NgModule } from '@angular/core';
4
4
  import { LazyApi, TasksApi, ProcessDefinitionsApi, ProcessInstancesApi, ProcessInstanceVariablesApi, UserFiltersApi, RuntimeAppDefinitionsApi, TaskQueryRepresentation, ResultListDataRepresentationTaskRepresentation, ModelsApi, TaskActionsApi, ChecklistsApi, UsersApi, ActivitiGroupsApi, UserProfileApi, CustomModelApi, FormModelsApi, TaskFormsApi, FormSaveRepresentation, ActivitiContentApi, AlfrescoApi, ContentApi, IntegrationAlfrescoOnPremiseApi, TaskRepresentation, UserTaskFilterRepresentation, ActivitiCommentsApi } from '@alfresco/js-api';
5
5
  import { AlfrescoApiService, NodesApiService, AlfrescoViewerComponent, ContentNodeSelectorPanelComponent, DocumentListService, SitesService, SearchService, ContentService, ContentNodeDialogService, AlfrescoIconComponent, UploadService } from '@alfresco/adf-content-services';
6
6
  import { from, BehaviorSubject, Observable, forkJoin, of, throwError, merge, Subject, zip, EMPTY } from 'rxjs';
7
- import { map, finalize, filter, flatMap, catchError, switchMap, mergeMap, distinctUntilChanged, tap, debounceTime, share, defaultIfEmpty } from 'rxjs/operators';
7
+ import { map, finalize, filter, flatMap, catchError, switchMap, mergeMap, debounceTime, distinctUntilChanged, tap, share, defaultIfEmpty } from 'rxjs/operators';
8
8
  import * as i1 from '@angular/common';
9
9
  import { DatePipe, CommonModule, Location } from '@angular/common';
10
10
  import * as i2 from '@angular/material/progress-spinner';
@@ -23,7 +23,7 @@ import { MAT_DIALOG_DATA, MatDialogRef, MatDialogModule, MatDialog } from '@angu
23
23
  import * as i2$2 from '@angular/material/list';
24
24
  import { MatListModule } from '@angular/material/list';
25
25
  import * as i3$2 from '@angular/forms';
26
- import { UntypedFormControl, ReactiveFormsModule, FormsModule, FormControl, Validators, UntypedFormBuilder } from '@angular/forms';
26
+ import { UntypedFormControl, FormsModule, ReactiveFormsModule, FormControl, Validators, UntypedFormBuilder } from '@angular/forms';
27
27
  import * as i4 from '@angular/material/chips';
28
28
  import { MatChipsModule } from '@angular/material/chips';
29
29
  import * as i2$3 from '@angular/material/form-field';
@@ -37,13 +37,13 @@ import { MatRadioModule } from '@angular/material/radio';
37
37
  import * as i3$3 from '@angular/material/select';
38
38
  import { MatSelectModule } from '@angular/material/select';
39
39
  import { ESCAPE, ENTER } from '@angular/cdk/keycodes';
40
- import { isValid, getTime } from 'date-fns';
41
40
  import * as i1$1 from '@angular/material/checkbox';
42
41
  import { MatCheckboxModule } from '@angular/material/checkbox';
43
42
  import * as i3$6 from '@angular/material/core';
44
43
  import { DateAdapter, MAT_DATE_FORMATS, MatLineModule } from '@angular/material/core';
45
44
  import * as i3$4 from '@angular/material/datepicker';
46
45
  import { MatDatepickerModule } from '@angular/material/datepicker';
46
+ import { isValid, getTime } from 'date-fns';
47
47
  import * as i3$5 from '@mat-datetimepicker/core';
48
48
  import { MatDatetimepickerModule, MAT_DATETIME_FORMATS, DatetimeAdapter } from '@mat-datetimepicker/core';
49
49
  import * as i4$1 from '@angular/material/menu';
@@ -55,9 +55,6 @@ var __decorate$h = (this && this.__decorate) || function (decorators, target, ke
55
55
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
56
56
  return c > 3 && r && Object.defineProperty(target, key, r), r;
57
57
  };
58
- var __metadata$h = (this && this.__metadata) || function (k, v) {
59
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
60
- };
61
58
  class ProcessService {
62
59
  constructor() {
63
60
  this.alfrescoApiService = inject(AlfrescoApiService);
@@ -273,26 +270,22 @@ class ProcessService {
273
270
  return '';
274
271
  }
275
272
  }
276
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
277
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessService, providedIn: 'root' }); }
273
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
274
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessService, providedIn: 'root' }); }
278
275
  }
279
276
  __decorate$h([
280
- LazyApi((self) => new TasksApi(self.alfrescoApiService.getInstance())),
281
- __metadata$h("design:type", TasksApi)
277
+ LazyApi((self) => new TasksApi(self.alfrescoApiService.getInstance()))
282
278
  ], ProcessService.prototype, "tasksApi", void 0);
283
279
  __decorate$h([
284
- LazyApi((self) => new ProcessDefinitionsApi(self.alfrescoApiService.getInstance())),
285
- __metadata$h("design:type", ProcessDefinitionsApi)
280
+ LazyApi((self) => new ProcessDefinitionsApi(self.alfrescoApiService.getInstance()))
286
281
  ], ProcessService.prototype, "processDefinitionsApi", void 0);
287
282
  __decorate$h([
288
- LazyApi((self) => new ProcessInstancesApi(self.alfrescoApiService.getInstance())),
289
- __metadata$h("design:type", ProcessInstancesApi)
283
+ LazyApi((self) => new ProcessInstancesApi(self.alfrescoApiService.getInstance()))
290
284
  ], ProcessService.prototype, "processInstancesApi", void 0);
291
285
  __decorate$h([
292
- LazyApi((self) => new ProcessInstanceVariablesApi(self.alfrescoApiService.getInstance())),
293
- __metadata$h("design:type", ProcessInstanceVariablesApi)
286
+ LazyApi((self) => new ProcessInstanceVariablesApi(self.alfrescoApiService.getInstance()))
294
287
  ], ProcessService.prototype, "processInstanceVariablesApi", void 0);
295
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessService, decorators: [{
288
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessService, decorators: [{
296
289
  type: Injectable,
297
290
  args: [{
298
291
  providedIn: 'root'
@@ -548,10 +541,10 @@ class ProcessInstanceListComponent extends DataTableSchema {
548
541
  this.error.emit(error);
549
542
  });
550
543
  }
551
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
552
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ProcessInstanceListComponent, isStandalone: true, selector: "adf-process-instance-list", inputs: { appId: "appId", processDefinitionId: "processDefinitionId", processInstanceId: "processInstanceId", state: "state", sort: "sort", page: "page", size: "size", data: "data", multiselect: "multiselect", selectionMode: "selectionMode", selectFirstRow: "selectFirstRow", stickyHeader: "stickyHeader", showContextMenu: "showContextMenu", isResizingEnabled: "isResizingEnabled", blurOnResize: "blurOnResize", resolverFn: "resolverFn" }, outputs: { showRowContextMenu: "showRowContextMenu", rowClick: "rowClick", success: "success", error: "error", rowsSelected: "rowsSelected" }, queries: [{ propertyName: "customEmptyContent", first: true, predicate: CustomEmptyContentTemplateDirective, descendants: true }, { propertyName: "customLoadingContent", first: true, predicate: CustomLoadingContentTemplateDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<adf-datatable\n [data]=\"data\"\n [rows]=\"rows\"\n [columns]=\"columns\"\n [sorting]=\"sorting\"\n [loading]=\"isLoading\"\n [isResizingEnabled]=\"isResizingEnabled\"\n [blurOnResize]=\"blurOnResize\"\n [stickyHeader]=\"stickyHeader\"\n [selectionMode]=\"selectionMode\"\n [multiselect]=\"multiselect\"\n [resolverFn]=\"resolverFn\"\n [contextMenu]=\"showContextMenu\"\n (showRowContextMenu)=\"onShowRowContextMenu($event)\"\n (rowClick)=\"onRowClick($event)\"\n (row-keyup)=\"onRowKeyUp($any($event))\"\n (row-select)=\"onRowCheckboxToggle($any($event))\"\n (row-unselect)=\"onRowCheckboxToggle($any($event))\"\n>\n <adf-loading-content-template>\n <ng-template>\n <mat-progress-spinner\n *ngIf=\"!customLoadingContent\"\n class=\"adf-process-list-loading-margin\"\n mode=\"indeterminate\" />\n <ng-content select=\"adf-custom-loading-content-template\" />\n </ng-template>\n </adf-loading-content-template>\n <adf-no-content-template>\n <ng-template>\n <adf-empty-content *ngIf=\"!customEmptyContent\"\n icon=\"assessment\"\n [title]=\"(requestNode ? 'ADF_PROCESS_LIST.LIST.TITLE' : 'ADF_PROCESS_LIST.FILTERS.MESSAGES.NONE') | translate\"\n [subtitle]=\"'ADF_PROCESS_LIST.LIST.SUBTITLE'| translate\" />\n <ng-content select=\"adf-custom-empty-content-template\" />\n </ng-template>\n </adf-no-content-template>\n</adf-datatable>\n", styles: [".adf-process-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}.no-content-message{font:var(--mat-sys-title-small);text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }] }); }
544
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
545
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ProcessInstanceListComponent, isStandalone: true, selector: "adf-process-instance-list", inputs: { appId: "appId", processDefinitionId: "processDefinitionId", processInstanceId: "processInstanceId", state: "state", sort: "sort", page: "page", size: "size", data: "data", multiselect: "multiselect", selectionMode: "selectionMode", selectFirstRow: "selectFirstRow", stickyHeader: "stickyHeader", showContextMenu: "showContextMenu", isResizingEnabled: "isResizingEnabled", blurOnResize: "blurOnResize", resolverFn: "resolverFn" }, outputs: { showRowContextMenu: "showRowContextMenu", rowClick: "rowClick", success: "success", error: "error", rowsSelected: "rowsSelected" }, queries: [{ propertyName: "customEmptyContent", first: true, predicate: CustomEmptyContentTemplateDirective, descendants: true }, { propertyName: "customLoadingContent", first: true, predicate: CustomLoadingContentTemplateDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<adf-datatable\n [data]=\"data\"\n [rows]=\"rows\"\n [columns]=\"columns\"\n [sorting]=\"sorting\"\n [loading]=\"isLoading\"\n [isResizingEnabled]=\"isResizingEnabled\"\n [blurOnResize]=\"blurOnResize\"\n [stickyHeader]=\"stickyHeader\"\n [selectionMode]=\"selectionMode\"\n [multiselect]=\"multiselect\"\n [resolverFn]=\"resolverFn\"\n [contextMenu]=\"showContextMenu\"\n (showRowContextMenu)=\"onShowRowContextMenu($event)\"\n (rowClick)=\"onRowClick($event)\"\n (row-keyup)=\"onRowKeyUp($any($event))\"\n (row-select)=\"onRowCheckboxToggle($any($event))\"\n (row-unselect)=\"onRowCheckboxToggle($any($event))\"\n>\n <adf-loading-content-template>\n <ng-template>\n <mat-progress-spinner\n *ngIf=\"!customLoadingContent\"\n class=\"adf-process-list-loading-margin\"\n mode=\"indeterminate\" />\n <ng-content select=\"adf-custom-loading-content-template\" />\n </ng-template>\n </adf-loading-content-template>\n <adf-no-content-template>\n <ng-template>\n <adf-empty-content *ngIf=\"!customEmptyContent\"\n icon=\"assessment\"\n [title]=\"(requestNode ? 'ADF_PROCESS_LIST.LIST.TITLE' : 'ADF_PROCESS_LIST.FILTERS.MESSAGES.NONE') | translate\"\n [subtitle]=\"'ADF_PROCESS_LIST.LIST.SUBTITLE'| translate\" />\n <ng-content select=\"adf-custom-empty-content-template\" />\n </ng-template>\n </adf-no-content-template>\n</adf-datatable>\n", styles: [".adf-process-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}.no-content-message{font:var(--mat-sys-title-small);text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
553
546
  }
554
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceListComponent, decorators: [{
547
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceListComponent, decorators: [{
555
548
  type: Component,
556
549
  args: [{ selector: 'adf-process-instance-list', imports: [
557
550
  CommonModule,
@@ -618,9 +611,6 @@ var __decorate$g = (this && this.__decorate) || function (decorators, target, ke
618
611
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
619
612
  return c > 3 && r && Object.defineProperty(target, key, r), r;
620
613
  };
621
- var __metadata$g = (this && this.__metadata) || function (k, v) {
622
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
623
- };
624
614
  class ProcessFilterService {
625
615
  constructor() {
626
616
  this.alfrescoApiService = inject(AlfrescoApiService);
@@ -766,14 +756,13 @@ class ProcessFilterService {
766
756
  index
767
757
  };
768
758
  }
769
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
770
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFilterService, providedIn: 'root' }); }
759
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
760
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFilterService, providedIn: 'root' }); }
771
761
  }
772
762
  __decorate$g([
773
- LazyApi((self) => new UserFiltersApi(self.alfrescoApiService.getInstance())),
774
- __metadata$g("design:type", UserFiltersApi)
763
+ LazyApi((self) => new UserFiltersApi(self.alfrescoApiService.getInstance()))
775
764
  ], ProcessFilterService.prototype, "userFiltersApi", void 0);
776
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFilterService, decorators: [{
765
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFilterService, decorators: [{
777
766
  type: Injectable,
778
767
  args: [{
779
768
  providedIn: 'root'
@@ -786,9 +775,6 @@ var __decorate$f = (this && this.__decorate) || function (decorators, target, ke
786
775
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
787
776
  return c > 3 && r && Object.defineProperty(target, key, r), r;
788
777
  };
789
- var __metadata$f = (this && this.__metadata) || function (k, v) {
790
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
791
- };
792
778
  class AppsProcessService {
793
779
  constructor() {
794
780
  this.apiService = inject(AlfrescoApiService);
@@ -810,14 +796,13 @@ class AppsProcessService {
810
796
  getDeployedApplicationsByName(name) {
811
797
  return this.getDeployedApplications().pipe(map((response) => response.find((app) => app.name === name)));
812
798
  }
813
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AppsProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
814
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AppsProcessService, providedIn: 'root' }); }
799
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AppsProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
800
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AppsProcessService, providedIn: 'root' }); }
815
801
  }
816
802
  __decorate$f([
817
- LazyApi((self) => new RuntimeAppDefinitionsApi(self.apiService.getInstance())),
818
- __metadata$f("design:type", RuntimeAppDefinitionsApi)
803
+ LazyApi((self) => new RuntimeAppDefinitionsApi(self.apiService.getInstance()))
819
804
  ], AppsProcessService.prototype, "appsApi", void 0);
820
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AppsProcessService, decorators: [{
805
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AppsProcessService, decorators: [{
821
806
  type: Injectable,
822
807
  args: [{
823
808
  providedIn: 'root'
@@ -1160,10 +1145,10 @@ class ProcessFiltersComponent {
1160
1145
  this.filters = [];
1161
1146
  this.currentFilter = undefined;
1162
1147
  }
1163
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1164
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ProcessFiltersComponent, isStandalone: true, selector: "adf-process-instance-filters", inputs: { filterParam: "filterParam", appId: "appId", appName: "appName", showIcon: "showIcon" }, outputs: { filterClicked: "filterClicked", success: "success", error: "error", filterSelected: "filterSelected" }, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let filter of filters\" class=\"adf-filters__entry\" [class.adf-active]=\"isActiveRoute(filter)\">\n <button\n (click)=\"selectFilter(filter)\"\n [attr.aria-label]=\"filter.name | translate\"\n [id]=\"filter.id\"\n [attr.data-automation-id]=\"filter.name + '_filter'\"\n mat-button\n class=\"adf-filter-action-button adf-full-width\"\n >\n <mat-icon data-automation-id=\"adf-filter-icon\" *ngIf=\"showIcon\" aria-hidden=\"true\">{{ getFilterIcon(filter.icon) }}</mat-icon>\n <span data-automation-id=\"adf-filter-label\" class=\"adf-filter-action-button__label\">{{ filter.name | translate }}</span>\n </button>\n</div>\n", styles: ["adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button){padding:0;width:100%}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-full-width{display:flex;width:100%}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button{align-items:center;height:32px;justify-content:flex-start}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button .adf-filter-action-button__label{padding-left:20px;margin:0 8px;font:var(--mat-sys-body-large)}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button).adf-active .adf-filter-action-button__label{color:var(--mat-sys-primary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
1148
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1149
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ProcessFiltersComponent, isStandalone: true, selector: "adf-process-instance-filters", inputs: { filterParam: "filterParam", appId: "appId", appName: "appName", showIcon: "showIcon" }, outputs: { filterClicked: "filterClicked", success: "success", error: "error", filterSelected: "filterSelected" }, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let filter of filters\" class=\"adf-filters__entry\" [class.adf-active]=\"isActiveRoute(filter)\">\n <button\n (click)=\"selectFilter(filter)\"\n [attr.aria-label]=\"filter.name | translate\"\n [id]=\"filter.id\"\n [attr.data-automation-id]=\"filter.name + '_filter'\"\n mat-button\n class=\"adf-filter-action-button adf-full-width\"\n >\n <mat-icon data-automation-id=\"adf-filter-icon\" *ngIf=\"showIcon\" aria-hidden=\"true\">{{ getFilterIcon(filter.icon) }}</mat-icon>\n <span data-automation-id=\"adf-filter-label\" class=\"adf-filter-action-button__label\">{{ filter.name | translate }}</span>\n </button>\n</div>\n", styles: ["adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button){padding:0;width:100%}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-full-width{display:flex;width:100%}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button{align-items:center;height:32px;justify-content:flex-start}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button .adf-filter-action-button__label{padding-left:20px;margin:0 8px;font:var(--mat-sys-body-large)}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button).adf-active .adf-filter-action-button__label{color:var(--mat-sys-primary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
1165
1150
  }
1166
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFiltersComponent, decorators: [{
1151
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFiltersComponent, decorators: [{
1167
1152
  type: Component,
1168
1153
  args: [{ selector: 'adf-process-instance-filters', imports: [CommonModule, TranslatePipe, MatButtonModule, MatIconModule], encapsulation: ViewEncapsulation.None, template: "<div *ngFor=\"let filter of filters\" class=\"adf-filters__entry\" [class.adf-active]=\"isActiveRoute(filter)\">\n <button\n (click)=\"selectFilter(filter)\"\n [attr.aria-label]=\"filter.name | translate\"\n [id]=\"filter.id\"\n [attr.data-automation-id]=\"filter.name + '_filter'\"\n mat-button\n class=\"adf-filter-action-button adf-full-width\"\n >\n <mat-icon data-automation-id=\"adf-filter-icon\" *ngIf=\"showIcon\" aria-hidden=\"true\">{{ getFilterIcon(filter.icon) }}</mat-icon>\n <span data-automation-id=\"adf-filter-label\" class=\"adf-filter-action-button__label\">{{ filter.name | translate }}</span>\n </button>\n</div>\n", styles: ["adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button){padding:0;width:100%}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-full-width{display:flex;width:100%}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button{align-items:center;height:32px;justify-content:flex-start}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button .adf-filter-action-button__label{padding-left:20px;margin:0 8px;font:var(--mat-sys-body-large)}adf-process-instance-filters .adf-filters__entry:has(.adf-filter-action-button).adf-active .adf-filter-action-button__label{color:var(--mat-sys-primary)}\n"] }]
1169
1154
  }], propDecorators: { filterParam: [{
@@ -1287,10 +1272,10 @@ class ProcessInstanceHeaderComponent {
1287
1272
  isValidSelection(filteredProperties, cardItem) {
1288
1273
  return filteredProperties ? filteredProperties.indexOf(cardItem.key) >= 0 : true;
1289
1274
  }
1290
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1291
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ProcessInstanceHeaderComponent, isStandalone: true, selector: "adf-process-instance-header", inputs: { processInstance: "processInstance" }, usesOnChanges: true, ngImport: i0, template: "<mat-card appearance=\"outlined\" *ngIf=\"processInstance\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" />\n </mat-card-content>\n</mat-card>\n", styles: [":host{width:100%}.adf-card-container{font-family:inherit}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: CardViewComponent, selector: "adf-card-view", inputs: ["properties", "editable", "displayEmpty", "displayNoneOption", "displayClearAction", "copyToClipboardAction", "useChipsForMultiValueProperty", "multiValueSeparator"] }] }); }
1275
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1276
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ProcessInstanceHeaderComponent, isStandalone: true, selector: "adf-process-instance-header", inputs: { processInstance: "processInstance" }, usesOnChanges: true, ngImport: i0, template: "<mat-card appearance=\"outlined\" *ngIf=\"processInstance\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" />\n </mat-card-content>\n</mat-card>\n", styles: [":host{width:100%}.adf-card-container{font-family:inherit}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: CardViewComponent, selector: "adf-card-view", inputs: ["properties", "editable", "displayEmpty", "displayNoneOption", "displayClearAction", "copyToClipboardAction", "useChipsForMultiValueProperty", "multiValueSeparator"] }] }); }
1292
1277
  }
1293
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceHeaderComponent, decorators: [{
1278
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceHeaderComponent, decorators: [{
1294
1279
  type: Component,
1295
1280
  args: [{ selector: 'adf-process-instance-header', imports: [CommonModule, MatCardModule, CardViewComponent], template: "<mat-card appearance=\"outlined\" *ngIf=\"processInstance\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" />\n </mat-card-content>\n</mat-card>\n", styles: [":host{width:100%}.adf-card-container{font-family:inherit}\n"] }]
1296
1281
  }], ctorParameters: () => [], propDecorators: { processInstance: [{
@@ -1330,9 +1315,6 @@ var __decorate$e = (this && this.__decorate) || function (decorators, target, ke
1330
1315
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1331
1316
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1332
1317
  };
1333
- var __metadata$e = (this && this.__metadata) || function (k, v) {
1334
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
1335
- };
1336
1318
  class TaskListService {
1337
1319
  constructor() {
1338
1320
  this.apiService = inject(AlfrescoApiService);
@@ -1535,26 +1517,22 @@ class TaskListService {
1535
1517
  fetchTaskAuditJsonById(taskId) {
1536
1518
  return from(this.tasksApi.getTaskAuditLog(taskId));
1537
1519
  }
1538
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1539
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListService, providedIn: 'root' }); }
1520
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskListService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1521
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskListService, providedIn: 'root' }); }
1540
1522
  }
1541
1523
  __decorate$e([
1542
- LazyApi((self) => new ModelsApi(self.apiService.getInstance())),
1543
- __metadata$e("design:type", ModelsApi)
1524
+ LazyApi((self) => new ModelsApi(self.apiService.getInstance()))
1544
1525
  ], TaskListService.prototype, "modelsApi", void 0);
1545
1526
  __decorate$e([
1546
- LazyApi((self) => new TasksApi(self.apiService.getInstance())),
1547
- __metadata$e("design:type", TasksApi)
1527
+ LazyApi((self) => new TasksApi(self.apiService.getInstance()))
1548
1528
  ], TaskListService.prototype, "tasksApi", void 0);
1549
1529
  __decorate$e([
1550
- LazyApi((self) => new TaskActionsApi(self.apiService.getInstance())),
1551
- __metadata$e("design:type", TaskActionsApi)
1530
+ LazyApi((self) => new TaskActionsApi(self.apiService.getInstance()))
1552
1531
  ], TaskListService.prototype, "taskActionsApi", void 0);
1553
1532
  __decorate$e([
1554
- LazyApi((self) => new ChecklistsApi(self.apiService.getInstance())),
1555
- __metadata$e("design:type", ChecklistsApi)
1533
+ LazyApi((self) => new ChecklistsApi(self.apiService.getInstance()))
1556
1534
  ], TaskListService.prototype, "checklistsApi", void 0);
1557
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListService, decorators: [{
1535
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskListService, decorators: [{
1558
1536
  type: Injectable,
1559
1537
  args: [{
1560
1538
  providedIn: 'root'
@@ -1613,10 +1591,10 @@ class ClaimTaskDirective {
1613
1591
  this.success.emit(this.taskId);
1614
1592
  }, (error) => this.error.emit(error));
1615
1593
  }
1616
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ClaimTaskDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1617
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.20", type: ClaimTaskDirective, isStandalone: true, selector: "[adf-claim-task]", inputs: { taskId: "taskId" }, outputs: { success: "success", error: "error" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
1594
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ClaimTaskDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1595
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: ClaimTaskDirective, isStandalone: true, selector: "[adf-claim-task]", inputs: { taskId: "taskId" }, outputs: { success: "success", error: "error" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
1618
1596
  }
1619
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ClaimTaskDirective, decorators: [{
1597
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ClaimTaskDirective, decorators: [{
1620
1598
  type: Directive,
1621
1599
  args: [{
1622
1600
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1685,10 +1663,10 @@ class UnclaimTaskDirective {
1685
1663
  this.success.emit(this.taskId);
1686
1664
  }, (error) => this.error.emit(error));
1687
1665
  }
1688
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: UnclaimTaskDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1689
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.20", type: UnclaimTaskDirective, isStandalone: true, selector: "[adf-unclaim-task]", inputs: { taskId: "taskId" }, outputs: { success: "success", error: "error" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
1666
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: UnclaimTaskDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1667
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: UnclaimTaskDirective, isStandalone: true, selector: "[adf-unclaim-task]", inputs: { taskId: "taskId" }, outputs: { success: "success", error: "error" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
1690
1668
  }
1691
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: UnclaimTaskDirective, decorators: [{
1669
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: UnclaimTaskDirective, decorators: [{
1692
1670
  type: Directive,
1693
1671
  args: [{
1694
1672
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1711,9 +1689,6 @@ var __decorate$d = (this && this.__decorate) || function (decorators, target, ke
1711
1689
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1712
1690
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1713
1691
  };
1714
- var __metadata$d = (this && this.__metadata) || function (k, v) {
1715
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
1716
- };
1717
1692
  class PeopleProcessService {
1718
1693
  constructor() {
1719
1694
  this.apiService = inject(AlfrescoApiService);
@@ -1789,26 +1764,22 @@ class PeopleProcessService {
1789
1764
  removeInvolvedUser(taskId, idToRemove) {
1790
1765
  return from(this.taskActionsApi.removeInvolvedUser(taskId, { userId: idToRemove }));
1791
1766
  }
1792
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1793
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleProcessService, providedIn: 'root' }); }
1767
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1768
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleProcessService, providedIn: 'root' }); }
1794
1769
  }
1795
1770
  __decorate$d([
1796
- LazyApi((self) => new TaskActionsApi(self.apiService.getInstance())),
1797
- __metadata$d("design:type", TaskActionsApi)
1771
+ LazyApi((self) => new TaskActionsApi(self.apiService.getInstance()))
1798
1772
  ], PeopleProcessService.prototype, "taskActionsApi", void 0);
1799
1773
  __decorate$d([
1800
- LazyApi((self) => new UsersApi(self.apiService.getInstance())),
1801
- __metadata$d("design:type", UsersApi)
1774
+ LazyApi((self) => new UsersApi(self.apiService.getInstance()))
1802
1775
  ], PeopleProcessService.prototype, "userApi", void 0);
1803
1776
  __decorate$d([
1804
- LazyApi((self) => new ActivitiGroupsApi(self.apiService.getInstance())),
1805
- __metadata$d("design:type", ActivitiGroupsApi)
1777
+ LazyApi((self) => new ActivitiGroupsApi(self.apiService.getInstance()))
1806
1778
  ], PeopleProcessService.prototype, "groupsApi", void 0);
1807
1779
  __decorate$d([
1808
- LazyApi((self) => new UserProfileApi(self.apiService.getInstance())),
1809
- __metadata$d("design:type", UserProfileApi)
1780
+ LazyApi((self) => new UserProfileApi(self.apiService.getInstance()))
1810
1781
  ], PeopleProcessService.prototype, "profileApi", void 0);
1811
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleProcessService, decorators: [{
1782
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleProcessService, decorators: [{
1812
1783
  type: Injectable,
1813
1784
  args: [{
1814
1785
  providedIn: 'root'
@@ -1864,10 +1835,10 @@ class TaskStandaloneComponent {
1864
1835
  onShowAttachForm() {
1865
1836
  this.showAttachForm.emit();
1866
1837
  }
1867
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskStandaloneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1868
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskStandaloneComponent, isStandalone: true, selector: "adf-task-standalone", inputs: { taskName: "taskName", taskId: "taskId", isCompleted: "isCompleted", hasCompletePermission: "hasCompletePermission", hideCancelButton: "hideCancelButton" }, outputs: { cancel: "cancel", complete: "complete", showAttachForm: "showAttachForm" }, ngImport: i0, template: "<mat-card appearance=\"raised\" class=\"adf-message-card\">\n <mat-card-content>\n <div class=\"adf-no-form-message-container\">\n <div class=\"adf-no-form-message-list\">\n <div *ngIf=\"!isCompleted; else completedMessage\" class=\"adf-no-form-message\">\n <span id=\"adf-no-form-message\">{{'ADF_TASK_LIST.STANDALONE_TASK.NO_FORM_MESSAGE' | translate}}</span>\n </div>\n <ng-template #completedMessage>\n <div id=\"adf-completed-form-message\" class=\"adf-no-form-message\">\n <p>{{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_MESSAGE' | translate : {taskName : taskName} }}</p>\n </div>\n <div class=\"adf-no-form-submessage\">\n {{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_SUB_MESSAGE' | translate}}\n </div>\n </ng-template>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-no-form-mat-card-actions\">\n <button mat-button *ngIf=\"hasAttachFormButton()\" id=\"adf-no-form-attach-form-button\" (click)=\"onShowAttachForm()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n <div class=\"adf-no-form-mat-card-actions-container\">\n <button mat-button *ngIf=\"hasCancelButton()\" id=\"adf-no-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button *ngIf=\"hasCompleteButton()\" id=\"adf-no-form-complete-button\" (click)=\"onCompleteButtonClick()\">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.COMPLETE' | translate }}</button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-message-card{width:60%;box-sizing:border-box;margin:16px auto;padding:8px 8px 0}.adf-message-card .adf-no-form-mat-card-actions{border-top:solid 1px var(--mat-sys-outline-variant)}.adf-message-card .adf-no-form-message-container{height:256px;width:100%;display:table}.adf-message-card .adf-no-form-message-list{display:table-cell;vertical-align:middle;text-align:center}.adf-message-card .adf-no-form-message{padding-bottom:10px;font:var(--mat-sys-headline-small);color:var(--mat-sys-on-surface-variant);margin:auto;width:fit-content}.adf-message-card .adf-no-form-submessage{font:var(--mat-sys-title-small);color:var(--mat-sys-on-surface-variant);margin:auto;width:fit-content}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container){display:flex;justify-content:space-between}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container) button{text-transform:uppercase;border-radius:5px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
1838
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskStandaloneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1839
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskStandaloneComponent, isStandalone: true, selector: "adf-task-standalone", inputs: { taskName: "taskName", taskId: "taskId", isCompleted: "isCompleted", hasCompletePermission: "hasCompletePermission", hideCancelButton: "hideCancelButton" }, outputs: { cancel: "cancel", complete: "complete", showAttachForm: "showAttachForm" }, ngImport: i0, template: "<mat-card appearance=\"raised\" class=\"adf-message-card\">\n <mat-card-content>\n <div class=\"adf-no-form-message-container\">\n <div class=\"adf-no-form-message-list\">\n <div *ngIf=\"!isCompleted; else completedMessage\" class=\"adf-no-form-message\">\n <span id=\"adf-no-form-message\">{{'ADF_TASK_LIST.STANDALONE_TASK.NO_FORM_MESSAGE' | translate}}</span>\n </div>\n <ng-template #completedMessage>\n <div id=\"adf-completed-form-message\" class=\"adf-no-form-message\">\n <p>{{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_MESSAGE' | translate : {taskName : taskName} }}</p>\n </div>\n <div class=\"adf-no-form-submessage\">\n {{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_SUB_MESSAGE' | translate}}\n </div>\n </ng-template>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-no-form-mat-card-actions\">\n <button mat-button *ngIf=\"hasAttachFormButton()\" id=\"adf-no-form-attach-form-button\" (click)=\"onShowAttachForm()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n <div class=\"adf-no-form-mat-card-actions-container\">\n <button mat-button *ngIf=\"hasCancelButton()\" id=\"adf-no-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button *ngIf=\"hasCompleteButton()\" id=\"adf-no-form-complete-button\" (click)=\"onCompleteButtonClick()\">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.COMPLETE' | translate }}</button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-message-card{width:60%;box-sizing:border-box;margin:16px auto;padding:8px 8px 0}.adf-message-card .adf-no-form-mat-card-actions{border-top:solid 1px var(--mat-sys-outline-variant)}.adf-message-card .adf-no-form-message-container{height:256px;width:100%;display:table}.adf-message-card .adf-no-form-message-list{display:table-cell;vertical-align:middle;text-align:center}.adf-message-card .adf-no-form-message{padding-bottom:10px;font:var(--mat-sys-headline-small);color:var(--mat-sys-on-surface-variant);margin:auto;width:fit-content}.adf-message-card .adf-no-form-submessage{font:var(--mat-sys-title-small);color:var(--mat-sys-on-surface-variant);margin:auto;width:fit-content}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container){display:flex;justify-content:space-between}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container) button{text-transform:uppercase;border-radius:5px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
1869
1840
  }
1870
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskStandaloneComponent, decorators: [{
1841
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskStandaloneComponent, decorators: [{
1871
1842
  type: Component,
1872
1843
  args: [{ selector: 'adf-task-standalone', imports: [CommonModule, TranslatePipe, MatCardModule, MatButtonModule], encapsulation: ViewEncapsulation.None, template: "<mat-card appearance=\"raised\" class=\"adf-message-card\">\n <mat-card-content>\n <div class=\"adf-no-form-message-container\">\n <div class=\"adf-no-form-message-list\">\n <div *ngIf=\"!isCompleted; else completedMessage\" class=\"adf-no-form-message\">\n <span id=\"adf-no-form-message\">{{'ADF_TASK_LIST.STANDALONE_TASK.NO_FORM_MESSAGE' | translate}}</span>\n </div>\n <ng-template #completedMessage>\n <div id=\"adf-completed-form-message\" class=\"adf-no-form-message\">\n <p>{{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_MESSAGE' | translate : {taskName : taskName} }}</p>\n </div>\n <div class=\"adf-no-form-submessage\">\n {{'ADF_TASK_LIST.STANDALONE_TASK.COMPLETE_TASK_SUB_MESSAGE' | translate}}\n </div>\n </ng-template>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-no-form-mat-card-actions\">\n <button mat-button *ngIf=\"hasAttachFormButton()\" id=\"adf-no-form-attach-form-button\" (click)=\"onShowAttachForm()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n <div class=\"adf-no-form-mat-card-actions-container\">\n <button mat-button *ngIf=\"hasCancelButton()\" id=\"adf-no-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button *ngIf=\"hasCompleteButton()\" id=\"adf-no-form-complete-button\" (click)=\"onCompleteButtonClick()\">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.COMPLETE' | translate }}</button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-message-card{width:60%;box-sizing:border-box;margin:16px auto;padding:8px 8px 0}.adf-message-card .adf-no-form-mat-card-actions{border-top:solid 1px var(--mat-sys-outline-variant)}.adf-message-card .adf-no-form-message-container{height:256px;width:100%;display:table}.adf-message-card .adf-no-form-message-list{display:table-cell;vertical-align:middle;text-align:center}.adf-message-card .adf-no-form-message{padding-bottom:10px;font:var(--mat-sys-headline-small);color:var(--mat-sys-on-surface-variant);margin:auto;width:fit-content}.adf-message-card .adf-no-form-submessage{font:var(--mat-sys-title-small);color:var(--mat-sys-on-surface-variant);margin:auto;width:fit-content}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container){display:flex;justify-content:space-between}.adf-message-card .adf-no-form-mat-card-actions:has(.adf-no-form-mat-card-actions-container) button{text-transform:uppercase;border-radius:5px}\n"] }]
1873
1844
  }], propDecorators: { taskName: [{
@@ -1894,9 +1865,6 @@ var __decorate$c = (this && this.__decorate) || function (decorators, target, ke
1894
1865
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1895
1866
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1896
1867
  };
1897
- var __metadata$c = (this && this.__metadata) || function (k, v) {
1898
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
1899
- };
1900
1868
  class ModelService {
1901
1869
  constructor() {
1902
1870
  this.apiService = inject(AlfrescoApiService);
@@ -1990,14 +1958,13 @@ class ModelService {
1990
1958
  }
1991
1959
  return throwError(errMsg);
1992
1960
  }
1993
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ModelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1994
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ModelService, providedIn: 'root' }); }
1961
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ModelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1962
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ModelService, providedIn: 'root' }); }
1995
1963
  }
1996
1964
  __decorate$c([
1997
- LazyApi((self) => new ModelsApi(self.apiService.getInstance())),
1998
- __metadata$c("design:type", ModelsApi)
1965
+ LazyApi((self) => new ModelsApi(self.apiService.getInstance()))
1999
1966
  ], ModelService.prototype, "modelsApi", void 0);
2000
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ModelService, decorators: [{
1967
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ModelService, decorators: [{
2001
1968
  type: Injectable,
2002
1969
  args: [{
2003
1970
  providedIn: 'root'
@@ -2037,10 +2004,10 @@ class FormListComponent {
2037
2004
  this.forms.push(...forms);
2038
2005
  });
2039
2006
  }
2040
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FormListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2041
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: FormListComponent, isStandalone: true, selector: "adf-form-list", inputs: { forms: "forms" }, usesOnChanges: true, ngImport: i0, template: "<adf-datatable *ngIf=\"!isEmpty()\"\n [rows]=\"forms\">\n <data-columns>\n <data-column key=\"name\" type=\"text\" title=\"Name\" class=\"adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"lastUpdatedByFullName\" type=\"text\" title=\"User\" class=\"adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"lastUpdated\" type=\"date\" format=\"shortDate\" title=\"Date\" />\n </data-columns>\n</adf-datatable>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }], encapsulation: i0.ViewEncapsulation.None }); }
2007
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FormListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2008
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: FormListComponent, isStandalone: true, selector: "adf-form-list", inputs: { forms: "forms" }, usesOnChanges: true, ngImport: i0, template: "<adf-datatable *ngIf=\"!isEmpty()\"\n [rows]=\"forms\">\n <data-columns>\n <data-column key=\"name\" type=\"text\" title=\"Name\" class=\"adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"lastUpdatedByFullName\" type=\"text\" title=\"User\" class=\"adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"lastUpdated\" type=\"date\" format=\"shortDate\" title=\"Date\" />\n </data-columns>\n</adf-datatable>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }], encapsulation: i0.ViewEncapsulation.None }); }
2042
2009
  }
2043
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FormListComponent, decorators: [{
2010
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FormListComponent, decorators: [{
2044
2011
  type: Component,
2045
2012
  args: [{ selector: 'adf-form-list', imports: [CommonModule, DataTableComponent, DataColumnListComponent, DataColumnComponent], encapsulation: ViewEncapsulation.None, template: "<adf-datatable *ngIf=\"!isEmpty()\"\n [rows]=\"forms\">\n <data-columns>\n <data-column key=\"name\" type=\"text\" title=\"Name\" class=\"adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"lastUpdatedByFullName\" type=\"text\" title=\"User\" class=\"adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"lastUpdated\" type=\"date\" format=\"shortDate\" title=\"Date\" />\n </data-columns>\n</adf-datatable>\n" }]
2046
2013
  }], propDecorators: { forms: [{
@@ -2064,10 +2031,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
2064
2031
  * limitations under the License.
2065
2032
  */
2066
2033
  class FormCustomOutcomesComponent {
2067
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FormCustomOutcomesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2068
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: FormCustomOutcomesComponent, isStandalone: true, selector: "adf-form-custom-outcomes", ngImport: i0, template: '<ng-content />', isInline: true }); }
2034
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FormCustomOutcomesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2035
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: FormCustomOutcomesComponent, isStandalone: true, selector: "adf-form-custom-outcomes", ngImport: i0, template: '<ng-content />', isInline: true }); }
2069
2036
  }
2070
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FormCustomOutcomesComponent, decorators: [{
2037
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FormCustomOutcomesComponent, decorators: [{
2071
2038
  type: Component,
2072
2039
  args: [{
2073
2040
  selector: 'adf-form-custom-outcomes',
@@ -2081,9 +2048,6 @@ var __decorate$b = (this && this.__decorate) || function (decorators, target, ke
2081
2048
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2082
2049
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2083
2050
  };
2084
- var __metadata$b = (this && this.__metadata) || function (k, v) {
2085
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
2086
- };
2087
2051
  class EcmModelService {
2088
2052
  constructor() {
2089
2053
  this.apiService = inject(AlfrescoApiService);
@@ -2203,14 +2167,13 @@ class EcmModelService {
2203
2167
  handleError(err) {
2204
2168
  this.error.next(err);
2205
2169
  }
2206
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EcmModelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2207
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EcmModelService, providedIn: 'root' }); }
2170
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EcmModelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2171
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EcmModelService, providedIn: 'root' }); }
2208
2172
  }
2209
2173
  __decorate$b([
2210
- LazyApi((self) => new CustomModelApi(self.apiService.getInstance())),
2211
- __metadata$b("design:type", CustomModelApi)
2174
+ LazyApi((self) => new CustomModelApi(self.apiService.getInstance()))
2212
2175
  ], EcmModelService.prototype, "customModelApi", void 0);
2213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EcmModelService, decorators: [{
2176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EcmModelService, decorators: [{
2214
2177
  type: Injectable,
2215
2178
  args: [{
2216
2179
  providedIn: 'root'
@@ -2223,9 +2186,6 @@ var __decorate$a = (this && this.__decorate) || function (decorators, target, ke
2223
2186
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2224
2187
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2225
2188
  };
2226
- var __metadata$a = (this && this.__metadata) || function (k, v) {
2227
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
2228
- };
2229
2189
  class EditorService {
2230
2190
  constructor() {
2231
2191
  this.apiService = inject(AlfrescoApiService);
@@ -2276,14 +2236,13 @@ class EditorService {
2276
2236
  }
2277
2237
  return throwError(errMsg);
2278
2238
  }
2279
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2280
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EditorService, providedIn: 'root' }); }
2239
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2240
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EditorService, providedIn: 'root' }); }
2281
2241
  }
2282
2242
  __decorate$a([
2283
- LazyApi((self) => new FormModelsApi(self.apiService.getInstance())),
2284
- __metadata$a("design:type", FormModelsApi)
2243
+ LazyApi((self) => new FormModelsApi(self.apiService.getInstance()))
2285
2244
  ], EditorService.prototype, "editorApi", void 0);
2286
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: EditorService, decorators: [{
2245
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: EditorService, decorators: [{
2287
2246
  type: Injectable,
2288
2247
  args: [{
2289
2248
  providedIn: 'root'
@@ -2296,9 +2255,6 @@ var __decorate$9 = (this && this.__decorate) || function (decorators, target, ke
2296
2255
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2297
2256
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2298
2257
  };
2299
- var __metadata$9 = (this && this.__metadata) || function (k, v) {
2300
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
2301
- };
2302
2258
  class TaskService {
2303
2259
  constructor() {
2304
2260
  this.apiService = inject(AlfrescoApiService);
@@ -2339,14 +2295,13 @@ class TaskService {
2339
2295
  }
2340
2296
  return throwError(errMsg);
2341
2297
  }
2342
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2343
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskService, providedIn: 'root' }); }
2298
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2299
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskService, providedIn: 'root' }); }
2344
2300
  }
2345
2301
  __decorate$9([
2346
- LazyApi((self) => new TasksApi(self.apiService.getInstance())),
2347
- __metadata$9("design:type", TasksApi)
2302
+ LazyApi((self) => new TasksApi(self.apiService.getInstance()))
2348
2303
  ], TaskService.prototype, "taskApi", void 0);
2349
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskService, decorators: [{
2304
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskService, decorators: [{
2350
2305
  type: Injectable,
2351
2306
  args: [{
2352
2307
  providedIn: 'root'
@@ -2359,9 +2314,6 @@ var __decorate$8 = (this && this.__decorate) || function (decorators, target, ke
2359
2314
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
2360
2315
  return c > 3 && r && Object.defineProperty(target, key, r), r;
2361
2316
  };
2362
- var __metadata$8 = (this && this.__metadata) || function (k, v) {
2363
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
2364
- };
2365
2317
  class TaskFormService {
2366
2318
  constructor() {
2367
2319
  this.apiService = inject(AlfrescoApiService);
@@ -2452,14 +2404,13 @@ class TaskFormService {
2452
2404
  }
2453
2405
  return throwError(errMsg);
2454
2406
  }
2455
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2456
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFormService, providedIn: 'root' }); }
2407
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2408
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFormService, providedIn: 'root' }); }
2457
2409
  }
2458
2410
  __decorate$8([
2459
- LazyApi((self) => new TaskFormsApi(self.apiService.getInstance())),
2460
- __metadata$8("design:type", TaskFormsApi)
2411
+ LazyApi((self) => new TaskFormsApi(self.apiService.getInstance()))
2461
2412
  ], TaskFormService.prototype, "taskFormsApi", void 0);
2462
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFormService, decorators: [{
2413
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFormService, decorators: [{
2463
2414
  type: Injectable,
2464
2415
  args: [{
2465
2416
  providedIn: 'root'
@@ -2849,10 +2800,10 @@ class FormComponent extends FormBaseComponent {
2849
2800
  this.formId = formId;
2850
2801
  this.loadForm();
2851
2802
  }
2852
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2853
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: FormComponent, isStandalone: true, selector: "adf-form", inputs: { taskId: "taskId", nodeId: "nodeId", formId: "formId", formName: "formName", saveMetadata: "saveMetadata", data: "data", enableFixedSpacedForm: "enableFixedSpacedForm" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formContentClicked: "formContentClicked", formLoaded: "formLoaded", formDataRefreshed: "formDataRefreshed" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\" />\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-form-container\">\n <mat-card appearance=\"outlined\" class=\"adf-form-card\">\n <mat-card-header>\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-form-reload-button\">\n <button mat-icon-button (click)=\"onRefreshClicked()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-form-title\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-form-card-content\">\n <adf-form-renderer [formDefinition]=\"form\" />\n </mat-card-content>\n <mat-card-actions *ngIf=\"form.hasOutcomes()\" class=\"adf-form-mat-card-actions\" align=\"end\">\n <ng-content select=\"adf-form-custom-outcomes\" />\n <button [id]=\"'adf-form-'+ outcome.name | formatSpace\" *ngFor=\"let outcome of form.outcomes\"\n mat-button [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\">\n {{outcome.name | translate | uppercase }}\n </button>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-form-card,.adf-form-card-content{height:100%;overflow:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: FormRendererComponent, selector: "adf-form-renderer", inputs: ["formDefinition", "readOnly"] }, { kind: "pipe", type: FormatSpacePipe, name: "formatSpace" }], encapsulation: i0.ViewEncapsulation.None }); }
2803
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2804
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: FormComponent, isStandalone: true, selector: "adf-form", inputs: { taskId: "taskId", nodeId: "nodeId", formId: "formId", formName: "formName", saveMetadata: "saveMetadata", data: "data", enableFixedSpacedForm: "enableFixedSpacedForm" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formContentClicked: "formContentClicked", formLoaded: "formLoaded", formDataRefreshed: "formDataRefreshed" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\" />\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-form-container\">\n <mat-card appearance=\"outlined\" class=\"adf-form-card\">\n <mat-card-header>\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-form-reload-button\">\n <button mat-icon-button (click)=\"onRefreshClicked()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-form-title\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-form-card-content\">\n <adf-form-renderer [formDefinition]=\"form\" />\n </mat-card-content>\n <mat-card-actions *ngIf=\"form.hasOutcomes()\" class=\"adf-form-mat-card-actions\" align=\"end\">\n <ng-content select=\"adf-form-custom-outcomes\" />\n <button [id]=\"'adf-form-'+ outcome.name | formatSpace\" *ngFor=\"let outcome of form.outcomes\"\n mat-button [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\">\n {{outcome.name | translate | uppercase }}\n </button>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-form-card,.adf-form-card-content{height:100%;overflow:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: FormRendererComponent, selector: "adf-form-renderer", inputs: ["formDefinition", "readOnly"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: FormatSpacePipe, name: "formatSpace" }], encapsulation: i0.ViewEncapsulation.None }); }
2854
2805
  }
2855
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FormComponent, decorators: [{
2806
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FormComponent, decorators: [{
2856
2807
  type: Component,
2857
2808
  args: [{ selector: 'adf-form', imports: [CommonModule, MatCardModule, MatButtonModule, MatIconModule, TranslatePipe, FormRendererComponent, FormatSpacePipe], encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"!hasForm()\">\n <ng-content select=\"[empty-form]\" />\n</div>\n\n<div *ngIf=\"hasForm()\" class=\"adf-form-container\">\n <mat-card appearance=\"outlined\" class=\"adf-form-card\">\n <mat-card-header>\n <mat-card-title>\n <h4>\n <div *ngIf=\"showValidationIcon\" class=\"adf-form-validation-button\">\n <i id=\"adf-valid-form-icon\" class=\"material-icons\"\n *ngIf=\"form.isValid; else no_valid_form\">check_circle</i>\n <ng-template #no_valid_form>\n <i id=\"adf-invalid-form-icon\" class=\"material-icons adf-invalid-color\">error</i>\n </ng-template>\n </div>\n <div *ngIf=\"showRefreshButton\" class=\"adf-form-reload-button\">\n <button mat-icon-button (click)=\"onRefreshClicked()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </div>\n <span *ngIf=\"isTitleEnabled()\" class=\"adf-form-title\" [title]=\"form.taskName\">\n {{form.taskName}}\n <ng-container *ngIf=\"!form.taskName\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-form-card-content\">\n <adf-form-renderer [formDefinition]=\"form\" />\n </mat-card-content>\n <mat-card-actions *ngIf=\"form.hasOutcomes()\" class=\"adf-form-mat-card-actions\" align=\"end\">\n <ng-content select=\"adf-form-custom-outcomes\" />\n <button [id]=\"'adf-form-'+ outcome.name | formatSpace\" *ngFor=\"let outcome of form.outcomes\"\n mat-button [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\">\n {{outcome.name | translate | uppercase }}\n </button>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-form-card,.adf-form-card-content{height:100%;overflow:auto}\n"] }]
2858
2809
  }], ctorParameters: () => [], propDecorators: { taskId: [{
@@ -2983,10 +2934,10 @@ class StartFormComponent extends FormComponent {
2983
2934
  completeTaskForm(outcome) {
2984
2935
  this.outcomeClick.emit(outcome);
2985
2936
  }
2986
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2987
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: StartFormComponent, isStandalone: true, selector: "adf-start-form", inputs: { processDefinitionId: "processDefinitionId", processId: "processId", showOutcomeButtons: "showOutcomeButtons", showRefreshButton: "showRefreshButton", readOnlyForm: "readOnlyForm" }, outputs: { outcomeClick: "outcomeClick", formContentClicked: "formContentClicked" }, viewQueries: [{ propertyName: "outcomesContainer", first: true, predicate: ["outcomesContainer"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"adf-start-form-container\" *ngIf=\"hasForm()\">\n <mat-card class=\"adf-start-form-card\">\n <mat-card-header class=\"adf-start-form-header\">\n <mat-card-title>\n <h2 *ngIf=\"isTitleEnabled()\" class=\"mdl-card__title-text\">{{form.taskName}}</h2>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-start-form-content\">\n <adf-form-renderer [formDefinition]=\"form\" />\n </mat-card-content>\n <mat-card-content class=\"adf-start-form-actions\" *ngIf=\"showOutcomeButtons && form.hasOutcomes()\"\n #outcomesContainer>\n <ng-content select=\"[adf-form-custom-button], [form-custom-button]\" />\n\n <button *ngFor=\"let outcome of form.outcomes\"\n mat-button\n class=\"adf-start-form-actions-button\"\n [attr.data-automation-id]=\"'adf-form-' + outcome.name | lowercase\"\n [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.mdl-button--colored]=\"!outcome.isSystem\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\">\n {{ outcome.name | uppercase | translate | uppercase }}\n </button>\n </mat-card-content>\n <mat-card-actions *ngIf=\"showRefreshButton\">\n <button mat-button\n (click)=\"onRefreshClicked()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-form-container{max-width:100%;max-height:100%}.adf-form-container .mat-mdc-card{padding:16px 24px;overflow:hidden}.adf-form-container .mat-mdc-card-header-text{margin:0}.adf-form-container .mat-mdc-tab-body-content{overflow:hidden}.adf-form-container .mdc-tab__text-label{text-align:left;text-transform:uppercase}.adf-form-container .mdc-tab-indicator{height:4px}.adf-form-container .mat-mdc-text-field-wrapper{margin:0 12px 0 0}.adf-form-container-card .adf-form-title{font:var(--mat-sys-title-medium)}.adf-form-container-card .adf-form-debug-container{padding:10px}.adf-form-container-card .adf-form-debug-container .adf-debug-toggle-text{padding-left:15px;cursor:pointer}.adf-form-container-card .adf-form-reload-button{position:absolute;right:12px;top:30px}.adf-form-container-card .adf-form-validation-button{position:absolute;right:50px;top:39px;color:var(--mat-sys-primary)}.adf-form-container-card .adf-form-validation-button .adf-invalid-color{color:var(--mat-sys-error)}.adf-form-container-card .adf-form-hide-button{display:none}.adf-form-container-card .adf-task-title{text-align:center}.adf-form-container-card .adf-label{width:32px;height:16px;font:var(--mat-sys-body-small);text-align:left;white-space:nowrap}.adf-form-container-card .adf-form-mat-card-actions{float:right;padding-bottom:25px;padding-right:25px}.adf-form-container-card .adf-form-mat-card-actions .mat-mdc-button{height:36px;border-radius:5px}.adf-form-container-card .adf-form-mat-card-actions .mdc-button__label{width:58px;height:20px;font:var(--mat-sys-body-large)}form-field{width:100%}[dir=rtl] .adf-form-validation-button{left:50px;right:unset}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: FormRendererComponent, selector: "adf-form-renderer", inputs: ["formDefinition", "readOnly"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
2937
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: StartFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2938
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: StartFormComponent, isStandalone: true, selector: "adf-start-form", inputs: { processDefinitionId: "processDefinitionId", processId: "processId", showOutcomeButtons: "showOutcomeButtons", showRefreshButton: "showRefreshButton", readOnlyForm: "readOnlyForm" }, outputs: { outcomeClick: "outcomeClick", formContentClicked: "formContentClicked" }, viewQueries: [{ propertyName: "outcomesContainer", first: true, predicate: ["outcomesContainer"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"adf-start-form-container\" *ngIf=\"hasForm()\">\n <mat-card class=\"adf-start-form-card\">\n <mat-card-header class=\"adf-start-form-header\">\n <mat-card-title>\n <h2 *ngIf=\"isTitleEnabled()\" class=\"mdl-card__title-text\">{{form.taskName}}</h2>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-start-form-content\">\n <adf-form-renderer [formDefinition]=\"form\" />\n </mat-card-content>\n <mat-card-content class=\"adf-start-form-actions\" *ngIf=\"showOutcomeButtons && form.hasOutcomes()\"\n #outcomesContainer>\n <ng-content select=\"[adf-form-custom-button], [form-custom-button]\" />\n\n <button *ngFor=\"let outcome of form.outcomes\"\n mat-button\n class=\"adf-start-form-actions-button\"\n [attr.data-automation-id]=\"'adf-form-' + outcome.name | lowercase\"\n [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.mdl-button--colored]=\"!outcome.isSystem\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\">\n {{ outcome.name | uppercase | translate | uppercase }}\n </button>\n </mat-card-content>\n <mat-card-actions *ngIf=\"showRefreshButton\">\n <button mat-button\n (click)=\"onRefreshClicked()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-form-container{max-width:100%;max-height:100%}.adf-form-container .mat-mdc-card{padding:16px 24px;overflow:hidden}.adf-form-container .mat-mdc-card-header-text{margin:0}.adf-form-container .mat-mdc-tab-body-content{overflow:hidden}.adf-form-container .mdc-tab__text-label{text-align:left;text-transform:uppercase}.adf-form-container .mdc-tab-indicator{height:4px}.adf-form-container .mat-mdc-text-field-wrapper{margin:0 12px 0 0}.adf-form-container-card .adf-form-title{font:var(--mat-sys-title-medium)}.adf-form-container-card .adf-form-debug-container{padding:10px}.adf-form-container-card .adf-form-debug-container .adf-debug-toggle-text{padding-left:15px;cursor:pointer}.adf-form-container-card .adf-form-reload-button{position:absolute;right:12px;top:30px}.adf-form-container-card .adf-form-validation-button{position:absolute;right:50px;top:39px;color:var(--mat-sys-primary)}.adf-form-container-card .adf-form-validation-button .adf-invalid-color{color:var(--mat-sys-error)}.adf-form-container-card .adf-form-hide-button{display:none}.adf-form-container-card .adf-task-title{text-align:center}.adf-form-container-card .adf-label{width:32px;height:16px;font:var(--mat-sys-body-small);text-align:left;white-space:nowrap}.adf-form-container-card .adf-form-mat-card-actions{float:right;padding-bottom:25px;padding-right:25px}.adf-form-container-card .adf-form-mat-card-actions .mat-mdc-button{height:36px;border-radius:5px}.adf-form-container-card .adf-form-mat-card-actions .mdc-button__label{width:58px;height:20px;font:var(--mat-sys-body-large)}form-field{width:100%}[dir=rtl] .adf-form-validation-button{left:50px;right:unset}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: FormRendererComponent, selector: "adf-form-renderer", inputs: ["formDefinition", "readOnly"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
2988
2939
  }
2989
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartFormComponent, decorators: [{
2940
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: StartFormComponent, decorators: [{
2990
2941
  type: Component,
2991
2942
  args: [{ selector: 'adf-start-form', imports: [CommonModule, TranslatePipe, MatButtonModule, MatCardModule, FormRendererComponent, MatIconModule], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-start-form-container\" *ngIf=\"hasForm()\">\n <mat-card class=\"adf-start-form-card\">\n <mat-card-header class=\"adf-start-form-header\">\n <mat-card-title>\n <h2 *ngIf=\"isTitleEnabled()\" class=\"mdl-card__title-text\">{{form.taskName}}</h2>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content class=\"adf-start-form-content\">\n <adf-form-renderer [formDefinition]=\"form\" />\n </mat-card-content>\n <mat-card-content class=\"adf-start-form-actions\" *ngIf=\"showOutcomeButtons && form.hasOutcomes()\"\n #outcomesContainer>\n <ng-content select=\"[adf-form-custom-button], [form-custom-button]\" />\n\n <button *ngFor=\"let outcome of form.outcomes\"\n mat-button\n class=\"adf-start-form-actions-button\"\n [attr.data-automation-id]=\"'adf-form-' + outcome.name | lowercase\"\n [disabled]=\"!isOutcomeButtonEnabled(outcome)\"\n [class.mdl-button--colored]=\"!outcome.isSystem\"\n [class.adf-form-hide-button]=\"!isOutcomeButtonVisible(outcome, form.readOnly)\"\n (click)=\"onOutcomeClicked(outcome)\">\n {{ outcome.name | uppercase | translate | uppercase }}\n </button>\n </mat-card-content>\n <mat-card-actions *ngIf=\"showRefreshButton\">\n <button mat-button\n (click)=\"onRefreshClicked()\">\n <mat-icon>refresh</mat-icon>\n </button>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-form-container{max-width:100%;max-height:100%}.adf-form-container .mat-mdc-card{padding:16px 24px;overflow:hidden}.adf-form-container .mat-mdc-card-header-text{margin:0}.adf-form-container .mat-mdc-tab-body-content{overflow:hidden}.adf-form-container .mdc-tab__text-label{text-align:left;text-transform:uppercase}.adf-form-container .mdc-tab-indicator{height:4px}.adf-form-container .mat-mdc-text-field-wrapper{margin:0 12px 0 0}.adf-form-container-card .adf-form-title{font:var(--mat-sys-title-medium)}.adf-form-container-card .adf-form-debug-container{padding:10px}.adf-form-container-card .adf-form-debug-container .adf-debug-toggle-text{padding-left:15px;cursor:pointer}.adf-form-container-card .adf-form-reload-button{position:absolute;right:12px;top:30px}.adf-form-container-card .adf-form-validation-button{position:absolute;right:50px;top:39px;color:var(--mat-sys-primary)}.adf-form-container-card .adf-form-validation-button .adf-invalid-color{color:var(--mat-sys-error)}.adf-form-container-card .adf-form-hide-button{display:none}.adf-form-container-card .adf-task-title{text-align:center}.adf-form-container-card .adf-label{width:32px;height:16px;font:var(--mat-sys-body-small);text-align:left;white-space:nowrap}.adf-form-container-card .adf-form-mat-card-actions{float:right;padding-bottom:25px;padding-right:25px}.adf-form-container-card .adf-form-mat-card-actions .mat-mdc-button{height:36px;border-radius:5px}.adf-form-container-card .adf-form-mat-card-actions .mdc-button__label{width:58px;height:20px;font:var(--mat-sys-body-large)}form-field{width:100%}[dir=rtl] .adf-form-validation-button{left:50px;right:unset}\n"] }]
2992
2943
  }], ctorParameters: () => [], propDecorators: { processDefinitionId: [{
@@ -3014,9 +2965,6 @@ var __decorate$7 = (this && this.__decorate) || function (decorators, target, ke
3014
2965
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
3015
2966
  return c > 3 && r && Object.defineProperty(target, key, r), r;
3016
2967
  };
3017
- var __metadata$7 = (this && this.__metadata) || function (k, v) {
3018
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
3019
- };
3020
2968
  class ProcessContentService {
3021
2969
  constructor() {
3022
2970
  this.apiService = inject(AlfrescoApiService);
@@ -3203,14 +3151,13 @@ class ProcessContentService {
3203
3151
  }
3204
3152
  return throwError(errMsg);
3205
3153
  }
3206
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3207
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessContentService, providedIn: 'root' }); }
3154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3155
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessContentService, providedIn: 'root' }); }
3208
3156
  }
3209
3157
  __decorate$7([
3210
- LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance())),
3211
- __metadata$7("design:type", ActivitiContentApi)
3158
+ LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance()))
3212
3159
  ], ProcessContentService.prototype, "contentApi", void 0);
3213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessContentService, decorators: [{
3160
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessContentService, decorators: [{
3214
3161
  type: Injectable,
3215
3162
  args: [{
3216
3163
  providedIn: 'root'
@@ -3306,10 +3253,10 @@ class UploadWidgetComponent extends WidgetComponent {
3306
3253
  this.formService.formContentClicked.next(file);
3307
3254
  });
3308
3255
  }
3309
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: UploadWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3310
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: UploadWidgetComponent, isStandalone: true, selector: "upload-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["uploadFiles"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"adf-upload-widget {{field.className}}\" [class.adf-invalid]=\"!field.isValid\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <div class=\"adf-upload-widget-container\">\n <div>\n <mat-list *ngIf=\"hasFile\">\n <mat-list-item class=\"adf-upload-files-row\" *ngFor=\"let file of field.value\">\n <img\n matListItemLine\n class=\"adf-upload-widget__icon\"\n [id]=\"'file-'+file.id+'-icon'\"\n [src]=\"getIcon(file.mimeType)\"\n [alt]=\"mimeTypeIcon\"\n (click)=\"fileClicked(file)\"\n (keyup.enter)=\"fileClicked(file)\"\n role=\"button\"\n tabindex=\"0\"\n />\n <span\n matListItemLine\n id=\"{{'file-'+file.id}}\"\n (click)=\"fileClicked(file)\"\n (keyup.enter)=\"fileClicked(file)\"\n role=\"button\"\n tabindex=\"0\"\n class=\"adf-file\"\n >{{file.name}}</span\n >\n <button\n *ngIf=\"!field.readOnly\"\n mat-icon-button\n [id]=\"'file-'+file.id+'-remove'\"\n (click)=\"removeFile(file);\"\n (keyup.enter)=\"removeFile(file);\"\n >\n <mat-icon class=\"mat-24\">highlight_off</mat-icon>\n </button>\n </mat-list-item>\n </mat-list>\n </div>\n\n <div *ngIf=\"(!hasFile || multipleOption) && !field.readOnly\">\n <button mat-raised-button (click)=\"uploadFiles.click()\">\n {{ 'FORM.FIELD.UPLOAD' | translate }}<mat-icon>file_upload</mat-icon>\n <input #uploadFiles [multiple]=\"multipleOption\" type=\"file\" [id]=\"field.id\" (change)=\"onFileChanged($event)\" />\n </button>\n </div>\n </div>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-upload-widget-container{margin-bottom:15px}.adf-upload-widget-container input{display:none}.adf-upload-widget{width:100%;word-break:break-all;padding:.4375em 0;border-top:.8438em solid transparent}.adf-upload-widget__icon{padding:6px;float:left;cursor:pointer}.adf-upload-widget__reset{margin-top:-2px}.adf-upload-files-row .mat-line{margin-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemLine, selector: "[matListItemLine]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
3256
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: UploadWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3257
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: UploadWidgetComponent, isStandalone: true, selector: "upload-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["uploadFiles"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"adf-upload-widget {{field.className}}\" [class.adf-invalid]=\"!field.isValid\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <div class=\"adf-upload-widget-container\">\n <div>\n <mat-list *ngIf=\"hasFile\">\n <mat-list-item class=\"adf-upload-files-row\" *ngFor=\"let file of field.value\">\n <img\n matListItemLine\n class=\"adf-upload-widget__icon\"\n [id]=\"'file-'+file.id+'-icon'\"\n [src]=\"getIcon(file.mimeType)\"\n [alt]=\"mimeTypeIcon\"\n (click)=\"fileClicked(file)\"\n (keyup.enter)=\"fileClicked(file)\"\n role=\"button\"\n tabindex=\"0\"\n />\n <span\n matListItemLine\n id=\"{{'file-'+file.id}}\"\n (click)=\"fileClicked(file)\"\n (keyup.enter)=\"fileClicked(file)\"\n role=\"button\"\n tabindex=\"0\"\n class=\"adf-file\"\n >{{file.name}}</span\n >\n <button\n *ngIf=\"!field.readOnly\"\n mat-icon-button\n [id]=\"'file-'+file.id+'-remove'\"\n (click)=\"removeFile(file);\"\n (keyup.enter)=\"removeFile(file);\"\n >\n <mat-icon class=\"mat-24\">highlight_off</mat-icon>\n </button>\n </mat-list-item>\n </mat-list>\n </div>\n\n <div *ngIf=\"(!hasFile || multipleOption) && !field.readOnly\">\n <button mat-raised-button (click)=\"uploadFiles.click()\">\n {{ 'FORM.FIELD.UPLOAD' | translate }}<mat-icon>file_upload</mat-icon>\n <input #uploadFiles [multiple]=\"multipleOption\" type=\"file\" [id]=\"field.id\" (change)=\"onFileChanged($event)\" />\n </button>\n </div>\n </div>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-upload-widget-container{margin-bottom:15px}.adf-upload-widget-container input{display:none}.adf-upload-widget{width:100%;word-break:break-all;padding:.4375em 0;border-top:.8438em solid transparent}.adf-upload-widget__icon{padding:6px;float:left;cursor:pointer}.adf-upload-widget__reset{margin-top:-2px}.adf-upload-files-row .mat-line{margin-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemLine, selector: "[matListItemLine]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
3311
3258
  }
3312
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: UploadWidgetComponent, decorators: [{
3259
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: UploadWidgetComponent, decorators: [{
3313
3260
  type: Component,
3314
3261
  args: [{ selector: 'upload-widget', imports: [CommonModule, TranslatePipe, MatListModule, MatButtonModule, MatIconModule, ErrorWidgetComponent], host: {
3315
3262
  '(click)': 'event($event)',
@@ -3417,10 +3364,10 @@ class ContentWidgetComponent {
3417
3364
  this.error.emit(error);
3418
3365
  });
3419
3366
  }
3420
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ContentWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3421
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ContentWidgetComponent, isStandalone: true, selector: "adf-content", inputs: { id: "id", showDocumentContent: "showDocumentContent" }, outputs: { contentClick: "contentClick", thumbnailLoaded: "thumbnailLoaded", contentLoaded: "contentLoaded", error: "error" }, usesOnChanges: true, ngImport: i0, template: "<mat-card appearance=\"outlined\" class=\"adf-content-container\" *ngIf=\"content\">\n <mat-card-content *ngIf=\"showDocumentContent\">\n <div *ngIf=\"content.isThumbnailSupported()\" >\n <img id=\"thumbnailPreview\" class=\"adf-img-upload-widget\" [src]=\"content.thumbnailUrl\" alt=\"{{content.name}}\">\n </div>\n <div *ngIf=\"!content.isThumbnailSupported()\">\n <mat-icon>image</mat-icon>\n <div id=\"unsupported-thumbnail\" class=\"adf-content-widget-preview-text\">{{ 'FORM.PREVIEW.IMAGE_NOT_AVAILABLE' | translate }}\n </div>\n </div>\n <div class=\"mdl-card__supporting-text upload-widget__content-text\">{{content.name | translate }}</div>\n </mat-card-content>\n\n <mat-card-actions>\n <button mat-icon-button id=\"view\" (click)=\"openViewer(content)\">\n <mat-icon class=\"mat-24\">zoom_in</mat-icon>\n </button>\n <button mat-icon-button id=\"download\" (click)=\"download(content)\">\n <mat-icon class=\"mat-24\">file_download</mat-icon>\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-img-upload-widget{width:100%;height:100%;border:1px solid var(--mat-sys-outline-variant);box-shadow:var(--mat-sys-level2);background-color:var(--mat-sys-surface)}.adf-content-widget-preview-text{word-wrap:break-word;word-break:break-all;text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
3367
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ContentWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3368
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ContentWidgetComponent, isStandalone: true, selector: "adf-content", inputs: { id: "id", showDocumentContent: "showDocumentContent" }, outputs: { contentClick: "contentClick", thumbnailLoaded: "thumbnailLoaded", contentLoaded: "contentLoaded", error: "error" }, usesOnChanges: true, ngImport: i0, template: "<mat-card appearance=\"outlined\" class=\"adf-content-container\" *ngIf=\"content\">\n <mat-card-content *ngIf=\"showDocumentContent\">\n <div *ngIf=\"content.isThumbnailSupported()\" >\n <img id=\"thumbnailPreview\" class=\"adf-img-upload-widget\" [src]=\"content.thumbnailUrl\" alt=\"{{content.name}}\">\n </div>\n <div *ngIf=\"!content.isThumbnailSupported()\">\n <mat-icon>image</mat-icon>\n <div id=\"unsupported-thumbnail\" class=\"adf-content-widget-preview-text\">{{ 'FORM.PREVIEW.IMAGE_NOT_AVAILABLE' | translate }}\n </div>\n </div>\n <div class=\"mdl-card__supporting-text upload-widget__content-text\">{{content.name | translate }}</div>\n </mat-card-content>\n\n <mat-card-actions>\n <button mat-icon-button id=\"view\" (click)=\"openViewer(content)\">\n <mat-icon class=\"mat-24\">zoom_in</mat-icon>\n </button>\n <button mat-icon-button id=\"download\" (click)=\"download(content)\">\n <mat-icon class=\"mat-24\">file_download</mat-icon>\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-img-upload-widget{width:100%;height:100%;border:1px solid var(--mat-sys-outline-variant);box-shadow:var(--mat-sys-level2);background-color:var(--mat-sys-surface)}.adf-content-widget-preview-text{word-wrap:break-word;word-break:break-all;text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
3422
3369
  }
3423
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ContentWidgetComponent, decorators: [{
3370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ContentWidgetComponent, decorators: [{
3424
3371
  type: Component,
3425
3372
  args: [{ selector: 'adf-content', imports: [CommonModule, TranslatePipe, MatCardModule, MatIconModule, MatButtonModule], encapsulation: ViewEncapsulation.None, template: "<mat-card appearance=\"outlined\" class=\"adf-content-container\" *ngIf=\"content\">\n <mat-card-content *ngIf=\"showDocumentContent\">\n <div *ngIf=\"content.isThumbnailSupported()\" >\n <img id=\"thumbnailPreview\" class=\"adf-img-upload-widget\" [src]=\"content.thumbnailUrl\" alt=\"{{content.name}}\">\n </div>\n <div *ngIf=\"!content.isThumbnailSupported()\">\n <mat-icon>image</mat-icon>\n <div id=\"unsupported-thumbnail\" class=\"adf-content-widget-preview-text\">{{ 'FORM.PREVIEW.IMAGE_NOT_AVAILABLE' | translate }}\n </div>\n </div>\n <div class=\"mdl-card__supporting-text upload-widget__content-text\">{{content.name | translate }}</div>\n </mat-card-content>\n\n <mat-card-actions>\n <button mat-icon-button id=\"view\" (click)=\"openViewer(content)\">\n <mat-icon class=\"mat-24\">zoom_in</mat-icon>\n </button>\n <button mat-icon-button id=\"download\" (click)=\"download(content)\">\n <mat-icon class=\"mat-24\">file_download</mat-icon>\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-img-upload-widget{width:100%;height:100%;border:1px solid var(--mat-sys-outline-variant);box-shadow:var(--mat-sys-level2);background-color:var(--mat-sys-surface)}.adf-content-widget-preview-text{word-wrap:break-word;word-break:break-all;text-align:center}\n"] }]
3426
3373
  }], propDecorators: { id: [{
@@ -3472,10 +3419,10 @@ class DocumentWidgetComponent extends WidgetComponent {
3472
3419
  }
3473
3420
  }
3474
3421
  }
3475
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DocumentWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3476
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: DocumentWidgetComponent, isStandalone: true, selector: "adf-form-document-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-form-document-widget {{field.className}}\">\n <ng-container *ngIf=\"hasFile\">\n <adf-content [id]=\"fileId\" [showDocumentContent]=\"true\" />\n </ng-container>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ContentWidgetComponent, selector: "adf-content", inputs: ["id", "showDocumentContent"], outputs: ["contentClick", "thumbnailLoaded", "contentLoaded", "error"] }], encapsulation: i0.ViewEncapsulation.None }); }
3422
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DocumentWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3423
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: DocumentWidgetComponent, isStandalone: true, selector: "adf-form-document-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-form-document-widget {{field.className}}\">\n <ng-container *ngIf=\"hasFile\">\n <adf-content [id]=\"fileId\" [showDocumentContent]=\"true\" />\n </ng-container>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ContentWidgetComponent, selector: "adf-content", inputs: ["id", "showDocumentContent"], outputs: ["contentClick", "thumbnailLoaded", "contentLoaded", "error"] }], encapsulation: i0.ViewEncapsulation.None }); }
3477
3424
  }
3478
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DocumentWidgetComponent, decorators: [{
3425
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DocumentWidgetComponent, decorators: [{
3479
3426
  type: Component,
3480
3427
  args: [{ selector: 'adf-form-document-widget', imports: [CommonModule, ContentWidgetComponent], host: {
3481
3428
  '(click)': 'event($event)',
@@ -3516,7 +3463,7 @@ class PeopleWidgetComponent extends WidgetComponent {
3516
3463
  this.multiSelect = false;
3517
3464
  this.searchTerm = new UntypedFormControl();
3518
3465
  this.searchTerms$ = this.searchTerm.valueChanges;
3519
- this.users$ = this.searchTerms$.pipe(distinctUntilChanged(), switchMap((searchTerm) => {
3466
+ this.users$ = this.searchTerms$.pipe(debounceTime(300), distinctUntilChanged(), switchMap((searchTerm) => {
3520
3467
  if (!searchTerm) {
3521
3468
  return of([]);
3522
3469
  }
@@ -3530,6 +3477,7 @@ class PeopleWidgetComponent extends WidgetComponent {
3530
3477
  this.peopleProcessService = inject(PeopleProcessService);
3531
3478
  }
3532
3479
  ngOnInit() {
3480
+ this.initErrorStateMatcher();
3533
3481
  if (this.field) {
3534
3482
  if (this.field.value) {
3535
3483
  Array.isArray(this.field.value) ? this.selectedUsers.push(...this.field.value) : this.selectedUsers.push(this.field.value);
@@ -3593,6 +3541,11 @@ class PeopleWidgetComponent extends WidgetComponent {
3593
3541
  this.input.nativeElement.value = '';
3594
3542
  this.searchTerm.setValue('');
3595
3543
  }
3544
+ initErrorStateMatcher() {
3545
+ this.errorStateMatcher = {
3546
+ isErrorState: (_control, _form) => !!this.field.validationSummary?.message || (this.isInvalidFieldRequired() && this.isTouched())
3547
+ };
3548
+ }
3596
3549
  isUserAlreadySelected(user) {
3597
3550
  if (this.selectedUsers?.length > 0) {
3598
3551
  const result = this.selectedUsers.find((selectedUser) => selectedUser.id === user.id);
@@ -3600,10 +3553,10 @@ class PeopleWidgetComponent extends WidgetComponent {
3600
3553
  }
3601
3554
  return false;
3602
3555
  }
3603
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3604
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: PeopleWidgetComponent, isStandalone: true, selector: "people-widget", outputs: { peopleSelected: "peopleSelected" }, host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["inputValue"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"adf-people-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"people-widget-content\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <mat-form-field\n class=\"adf-people-widget-field\">\n <mat-chip-grid #chipGrid [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECTED_PEOPLE' | translate\">\n <mat-chip-row\n *ngFor=\"let user of selectedUsers\"\n (removed)=\"onRemove(user)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-people-widget-chip-' + user.id\"\n class=\"adf-people-widget-field-chip\">\n {{ getDisplayName(user) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + user.firstName\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input #inputValue\n matInput\n class=\"adf-input\"\n [matChipInputFor]=\"chipGrid\"\n data-automation-id=\"adf-people-search-input\"\n type=\"text\"\n [disabled]=\"!multiSelect && selectedUsers.length > 0 || field.readOnly\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [placeholder]=\"selectedUsers.length > 0 ? '' : field.placeholder\"\n [matAutocomplete]=\"auto\"\n (blur)=\"markAsTouched()\"\n [title]=\"field.tooltip\">\n </mat-chip-grid>\n\n <mat-autocomplete class=\"adf-people-widget-list\"\n #auto=\"matAutocomplete\"\n (optionSelected)=\"onItemSelect($event.option.value)\"\n [displayWith]=\"getDisplayName\">\n <mat-option *ngFor=\"let user of users$ | async; let i = index\" [value]=\"user\" [disabled]=\"isUserAlreadySelected(user)\">\n <div class=\"adf-people-widget-row\" id=\"adf-people-widget-user-{{i}}\">\n <div [outerHTML]=\"user | usernameInitials:'adf-people-widget-pic'\"></div>\n <div *ngIf=\"user.pictureId\" class=\"adf-people-widget-image-row\">\n <img id=\"adf-people-widget-pic-{{i}}\" class=\"adf-people-widget-image\"\n [alt]=\"getDisplayName(user)\" [src]=\"peopleProcessService.getUserImage(user.id.toString())\"/>\n </div>\n <span class=\"adf-people-label-name\">{{getDisplayName(user)}}</span>\n </div>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-people-widget{width:100%}.adf-people-widget .adf-people-widget-field{top:10px}.adf-people-widget .adf-people-widget-field .adf-people-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}.adf-people-widget-list{margin:5px 0;padding:10px 0}.adf-people-widget-row{display:flex;align-items:center}.adf-people-widget-pic{background:var(--mat-sys-primary);display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:100px;color:var(--mat-sys-on-surface);font:var(--mat-sys-label-large);text-transform:uppercase}.adf-people-widget-image{margin-left:-44px;left:21px;background:var(--mat-sys-surface-container-high);border-radius:100px;width:40px;height:40px;vertical-align:middle;display:inline-block;padding:0}.adf-people-widget-image-row{display:inline-block}.adf-people-label-name{padding-left:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i4.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i4.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: InitialUsernamePipe, name: "usernameInitials" }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
3556
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3557
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: PeopleWidgetComponent, isStandalone: true, selector: "people-widget", outputs: { peopleSelected: "peopleSelected" }, host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["inputValue"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"adf-people-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"people-widget-content\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <mat-form-field\n class=\"adf-people-widget-field\">\n <mat-chip-grid #chipGrid [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECTED_PEOPLE' | translate\"\n [ngModel]=\"selectedUsers\" [errorStateMatcher]=\"errorStateMatcher\">\n <mat-chip-row\n *ngFor=\"let user of selectedUsers\"\n (removed)=\"onRemove(user)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-people-widget-chip-' + user.id\"\n class=\"adf-people-widget-field-chip\">\n {{ getDisplayName(user) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + user.firstName\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input #inputValue\n matInput\n class=\"adf-input\"\n [matChipInputFor]=\"chipGrid\"\n data-automation-id=\"adf-people-search-input\"\n type=\"text\"\n [disabled]=\"!multiSelect && selectedUsers.length > 0 || field.readOnly\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [placeholder]=\"selectedUsers.length > 0 ? '' : field.placeholder\"\n [matAutocomplete]=\"auto\"\n (blur)=\"markAsTouched()\"\n [title]=\"field.tooltip\">\n </mat-chip-grid>\n\n <mat-autocomplete class=\"adf-people-widget-list\"\n #auto=\"matAutocomplete\"\n (optionSelected)=\"onItemSelect($event.option.value)\"\n [displayWith]=\"getDisplayName\">\n <mat-option *ngFor=\"let user of users$ | async; let i = index\" [value]=\"user\" [disabled]=\"isUserAlreadySelected(user)\">\n <div class=\"adf-people-widget-row\" id=\"adf-people-widget-user-{{i}}\">\n <div [outerHTML]=\"user | usernameInitials:'adf-people-widget-pic'\"></div>\n <div *ngIf=\"user.pictureId\" class=\"adf-people-widget-image-row\">\n <img id=\"adf-people-widget-pic-{{i}}\" class=\"adf-people-widget-image\"\n [alt]=\"getDisplayName(user)\" [src]=\"peopleProcessService.getUserImage(user.id.toString())\"/>\n </div>\n <span class=\"adf-people-label-name\">{{getDisplayName(user)}}</span>\n </div>\n </mat-option>\n </mat-autocomplete>\n @if (field.validationSummary?.message || (isInvalidFieldRequired() && isTouched())) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n</div>\n", styles: [".adf-people-widget{width:100%}.adf-people-widget .adf-people-widget-field{top:10px}.adf-people-widget .adf-people-widget-field .adf-people-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}.adf-people-widget-list{margin:5px 0;padding:10px 0}.adf-people-widget-row{display:flex;align-items:center}.adf-people-widget-pic{background:var(--mat-sys-primary);display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:100px;color:var(--mat-sys-on-surface);font:var(--mat-sys-label-large);text-transform:uppercase}.adf-people-widget-image{margin-left:-44px;left:21px;background:var(--mat-sys-surface-container-high);border-radius:100px;width:40px;height:40px;vertical-align:middle;display:inline-block;padding:0}.adf-people-widget-image-row{display:inline-block}.adf-people-label-name{padding-left:10px}.adf-people-widget-field .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i4.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled", "readonly", "matChipInputDisabledInteractive"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i4.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: InitialUsernamePipe, name: "usernameInitials" }], encapsulation: i0.ViewEncapsulation.None }); }
3605
3558
  }
3606
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleWidgetComponent, decorators: [{
3559
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleWidgetComponent, decorators: [{
3607
3560
  type: Component,
3608
3561
  args: [{ selector: 'people-widget', imports: [
3609
3562
  CommonModule,
@@ -3612,10 +3565,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
3612
3565
  MatInputModule,
3613
3566
  MatChipsModule,
3614
3567
  MatIconModule,
3568
+ FormsModule,
3615
3569
  ReactiveFormsModule,
3616
3570
  MatAutocompleteModule,
3617
- InitialUsernamePipe,
3618
- ErrorWidgetComponent
3571
+ InitialUsernamePipe
3619
3572
  ], host: {
3620
3573
  '(click)': 'event($event)',
3621
3574
  '(blur)': 'event($event)',
@@ -3626,7 +3579,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
3626
3579
  '(input)': 'event($event)',
3627
3580
  '(invalid)': 'event($event)',
3628
3581
  '(select)': 'event($event)'
3629
- }, encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-people-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"people-widget-content\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <mat-form-field\n class=\"adf-people-widget-field\">\n <mat-chip-grid #chipGrid [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECTED_PEOPLE' | translate\">\n <mat-chip-row\n *ngFor=\"let user of selectedUsers\"\n (removed)=\"onRemove(user)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-people-widget-chip-' + user.id\"\n class=\"adf-people-widget-field-chip\">\n {{ getDisplayName(user) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + user.firstName\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input #inputValue\n matInput\n class=\"adf-input\"\n [matChipInputFor]=\"chipGrid\"\n data-automation-id=\"adf-people-search-input\"\n type=\"text\"\n [disabled]=\"!multiSelect && selectedUsers.length > 0 || field.readOnly\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [placeholder]=\"selectedUsers.length > 0 ? '' : field.placeholder\"\n [matAutocomplete]=\"auto\"\n (blur)=\"markAsTouched()\"\n [title]=\"field.tooltip\">\n </mat-chip-grid>\n\n <mat-autocomplete class=\"adf-people-widget-list\"\n #auto=\"matAutocomplete\"\n (optionSelected)=\"onItemSelect($event.option.value)\"\n [displayWith]=\"getDisplayName\">\n <mat-option *ngFor=\"let user of users$ | async; let i = index\" [value]=\"user\" [disabled]=\"isUserAlreadySelected(user)\">\n <div class=\"adf-people-widget-row\" id=\"adf-people-widget-user-{{i}}\">\n <div [outerHTML]=\"user | usernameInitials:'adf-people-widget-pic'\"></div>\n <div *ngIf=\"user.pictureId\" class=\"adf-people-widget-image-row\">\n <img id=\"adf-people-widget-pic-{{i}}\" class=\"adf-people-widget-image\"\n [alt]=\"getDisplayName(user)\" [src]=\"peopleProcessService.getUserImage(user.id.toString())\"/>\n </div>\n <span class=\"adf-people-label-name\">{{getDisplayName(user)}}</span>\n </div>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-people-widget{width:100%}.adf-people-widget .adf-people-widget-field{top:10px}.adf-people-widget .adf-people-widget-field .adf-people-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}.adf-people-widget-list{margin:5px 0;padding:10px 0}.adf-people-widget-row{display:flex;align-items:center}.adf-people-widget-pic{background:var(--mat-sys-primary);display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:100px;color:var(--mat-sys-on-surface);font:var(--mat-sys-label-large);text-transform:uppercase}.adf-people-widget-image{margin-left:-44px;left:21px;background:var(--mat-sys-surface-container-high);border-radius:100px;width:40px;height:40px;vertical-align:middle;display:inline-block;padding:0}.adf-people-widget-image-row{display:inline-block}.adf-people-label-name{padding-left:10px}\n"] }]
3582
+ }, encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-people-widget {{field.className}}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"people-widget-content\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label>\n <mat-form-field\n class=\"adf-people-widget-field\">\n <mat-chip-grid #chipGrid [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECTED_PEOPLE' | translate\"\n [ngModel]=\"selectedUsers\" [errorStateMatcher]=\"errorStateMatcher\">\n <mat-chip-row\n *ngFor=\"let user of selectedUsers\"\n (removed)=\"onRemove(user)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-people-widget-chip-' + user.id\"\n class=\"adf-people-widget-field-chip\">\n {{ getDisplayName(user) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + user.firstName\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input #inputValue\n matInput\n class=\"adf-input\"\n [matChipInputFor]=\"chipGrid\"\n data-automation-id=\"adf-people-search-input\"\n type=\"text\"\n [disabled]=\"!multiSelect && selectedUsers.length > 0 || field.readOnly\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [placeholder]=\"selectedUsers.length > 0 ? '' : field.placeholder\"\n [matAutocomplete]=\"auto\"\n (blur)=\"markAsTouched()\"\n [title]=\"field.tooltip\">\n </mat-chip-grid>\n\n <mat-autocomplete class=\"adf-people-widget-list\"\n #auto=\"matAutocomplete\"\n (optionSelected)=\"onItemSelect($event.option.value)\"\n [displayWith]=\"getDisplayName\">\n <mat-option *ngFor=\"let user of users$ | async; let i = index\" [value]=\"user\" [disabled]=\"isUserAlreadySelected(user)\">\n <div class=\"adf-people-widget-row\" id=\"adf-people-widget-user-{{i}}\">\n <div [outerHTML]=\"user | usernameInitials:'adf-people-widget-pic'\"></div>\n <div *ngIf=\"user.pictureId\" class=\"adf-people-widget-image-row\">\n <img id=\"adf-people-widget-pic-{{i}}\" class=\"adf-people-widget-image\"\n [alt]=\"getDisplayName(user)\" [src]=\"peopleProcessService.getUserImage(user.id.toString())\"/>\n </div>\n <span class=\"adf-people-label-name\">{{getDisplayName(user)}}</span>\n </div>\n </mat-option>\n </mat-autocomplete>\n @if (field.validationSummary?.message || (isInvalidFieldRequired() && isTouched())) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n</div>\n", styles: [".adf-people-widget{width:100%}.adf-people-widget .adf-people-widget-field{top:10px}.adf-people-widget .adf-people-widget-field .adf-people-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}.adf-people-widget-list{margin:5px 0;padding:10px 0}.adf-people-widget-row{display:flex;align-items:center}.adf-people-widget-pic{background:var(--mat-sys-primary);display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:100px;color:var(--mat-sys-on-surface);font:var(--mat-sys-label-large);text-transform:uppercase}.adf-people-widget-image{margin-left:-44px;left:21px;background:var(--mat-sys-surface-container-high);border-radius:100px;width:40px;height:40px;vertical-align:middle;display:inline-block;padding:0}.adf-people-widget-image-row{display:inline-block}.adf-people-label-name{padding-left:10px}.adf-people-widget-field .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"] }]
3630
3583
  }], propDecorators: { input: [{
3631
3584
  type: ViewChild,
3632
3585
  args: ['inputValue', { static: true }]
@@ -3745,10 +3698,10 @@ class FunctionalGroupWidgetComponent extends WidgetComponent {
3745
3698
  isGroupAlreadySelected(group) {
3746
3699
  return this.selectedGroups?.some((selectedGroup) => selectedGroup.id === group.id);
3747
3700
  }
3748
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FunctionalGroupWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3749
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: FunctionalGroupWidgetComponent, isStandalone: true, selector: "functional-group-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["inputValue"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"adf-group-widget {{field.className}}\"\n [class.is-dirty]=\"!!field.value\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"functional-group-div\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field class=\"adf-group-widget-field\">\n <mat-chip-grid #chipGrid>\n <mat-chip-row\n *ngFor=\"let group of selectedGroups\"\n (removed)=\"onRemove(group)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-group-widget-chip-' + group.id\"\n class=\"adf-group-widget-field-chip\"\n >\n {{ getDisplayName(group) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + group.name\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input\n matInput\n class=\"adf-input\"\n type=\"text\"\n data-automation-id=\"adf-group-search-input\"\n [matChipInputFor]=\"chipGrid\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [disabled]=\"!multiSelect && selectedGroups.length > 0 || field.readOnly\"\n [placeholder]=\"field.placeholder\"\n (blur)=\"markAsTouched()\"\n [matAutocomplete]=\"auto\"\n #inputValue\n />\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"updateOption($event.option.value)\" [displayWith]=\"getDisplayName\">\n <mat-option\n *ngFor=\"let item of groups$ | async; let i = index\"\n id=\"adf-group-widget-user-{{i}}\"\n [id]=\"field.id +'-'+item.id\"\n [value]=\"item\"\n [disabled]=\"isGroupAlreadySelected(item)\"\n >\n <span id=\"adf-group-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-group-widget{width:100%}.adf-group-widget .adf-group-widget-field .adf-group-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i4.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i4.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
3701
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FunctionalGroupWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3702
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: FunctionalGroupWidgetComponent, isStandalone: true, selector: "functional-group-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["inputValue"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"adf-group-widget {{field.className}}\"\n [class.is-dirty]=\"!!field.value\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"functional-group-div\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field class=\"adf-group-widget-field\">\n <mat-chip-grid #chipGrid>\n <mat-chip-row\n *ngFor=\"let group of selectedGroups\"\n (removed)=\"onRemove(group)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-group-widget-chip-' + group.id\"\n class=\"adf-group-widget-field-chip\"\n >\n {{ getDisplayName(group) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + group.name\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input\n matInput\n class=\"adf-input\"\n type=\"text\"\n data-automation-id=\"adf-group-search-input\"\n [matChipInputFor]=\"chipGrid\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [disabled]=\"!multiSelect && selectedGroups.length > 0 || field.readOnly\"\n [placeholder]=\"field.placeholder\"\n (blur)=\"markAsTouched()\"\n [matAutocomplete]=\"auto\"\n #inputValue\n />\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"updateOption($event.option.value)\" [displayWith]=\"getDisplayName\">\n <mat-option\n *ngFor=\"let item of groups$ | async; let i = index\"\n id=\"adf-group-widget-user-{{i}}\"\n [id]=\"field.id +'-'+item.id\"\n [value]=\"item\"\n [disabled]=\"isGroupAlreadySelected(item)\"\n >\n <span id=\"adf-group-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n @if (field.validationSummary?.message || (isInvalidFieldRequired() && isTouched())) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n</div>\n", styles: [".adf-group-widget{width:100%}.adf-group-widget .adf-group-widget-field .adf-group-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}.adf-group-widget-field .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i4.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled", "readonly", "matChipInputDisabledInteractive"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i4.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
3750
3703
  }
3751
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FunctionalGroupWidgetComponent, decorators: [{
3704
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FunctionalGroupWidgetComponent, decorators: [{
3752
3705
  type: Component,
3753
3706
  args: [{ selector: 'functional-group-widget', imports: [
3754
3707
  CommonModule,
@@ -3757,7 +3710,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
3757
3710
  MatInputModule,
3758
3711
  ReactiveFormsModule,
3759
3712
  MatAutocompleteModule,
3760
- ErrorWidgetComponent,
3761
3713
  MatChipsModule,
3762
3714
  MatIconModule
3763
3715
  ], host: {
@@ -3770,7 +3722,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
3770
3722
  '(input)': 'event($event)',
3771
3723
  '(invalid)': 'event($event)',
3772
3724
  '(select)': 'event($event)'
3773
- }, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-group-widget {{field.className}}\"\n [class.is-dirty]=\"!!field.value\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"functional-group-div\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field class=\"adf-group-widget-field\">\n <mat-chip-grid #chipGrid>\n <mat-chip-row\n *ngFor=\"let group of selectedGroups\"\n (removed)=\"onRemove(group)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-group-widget-chip-' + group.id\"\n class=\"adf-group-widget-field-chip\"\n >\n {{ getDisplayName(group) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + group.name\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input\n matInput\n class=\"adf-input\"\n type=\"text\"\n data-automation-id=\"adf-group-search-input\"\n [matChipInputFor]=\"chipGrid\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [disabled]=\"!multiSelect && selectedGroups.length > 0 || field.readOnly\"\n [placeholder]=\"field.placeholder\"\n (blur)=\"markAsTouched()\"\n [matAutocomplete]=\"auto\"\n #inputValue\n />\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"updateOption($event.option.value)\" [displayWith]=\"getDisplayName\">\n <mat-option\n *ngFor=\"let item of groups$ | async; let i = index\"\n id=\"adf-group-widget-user-{{i}}\"\n [id]=\"field.id +'-'+item.id\"\n [value]=\"item\"\n [disabled]=\"isGroupAlreadySelected(item)\"\n >\n <span id=\"adf-group-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired() && isTouched()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-group-widget{width:100%}.adf-group-widget .adf-group-widget-field .adf-group-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}\n"] }]
3725
+ }, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-group-widget {{field.className}}\"\n [class.is-dirty]=\"!!field.value\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"functional-group-div\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field class=\"adf-group-widget-field\">\n <mat-chip-grid #chipGrid>\n <mat-chip-row\n *ngFor=\"let group of selectedGroups\"\n (removed)=\"onRemove(group)\"\n [disabled]=\"field.readOnly\"\n [attr.data-automation-id]=\"'adf-group-widget-chip-' + group.id\"\n class=\"adf-group-widget-field-chip\"\n >\n {{ getDisplayName(group) }}\n <button matChipRemove [attr.aria-label]=\"'remove ' + group.name\">\n <mat-icon>close</mat-icon>\n </button>\n </mat-chip-row>\n <input\n matInput\n class=\"adf-input\"\n type=\"text\"\n data-automation-id=\"adf-group-search-input\"\n [matChipInputFor]=\"chipGrid\"\n [id]=\"field.id\"\n [formControl]=\"searchTerm\"\n [disabled]=\"!multiSelect && selectedGroups.length > 0 || field.readOnly\"\n [placeholder]=\"field.placeholder\"\n (blur)=\"markAsTouched()\"\n [matAutocomplete]=\"auto\"\n #inputValue\n />\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"updateOption($event.option.value)\" [displayWith]=\"getDisplayName\">\n <mat-option\n *ngFor=\"let item of groups$ | async; let i = index\"\n id=\"adf-group-widget-user-{{i}}\"\n [id]=\"field.id +'-'+item.id\"\n [value]=\"item\"\n [disabled]=\"isGroupAlreadySelected(item)\"\n >\n <span id=\"adf-group-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n @if (field.validationSummary?.message || (isInvalidFieldRequired() && isTouched())) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n</div>\n", styles: [".adf-group-widget{width:100%}.adf-group-widget .adf-group-widget-field .adf-group-widget-field-chip{border:1px solid var(--mat-sys-outline);border-radius:10px;background-color:var(--mat-sys-secondary);height:auto;word-break:break-word;padding:4px 0}.adf-group-widget-field .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"] }]
3774
3726
  }], propDecorators: { input: [{
3775
3727
  type: ViewChild,
3776
3728
  args: ['inputValue', { static: true }]
@@ -3782,9 +3734,6 @@ var __decorate$6 = (this && this.__decorate) || function (decorators, target, ke
3782
3734
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
3783
3735
  return c > 3 && r && Object.defineProperty(target, key, r), r;
3784
3736
  };
3785
- var __metadata$6 = (this && this.__metadata) || function (k, v) {
3786
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
3787
- };
3788
3737
  class ProcessDefinitionService {
3789
3738
  constructor() {
3790
3739
  this.apiService = inject(AlfrescoApiService);
@@ -3841,14 +3790,13 @@ class ProcessDefinitionService {
3841
3790
  }
3842
3791
  return throwError(errMsg);
3843
3792
  }
3844
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessDefinitionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3845
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessDefinitionService, providedIn: 'root' }); }
3793
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessDefinitionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3794
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessDefinitionService, providedIn: 'root' }); }
3846
3795
  }
3847
3796
  __decorate$6([
3848
- LazyApi((self) => new ProcessDefinitionsApi(self.apiService.getInstance())),
3849
- __metadata$6("design:type", ProcessDefinitionsApi)
3797
+ LazyApi((self) => new ProcessDefinitionsApi(self.apiService.getInstance()))
3850
3798
  ], ProcessDefinitionService.prototype, "processDefinitionsApi", void 0);
3851
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessDefinitionService, decorators: [{
3799
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessDefinitionService, decorators: [{
3852
3800
  type: Injectable,
3853
3801
  args: [{
3854
3802
  providedIn: 'root'
@@ -3918,10 +3866,10 @@ class RadioButtonsWidgetComponent extends WidgetComponent {
3918
3866
  isValidRestConfig() {
3919
3867
  return this.isRestType() && this.hasRestUrl();
3920
3868
  }
3921
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: RadioButtonsWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3922
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: RadioButtonsWidgetComponent, isStandalone: true, selector: "radio-buttons-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-radio-buttons-widget {{field.className}}\" [class.adf-readonly]=\"field.readOnly\" [id]=\"field.id\">\n <div class=\"adf-radio-button-container\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-radio-group class=\"adf-radio-group\" [(ngModel)]=\"field.value\" [disabled]=\"field.readOnly\">\n <mat-radio-button\n [title]=\"field.tooltip\"\n [id]=\"field.id + '-' + opt.id\"\n [name]=\"field.id\"\n [value]=\"opt.id\"\n [checked]=\"field.value === opt.id\"\n (change)=\"onOptionClick(opt.id)\"\n class=\"adf-radio-button\"\n *ngFor=\"let opt of field.options\"\n >\n {{opt.name}}\n </mat-radio-button>\n </mat-radio-group>\n </div>\n <error-widget [error]=\"field.validationSummary\" />\n</div>\n", styles: [".adf-radio-button-container{margin-bottom:15px;display:flex;flex-direction:column}.adf-radio-group{margin-top:15px;margin-left:5px;display:inline-flex;flex-direction:column}.adf-radio-button{margin:5px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i2$5.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$5.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
3869
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: RadioButtonsWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3870
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: RadioButtonsWidgetComponent, isStandalone: true, selector: "radio-buttons-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-radio-buttons-widget {{field.className}}\" [class.adf-readonly]=\"field.readOnly\" [id]=\"field.id\">\n <div class=\"adf-radio-button-container\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-radio-group class=\"adf-radio-group\" [(ngModel)]=\"field.value\" [disabled]=\"field.readOnly\">\n <mat-radio-button\n [title]=\"field.tooltip\"\n [id]=\"field.id + '-' + opt.id\"\n [name]=\"field.id\"\n [value]=\"opt.id\"\n [checked]=\"field.value === opt.id\"\n (change)=\"onOptionClick(opt.id)\"\n class=\"adf-radio-button\"\n *ngFor=\"let opt of field.options\"\n >\n {{opt.name}}\n </mat-radio-button>\n </mat-radio-group>\n </div>\n <error-widget [error]=\"field.validationSummary\" />\n</div>\n", styles: [".adf-radio-button-container{margin-bottom:15px;display:flex;flex-direction:column}.adf-radio-group{margin-top:15px;margin-left:5px;display:inline-flex;flex-direction:column}.adf-radio-button{margin:5px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i2$5.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$5.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
3923
3871
  }
3924
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: RadioButtonsWidgetComponent, decorators: [{
3872
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: RadioButtonsWidgetComponent, decorators: [{
3925
3873
  type: Component,
3926
3874
  args: [{ selector: 'radio-buttons-widget', imports: [CommonModule, TranslatePipe, MatRadioModule, FormsModule, ErrorWidgetComponent], host: {
3927
3875
  '(click)': 'event($event)',
@@ -4086,12 +4034,12 @@ class DropdownWidgetComponent extends WidgetComponent {
4086
4034
  return isEmptyInputValue(control.value) || isEqualToEmptyValue(control.value) ? { required: true } : null;
4087
4035
  };
4088
4036
  }
4089
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DropdownWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4090
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: DropdownWidgetComponent, isStandalone: true, selector: "dropdown-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"adf-dropdown-widget {{field.className}}\"\n [class.adf-invalid]=\"dropdownControl.invalid && dropdownControl.touched\"\n [class.adf-readonly]=\"field.readOnly\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field>\n <mat-select class=\"adf-select\" [id]=\"field.id\" [formControl]=\"dropdownControl\">\n <mat-option *ngFor=\"let opt of field.options\" [value]=\"opt\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n <mat-option id=\"readonlyOption\" *ngIf=\"dropdownControl.disabled\" [value]=\"field.value\">{{field.value}}</mat-option>\n </mat-select>\n </mat-form-field>\n <ng-container *ngIf=\"!isReadOnlyField && dropdownControl.touched\">\n <error-widget [error]=\"field.validationSummary\" />\n </ng-container>\n</div>\n", styles: [".adf-dropdown-widget{width:100%}.adf-dropdown-widget .adf-select{padding-top:0;width:100%}.adf-dropdown-widget-select{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
4037
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropdownWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4038
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: DropdownWidgetComponent, isStandalone: true, selector: "dropdown-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div\n class=\"adf-dropdown-widget {{field.className}}\"\n [class.adf-invalid]=\"dropdownControl.invalid && dropdownControl.touched\"\n [class.adf-readonly]=\"field.readOnly\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field class=\"adf-form-field-input\">\n <mat-select class=\"adf-select\" [id]=\"field.id\" [formControl]=\"dropdownControl\">\n <mat-option *ngFor=\"let opt of field.options\" [value]=\"opt\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n <mat-option id=\"readonlyOption\" *ngIf=\"dropdownControl.disabled\" [value]=\"field.value\">{{field.value}}</mat-option>\n </mat-select>\n @if (!isReadOnlyField && dropdownControl.touched && (field.validationSummary?.message || dropdownControl.hasError('required'))) {\n <mat-error data-automation-id=\"adf-dropdown-error\">\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n</div>\n", styles: [".adf-dropdown-widget{width:100%}.adf-dropdown-widget .adf-select{padding-top:0;width:100%}.adf-dropdown-widget-select{width:100%}.adf-form-field-input .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
4091
4039
  }
4092
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DropdownWidgetComponent, decorators: [{
4040
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropdownWidgetComponent, decorators: [{
4093
4041
  type: Component,
4094
- args: [{ selector: 'dropdown-widget', imports: [CommonModule, TranslatePipe, MatFormFieldModule, MatSelectModule, ReactiveFormsModule, ErrorWidgetComponent], host: {
4042
+ args: [{ selector: 'dropdown-widget', imports: [CommonModule, TranslatePipe, MatFormFieldModule, MatSelectModule, ReactiveFormsModule, MatIconModule], host: {
4095
4043
  '(click)': 'event($event)',
4096
4044
  '(blur)': 'event($event)',
4097
4045
  '(change)': 'event($event)',
@@ -4101,7 +4049,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4101
4049
  '(input)': 'event($event)',
4102
4050
  '(invalid)': 'event($event)',
4103
4051
  '(select)': 'event($event)'
4104
- }, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-dropdown-widget {{field.className}}\"\n [class.adf-invalid]=\"dropdownControl.invalid && dropdownControl.touched\"\n [class.adf-readonly]=\"field.readOnly\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field>\n <mat-select class=\"adf-select\" [id]=\"field.id\" [formControl]=\"dropdownControl\">\n <mat-option *ngFor=\"let opt of field.options\" [value]=\"opt\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n <mat-option id=\"readonlyOption\" *ngIf=\"dropdownControl.disabled\" [value]=\"field.value\">{{field.value}}</mat-option>\n </mat-select>\n </mat-form-field>\n <ng-container *ngIf=\"!isReadOnlyField && dropdownControl.touched\">\n <error-widget [error]=\"field.validationSummary\" />\n </ng-container>\n</div>\n", styles: [".adf-dropdown-widget{width:100%}.adf-dropdown-widget .adf-select{padding-top:0;width:100%}.adf-dropdown-widget-select{width:100%}\n"] }]
4052
+ }, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"adf-dropdown-widget {{field.className}}\"\n [class.adf-invalid]=\"dropdownControl.invalid && dropdownControl.touched\"\n [class.adf-readonly]=\"field.readOnly\"\n>\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <mat-form-field class=\"adf-form-field-input\">\n <mat-select class=\"adf-select\" [id]=\"field.id\" [formControl]=\"dropdownControl\">\n <mat-option *ngFor=\"let opt of field.options\" [value]=\"opt\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n <mat-option id=\"readonlyOption\" *ngIf=\"dropdownControl.disabled\" [value]=\"field.value\">{{field.value}}</mat-option>\n </mat-select>\n @if (!isReadOnlyField && dropdownControl.touched && (field.validationSummary?.message || dropdownControl.hasError('required'))) {\n <mat-error data-automation-id=\"adf-dropdown-error\">\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n</div>\n", styles: [".adf-dropdown-widget{width:100%}.adf-dropdown-widget .adf-select{padding-top:0;width:100%}.adf-dropdown-widget-select{width:100%}.adf-form-field-input .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"] }]
4105
4053
  }] });
4106
4054
 
4107
4055
  /*!
@@ -4130,6 +4078,7 @@ class TypeaheadWidgetComponent extends WidgetComponent {
4130
4078
  this.processDefinitionService = inject(ProcessDefinitionService);
4131
4079
  }
4132
4080
  ngOnInit() {
4081
+ this.initErrorStateMatcher();
4133
4082
  if (this.field.form.taskId && this.field.restUrl) {
4134
4083
  this.getValuesByTaskId();
4135
4084
  }
@@ -4216,12 +4165,17 @@ class TypeaheadWidgetComponent extends WidgetComponent {
4216
4165
  isReadOnlyType() {
4217
4166
  return this.field.type === 'readonly';
4218
4167
  }
4219
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TypeaheadWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4220
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TypeaheadWidgetComponent, isStandalone: true, selector: "typeahead-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-typeahead-widget-container\">\n <div class=\"adf-typeahead-widget {{field.className}}\"\n [class.is-dirty]=\"value\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"typehead-div\">\n <mat-form-field>\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}</label>\n <input matInput class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"validate()\"\n (keyup)=\"onKeyUp($event)\"\n [disabled]=\"field.readOnly\"\n data-automation-id=\"adf-typeahed-search-input\"\n placeholder=\"{{field.placeholder}}\"\n [matAutocomplete]=\"auto\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onItemSelect($event.option.value)\">\n <mat-option *ngFor=\"let item of options; let i = index\" id=\"adf-typeahed-widget-user-{{i}}\" [value]=\"item\">\n <span id=\"adf-typeahed-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n </div>\n</div>\n", styles: [".adf-typeahead-widget-container{position:relative;display:block}.adf-typeahead-widget{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }], encapsulation: i0.ViewEncapsulation.None }); }
4168
+ initErrorStateMatcher() {
4169
+ this.errorStateMatcher = {
4170
+ isErrorState: (_control, _form) => !!this.field.validationSummary?.message || this.isInvalidFieldRequired()
4171
+ };
4172
+ }
4173
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TypeaheadWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4174
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: TypeaheadWidgetComponent, isStandalone: true, selector: "typeahead-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-typeahead-widget-container\">\n <div class=\"adf-typeahead-widget {{field.className}}\"\n [class.is-dirty]=\"value\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"typehead-div\">\n <mat-form-field class=\"adf-form-field-input\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}</label>\n <input matInput class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"validate()\"\n (keyup)=\"onKeyUp($event)\"\n [disabled]=\"field.readOnly\"\n data-automation-id=\"adf-typeahed-search-input\"\n placeholder=\"{{field.placeholder}}\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [matAutocomplete]=\"auto\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onItemSelect($event.option.value)\">\n <mat-option *ngFor=\"let item of options; let i = index\" id=\"adf-typeahed-widget-user-{{i}}\" [value]=\"item\">\n <span id=\"adf-typeahed-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n @if (field.validationSummary?.message || isInvalidFieldRequired()) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n </div>\n</div>\n", styles: [".adf-typeahead-widget-container{position:relative;display:block}.adf-typeahead-widget{width:100%}.adf-form-field-input .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
4221
4175
  }
4222
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TypeaheadWidgetComponent, decorators: [{
4176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TypeaheadWidgetComponent, decorators: [{
4223
4177
  type: Component,
4224
- args: [{ selector: 'typeahead-widget', imports: [CommonModule, TranslatePipe, MatFormFieldModule, FormsModule, MatAutocompleteModule, ErrorWidgetComponent, MatInputModule], host: {
4178
+ args: [{ selector: 'typeahead-widget', imports: [CommonModule, TranslatePipe, MatFormFieldModule, FormsModule, MatAutocompleteModule, MatInputModule, MatIconModule], host: {
4225
4179
  '(click)': 'event($event)',
4226
4180
  '(blur)': 'event($event)',
4227
4181
  '(change)': 'event($event)',
@@ -4231,7 +4185,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4231
4185
  '(input)': 'event($event)',
4232
4186
  '(invalid)': 'event($event)',
4233
4187
  '(select)': 'event($event)'
4234
- }, encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-typeahead-widget-container\">\n <div class=\"adf-typeahead-widget {{field.className}}\"\n [class.is-dirty]=\"value\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"typehead-div\">\n <mat-form-field>\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}</label>\n <input matInput class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"validate()\"\n (keyup)=\"onKeyUp($event)\"\n [disabled]=\"field.readOnly\"\n data-automation-id=\"adf-typeahed-search-input\"\n placeholder=\"{{field.placeholder}}\"\n [matAutocomplete]=\"auto\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onItemSelect($event.option.value)\">\n <mat-option *ngFor=\"let item of options; let i = index\" id=\"adf-typeahed-widget-user-{{i}}\" [value]=\"item\">\n <span id=\"adf-typeahed-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n </mat-form-field>\n\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n </div>\n</div>\n", styles: [".adf-typeahead-widget-container{position:relative;display:block}.adf-typeahead-widget{width:100%}\n"] }]
4188
+ }, encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-typeahead-widget-container\">\n <div class=\"adf-typeahead-widget {{field.className}}\"\n [class.is-dirty]=\"value\"\n [class.adf-invalid]=\"!field.isValid\"\n [class.adf-readonly]=\"field.readOnly\"\n id=\"typehead-div\">\n <mat-form-field class=\"adf-form-field-input\">\n <label class=\"adf-label\" [attr.for]=\"field.id\">{{field.name | translate }}</label>\n <input matInput class=\"adf-input\"\n type=\"text\"\n [id]=\"field.id\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"validate()\"\n (keyup)=\"onKeyUp($event)\"\n [disabled]=\"field.readOnly\"\n data-automation-id=\"adf-typeahed-search-input\"\n placeholder=\"{{field.placeholder}}\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [matAutocomplete]=\"auto\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onItemSelect($event.option.value)\">\n <mat-option *ngFor=\"let item of options; let i = index\" id=\"adf-typeahed-widget-user-{{i}}\" [value]=\"item\">\n <span id=\"adf-typeahed-label-name\">{{item.name}}</span>\n </mat-option>\n </mat-autocomplete>\n @if (field.validationSummary?.message || isInvalidFieldRequired()) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">error_outline</mat-icon>\n <span class=\"adf-error-text\"\n >@if (field.validationSummary?.message) {{{ field.validationSummary.message | translate }}} @else {{{ 'FORM.FIELD.REQUIRED' | translate }}}</span>\n </mat-error>\n }\n </mat-form-field>\n </div>\n</div>\n", styles: [".adf-typeahead-widget-container{position:relative;display:block}.adf-typeahead-widget{width:100%}.adf-form-field-input .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"] }]
4235
4189
  }] });
4236
4190
 
4237
4191
  /*!
@@ -4252,10 +4206,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4252
4206
  */
4253
4207
  /* eslint-disable @angular-eslint/component-selector */
4254
4208
  class FileViewerWidgetComponent extends BaseViewerWidgetComponent {
4255
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FileViewerWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4256
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: FileViewerWidgetComponent, isStandalone: true, selector: "file-viewer-widget", usesInheritance: true, ngImport: i0, template: "<div class=\"adf-file-viewer-widget {{field.className}}\" [class.adf-invalid]=\"!field.isValid\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <adf-alfresco-viewer [nodeId]=\"field.value\" [showViewer]=\"field.value\" [allowGoBack]=\"false\" />\n <error-widget [error]=\"field.validationSummary\" />\n</div>\n", styles: ["file-viewer-widget{height:100%;width:100%}file-viewer-widget .adf-file-viewer-widget{height:100%;width:100%}file-viewer-widget .adf-file-viewer-widget adf-viewer.adf-viewer{position:relative}file-viewer-widget .adf-file-viewer-widget adf-viewer.adf-viewer .adf-viewer-container .adf-viewer-content>div{height:90vh}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: AlfrescoViewerComponent, selector: "adf-alfresco-viewer", inputs: ["nodeId", "versionId", "sharedLinkId", "showViewer", "maxRetries", "allowGoBack", "showToolbar", "overlayMode", "allowNavigate", "canNavigateBefore", "canNavigateNext", "allowLeftSidebar", "allowRightSidebar", "showRightSidebar", "showLeftSidebar", "allowDownload", "allowPrint", "allowFullScreen", "hideInfoButton", "closeButtonPosition", "sidebarRightTemplate", "sidebarLeftTemplate", "readOnly", "showToolbarDividers"], outputs: ["invalidSharedLink", "navigateBefore", "navigateNext", "showViewerChange"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
4209
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FileViewerWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4210
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: FileViewerWidgetComponent, isStandalone: true, selector: "file-viewer-widget", usesInheritance: true, ngImport: i0, template: "<div class=\"adf-file-viewer-widget {{field.className}}\" [class.adf-invalid]=\"!field.isValid\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <adf-alfresco-viewer [nodeId]=\"field.value\" [showViewer]=\"field.value\" [allowGoBack]=\"false\" />\n <error-widget [error]=\"field.validationSummary\" />\n</div>\n", styles: ["file-viewer-widget{height:100%;width:100%}file-viewer-widget .adf-file-viewer-widget{height:100%;width:100%}file-viewer-widget .adf-file-viewer-widget adf-viewer.adf-viewer{position:relative}file-viewer-widget .adf-file-viewer-widget adf-viewer.adf-viewer .adf-viewer-container .adf-viewer-content>div{height:90vh}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AlfrescoViewerComponent, selector: "adf-alfresco-viewer", inputs: ["nodeId", "versionId", "sharedLinkId", "showViewer", "maxRetries", "allowGoBack", "showToolbar", "overlayMode", "allowNavigate", "canNavigateBefore", "canNavigateNext", "allowLeftSidebar", "allowRightSidebar", "showRightSidebar", "showLeftSidebar", "allowDownload", "allowPrint", "allowFullScreen", "hideInfoButton", "closeButtonPosition", "sidebarRightTemplate", "sidebarLeftTemplate", "readOnly", "showToolbarDividers"], outputs: ["invalidSharedLink", "navigateBefore", "navigateNext", "showViewerChange"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
4257
4211
  }
4258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FileViewerWidgetComponent, decorators: [{
4212
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FileViewerWidgetComponent, decorators: [{
4259
4213
  type: Component,
4260
4214
  args: [{ selector: 'file-viewer-widget', imports: [CommonModule, TranslatePipe, AlfrescoViewerComponent, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-file-viewer-widget {{field.className}}\" [class.adf-invalid]=\"!field.isValid\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <adf-alfresco-viewer [nodeId]=\"field.value\" [showViewer]=\"field.value\" [allowGoBack]=\"false\" />\n <error-widget [error]=\"field.validationSummary\" />\n</div>\n", styles: ["file-viewer-widget{height:100%;width:100%}file-viewer-widget .adf-file-viewer-widget{height:100%;width:100%}file-viewer-widget .adf-file-viewer-widget adf-viewer.adf-viewer{position:relative}file-viewer-widget .adf-file-viewer-widget adf-viewer.adf-viewer .adf-viewer-container .adf-viewer-content>div{height:90vh}\n"] }]
4261
4215
  }] });
@@ -4276,14 +4230,66 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4276
4230
  * See the License for the specific language governing permissions and
4277
4231
  * limitations under the License.
4278
4232
  */
4279
- class ValidateDynamicTableRowEvent extends FormFieldEvent {
4280
- constructor(form, field, row, summary) {
4281
- super(form, field);
4282
- this.row = row;
4283
- this.summary = summary;
4284
- this.isValid = true;
4233
+ /* eslint-disable @angular-eslint/component-selector */
4234
+ class DropdownEditorComponent {
4235
+ constructor() {
4236
+ this.formService = inject(FormService);
4237
+ this.taskFormService = inject(TaskFormService);
4238
+ this.processDefinitionService = inject(ProcessDefinitionService);
4239
+ this.value = null;
4240
+ this.options = [];
4241
+ }
4242
+ ngOnInit() {
4243
+ const field = this.table.field;
4244
+ if (field) {
4245
+ if (this.column.optionType === 'rest') {
4246
+ if (this.table.form?.taskId) {
4247
+ this.getValuesByTaskId(field);
4248
+ }
4249
+ else {
4250
+ this.getValuesByProcessDefinitionId(field);
4251
+ }
4252
+ }
4253
+ else {
4254
+ this.options = this.column.options || [];
4255
+ this.value = this.table.getCellValue(this.row, this.column);
4256
+ }
4257
+ }
4258
+ }
4259
+ getValuesByTaskId(field) {
4260
+ this.taskFormService.getRestFieldValuesColumn(field.form.taskId, field.id, this.column.id).subscribe((dynamicTableColumnOption) => {
4261
+ this.column.options = dynamicTableColumnOption || [];
4262
+ this.options = this.column.options;
4263
+ this.value = this.table.getCellValue(this.row, this.column);
4264
+ });
4265
+ }
4266
+ getValuesByProcessDefinitionId(field) {
4267
+ this.processDefinitionService
4268
+ .getRestFieldValuesColumnByProcessId(field.form.processDefinitionId, field.id, this.column.id)
4269
+ .subscribe((dynamicTableColumnOption) => {
4270
+ this.column.options = dynamicTableColumnOption || [];
4271
+ this.options = this.column.options;
4272
+ this.value = this.table.getCellValue(this.row, this.column);
4273
+ });
4274
+ }
4275
+ onValueChanged(row, column, event) {
4276
+ let value = event.value;
4277
+ value = column.options.find((opt) => opt.name === value);
4278
+ row.value[column.id] = value;
4285
4279
  }
4280
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropdownEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4281
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: DropdownEditorComponent, isStandalone: true, selector: "adf-dropdown-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: "<div class=\"dropdown-editor\">\n <label [attr.for]=\"column.id\">{{column.name}}</label>\n <mat-form-field>\n <mat-select\n floatPlaceholder=\"never\"\n class=\"adf-dropdown-editor-select\"\n [id]=\"column.id\"\n [(ngModel)]=\"value\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (selectionChange)=\"onValueChanged(row, column, $event)\">\n <mat-option />\n <mat-option *ngFor=\"let opt of options\" [value]=\"opt.name\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n </mat-select>\n </mat-form-field>\n <span *ngFor=\"let opt of options\" id=\"testme\">{{opt | json}}</span>\n</div>\n", styles: [".adf-dropdown-editor-select{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i1.JsonPipe, name: "json" }] }); }
4286
4282
  }
4283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropdownEditorComponent, decorators: [{
4284
+ type: Component,
4285
+ args: [{ selector: 'adf-dropdown-editor', imports: [CommonModule, MatFormFieldModule, MatSelectModule, FormsModule], template: "<div class=\"dropdown-editor\">\n <label [attr.for]=\"column.id\">{{column.name}}</label>\n <mat-form-field>\n <mat-select\n floatPlaceholder=\"never\"\n class=\"adf-dropdown-editor-select\"\n [id]=\"column.id\"\n [(ngModel)]=\"value\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (selectionChange)=\"onValueChanged(row, column, $event)\">\n <mat-option />\n <mat-option *ngFor=\"let opt of options\" [value]=\"opt.name\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n </mat-select>\n </mat-form-field>\n <span *ngFor=\"let opt of options\" id=\"testme\">{{opt | json}}</span>\n</div>\n", styles: [".adf-dropdown-editor-select{width:100%}\n"] }]
4286
+ }], propDecorators: { table: [{
4287
+ type: Input
4288
+ }], row: [{
4289
+ type: Input
4290
+ }], column: [{
4291
+ type: Input
4292
+ }] } });
4287
4293
 
4288
4294
  /*!
4289
4295
  * @license
@@ -4301,35 +4307,28 @@ class ValidateDynamicTableRowEvent extends FormFieldEvent {
4301
4307
  * See the License for the specific language governing permissions and
4302
4308
  * limitations under the License.
4303
4309
  */
4304
- class DateCellValidator {
4305
- constructor() {
4306
- this.supportedTypes = [DateCellValidator.DATE_TYPE];
4307
- }
4308
- static { this.DATE_TYPE = 'Date'; }
4309
- isSupported(column) {
4310
- return !!(column?.editable && this.supportedTypes.indexOf(column?.type) > -1);
4310
+ /* eslint-disable @angular-eslint/component-selector */
4311
+ class AmountEditorComponent {
4312
+ ngOnInit() {
4313
+ this.displayName = this.table.getDisplayText(this.column);
4311
4314
  }
4312
- validate(row, column, summary) {
4313
- if (this.isSupported(column)) {
4314
- const value = row?.value[column.id];
4315
- if (value) {
4316
- const dateValue = new Date(value);
4317
- if (isValid(dateValue)) {
4318
- return true;
4319
- }
4320
- if (summary) {
4321
- summary.isValid = false;
4322
- summary.message = `Invalid '${column.name}' format.`;
4323
- }
4324
- return false;
4325
- }
4326
- else {
4327
- return !column.required;
4328
- }
4329
- }
4330
- return true;
4315
+ onValueChanged(row, column, event) {
4316
+ const value = Number(event.target.value);
4317
+ row.value[column.id] = value;
4331
4318
  }
4319
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AmountEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4320
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: AmountEditorComponent, isStandalone: true, selector: "adf-amount-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: "<div class=\"adf-amount-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"number\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
4332
4321
  }
4322
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AmountEditorComponent, decorators: [{
4323
+ type: Component,
4324
+ args: [{ selector: 'adf-amount-editor', imports: [CommonModule, MatFormFieldModule, MatInputModule], template: "<div class=\"adf-amount-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"number\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"] }]
4325
+ }], propDecorators: { table: [{
4326
+ type: Input
4327
+ }], row: [{
4328
+ type: Input
4329
+ }], column: [{
4330
+ type: Input
4331
+ }] } });
4333
4332
 
4334
4333
  /*!
4335
4334
  * @license
@@ -4347,12 +4346,25 @@ class DateCellValidator {
4347
4346
  * See the License for the specific language governing permissions and
4348
4347
  * limitations under the License.
4349
4348
  */
4350
- class DynamicRowValidationSummary extends ErrorMessageModel {
4351
- constructor(json) {
4352
- super(json);
4353
- this.isValid = json?.isValid;
4349
+ /* eslint-disable @angular-eslint/component-selector */
4350
+ class BooleanEditorComponent {
4351
+ onValueChanged(row, column, event) {
4352
+ const value = event.checked;
4353
+ row.value[column.id] = value;
4354
4354
  }
4355
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: BooleanEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4356
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: BooleanEditorComponent, isStandalone: true, selector: "adf-boolean-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: " <label [attr.for]=\"column.id\">\n <mat-checkbox\n [id]=\"column.id\"\n [checked]=\"table.getCellValue(row, column)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (change)=\"onValueChanged(row, column, $event)\">\n <span class=\"adf-checkbox-label\">{{column.name}}</span>\n </mat-checkbox>\n</label>\n", styles: [".adf-checkbox-label{position:relative;cursor:pointer;font:var(--mat-sys-body-large);margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i1$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }] }); }
4355
4357
  }
4358
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: BooleanEditorComponent, decorators: [{
4359
+ type: Component,
4360
+ args: [{ selector: 'adf-boolean-editor', imports: [CommonModule, MatCheckboxModule], template: " <label [attr.for]=\"column.id\">\n <mat-checkbox\n [id]=\"column.id\"\n [checked]=\"table.getCellValue(row, column)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (change)=\"onValueChanged(row, column, $event)\">\n <span class=\"adf-checkbox-label\">{{column.name}}</span>\n </mat-checkbox>\n</label>\n", styles: [".adf-checkbox-label{position:relative;cursor:pointer;font:var(--mat-sys-body-large);margin:0}\n"] }]
4361
+ }], propDecorators: { table: [{
4362
+ type: Input
4363
+ }], row: [{
4364
+ type: Input
4365
+ }], column: [{
4366
+ type: Input
4367
+ }] } });
4356
4368
 
4357
4369
  /*!
4358
4370
  * @license
@@ -4370,34 +4382,56 @@ class DynamicRowValidationSummary extends ErrorMessageModel {
4370
4382
  * See the License for the specific language governing permissions and
4371
4383
  * limitations under the License.
4372
4384
  */
4373
- class NumberCellValidator {
4385
+ class DateEditorComponent {
4374
4386
  constructor() {
4375
- this.supportedTypes = ['Number', 'Amount'];
4376
- }
4377
- isSupported(column) {
4378
- return column?.required && this.supportedTypes.indexOf(column.type) > -1;
4387
+ this.dateAdapter = inject(DateAdapter);
4388
+ this.DATE_FORMAT = 'DD-MM-YYYY';
4379
4389
  }
4380
- isNumber(value) {
4381
- if (value === null || value === undefined || value === '') {
4382
- return false;
4383
- }
4384
- return !isNaN(+value);
4390
+ ngOnInit() {
4391
+ const dateAdapter = this.dateAdapter;
4392
+ dateAdapter.displayFormat = this.DATE_FORMAT;
4393
+ this.value = this.table.getCellValue(this.row, this.column);
4385
4394
  }
4386
- validate(row, column, summary) {
4387
- if (this.isSupported(column)) {
4388
- const value = row.value[column.id];
4389
- if (value === null || value === undefined || value === '' || this.isNumber(value)) {
4390
- return true;
4395
+ onDateChanged(newDateValue) {
4396
+ if (typeof newDateValue === 'string') {
4397
+ const newValue = DateFnsUtils.parseDate(newDateValue, this.DATE_FORMAT);
4398
+ if (isValid(newValue)) {
4399
+ this.row.value[this.column.id] = `${DateFnsUtils.formatDate(newValue, 'yyyy-MM-dd')}T00:00:00.000Z`;
4400
+ this.table.flushValue();
4391
4401
  }
4392
- if (summary) {
4393
- summary.isValid = false;
4394
- summary.message = `Field '${column.name}' must be a number.`;
4402
+ else {
4403
+ this.row.value[this.column.id] = newDateValue;
4395
4404
  }
4396
- return false;
4397
4405
  }
4398
- return true;
4406
+ else if (newDateValue?.value) {
4407
+ this.row.value[this.column.id] = `${DateFnsUtils.formatDate(newDateValue?.value, 'yyyy-MM-dd')}T00:00:00.000Z`;
4408
+ this.table.flushValue();
4409
+ }
4410
+ else {
4411
+ this.row.value[this.column.id] = '';
4412
+ }
4399
4413
  }
4414
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DateEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4415
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: DateEditorComponent, isStandalone: true, selector: "adf-date-editor", inputs: { value: "value", table: "table", row: "row", column: "column" }, providers: [
4416
+ { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4417
+ { provide: DateAdapter, useClass: AdfDateFnsAdapter }
4418
+ ], ngImport: i0, template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} ({{DATE_FORMAT}})</label>\n <input matInput\n id=\"dateInput\"\n type=\"text\"\n [matDatepicker]=\"datePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datepicker-toggle *ngIf=\"column.editable\" matSuffix [for]=\"datePicker\" class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datepicker #datePicker [touchUi]=\"true\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i3$4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3$4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3$4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
4400
4419
  }
4420
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DateEditorComponent, decorators: [{
4421
+ type: Component,
4422
+ args: [{ selector: 'adf-date-editor', imports: [CommonModule, MatFormFieldModule, MatDatepickerModule, MatInputModule, FormsModule], providers: [
4423
+ { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4424
+ { provide: DateAdapter, useClass: AdfDateFnsAdapter }
4425
+ ], template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} ({{DATE_FORMAT}})</label>\n <input matInput\n id=\"dateInput\"\n type=\"text\"\n [matDatepicker]=\"datePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datepicker-toggle *ngIf=\"column.editable\" matSuffix [for]=\"datePicker\" class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datepicker #datePicker [touchUi]=\"true\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"] }]
4426
+ }], propDecorators: { value: [{
4427
+ type: Input
4428
+ }], table: [{
4429
+ type: Input
4430
+ }], row: [{
4431
+ type: Input
4432
+ }], column: [{
4433
+ type: Input
4434
+ }] } });
4401
4435
 
4402
4436
  /*!
4403
4437
  * @license
@@ -4415,27 +4449,10 @@ class NumberCellValidator {
4415
4449
  * See the License for the specific language governing permissions and
4416
4450
  * limitations under the License.
4417
4451
  */
4418
- class RequiredCellValidator {
4419
- constructor() {
4420
- this.supportedTypes = ['String', 'Number', 'Amount', 'Date', 'Dropdown'];
4421
- }
4422
- isSupported(column) {
4423
- return column?.required && this.supportedTypes.indexOf(column.type) > -1;
4424
- }
4425
- validate(row, column, summary) {
4426
- if (this.isSupported(column)) {
4427
- const value = row.value[column.id];
4428
- if (column.required) {
4429
- if (value === null || value === undefined || value === '') {
4430
- if (summary) {
4431
- summary.isValid = false;
4432
- summary.message = `Field '${column.name}' is required.`;
4433
- }
4434
- return false;
4435
- }
4436
- }
4437
- }
4438
- return true;
4452
+ class DynamicRowValidationSummary extends ErrorMessageModel {
4453
+ constructor(json) {
4454
+ super(json);
4455
+ this.isValid = json?.isValid;
4439
4456
  }
4440
4457
  }
4441
4458
 
@@ -4455,142 +4472,58 @@ class RequiredCellValidator {
4455
4472
  * See the License for the specific language governing permissions and
4456
4473
  * limitations under the License.
4457
4474
  */
4458
- class DynamicTableModel extends FormWidgetModel {
4459
- get selectedRow() {
4460
- return this._selectedRow;
4475
+ class DateTimeEditorComponent {
4476
+ constructor() {
4477
+ this.dateAdapter = inject(DateAdapter);
4478
+ this.DATE_TIME_FORMAT = 'DD/MM/YYYY HH:mm';
4461
4479
  }
4462
- set selectedRow(value) {
4463
- if (this._selectedRow && this._selectedRow === value) {
4464
- this._selectedRow.selected = false;
4465
- this._selectedRow = null;
4466
- return;
4467
- }
4468
- this.rows.forEach((row) => (row.selected = false));
4469
- this._selectedRow = value;
4470
- if (value) {
4471
- this._selectedRow.selected = true;
4472
- }
4480
+ ngOnInit() {
4481
+ const momentDateAdapter = this.dateAdapter;
4482
+ momentDateAdapter.displayFormat = this.DATE_TIME_FORMAT;
4483
+ this.value = this.table.getCellValue(this.row, this.column);
4473
4484
  }
4474
- constructor(field, formService) {
4475
- super(field.form, field.json);
4476
- this.formService = formService;
4477
- this.columns = [];
4478
- this.visibleColumns = [];
4479
- this.rows = [];
4480
- this._validators = [];
4481
- this.field = field;
4482
- if (field.json) {
4483
- const columns = this.getColumns(field);
4484
- if (columns) {
4485
- this.columns = columns;
4486
- this.visibleColumns = this.columns.filter((col) => col.visible);
4487
- }
4488
- if (field.json.value) {
4489
- this.rows = field.json.value.map((obj) => ({ selected: false, value: obj }));
4490
- }
4491
- }
4492
- this._validators = [new RequiredCellValidator(), new DateCellValidator(), new NumberCellValidator()];
4493
- }
4494
- getColumns(field) {
4495
- if (field?.json) {
4496
- let definitions = field.json.columnDefinitions;
4497
- if (!definitions && field.json.params?.field) {
4498
- definitions = field.json.params.field.columnDefinitions;
4499
- }
4500
- if (definitions) {
4501
- return definitions.map((obj) => obj);
4502
- }
4503
- }
4504
- return null;
4505
- }
4506
- flushValue() {
4507
- if (this.field) {
4508
- this.field.value = this.rows.map((r) => r.value);
4509
- this.field.updateForm();
4510
- }
4511
- }
4512
- moveRow(row, offset) {
4513
- const oldIndex = this.rows.indexOf(row);
4514
- if (oldIndex > -1) {
4515
- let newIndex = oldIndex + offset;
4516
- if (newIndex < 0) {
4517
- newIndex = 0;
4518
- }
4519
- else if (newIndex >= this.rows.length) {
4520
- newIndex = this.rows.length;
4521
- }
4522
- const arr = this.rows.slice();
4523
- arr.splice(oldIndex, 1);
4524
- arr.splice(newIndex, 0, row);
4525
- this.rows = arr;
4526
- this.flushValue();
4527
- }
4528
- }
4529
- deleteRow(row) {
4530
- if (row) {
4531
- if (this.selectedRow === row) {
4532
- this.selectedRow = null;
4533
- }
4534
- const idx = this.rows.indexOf(row);
4535
- if (idx > -1) {
4536
- this.rows.splice(idx, 1);
4537
- this.flushValue();
4538
- }
4539
- }
4540
- }
4541
- addRow(row) {
4542
- if (row) {
4543
- this.rows.push(row);
4544
- // this.selectedRow = row;
4545
- }
4546
- }
4547
- validateRow(row) {
4548
- const summary = new DynamicRowValidationSummary({
4549
- isValid: true,
4550
- message: null
4551
- });
4552
- const event = new ValidateDynamicTableRowEvent(this.form, this.field, row, summary);
4553
- this.formService.validateDynamicTableRow.next(event);
4554
- if (event.defaultPrevented || !summary.isValid) {
4555
- return summary;
4556
- }
4557
- if (row) {
4558
- for (const col of this.columns) {
4559
- for (const validator of this._validators) {
4560
- if (!validator.validate(row, col, summary)) {
4561
- return summary;
4562
- }
4563
- }
4564
- }
4565
- }
4566
- return summary;
4567
- }
4568
- getCellValue(row, column) {
4569
- const rowValue = row.value[column.id];
4570
- if (column.type === 'Dropdown') {
4571
- if (rowValue) {
4572
- return rowValue.name;
4573
- }
4574
- }
4575
- if (column.type === 'Boolean') {
4576
- return !!rowValue;
4485
+ onDateChanged(newDateValue) {
4486
+ if (typeof newDateValue === 'string') {
4487
+ const newValue = DateFnsUtils.parseDate(newDateValue, this.DATE_TIME_FORMAT);
4488
+ this.value = newValue;
4489
+ this.row.value[this.column.id] = newValue.toISOString();
4490
+ this.table.flushValue();
4577
4491
  }
4578
- if (column.type === 'Date') {
4579
- if (rowValue) {
4580
- return new Date(rowValue.split('T')[0]);
4581
- }
4492
+ else if (newDateValue.value) {
4493
+ const newValue = DateFnsUtils.formatDate(newDateValue.value, this.DATE_TIME_FORMAT);
4494
+ this.row.value[this.column.id] = newValue;
4495
+ this.value = newDateValue.value;
4496
+ this.table.flushValue();
4582
4497
  }
4583
- return rowValue || '';
4584
- }
4585
- getDisplayText(column) {
4586
- let columnName = column.name;
4587
- if (column.type === 'Amount') {
4588
- const currency = column.amountCurrency || '$';
4589
- columnName = `${column.name} (${currency})`;
4498
+ else {
4499
+ this.row.value[this.column.id] = '';
4590
4500
  }
4591
- return columnName;
4592
4501
  }
4502
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DateTimeEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4503
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: DateTimeEditorComponent, isStandalone: true, selector: "adf-datetime-editor", inputs: { value: "value", table: "table", row: "row", column: "column" }, providers: [
4504
+ { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4505
+ { provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
4506
+ { provide: DateAdapter, useClass: AdfDateFnsAdapter },
4507
+ { provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
4508
+ ], ngImport: i0, template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} {{DATE_TIME_FORMAT}}</label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datetimepicker-toggle\n matSuffix\n [for]=\"datetimePicker\"\n class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datetimepicker\n #datetimePicker\n type=\"datetime\"\n [openOnFocus]=\"true\"\n [timeInterval]=\"5\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatDatetimepickerModule }, { kind: "component", type: i3$5.MatDatetimepickerComponent, selector: "mat-datetimepicker", inputs: ["multiYearSelector", "twelvehour", "startView", "mode", "timeInterval", "ariaNextMonthLabel", "ariaPrevMonthLabel", "ariaNextYearLabel", "ariaPrevYearLabel", "preventSameDateTimeSelection", "panelClass", "startAt", "openOnFocus", "type", "touchUi", "disabled"], outputs: ["selectedChanged", "opened", "closed", "viewChanged"], exportAs: ["matDatetimepicker"] }, { kind: "component", type: i3$5.MatDatetimepickerToggleComponent, selector: "mat-datetimepicker-toggle", inputs: ["for", "disabled"], exportAs: ["matDatetimepickerToggle"] }, { kind: "directive", type: i3$5.MatDatetimepickerInputDirective, selector: "input[matDatetimepicker]", inputs: ["matDatetimepicker", "matDatepickerFilter", "value", "min", "max", "disabled"], outputs: ["dateChange", "dateInput"], exportAs: ["matDatepickerInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
4593
4509
  }
4510
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DateTimeEditorComponent, decorators: [{
4511
+ type: Component,
4512
+ args: [{ selector: 'adf-datetime-editor', imports: [CommonModule, MatFormFieldModule, MatInputModule, MatDatetimepickerModule, FormsModule], providers: [
4513
+ { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4514
+ { provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
4515
+ { provide: DateAdapter, useClass: AdfDateFnsAdapter },
4516
+ { provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
4517
+ ], template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} {{DATE_TIME_FORMAT}}</label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datetimepicker-toggle\n matSuffix\n [for]=\"datetimePicker\"\n class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datetimepicker\n #datetimePicker\n type=\"datetime\"\n [openOnFocus]=\"true\"\n [timeInterval]=\"5\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"] }]
4518
+ }], propDecorators: { value: [{
4519
+ type: Input
4520
+ }], table: [{
4521
+ type: Input
4522
+ }], row: [{
4523
+ type: Input
4524
+ }], column: [{
4525
+ type: Input
4526
+ }] } });
4594
4527
 
4595
4528
  /*!
4596
4529
  * @license
@@ -4609,58 +4542,20 @@ class DynamicTableModel extends FormWidgetModel {
4609
4542
  * limitations under the License.
4610
4543
  */
4611
4544
  /* eslint-disable @angular-eslint/component-selector */
4612
- class DropdownEditorComponent {
4613
- constructor() {
4614
- this.formService = inject(FormService);
4615
- this.taskFormService = inject(TaskFormService);
4616
- this.processDefinitionService = inject(ProcessDefinitionService);
4617
- this.value = null;
4618
- this.options = [];
4619
- }
4545
+ class TextEditorComponent {
4620
4546
  ngOnInit() {
4621
- const field = this.table.field;
4622
- if (field) {
4623
- if (this.column.optionType === 'rest') {
4624
- if (this.table.form?.taskId) {
4625
- this.getValuesByTaskId(field);
4626
- }
4627
- else {
4628
- this.getValuesByProcessDefinitionId(field);
4629
- }
4630
- }
4631
- else {
4632
- this.options = this.column.options || [];
4633
- this.value = this.table.getCellValue(this.row, this.column);
4634
- }
4635
- }
4636
- }
4637
- getValuesByTaskId(field) {
4638
- this.taskFormService.getRestFieldValuesColumn(field.form.taskId, field.id, this.column.id).subscribe((dynamicTableColumnOption) => {
4639
- this.column.options = dynamicTableColumnOption || [];
4640
- this.options = this.column.options;
4641
- this.value = this.table.getCellValue(this.row, this.column);
4642
- });
4643
- }
4644
- getValuesByProcessDefinitionId(field) {
4645
- this.processDefinitionService
4646
- .getRestFieldValuesColumnByProcessId(field.form.processDefinitionId, field.id, this.column.id)
4647
- .subscribe((dynamicTableColumnOption) => {
4648
- this.column.options = dynamicTableColumnOption || [];
4649
- this.options = this.column.options;
4650
- this.value = this.table.getCellValue(this.row, this.column);
4651
- });
4547
+ this.displayName = this.table.getDisplayText(this.column);
4652
4548
  }
4653
4549
  onValueChanged(row, column, event) {
4654
- let value = event.value;
4655
- value = column.options.find((opt) => opt.name === value);
4550
+ const value = event.target.value;
4656
4551
  row.value[column.id] = value;
4657
4552
  }
4658
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DropdownEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4659
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: DropdownEditorComponent, isStandalone: true, selector: "adf-dropdown-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: "<div class=\"dropdown-editor\">\n <label [attr.for]=\"column.id\">{{column.name}}</label>\n <mat-form-field>\n <mat-select\n floatPlaceholder=\"never\"\n class=\"adf-dropdown-editor-select\"\n [id]=\"column.id\"\n [(ngModel)]=\"value\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (selectionChange)=\"onValueChanged(row, column, $event)\">\n <mat-option />\n <mat-option *ngFor=\"let opt of options\" [value]=\"opt.name\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n </mat-select>\n </mat-form-field>\n <span *ngFor=\"let opt of options\" id=\"testme\">{{opt | json}}</span>\n</div>\n", styles: [".adf-dropdown-editor-select{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i1.JsonPipe, name: "json" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
4553
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TextEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4554
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TextEditorComponent, isStandalone: true, selector: "adf-text-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: "<div class=\"adf-text-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"text\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
4660
4555
  }
4661
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DropdownEditorComponent, decorators: [{
4556
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TextEditorComponent, decorators: [{
4662
4557
  type: Component,
4663
- args: [{ selector: 'adf-dropdown-editor', imports: [CommonModule, MatFormFieldModule, MatSelectModule, FormsModule], template: "<div class=\"dropdown-editor\">\n <label [attr.for]=\"column.id\">{{column.name}}</label>\n <mat-form-field>\n <mat-select\n floatPlaceholder=\"never\"\n class=\"adf-dropdown-editor-select\"\n [id]=\"column.id\"\n [(ngModel)]=\"value\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (selectionChange)=\"onValueChanged(row, column, $event)\">\n <mat-option />\n <mat-option *ngFor=\"let opt of options\" [value]=\"opt.name\" [id]=\"opt.id\">{{opt.name}}</mat-option>\n </mat-select>\n </mat-form-field>\n <span *ngFor=\"let opt of options\" id=\"testme\">{{opt | json}}</span>\n</div>\n", styles: [".adf-dropdown-editor-select{width:100%}\n"] }]
4558
+ args: [{ selector: 'adf-text-editor', imports: [CommonModule, MatFormFieldModule, MatInputModule], template: "<div class=\"adf-text-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"text\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"] }]
4664
4559
  }], propDecorators: { table: [{
4665
4560
  type: Input
4666
4561
  }], row: [{
@@ -4686,26 +4581,61 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4686
4581
  * limitations under the License.
4687
4582
  */
4688
4583
  /* eslint-disable @angular-eslint/component-selector */
4689
- class AmountEditorComponent {
4690
- ngOnInit() {
4691
- this.displayName = this.table.getDisplayText(this.column);
4584
+ class RowEditorComponent {
4585
+ constructor() {
4586
+ this.save = new EventEmitter();
4587
+ this.cancel = new EventEmitter();
4588
+ this.validationSummary = new DynamicRowValidationSummary({ isValid: true, message: '' });
4692
4589
  }
4693
- onValueChanged(row, column, event) {
4694
- const value = Number(event.target.value);
4695
- row.value[column.id] = value;
4590
+ onCancelChanges() {
4591
+ this.cancel.emit({
4592
+ table: this.table,
4593
+ row: this.row,
4594
+ column: this.column
4595
+ });
4596
+ }
4597
+ onSaveChanges() {
4598
+ this.validate();
4599
+ if (this.isValid()) {
4600
+ this.save.emit({
4601
+ table: this.table,
4602
+ row: this.row,
4603
+ column: this.column
4604
+ });
4605
+ }
4606
+ }
4607
+ isValid() {
4608
+ return this.validationSummary?.isValid;
4609
+ }
4610
+ validate() {
4611
+ this.validationSummary = this.table.validateRow(this.row);
4696
4612
  }
4697
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AmountEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4698
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: AmountEditorComponent, isStandalone: true, selector: "adf-amount-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: "<div class=\"adf-amount-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"number\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
4613
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: RowEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4614
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: RowEditorComponent, isStandalone: true, selector: "row-editor", inputs: { table: "table", row: "row", column: "column" }, outputs: { save: "save", cancel: "cancel" }, ngImport: i0, template: "<div class=\"row-editor mdl-shadow--2dp\"\n [class.row-editor__invalid]=\"!validationSummary.isValid\">\n <div class=\"mdl-grid\" *ngFor=\"let column of table.columns\">\n <div class=\"mdl-cell mdl-cell--6-col\" [ngSwitch]=\"column.type\">\n <div *ngSwitchCase=\"'Dropdown'\">\n <adf-dropdown-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Date'\">\n <adf-date-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Datetime'\">\n <adf-datetime-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Boolean'\">\n <adf-boolean-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Amount'\">\n <adf-amount-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchDefault>\n <adf-text-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n </div>\n </div>\n <error-widget [error]=\"validationSummary\" />\n <div>\n <button mat-button (click)=\"onCancelChanges()\">Cancel</button>\n <button mat-button (click)=\"onSaveChanges()\">Save</button>\n </div>\n</div>\n", styles: [".row-editor{padding:8px}.row-editor__validation-summary{visibility:hidden}.row-editor__invalid .row-editor__validation-summary{padding:8px 16px;color:var(--mat-sys-error);visibility:visible}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: DropdownEditorComponent, selector: "adf-dropdown-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: DateEditorComponent, selector: "adf-date-editor", inputs: ["value", "table", "row", "column"] }, { kind: "component", type: DateTimeEditorComponent, selector: "adf-datetime-editor", inputs: ["value", "table", "row", "column"] }, { kind: "component", type: BooleanEditorComponent, selector: "adf-boolean-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: AmountEditorComponent, selector: "adf-amount-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: TextEditorComponent, selector: "adf-text-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }] }); }
4699
4615
  }
4700
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AmountEditorComponent, decorators: [{
4616
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: RowEditorComponent, decorators: [{
4701
4617
  type: Component,
4702
- args: [{ selector: 'adf-amount-editor', imports: [CommonModule, MatFormFieldModule, MatInputModule], template: "<div class=\"adf-amount-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"number\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"] }]
4703
- }], propDecorators: { table: [{
4618
+ args: [{ selector: 'row-editor', imports: [
4619
+ CommonModule,
4620
+ DropdownEditorComponent,
4621
+ DateEditorComponent,
4622
+ DateTimeEditorComponent,
4623
+ BooleanEditorComponent,
4624
+ AmountEditorComponent,
4625
+ TextEditorComponent,
4626
+ ErrorWidgetComponent,
4627
+ MatButtonModule
4628
+ ], template: "<div class=\"row-editor mdl-shadow--2dp\"\n [class.row-editor__invalid]=\"!validationSummary.isValid\">\n <div class=\"mdl-grid\" *ngFor=\"let column of table.columns\">\n <div class=\"mdl-cell mdl-cell--6-col\" [ngSwitch]=\"column.type\">\n <div *ngSwitchCase=\"'Dropdown'\">\n <adf-dropdown-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Date'\">\n <adf-date-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Datetime'\">\n <adf-datetime-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Boolean'\">\n <adf-boolean-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Amount'\">\n <adf-amount-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchDefault>\n <adf-text-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n </div>\n </div>\n <error-widget [error]=\"validationSummary\" />\n <div>\n <button mat-button (click)=\"onCancelChanges()\">Cancel</button>\n <button mat-button (click)=\"onSaveChanges()\">Save</button>\n </div>\n</div>\n", styles: [".row-editor{padding:8px}.row-editor__validation-summary{visibility:hidden}.row-editor__invalid .row-editor__validation-summary{padding:8px 16px;color:var(--mat-sys-error);visibility:visible}\n"] }]
4629
+ }], ctorParameters: () => [], propDecorators: { table: [{
4704
4630
  type: Input
4705
4631
  }], row: [{
4706
4632
  type: Input
4707
4633
  }], column: [{
4708
4634
  type: Input
4635
+ }], save: [{
4636
+ type: Output
4637
+ }], cancel: [{
4638
+ type: Output
4709
4639
  }] } });
4710
4640
 
4711
4641
  /*!
@@ -4724,25 +4654,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4724
4654
  * See the License for the specific language governing permissions and
4725
4655
  * limitations under the License.
4726
4656
  */
4727
- /* eslint-disable @angular-eslint/component-selector */
4728
- class BooleanEditorComponent {
4729
- onValueChanged(row, column, event) {
4730
- const value = event.checked;
4731
- row.value[column.id] = value;
4657
+ class ValidateDynamicTableRowEvent extends FormFieldEvent {
4658
+ constructor(form, field, row, summary) {
4659
+ super(form, field);
4660
+ this.row = row;
4661
+ this.summary = summary;
4662
+ this.isValid = true;
4732
4663
  }
4733
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: BooleanEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4734
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: BooleanEditorComponent, isStandalone: true, selector: "adf-boolean-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: " <label [attr.for]=\"column.id\">\n <mat-checkbox\n [id]=\"column.id\"\n [checked]=\"table.getCellValue(row, column)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (change)=\"onValueChanged(row, column, $event)\">\n <span class=\"adf-checkbox-label\">{{column.name}}</span>\n </mat-checkbox>\n</label>\n", styles: [".adf-checkbox-label{position:relative;cursor:pointer;font:var(--mat-sys-body-large);margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i1$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }] }); }
4735
4664
  }
4736
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: BooleanEditorComponent, decorators: [{
4737
- type: Component,
4738
- args: [{ selector: 'adf-boolean-editor', imports: [CommonModule, MatCheckboxModule], template: " <label [attr.for]=\"column.id\">\n <mat-checkbox\n [id]=\"column.id\"\n [checked]=\"table.getCellValue(row, column)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (change)=\"onValueChanged(row, column, $event)\">\n <span class=\"adf-checkbox-label\">{{column.name}}</span>\n </mat-checkbox>\n</label>\n", styles: [".adf-checkbox-label{position:relative;cursor:pointer;font:var(--mat-sys-body-large);margin:0}\n"] }]
4739
- }], propDecorators: { table: [{
4740
- type: Input
4741
- }], row: [{
4742
- type: Input
4743
- }], column: [{
4744
- type: Input
4745
- }] } });
4746
4665
 
4747
4666
  /*!
4748
4667
  * @license
@@ -4760,56 +4679,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4760
4679
  * See the License for the specific language governing permissions and
4761
4680
  * limitations under the License.
4762
4681
  */
4763
- class DateEditorComponent {
4682
+ class DateCellValidator {
4764
4683
  constructor() {
4765
- this.dateAdapter = inject(DateAdapter);
4766
- this.DATE_FORMAT = 'DD-MM-YYYY';
4684
+ this.supportedTypes = [DateCellValidator.DATE_TYPE];
4767
4685
  }
4768
- ngOnInit() {
4769
- const dateAdapter = this.dateAdapter;
4770
- dateAdapter.displayFormat = this.DATE_FORMAT;
4771
- this.value = this.table.getCellValue(this.row, this.column);
4686
+ static { this.DATE_TYPE = 'Date'; }
4687
+ isSupported(column) {
4688
+ return !!(column?.editable && this.supportedTypes.indexOf(column?.type) > -1);
4772
4689
  }
4773
- onDateChanged(newDateValue) {
4774
- if (typeof newDateValue === 'string') {
4775
- const newValue = DateFnsUtils.parseDate(newDateValue, this.DATE_FORMAT);
4776
- if (isValid(newValue)) {
4777
- this.row.value[this.column.id] = `${DateFnsUtils.formatDate(newValue, 'yyyy-MM-dd')}T00:00:00.000Z`;
4778
- this.table.flushValue();
4690
+ validate(row, column, summary) {
4691
+ if (this.isSupported(column)) {
4692
+ const value = row?.value[column.id];
4693
+ if (value) {
4694
+ const dateValue = new Date(value);
4695
+ if (isValid(dateValue)) {
4696
+ return true;
4697
+ }
4698
+ if (summary) {
4699
+ summary.isValid = false;
4700
+ summary.message = `Invalid '${column.name}' format.`;
4701
+ }
4702
+ return false;
4779
4703
  }
4780
4704
  else {
4781
- this.row.value[this.column.id] = newDateValue;
4705
+ return !column.required;
4782
4706
  }
4783
4707
  }
4784
- else if (newDateValue?.value) {
4785
- this.row.value[this.column.id] = `${DateFnsUtils.formatDate(newDateValue?.value, 'yyyy-MM-dd')}T00:00:00.000Z`;
4786
- this.table.flushValue();
4787
- }
4788
- else {
4789
- this.row.value[this.column.id] = '';
4790
- }
4708
+ return true;
4791
4709
  }
4792
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DateEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4793
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: DateEditorComponent, isStandalone: true, selector: "adf-date-editor", inputs: { value: "value", table: "table", row: "row", column: "column" }, providers: [
4794
- { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4795
- { provide: DateAdapter, useClass: AdfDateFnsAdapter }
4796
- ], ngImport: i0, template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} ({{DATE_FORMAT}})</label>\n <input matInput\n id=\"dateInput\"\n type=\"text\"\n [matDatepicker]=\"datePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datepicker-toggle *ngIf=\"column.editable\" matSuffix [for]=\"datePicker\" class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datepicker #datePicker [touchUi]=\"true\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i3$4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3$4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3$4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
4797
4710
  }
4798
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DateEditorComponent, decorators: [{
4799
- type: Component,
4800
- args: [{ selector: 'adf-date-editor', imports: [CommonModule, MatFormFieldModule, MatDatepickerModule, MatInputModule, FormsModule], providers: [
4801
- { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4802
- { provide: DateAdapter, useClass: AdfDateFnsAdapter }
4803
- ], template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} ({{DATE_FORMAT}})</label>\n <input matInput\n id=\"dateInput\"\n type=\"text\"\n [matDatepicker]=\"datePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datepicker-toggle *ngIf=\"column.editable\" matSuffix [for]=\"datePicker\" class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datepicker #datePicker [touchUi]=\"true\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"] }]
4804
- }], propDecorators: { value: [{
4805
- type: Input
4806
- }], table: [{
4807
- type: Input
4808
- }], row: [{
4809
- type: Input
4810
- }], column: [{
4811
- type: Input
4812
- }] } });
4813
4711
 
4814
4712
  /*!
4815
4713
  * @license
@@ -4827,58 +4725,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4827
4725
  * See the License for the specific language governing permissions and
4828
4726
  * limitations under the License.
4829
4727
  */
4830
- class DateTimeEditorComponent {
4728
+ class NumberCellValidator {
4831
4729
  constructor() {
4832
- this.dateAdapter = inject(DateAdapter);
4833
- this.DATE_TIME_FORMAT = 'DD/MM/YYYY HH:mm';
4730
+ this.supportedTypes = ['Number', 'Amount'];
4834
4731
  }
4835
- ngOnInit() {
4836
- const momentDateAdapter = this.dateAdapter;
4837
- momentDateAdapter.displayFormat = this.DATE_TIME_FORMAT;
4838
- this.value = this.table.getCellValue(this.row, this.column);
4732
+ isSupported(column) {
4733
+ return column?.required && this.supportedTypes.indexOf(column.type) > -1;
4839
4734
  }
4840
- onDateChanged(newDateValue) {
4841
- if (typeof newDateValue === 'string') {
4842
- const newValue = DateFnsUtils.parseDate(newDateValue, this.DATE_TIME_FORMAT);
4843
- this.value = newValue;
4844
- this.row.value[this.column.id] = newValue.toISOString();
4845
- this.table.flushValue();
4846
- }
4847
- else if (newDateValue.value) {
4848
- const newValue = DateFnsUtils.formatDate(newDateValue.value, this.DATE_TIME_FORMAT);
4849
- this.row.value[this.column.id] = newValue;
4850
- this.value = newDateValue.value;
4851
- this.table.flushValue();
4852
- }
4853
- else {
4854
- this.row.value[this.column.id] = '';
4735
+ isNumber(value) {
4736
+ if (value === null || value === undefined || value === '') {
4737
+ return false;
4855
4738
  }
4739
+ return !isNaN(+value);
4740
+ }
4741
+ validate(row, column, summary) {
4742
+ if (this.isSupported(column)) {
4743
+ const value = row.value[column.id];
4744
+ if (value === null || value === undefined || value === '' || this.isNumber(value)) {
4745
+ return true;
4746
+ }
4747
+ if (summary) {
4748
+ summary.isValid = false;
4749
+ summary.message = `Field '${column.name}' must be a number.`;
4750
+ }
4751
+ return false;
4752
+ }
4753
+ return true;
4856
4754
  }
4857
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DateTimeEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4858
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: DateTimeEditorComponent, isStandalone: true, selector: "adf-datetime-editor", inputs: { value: "value", table: "table", row: "row", column: "column" }, providers: [
4859
- { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4860
- { provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
4861
- { provide: DateAdapter, useClass: AdfDateFnsAdapter },
4862
- { provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
4863
- ], ngImport: i0, template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} {{DATE_TIME_FORMAT}}</label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datetimepicker-toggle\n matSuffix\n [for]=\"datetimePicker\"\n class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datetimepicker\n #datetimePicker\n type=\"datetime\"\n [openOnFocus]=\"true\"\n [timeInterval]=\"5\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatDatetimepickerModule }, { kind: "component", type: i3$5.MatDatetimepickerComponent, selector: "mat-datetimepicker", inputs: ["multiYearSelector", "twelvehour", "startView", "mode", "timeInterval", "ariaNextMonthLabel", "ariaPrevMonthLabel", "ariaNextYearLabel", "ariaPrevYearLabel", "preventSameDateTimeSelection", "panelClass", "startAt", "openOnFocus", "type", "touchUi", "disabled"], outputs: ["selectedChanged", "opened", "closed", "viewChanged"], exportAs: ["matDatetimepicker"] }, { kind: "component", type: i3$5.MatDatetimepickerToggleComponent, selector: "mat-datetimepicker-toggle", inputs: ["for", "disabled"], exportAs: ["matDatetimepickerToggle"] }, { kind: "directive", type: i3$5.MatDatetimepickerInputDirective, selector: "input[matDatetimepicker]", inputs: ["matDatetimepicker", "matDatepickerFilter", "value", "min", "max", "disabled"], outputs: ["dateChange", "dateInput"], exportAs: ["matDatepickerInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
4864
4755
  }
4865
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DateTimeEditorComponent, decorators: [{
4866
- type: Component,
4867
- args: [{ selector: 'adf-datetime-editor', imports: [CommonModule, MatFormFieldModule, MatInputModule, MatDatetimepickerModule, FormsModule], providers: [
4868
- { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
4869
- { provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
4870
- { provide: DateAdapter, useClass: AdfDateFnsAdapter },
4871
- { provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
4872
- ], template: "<div>\n <mat-form-field class=\"adf-date-editor\">\n <label [attr.for]=\"column.id\">{{column.name}} {{DATE_TIME_FORMAT}}</label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [(ngModel)]=\"value\"\n [id]=\"column.id\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n (focusout)=\"onDateChanged($any($event).target.value)\"\n (dateChange)=\"onDateChanged($event)\">\n <mat-datetimepicker-toggle\n matSuffix\n [for]=\"datetimePicker\"\n class=\"adf-date-editor-button\" />\n </mat-form-field>\n <mat-datetimepicker\n #datetimePicker\n type=\"datetime\"\n [openOnFocus]=\"true\"\n [timeInterval]=\"5\" />\n</div>\n", styles: [".adf-date-editor{width:100%}.adf-date-editor-button{position:relative;top:25px}\n"] }]
4873
- }], propDecorators: { value: [{
4874
- type: Input
4875
- }], table: [{
4876
- type: Input
4877
- }], row: [{
4878
- type: Input
4879
- }], column: [{
4880
- type: Input
4881
- }] } });
4882
4756
 
4883
4757
  /*!
4884
4758
  * @license
@@ -4896,28 +4770,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4896
4770
  * See the License for the specific language governing permissions and
4897
4771
  * limitations under the License.
4898
4772
  */
4899
- /* eslint-disable @angular-eslint/component-selector */
4900
- class TextEditorComponent {
4901
- ngOnInit() {
4902
- this.displayName = this.table.getDisplayText(this.column);
4773
+ class RequiredCellValidator {
4774
+ constructor() {
4775
+ this.supportedTypes = ['String', 'Number', 'Amount', 'Date', 'Dropdown'];
4903
4776
  }
4904
- onValueChanged(row, column, event) {
4905
- const value = event.target.value;
4906
- row.value[column.id] = value;
4777
+ isSupported(column) {
4778
+ return column?.required && this.supportedTypes.indexOf(column.type) > -1;
4779
+ }
4780
+ validate(row, column, summary) {
4781
+ if (this.isSupported(column)) {
4782
+ const value = row.value[column.id];
4783
+ if (column.required) {
4784
+ if (value === null || value === undefined || value === '') {
4785
+ if (summary) {
4786
+ summary.isValid = false;
4787
+ summary.message = `Field '${column.name}' is required.`;
4788
+ }
4789
+ return false;
4790
+ }
4791
+ }
4792
+ }
4793
+ return true;
4907
4794
  }
4908
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TextEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4909
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TextEditorComponent, isStandalone: true, selector: "adf-text-editor", inputs: { table: "table", row: "row", column: "column" }, ngImport: i0, template: "<div class=\"adf-text-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"text\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
4910
4795
  }
4911
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TextEditorComponent, decorators: [{
4912
- type: Component,
4913
- args: [{ selector: 'adf-text-editor', imports: [CommonModule, MatFormFieldModule, MatInputModule], template: "<div class=\"adf-text-editor\">\n <mat-form-field>\n <label [attr.for]=\"column.id\">{{displayName}}</label>\n <input matInput\n type=\"text\"\n [value]=\"table.getCellValue(row, column)\"\n (keyup)=\"onValueChanged(row, column, $event)\"\n [required]=\"column.required\"\n [disabled]=\"!column.editable\"\n [id]=\"column.id\">\n </mat-form-field>\n</div>\n", styles: [".adf-text-editor{width:100%}\n"] }]
4914
- }], propDecorators: { table: [{
4915
- type: Input
4916
- }], row: [{
4917
- type: Input
4918
- }], column: [{
4919
- type: Input
4920
- }] } });
4921
4796
 
4922
4797
  /*!
4923
4798
  * @license
@@ -4935,63 +4810,142 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4935
4810
  * See the License for the specific language governing permissions and
4936
4811
  * limitations under the License.
4937
4812
  */
4938
- /* eslint-disable @angular-eslint/component-selector */
4939
- class RowEditorComponent {
4940
- constructor() {
4941
- this.save = new EventEmitter();
4942
- this.cancel = new EventEmitter();
4943
- this.validationSummary = new DynamicRowValidationSummary({ isValid: true, message: '' });
4813
+ class DynamicTableModel extends FormWidgetModel {
4814
+ get selectedRow() {
4815
+ return this._selectedRow;
4944
4816
  }
4945
- onCancelChanges() {
4946
- this.cancel.emit({
4947
- table: this.table,
4948
- row: this.row,
4949
- column: this.column
4950
- });
4817
+ set selectedRow(value) {
4818
+ if (this._selectedRow && this._selectedRow === value) {
4819
+ this._selectedRow.selected = false;
4820
+ this._selectedRow = null;
4821
+ return;
4822
+ }
4823
+ this.rows.forEach((row) => (row.selected = false));
4824
+ this._selectedRow = value;
4825
+ if (value) {
4826
+ this._selectedRow.selected = true;
4827
+ }
4951
4828
  }
4952
- onSaveChanges() {
4953
- this.validate();
4954
- if (this.isValid()) {
4955
- this.save.emit({
4956
- table: this.table,
4957
- row: this.row,
4958
- column: this.column
4959
- });
4829
+ constructor(field, formService) {
4830
+ super(field.form, field.json);
4831
+ this.formService = formService;
4832
+ this.columns = [];
4833
+ this.visibleColumns = [];
4834
+ this.rows = [];
4835
+ this._validators = [];
4836
+ this.field = field;
4837
+ if (field.json) {
4838
+ const columns = this.getColumns(field);
4839
+ if (columns) {
4840
+ this.columns = columns;
4841
+ this.visibleColumns = this.columns.filter((col) => col.visible);
4842
+ }
4843
+ if (field.json.value) {
4844
+ this.rows = field.json.value.map((obj) => ({ selected: false, value: obj }));
4845
+ }
4960
4846
  }
4847
+ this._validators = [new RequiredCellValidator(), new DateCellValidator(), new NumberCellValidator()];
4961
4848
  }
4962
- isValid() {
4963
- return this.validationSummary?.isValid;
4849
+ getColumns(field) {
4850
+ if (field?.json) {
4851
+ let definitions = field.json.columnDefinitions;
4852
+ if (!definitions && field.json.params?.field) {
4853
+ definitions = field.json.params.field.columnDefinitions;
4854
+ }
4855
+ if (definitions) {
4856
+ return definitions.map((obj) => obj);
4857
+ }
4858
+ }
4859
+ return null;
4964
4860
  }
4965
- validate() {
4966
- this.validationSummary = this.table.validateRow(this.row);
4861
+ flushValue() {
4862
+ if (this.field) {
4863
+ this.field.value = this.rows.map((r) => r.value);
4864
+ this.field.updateForm();
4865
+ }
4866
+ }
4867
+ moveRow(row, offset) {
4868
+ const oldIndex = this.rows.indexOf(row);
4869
+ if (oldIndex > -1) {
4870
+ let newIndex = oldIndex + offset;
4871
+ if (newIndex < 0) {
4872
+ newIndex = 0;
4873
+ }
4874
+ else if (newIndex >= this.rows.length) {
4875
+ newIndex = this.rows.length;
4876
+ }
4877
+ const arr = this.rows.slice();
4878
+ arr.splice(oldIndex, 1);
4879
+ arr.splice(newIndex, 0, row);
4880
+ this.rows = arr;
4881
+ this.flushValue();
4882
+ }
4883
+ }
4884
+ deleteRow(row) {
4885
+ if (row) {
4886
+ if (this.selectedRow === row) {
4887
+ this.selectedRow = null;
4888
+ }
4889
+ const idx = this.rows.indexOf(row);
4890
+ if (idx > -1) {
4891
+ this.rows.splice(idx, 1);
4892
+ this.flushValue();
4893
+ }
4894
+ }
4895
+ }
4896
+ addRow(row) {
4897
+ if (row) {
4898
+ this.rows.push(row);
4899
+ // this.selectedRow = row;
4900
+ }
4901
+ }
4902
+ validateRow(row) {
4903
+ const summary = new DynamicRowValidationSummary({
4904
+ isValid: true,
4905
+ message: null
4906
+ });
4907
+ const event = new ValidateDynamicTableRowEvent(this.form, this.field, row, summary);
4908
+ this.formService.validateDynamicTableRow.next(event);
4909
+ if (event.defaultPrevented || !summary.isValid) {
4910
+ return summary;
4911
+ }
4912
+ if (row) {
4913
+ for (const col of this.columns) {
4914
+ for (const validator of this._validators) {
4915
+ if (!validator.validate(row, col, summary)) {
4916
+ return summary;
4917
+ }
4918
+ }
4919
+ }
4920
+ }
4921
+ return summary;
4922
+ }
4923
+ getCellValue(row, column) {
4924
+ const rowValue = row.value[column.id];
4925
+ if (column.type === 'Dropdown') {
4926
+ if (rowValue) {
4927
+ return rowValue.name;
4928
+ }
4929
+ }
4930
+ if (column.type === 'Boolean') {
4931
+ return !!rowValue;
4932
+ }
4933
+ if (column.type === 'Date') {
4934
+ if (rowValue) {
4935
+ return new Date(rowValue.split('T')[0]);
4936
+ }
4937
+ }
4938
+ return rowValue || '';
4939
+ }
4940
+ getDisplayText(column) {
4941
+ let columnName = column.name;
4942
+ if (column.type === 'Amount') {
4943
+ const currency = column.amountCurrency || '$';
4944
+ columnName = `${column.name} (${currency})`;
4945
+ }
4946
+ return columnName;
4967
4947
  }
4968
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: RowEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4969
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: RowEditorComponent, isStandalone: true, selector: "row-editor", inputs: { table: "table", row: "row", column: "column" }, outputs: { save: "save", cancel: "cancel" }, ngImport: i0, template: "<div class=\"row-editor mdl-shadow--2dp\"\n [class.row-editor__invalid]=\"!validationSummary.isValid\">\n <div class=\"mdl-grid\" *ngFor=\"let column of table.columns\">\n <div class=\"mdl-cell mdl-cell--6-col\" [ngSwitch]=\"column.type\">\n <div *ngSwitchCase=\"'Dropdown'\">\n <adf-dropdown-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Date'\">\n <adf-date-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Datetime'\">\n <adf-datetime-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Boolean'\">\n <adf-boolean-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Amount'\">\n <adf-amount-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchDefault>\n <adf-text-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n </div>\n </div>\n <error-widget [error]=\"validationSummary\" />\n <div>\n <button mat-button (click)=\"onCancelChanges()\">Cancel</button>\n <button mat-button (click)=\"onSaveChanges()\">Save</button>\n </div>\n</div>\n", styles: [".row-editor{padding:8px}.row-editor__validation-summary{visibility:hidden}.row-editor__invalid .row-editor__validation-summary{padding:8px 16px;color:var(--mat-sys-error);visibility:visible}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: DropdownEditorComponent, selector: "adf-dropdown-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: DateEditorComponent, selector: "adf-date-editor", inputs: ["value", "table", "row", "column"] }, { kind: "component", type: DateTimeEditorComponent, selector: "adf-datetime-editor", inputs: ["value", "table", "row", "column"] }, { kind: "component", type: BooleanEditorComponent, selector: "adf-boolean-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: AmountEditorComponent, selector: "adf-amount-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: TextEditorComponent, selector: "adf-text-editor", inputs: ["table", "row", "column"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
4970
4948
  }
4971
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: RowEditorComponent, decorators: [{
4972
- type: Component,
4973
- args: [{ selector: 'row-editor', imports: [
4974
- CommonModule,
4975
- DropdownEditorComponent,
4976
- DateEditorComponent,
4977
- DateTimeEditorComponent,
4978
- BooleanEditorComponent,
4979
- AmountEditorComponent,
4980
- TextEditorComponent,
4981
- ErrorWidgetComponent,
4982
- MatButtonModule
4983
- ], template: "<div class=\"row-editor mdl-shadow--2dp\"\n [class.row-editor__invalid]=\"!validationSummary.isValid\">\n <div class=\"mdl-grid\" *ngFor=\"let column of table.columns\">\n <div class=\"mdl-cell mdl-cell--6-col\" [ngSwitch]=\"column.type\">\n <div *ngSwitchCase=\"'Dropdown'\">\n <adf-dropdown-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Date'\">\n <adf-date-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Datetime'\">\n <adf-datetime-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Boolean'\">\n <adf-boolean-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchCase=\"'Amount'\">\n <adf-amount-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n <div *ngSwitchDefault>\n <adf-text-editor\n [table]=\"table\"\n [row]=\"row\"\n [column]=\"column\" />\n </div>\n </div>\n </div>\n <error-widget [error]=\"validationSummary\" />\n <div>\n <button mat-button (click)=\"onCancelChanges()\">Cancel</button>\n <button mat-button (click)=\"onSaveChanges()\">Save</button>\n </div>\n</div>\n", styles: [".row-editor{padding:8px}.row-editor__validation-summary{visibility:hidden}.row-editor__invalid .row-editor__validation-summary{padding:8px 16px;color:var(--mat-sys-error);visibility:visible}\n"] }]
4984
- }], ctorParameters: () => [], propDecorators: { table: [{
4985
- type: Input
4986
- }], row: [{
4987
- type: Input
4988
- }], column: [{
4989
- type: Input
4990
- }], save: [{
4991
- type: Output
4992
- }], cancel: [{
4993
- type: Output
4994
- }] } });
4995
4949
 
4996
4950
  /*!
4997
4951
  * @license
@@ -5151,10 +5105,10 @@ class DynamicTableWidgetComponent extends WidgetComponent {
5151
5105
  }
5152
5106
  return result;
5153
5107
  }
5154
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DynamicTableWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5155
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: DynamicTableWidgetComponent, isStandalone: true, selector: "dynamic-table-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-dynamic-table-scrolling {{field.className}}\" [class.adf-invalid]=\"!isValid()\">\n <div class=\"adf-label\">{{content.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></div>\n\n <div *ngIf=\"!editMode\">\n <div class=\"adf-table-container\">\n <table class=\"adf-full-width adf-dynamic-table\" id=\"dynamic-table-{{content.id}}\">\n <thead>\n <tr>\n <th *ngFor=\"let column of content.visibleColumns\">{{column.name}}</th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"let row of content.rows; let idx = index\"\n role=\"button\"\n tabindex=\"0\"\n id=\"{{content.id}}-row-{{idx}}\"\n [class.adf-dynamic-table-widget__row-selected]=\"row.selected\"\n (keyup)=\"onKeyPressed($event, row)\"\n >\n <td\n *ngFor=\"let column of content.visibleColumns\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"onRowClicked(row)\"\n (click)=\"onRowClicked(row)\"\n >\n <span *ngIf=\"column.type !== 'Boolean' else checkbox\"> {{ getCellValue(row, column) }} </span>\n <ng-template #checkbox>\n <mat-checkbox disabled [checked]=\"getCellValue(row, column)\" />\n </ng-template>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <div *ngIf=\"!readOnly\">\n <button mat-button\n data-automation-id=\"dynamic-table-button-move-up\"\n [disabled]=\"!hasSelection()\"\n (click)=\"moveSelectionUp()\">\n <mat-icon>arrow_upward</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-move-down\"\n [disabled]=\"!hasSelection()\"\n (click)=\"moveSelectionDown()\">\n <mat-icon>arrow_downward</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-add-row\"\n [disabled]=\"field.readOnly\"\n id=\"{{content.id}}-add-row\"\n (click)=\"addNewRow()\">\n <mat-icon>add_circle_outline</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-remove\"\n [disabled]=\"!hasSelection()\"\n (click)=\"deleteSelection()\">\n <mat-icon>remove_circle_outline</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-edit\"\n [disabled]=\"!hasSelection()\"\n (click)=\"editSelection()\">\n <mat-icon>edit</mat-icon>\n </button>\n </div>\n </div>\n\n <row-editor *ngIf=\"editMode\" [table]=\"content\" [row]=\"editRow\" (save)=\"onSaveChanges()\" (cancel)=\"onCancelChanges()\" />\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: ["dynamic-table-widget .adf-label{width:auto;height:auto}.adf-dynamic-table-scrolling{overflow:auto}.adf-dynamic-table{width:100%;position:relative;border:1px solid var(--mat-sys-outline-variant);white-space:nowrap;font-size:var(--mat-sys-body-medium-size);border-collapse:unset;border-spacing:0}.adf-dynamic-table thead{padding-bottom:3px}.adf-dynamic-table tbody tr{position:relative;height:56px;transition:background-color .28s cubic-bezier(.4,0,.2,1)}.adf-dynamic-table tbody tr:hover{background-color:var(--mat-sys-surface-dim)}.adf-dynamic-table tbody tr.adf-is-selected,.adf-dynamic-table tbody tr.adf-is-selected:hover{background-color:var(--mat-sys-secondary-container)}.adf-dynamic-table tbody tr:focus{outline-offset:-1px;outline:var(--mat-sys-primary) solid 1px}.adf-dynamic-table td,.adf-dynamic-table th{padding:0 18px 12px;text-align:center}.adf-dynamic-table td:first-of-type,.adf-dynamic-table th:first-of-type{padding-left:24px}.adf-dynamic-table td:last-of-type,.adf-dynamic-table th:last-of-type{padding-right:24px}.adf-dynamic-table td{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--mat-sys-on-surface);position:relative;vertical-align:middle;height:56px;border-top:1px solid var(--mat-sys-outline-variant);border-bottom:1px solid var(--mat-sys-outline-variant);padding-top:12px;box-sizing:border-box;cursor:default}.adf-dynamic-table th{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;position:relative;vertical-align:bottom;text-overflow:ellipsis;font-weight:var(--mat-sys-label-large-weight);line-height:var(--mat-sys-label-large-line-height);letter-spacing:0;height:56px;font-size:var(--mat-sys-body-small-size);color:var(--mat-sys-on-surface);padding-bottom:8px;box-sizing:border-box}.adf-dynamic-table th.adf-sortable{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.adf-dynamic-table th.adf-dynamic-table__header--sorted-asc,.adf-dynamic-table th.adf-dynamic-table__header--sorted-desc{color:var(--mat-sys-on-surface)}.adf-dynamic-table th.adf-dynamic-table__header--sorted-asc:before,.adf-dynamic-table th.adf-dynamic-table__header--sorted-desc:before{font-family:Material Icons;font-weight:400;font-style:normal;font-size:var(--mat-sys-headline-small-size);line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;word-wrap:normal;font-feature-settings:\"liga\";content:\"\\e5d8\";margin-right:5px;vertical-align:sub;cursor:pointer}.adf-dynamic-table th.adf-dynamic-table__header--sorted-desc:before{content:\"\\e5db\"}.adf-dynamic-table .adf-dynamic-table-cell{text-align:left;cursor:default}.adf-dynamic-table .adf-dynamic-table-cell--text{text-align:left}.adf-dynamic-table .adf-dynamic-table-cell--number{text-align:right}.adf-dynamic-table .adf-dynamic-table-cell--image{text-align:left}.adf-dynamic-table .adf-dynamic-table-cell--image img{width:24px;height:24px}.adf-dynamic-table .adf-full-width{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i1$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: RowEditorComponent, selector: "row-editor", inputs: ["table", "row", "column"], outputs: ["save", "cancel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
5108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DynamicTableWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5109
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: DynamicTableWidgetComponent, isStandalone: true, selector: "dynamic-table-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-dynamic-table-scrolling {{field.className}}\" [class.adf-invalid]=\"!isValid()\">\n <div class=\"adf-label\">{{content.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></div>\n\n <div *ngIf=\"!editMode\">\n <div class=\"adf-table-container\">\n <table class=\"adf-full-width adf-dynamic-table\" id=\"dynamic-table-{{content.id}}\">\n <thead>\n <tr>\n <th *ngFor=\"let column of content.visibleColumns\">{{column.name}}</th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"let row of content.rows; let idx = index\"\n role=\"button\"\n tabindex=\"0\"\n id=\"{{content.id}}-row-{{idx}}\"\n [class.adf-dynamic-table-widget__row-selected]=\"row.selected\"\n (keyup)=\"onKeyPressed($event, row)\"\n >\n <td\n *ngFor=\"let column of content.visibleColumns\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"onRowClicked(row)\"\n (click)=\"onRowClicked(row)\"\n >\n <span *ngIf=\"column.type !== 'Boolean' else checkbox\"> {{ getCellValue(row, column) }} </span>\n <ng-template #checkbox>\n <mat-checkbox disabled [checked]=\"getCellValue(row, column)\" />\n </ng-template>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <div *ngIf=\"!readOnly\">\n <button mat-button\n data-automation-id=\"dynamic-table-button-move-up\"\n [disabled]=\"!hasSelection()\"\n (click)=\"moveSelectionUp()\">\n <mat-icon>arrow_upward</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-move-down\"\n [disabled]=\"!hasSelection()\"\n (click)=\"moveSelectionDown()\">\n <mat-icon>arrow_downward</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-add-row\"\n [disabled]=\"field.readOnly\"\n id=\"{{content.id}}-add-row\"\n (click)=\"addNewRow()\">\n <mat-icon>add_circle_outline</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-remove\"\n [disabled]=\"!hasSelection()\"\n (click)=\"deleteSelection()\">\n <mat-icon>remove_circle_outline</mat-icon>\n </button>\n <button mat-button\n data-automation-id=\"dynamic-table-button-edit\"\n [disabled]=\"!hasSelection()\"\n (click)=\"editSelection()\">\n <mat-icon>edit</mat-icon>\n </button>\n </div>\n </div>\n\n <row-editor *ngIf=\"editMode\" [table]=\"content\" [row]=\"editRow\" (save)=\"onSaveChanges()\" (cancel)=\"onCancelChanges()\" />\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: ["dynamic-table-widget .adf-label{width:auto;height:auto}.adf-dynamic-table-scrolling{overflow:auto}.adf-dynamic-table{width:100%;position:relative;border:1px solid var(--mat-sys-outline-variant);white-space:nowrap;font-size:var(--mat-sys-body-medium-size);border-collapse:unset;border-spacing:0}.adf-dynamic-table thead{padding-bottom:3px}.adf-dynamic-table tbody tr{position:relative;height:56px;transition:background-color .28s cubic-bezier(.4,0,.2,1)}.adf-dynamic-table tbody tr:hover{background-color:var(--mat-sys-surface-dim)}.adf-dynamic-table tbody tr.adf-is-selected,.adf-dynamic-table tbody tr.adf-is-selected:hover{background-color:var(--mat-sys-secondary-container)}.adf-dynamic-table tbody tr:focus{outline-offset:-1px;outline:var(--mat-sys-primary) solid 1px}.adf-dynamic-table td,.adf-dynamic-table th{padding:0 18px 12px;text-align:center}.adf-dynamic-table td:first-of-type,.adf-dynamic-table th:first-of-type{padding-left:24px}.adf-dynamic-table td:last-of-type,.adf-dynamic-table th:last-of-type{padding-right:24px}.adf-dynamic-table td{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--mat-sys-on-surface);position:relative;vertical-align:middle;height:56px;border-top:1px solid var(--mat-sys-outline-variant);border-bottom:1px solid var(--mat-sys-outline-variant);padding-top:12px;box-sizing:border-box;cursor:default}.adf-dynamic-table th{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;position:relative;vertical-align:bottom;text-overflow:ellipsis;font-weight:var(--mat-sys-label-large-weight);line-height:var(--mat-sys-label-large-line-height);letter-spacing:0;height:56px;font-size:var(--mat-sys-body-small-size);color:var(--mat-sys-on-surface);padding-bottom:8px;box-sizing:border-box}.adf-dynamic-table th.adf-sortable{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.adf-dynamic-table th.adf-dynamic-table__header--sorted-asc,.adf-dynamic-table th.adf-dynamic-table__header--sorted-desc{color:var(--mat-sys-on-surface)}.adf-dynamic-table th.adf-dynamic-table__header--sorted-asc:before,.adf-dynamic-table th.adf-dynamic-table__header--sorted-desc:before{font-family:Material Icons;font-weight:400;font-style:normal;font-size:var(--mat-sys-headline-small-size);line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;word-wrap:normal;font-feature-settings:\"liga\";content:\"\\e5d8\";margin-right:5px;vertical-align:sub;cursor:pointer}.adf-dynamic-table th.adf-dynamic-table__header--sorted-desc:before{content:\"\\e5db\"}.adf-dynamic-table .adf-dynamic-table-cell{text-align:left;cursor:default}.adf-dynamic-table .adf-dynamic-table-cell--text{text-align:left}.adf-dynamic-table .adf-dynamic-table-cell--number{text-align:right}.adf-dynamic-table .adf-dynamic-table-cell--image{text-align:left}.adf-dynamic-table .adf-dynamic-table-cell--image img{width:24px;height:24px}.adf-dynamic-table .adf-full-width{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i1$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: RowEditorComponent, selector: "row-editor", inputs: ["table", "row", "column"], outputs: ["save", "cancel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
5156
5110
  }
5157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DynamicTableWidgetComponent, decorators: [{
5111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DynamicTableWidgetComponent, decorators: [{
5158
5112
  type: Component,
5159
5113
  args: [{ selector: 'dynamic-table-widget', imports: [CommonModule, TranslatePipe, MatCheckboxModule, MatButtonModule, MatIconModule, RowEditorComponent, ErrorWidgetComponent], host: {
5160
5114
  '(click)': 'event($event)',
@@ -5275,10 +5229,10 @@ class ExternalAlfrescoApiService extends AlfrescoApiService {
5275
5229
  }
5276
5230
  return result;
5277
5231
  }
5278
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ExternalAlfrescoApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
5279
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ExternalAlfrescoApiService, providedIn: 'root' }); }
5232
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ExternalAlfrescoApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
5233
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ExternalAlfrescoApiService, providedIn: 'root' }); }
5280
5234
  }
5281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ExternalAlfrescoApiService, decorators: [{
5235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ExternalAlfrescoApiService, decorators: [{
5282
5236
  type: Injectable,
5283
5237
  args: [{ providedIn: 'root' }]
5284
5238
  }] });
@@ -5359,16 +5313,16 @@ class AttachFileWidgetDialogComponent {
5359
5313
  }
5360
5314
  }
5361
5315
  }
5362
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFileWidgetDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5363
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: AttachFileWidgetDialogComponent, isStandalone: true, selector: "adf-attach-file-widget-dialog", providers: [
5316
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFileWidgetDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5317
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: AttachFileWidgetDialogComponent, isStandalone: true, selector: "adf-attach-file-widget-dialog", providers: [
5364
5318
  AuthenticationService,
5365
5319
  DocumentListService,
5366
5320
  SitesService,
5367
5321
  SearchService,
5368
5322
  { provide: AlfrescoApiService, useClass: ExternalAlfrescoApiService }
5369
- ], viewQueries: [{ propertyName: "loginPanel", first: true, predicate: ["adfLoginPanel"], descendants: true }], ngImport: i0, template: "<header\n mat-dialog-title\n data-automation-id=\"content-node-selector-title\">\n <span *ngIf=\"isLoggedIn(); else loginTitle\">{{title}}</span>\n <ng-template #loginTitle>{{data.title}}</ng-template>\n</header>\n\n<mat-dialog-content class=\"adf-login-dialog-content\">\n <adf-login-dialog-panel id=\"attach-file-login-panel\" #adfLoginPanel *ngIf=\"!isLoggedIn()\" />\n <adf-content-node-selector-panel *ngIf=\"isLoggedIn()\"\n id=\"attach-file-content-node\"\n [currentFolderId]=\"data?.currentFolderId\"\n [isSelectionValid]=\"data?.isSelectionValid\"\n [showFilesInResult]=\"data?.showFilesInResult\"\n (select)=\"onSelect($event)\"\n (siteChange)=\"onSiteChange($event)\" />\n</mat-dialog-content>\n\n<mat-dialog-actions class=\"adf-login-dialog-actions\" align=\"end\">\n <button\n mat-button\n (click)=\"close()\"\n data-automation-id=\"attach-file-dialog-actions-cancel\">{{ 'ATTACH-FILE.ACTIONS.CANCEL' | translate }}\n </button>\n\n <button *ngIf=\"!isLoggedIn()\"\n mat-button\n (click)=\"performLogin()\"\n data-automation-id=\"attach-file-dialog-actions-login\">{{ 'ATTACH-FILE.ACTIONS.LOGIN' | translate }}\n </button>\n\n <button *ngIf=\"isLoggedIn()\"\n mat-button\n [disabled]=\"!hasNodeSelected()\"\n class=\"adf-choose-action\"\n (click)=\"onClick()\"\n data-automation-id=\"attach-file-dialog-actions-choose\">{{ buttonActionName | translate }}\n </button>\n\n</mat-dialog-actions>\n", styles: [".adf-attach-file-widget-dialog .mat-mdc-dialog-actions{display:flex;justify-content:flex-end}.adf-attach-file-widget-dialog .mat-mdc-dialog-actions button{text-transform:uppercase}.adf-attach-file-widget-dialog .adf-login-dialog-actions{margin-left:-25px;margin-right:-25px;padding-right:25px}.mat-mdc-dialog-surface{overflow-x:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: LoginDialogPanelComponent, selector: "adf-login-dialog-panel", outputs: ["success"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: ContentNodeSelectorPanelComponent, selector: "adf-content-node-selector-panel", inputs: ["restrictRootToCurrentFolderId", "currentFolderId", "dropdownHideMyFiles", "dropdownSiteList", "where", "rowFilter", "excludeSiteContent", "imageResolver", "pageSize", "selectionMode", "isSelectionValid", "breadcrumbTransform", "showSearch", "showDropdownSiteList", "showFilesInResult", "showNodeCounter"], outputs: ["select", "navigationChange", "siteChange", "showingSearch", "currentFolder", "folderLoaded"] }], encapsulation: i0.ViewEncapsulation.None }); }
5323
+ ], viewQueries: [{ propertyName: "loginPanel", first: true, predicate: ["adfLoginPanel"], descendants: true }], ngImport: i0, template: "<header\n mat-dialog-title\n data-automation-id=\"content-node-selector-title\">\n <span *ngIf=\"isLoggedIn(); else loginTitle\">{{title}}</span>\n <ng-template #loginTitle>{{data.title}}</ng-template>\n</header>\n\n<mat-dialog-content class=\"adf-login-dialog-content\">\n <adf-login-dialog-panel id=\"attach-file-login-panel\" #adfLoginPanel *ngIf=\"!isLoggedIn()\" />\n <adf-content-node-selector-panel *ngIf=\"isLoggedIn()\"\n id=\"attach-file-content-node\"\n [currentFolderId]=\"data?.currentFolderId\"\n [isSelectionValid]=\"data?.isSelectionValid\"\n [showFilesInResult]=\"data?.showFilesInResult\"\n (select)=\"onSelect($event)\"\n (siteChange)=\"onSiteChange($event)\" />\n</mat-dialog-content>\n\n<mat-dialog-actions class=\"adf-login-dialog-actions\" align=\"end\">\n <button\n mat-button\n (click)=\"close()\"\n data-automation-id=\"attach-file-dialog-actions-cancel\">{{ 'ATTACH-FILE.ACTIONS.CANCEL' | translate }}\n </button>\n\n <button *ngIf=\"!isLoggedIn()\"\n mat-button\n (click)=\"performLogin()\"\n data-automation-id=\"attach-file-dialog-actions-login\">{{ 'ATTACH-FILE.ACTIONS.LOGIN' | translate }}\n </button>\n\n <button *ngIf=\"isLoggedIn()\"\n mat-button\n [disabled]=\"!hasNodeSelected()\"\n class=\"adf-choose-action\"\n (click)=\"onClick()\"\n data-automation-id=\"attach-file-dialog-actions-choose\">{{ buttonActionName | translate }}\n </button>\n\n</mat-dialog-actions>\n", styles: [".adf-attach-file-widget-dialog .mat-mdc-dialog-actions{display:flex;justify-content:flex-end}.adf-attach-file-widget-dialog .mat-mdc-dialog-actions button{text-transform:uppercase}.adf-attach-file-widget-dialog .adf-login-dialog-actions{margin-left:-25px;margin-right:-25px;padding-right:25px}.mat-mdc-dialog-surface{overflow-x:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: LoginDialogPanelComponent, selector: "adf-login-dialog-panel", outputs: ["success"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: ContentNodeSelectorPanelComponent, selector: "adf-content-node-selector-panel", inputs: ["restrictRootToCurrentFolderId", "currentFolderId", "dropdownHideMyFiles", "dropdownSiteList", "where", "rowFilter", "excludeSiteContent", "imageResolver", "pageSize", "selectionMode", "isSelectionValid", "breadcrumbTransform", "showSearch", "showDropdownSiteList", "showFilesInResult", "showNodeCounter"], outputs: ["select", "navigationChange", "siteChange", "showingSearch", "currentFolder", "folderLoaded"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
5370
5324
  }
5371
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFileWidgetDialogComponent, decorators: [{
5325
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFileWidgetDialogComponent, decorators: [{
5372
5326
  type: Component,
5373
5327
  args: [{ selector: 'adf-attach-file-widget-dialog', imports: [CommonModule, MatDialogModule, LoginDialogPanelComponent, MatButtonModule, TranslatePipe, ContentNodeSelectorPanelComponent], encapsulation: ViewEncapsulation.None, providers: [
5374
5328
  AuthenticationService,
@@ -5460,10 +5414,10 @@ class AttachFileWidgetDialogService {
5460
5414
  getLoginTitleTranslation(ecmHost) {
5461
5415
  return this.translation.instant(`ATTACH-FILE.DIALOG.LOGIN`, { ecmHost });
5462
5416
  }
5463
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFileWidgetDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5464
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFileWidgetDialogService, providedIn: 'root' }); }
5417
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFileWidgetDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5418
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFileWidgetDialogService, providedIn: 'root' }); }
5465
5419
  }
5466
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFileWidgetDialogService, decorators: [{
5420
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFileWidgetDialogService, decorators: [{
5467
5421
  type: Injectable,
5468
5422
  args: [{
5469
5423
  providedIn: 'root'
@@ -5478,9 +5432,6 @@ var __decorate$5 = (this && this.__decorate) || function (decorators, target, ke
5478
5432
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5479
5433
  return c > 3 && r && Object.defineProperty(target, key, r), r;
5480
5434
  };
5481
- var __metadata$5 = (this && this.__metadata) || function (k, v) {
5482
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
5483
- };
5484
5435
  class ActivitiContentService {
5485
5436
  constructor() {
5486
5437
  this.apiService = inject(AlfrescoApiService);
@@ -5552,18 +5503,16 @@ class ActivitiContentService {
5552
5503
  }
5553
5504
  return throwError(errMsg);
5554
5505
  }
5555
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ActivitiContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5556
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ActivitiContentService, providedIn: 'root' }); }
5506
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ActivitiContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5507
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ActivitiContentService, providedIn: 'root' }); }
5557
5508
  }
5558
5509
  __decorate$5([
5559
- LazyApi((self) => new IntegrationAlfrescoOnPremiseApi(self.apiService.getInstance())),
5560
- __metadata$5("design:type", IntegrationAlfrescoOnPremiseApi)
5510
+ LazyApi((self) => new IntegrationAlfrescoOnPremiseApi(self.apiService.getInstance()))
5561
5511
  ], ActivitiContentService.prototype, "integrationAlfrescoOnPremiseApi", void 0);
5562
5512
  __decorate$5([
5563
- LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance())),
5564
- __metadata$5("design:type", ActivitiContentApi)
5513
+ LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance()))
5565
5514
  ], ActivitiContentService.prototype, "contentApi", void 0);
5566
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ActivitiContentService, decorators: [{
5515
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ActivitiContentService, decorators: [{
5567
5516
  type: Injectable,
5568
5517
  args: [{
5569
5518
  providedIn: 'root'
@@ -5693,6 +5642,7 @@ class AttachFileWidgetComponent extends UploadWidgetComponent {
5693
5642
  const nodeUrl = this.contentService.getContentUrl(nodeUploaded.id);
5694
5643
  this.downloadService.downloadUrl(nodeUrl, file.name);
5695
5644
  }
5645
+ return;
5696
5646
  }
5697
5647
  if (file.sourceId) {
5698
5648
  const sourceHost = this.findSource(file.source);
@@ -5774,10 +5724,10 @@ class AttachFileWidgetComponent extends UploadWidgetComponent {
5774
5724
  const result = urlToCheck.match('^(?:https?://)?(?:[^@/\n]+@)?(?:www\\.)?([^:/?\n]+)');
5775
5725
  return result[1];
5776
5726
  }
5777
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFileWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5778
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: AttachFileWidgetComponent, isStandalone: true, selector: "attach-widget", usesInheritance: true, ngImport: i0, template: "<div class=\"adf-attach-widget {{ field.className }}\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{ field.name | translate }}\n <span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n <div class=\"adf-attach-widget-container\">\n <div id=\"adf-attach-widget-simple-upload\" *ngIf=\"isSimpleUploadButton() && isUploadButtonVisible()\">\n <a mat-raised-button>\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n <mat-icon>file_upload</mat-icon>\n <input #uploadFiles [multiple]=\"multipleOption\" type=\"file\" [id]=\"field.id\" (change)=\"onAttachFileChanged($event)\" />\n </a>\n </div>\n <div class=\"adf-attach-widget__menu-upload\" (focusout)=\"markAsTouched()\" *ngIf=\"isUploadButtonVisible() && isMultipleSourceUpload()\">\n <button mat-raised-button [matMenuTriggerFor]=\"menu\" [id]=\"field.id\">\n <mat-icon>attach_file</mat-icon>\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n </button>\n <mat-menu #menu=\"matMenu\" class=\"adf-attach-widget__menu-content\">\n <button mat-menu-item (click)=\"uploadFile.click()\" id=\"attach-local-file\" *ngIf=\"isAllFileSourceSelected()\">\n {{ 'FORM.FIELD.LOCALSTORAGE' | translate }}\n <mat-icon>file_upload</mat-icon>\n <input\n #uploadFile\n class=\"adf-attach-widget__input-type\"\n [multiple]=\"multipleOption\"\n type=\"file\"\n [id]=\"field.id\"\n (change)=\"onAttachFileChanged($event)\"\n />\n </button>\n <button\n mat-menu-item\n *ngIf=\"isDefinedSourceFolder()\"\n id=\"attach-{{ field.params?.fileSource?.name }}\"\n (click)=\"openSelectDialogFromFileSource()\"\n >\n <mat-icon>\n <adf-alfresco-icon />\n </mat-icon>\n {{ field.params?.fileSource?.name }}\n </button>\n <div *ngIf=\"!isDefinedSourceFolder()\">\n <button mat-menu-item *ngFor=\"let repo of repositoryList\" id=\"attach-{{ repo?.name }}\" (click)=\"openSelectDialog(repo)\">\n <mat-icon>\n <adf-alfresco-icon />\n </mat-icon>\n {{ repo.name }}\n </button>\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n\n<div data-automation-id=\"adf-attach-widget-readonly-list\">\n <mat-list *ngIf=\"hasFile\">\n <mat-list-item class=\"adf-attach-files-row\" *ngFor=\"let file of field.value; index as i\">\n <mat-icon matListItemIcon>\n <img class=\"adf-attach-widget__icon\"\n [id]=\"'file-'+file.id+'-icon'\"\n [src]=\"file.content ? getIcon(file.content.mimeType) : getIcon(file.mimeType)\"\n [alt]=\"mimeTypeIcon\"\n (click)=\"onAttachFileClicked(file)\"\n (keyup.enter)=\"onAttachFileClicked(file)\"\n [attr.aria-label]=\"file.name\"\n [tabindex]=\"i\"/>\n </mat-icon>\n\n <div matListItemLine class=\"adf-attach-widget__label\">\n <span id=\"{{'file-'+file.id}}\"\n (click)=\"onAttachFileClicked(file)\"\n [title]=\"file.name\"\n (keyup.enter)=\"onAttachFileClicked(file)\"\n [tabindex]=\"i\" class=\"adf-file\">\n {{file.name}}\n </span>\n <button id=\"{{'file-'+file.id+'-option-menu'}}\" mat-icon-button [matMenuTriggerFor]=\"fileActionMenu\"\n [attr.aria-label]=\"'ADF_PROCESS_LIST.DETAILS.BUTTON.FILE_OPTION_MENU' | translate\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </div>\n <mat-menu #fileActionMenu=\"matMenu\" xPosition=\"before\">\n <button\n id=\"{{ 'file-' + file.id + '-show-file' }}\"\n [disabled]=\"file.isExternal || !file.mimeType || (!file.sourceId && (isStartProcessPage || !file.contentAvailable))\"\n mat-menu-item\n (click)=\"onAttachFileClicked(file)\"\n >\n <mat-icon>visibility</mat-icon>\n <span>{{ 'FORM.FIELD.VIEW_FILE' | translate }}</span>\n </button>\n <button\n id=\"{{ 'file-' + file.id + '-download-file' }}\"\n [disabled]=\"file.isExternal || !file.mimeType\"\n mat-menu-item\n (click)=\"downloadContent(file)\"\n >\n <mat-icon>file_download</mat-icon>\n <span>{{ 'FORM.FIELD.DOWNLOAD_FILE' | translate }}</span>\n </button>\n <button\n *ngIf=\"!field.readOnly\"\n mat-menu-item\n [id]=\"'file-' + file.id + '-remove'\"\n (click)=\"onRemoveAttachFile(file)\"\n (keyup.enter)=\"onRemoveAttachFile(file)\"\n >\n <mat-icon class=\"mat-24\">highlight_off</mat-icon>\n <span>{{ 'FORM.FIELD.REMOVE_FILE' | translate }}</span>\n </button>\n </mat-menu>\n </mat-list-item>\n </mat-list>\n</div>\n\n<error-widget [error]=\"field.validationSummary\" />\n<error-widget *ngIf=\"!field.isValid && isTouched() && !isSelected()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n", styles: [".adf-attach-widget-container{margin-bottom:15px;display:flex;align-items:center}.adf-attach-widget-container input{cursor:pointer;height:100%;right:0;opacity:0;position:absolute;top:0;width:300px;z-index:4}.adf-attach-widget__input-type{width:.1px;height:.1px;opacity:0;overflow:hidden;position:absolute;z-index:-1}.adf-attach-widget{width:100%;word-break:break-all;padding:.4375em 0;border-top:.8438em solid transparent}.adf-attach-widget__icon{cursor:pointer}.adf-attach-widget__label{display:flex;align-items:center;cursor:pointer}.adf-attach-widget__label:hover{text-decoration:underline}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i2$2.MatListItemLine, selector: "[matListItemLine]" }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "component", type: AlfrescoIconComponent, selector: "adf-alfresco-icon" }], encapsulation: i0.ViewEncapsulation.None }); }
5727
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFileWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5728
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: AttachFileWidgetComponent, isStandalone: true, selector: "attach-widget", usesInheritance: true, ngImport: i0, template: "<div class=\"adf-attach-widget {{ field.className }}\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{ field.name | translate }}\n <span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n <div class=\"adf-attach-widget-container\">\n <div id=\"adf-attach-widget-simple-upload\" *ngIf=\"isSimpleUploadButton() && isUploadButtonVisible()\">\n <a mat-raised-button>\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n <mat-icon>file_upload</mat-icon>\n <input #uploadFiles [multiple]=\"multipleOption\" type=\"file\" [id]=\"field.id\" (change)=\"onAttachFileChanged($event)\" />\n </a>\n </div>\n <div class=\"adf-attach-widget__menu-upload\" (focusout)=\"markAsTouched()\" *ngIf=\"isUploadButtonVisible() && isMultipleSourceUpload()\">\n <button mat-raised-button [matMenuTriggerFor]=\"menu\" [id]=\"field.id\">\n <mat-icon>attach_file</mat-icon>\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n </button>\n <mat-menu #menu=\"matMenu\" class=\"adf-attach-widget__menu-content\">\n <button mat-menu-item (click)=\"uploadFile.click()\" id=\"attach-local-file\" *ngIf=\"isAllFileSourceSelected()\">\n {{ 'FORM.FIELD.LOCALSTORAGE' | translate }}\n <mat-icon>file_upload</mat-icon>\n <input\n #uploadFile\n class=\"adf-attach-widget__input-type\"\n [multiple]=\"multipleOption\"\n type=\"file\"\n [id]=\"field.id\"\n (change)=\"onAttachFileChanged($event)\"\n />\n </button>\n <button\n mat-menu-item\n *ngIf=\"isDefinedSourceFolder()\"\n id=\"attach-{{ field.params?.fileSource?.name }}\"\n (click)=\"openSelectDialogFromFileSource()\"\n >\n <mat-icon>\n <adf-alfresco-icon />\n </mat-icon>\n {{ field.params?.fileSource?.name }}\n </button>\n <div *ngIf=\"!isDefinedSourceFolder()\">\n <button mat-menu-item *ngFor=\"let repo of repositoryList\" id=\"attach-{{ repo?.name }}\" (click)=\"openSelectDialog(repo)\">\n <mat-icon>\n <adf-alfresco-icon />\n </mat-icon>\n {{ repo.name }}\n </button>\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n\n<div data-automation-id=\"adf-attach-widget-readonly-list\">\n <mat-list *ngIf=\"hasFile\">\n <mat-list-item class=\"adf-attach-files-row\" *ngFor=\"let file of field.value; index as i\">\n <mat-icon matListItemIcon>\n <img class=\"adf-attach-widget__icon\"\n [id]=\"'file-'+file.id+'-icon'\"\n [src]=\"file.content ? getIcon(file.content.mimeType) : getIcon(file.mimeType)\"\n [alt]=\"mimeTypeIcon\"\n (click)=\"onAttachFileClicked(file)\"\n (keyup.enter)=\"onAttachFileClicked(file)\"\n [attr.aria-label]=\"file.name\"\n [tabindex]=\"i\"/>\n </mat-icon>\n\n <div matListItemLine class=\"adf-attach-widget__label\">\n <span id=\"{{'file-'+file.id}}\"\n (click)=\"onAttachFileClicked(file)\"\n [title]=\"file.name\"\n (keyup.enter)=\"onAttachFileClicked(file)\"\n [tabindex]=\"i\" class=\"adf-file\">\n {{file.name}}\n </span>\n <button id=\"{{'file-'+file.id+'-option-menu'}}\" mat-icon-button [matMenuTriggerFor]=\"fileActionMenu\"\n [attr.aria-label]=\"'ADF_PROCESS_LIST.DETAILS.BUTTON.FILE_OPTION_MENU' | translate\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </div>\n <mat-menu #fileActionMenu=\"matMenu\" xPosition=\"before\">\n <button\n id=\"{{ 'file-' + file.id + '-show-file' }}\"\n [disabled]=\"file.isExternal || !file.mimeType || (!file.sourceId && (isStartProcessPage || !file.contentAvailable))\"\n mat-menu-item\n (click)=\"onAttachFileClicked(file)\"\n >\n <mat-icon>visibility</mat-icon>\n <span>{{ 'FORM.FIELD.VIEW_FILE' | translate }}</span>\n </button>\n <button\n id=\"{{ 'file-' + file.id + '-download-file' }}\"\n [disabled]=\"file.isExternal || !file.mimeType\"\n mat-menu-item\n (click)=\"downloadContent(file)\"\n >\n <mat-icon>file_download</mat-icon>\n <span>{{ 'FORM.FIELD.DOWNLOAD_FILE' | translate }}</span>\n </button>\n <button\n *ngIf=\"!field.readOnly\"\n mat-menu-item\n [id]=\"'file-' + file.id + '-remove'\"\n (click)=\"onRemoveAttachFile(file)\"\n (keyup.enter)=\"onRemoveAttachFile(file)\"\n >\n <mat-icon class=\"mat-24\">highlight_off</mat-icon>\n <span>{{ 'FORM.FIELD.REMOVE_FILE' | translate }}</span>\n </button>\n </mat-menu>\n </mat-list-item>\n </mat-list>\n</div>\n\n<error-widget [error]=\"field.validationSummary\" />\n<error-widget *ngIf=\"!field.isValid && isTouched() && !isSelected()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n", styles: [".adf-attach-widget-container{margin-bottom:15px;display:flex;align-items:center}.adf-attach-widget-container input{cursor:pointer;height:100%;right:0;opacity:0;position:absolute;top:0;width:300px;z-index:4}.adf-attach-widget__input-type{width:.1px;height:.1px;opacity:0;overflow:hidden;position:absolute;z-index:-1}.adf-attach-widget{width:100%;word-break:break-all;padding:.4375em 0;border-top:.8438em solid transparent}.adf-attach-widget__icon{cursor:pointer}.adf-attach-widget__label{display:flex;align-items:center;cursor:pointer}.adf-attach-widget__label:hover{text-decoration:underline}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i2$2.MatListItemLine, selector: "[matListItemLine]" }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "component", type: AlfrescoIconComponent, selector: "adf-alfresco-icon" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
5779
5729
  }
5780
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFileWidgetComponent, decorators: [{
5730
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFileWidgetComponent, decorators: [{
5781
5731
  type: Component,
5782
5732
  args: [{ selector: 'attach-widget', imports: [CommonModule, TranslatePipe, MatIconModule, MatButtonModule, MatMenuModule, MatListModule, ErrorWidgetComponent, AlfrescoIconComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-attach-widget {{ field.className }}\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{ field.name | translate }}\n <span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n <div class=\"adf-attach-widget-container\">\n <div id=\"adf-attach-widget-simple-upload\" *ngIf=\"isSimpleUploadButton() && isUploadButtonVisible()\">\n <a mat-raised-button>\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n <mat-icon>file_upload</mat-icon>\n <input #uploadFiles [multiple]=\"multipleOption\" type=\"file\" [id]=\"field.id\" (change)=\"onAttachFileChanged($event)\" />\n </a>\n </div>\n <div class=\"adf-attach-widget__menu-upload\" (focusout)=\"markAsTouched()\" *ngIf=\"isUploadButtonVisible() && isMultipleSourceUpload()\">\n <button mat-raised-button [matMenuTriggerFor]=\"menu\" [id]=\"field.id\">\n <mat-icon>attach_file</mat-icon>\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n </button>\n <mat-menu #menu=\"matMenu\" class=\"adf-attach-widget__menu-content\">\n <button mat-menu-item (click)=\"uploadFile.click()\" id=\"attach-local-file\" *ngIf=\"isAllFileSourceSelected()\">\n {{ 'FORM.FIELD.LOCALSTORAGE' | translate }}\n <mat-icon>file_upload</mat-icon>\n <input\n #uploadFile\n class=\"adf-attach-widget__input-type\"\n [multiple]=\"multipleOption\"\n type=\"file\"\n [id]=\"field.id\"\n (change)=\"onAttachFileChanged($event)\"\n />\n </button>\n <button\n mat-menu-item\n *ngIf=\"isDefinedSourceFolder()\"\n id=\"attach-{{ field.params?.fileSource?.name }}\"\n (click)=\"openSelectDialogFromFileSource()\"\n >\n <mat-icon>\n <adf-alfresco-icon />\n </mat-icon>\n {{ field.params?.fileSource?.name }}\n </button>\n <div *ngIf=\"!isDefinedSourceFolder()\">\n <button mat-menu-item *ngFor=\"let repo of repositoryList\" id=\"attach-{{ repo?.name }}\" (click)=\"openSelectDialog(repo)\">\n <mat-icon>\n <adf-alfresco-icon />\n </mat-icon>\n {{ repo.name }}\n </button>\n </div>\n </mat-menu>\n </div>\n </div>\n</div>\n\n<div data-automation-id=\"adf-attach-widget-readonly-list\">\n <mat-list *ngIf=\"hasFile\">\n <mat-list-item class=\"adf-attach-files-row\" *ngFor=\"let file of field.value; index as i\">\n <mat-icon matListItemIcon>\n <img class=\"adf-attach-widget__icon\"\n [id]=\"'file-'+file.id+'-icon'\"\n [src]=\"file.content ? getIcon(file.content.mimeType) : getIcon(file.mimeType)\"\n [alt]=\"mimeTypeIcon\"\n (click)=\"onAttachFileClicked(file)\"\n (keyup.enter)=\"onAttachFileClicked(file)\"\n [attr.aria-label]=\"file.name\"\n [tabindex]=\"i\"/>\n </mat-icon>\n\n <div matListItemLine class=\"adf-attach-widget__label\">\n <span id=\"{{'file-'+file.id}}\"\n (click)=\"onAttachFileClicked(file)\"\n [title]=\"file.name\"\n (keyup.enter)=\"onAttachFileClicked(file)\"\n [tabindex]=\"i\" class=\"adf-file\">\n {{file.name}}\n </span>\n <button id=\"{{'file-'+file.id+'-option-menu'}}\" mat-icon-button [matMenuTriggerFor]=\"fileActionMenu\"\n [attr.aria-label]=\"'ADF_PROCESS_LIST.DETAILS.BUTTON.FILE_OPTION_MENU' | translate\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </div>\n <mat-menu #fileActionMenu=\"matMenu\" xPosition=\"before\">\n <button\n id=\"{{ 'file-' + file.id + '-show-file' }}\"\n [disabled]=\"file.isExternal || !file.mimeType || (!file.sourceId && (isStartProcessPage || !file.contentAvailable))\"\n mat-menu-item\n (click)=\"onAttachFileClicked(file)\"\n >\n <mat-icon>visibility</mat-icon>\n <span>{{ 'FORM.FIELD.VIEW_FILE' | translate }}</span>\n </button>\n <button\n id=\"{{ 'file-' + file.id + '-download-file' }}\"\n [disabled]=\"file.isExternal || !file.mimeType\"\n mat-menu-item\n (click)=\"downloadContent(file)\"\n >\n <mat-icon>file_download</mat-icon>\n <span>{{ 'FORM.FIELD.DOWNLOAD_FILE' | translate }}</span>\n </button>\n <button\n *ngIf=\"!field.readOnly\"\n mat-menu-item\n [id]=\"'file-' + file.id + '-remove'\"\n (click)=\"onRemoveAttachFile(file)\"\n (keyup.enter)=\"onRemoveAttachFile(file)\"\n >\n <mat-icon class=\"mat-24\">highlight_off</mat-icon>\n <span>{{ 'FORM.FIELD.REMOVE_FILE' | translate }}</span>\n </button>\n </mat-menu>\n </mat-list-item>\n </mat-list>\n</div>\n\n<error-widget [error]=\"field.validationSummary\" />\n<error-widget *ngIf=\"!field.isValid && isTouched() && !isSelected()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n", styles: [".adf-attach-widget-container{margin-bottom:15px;display:flex;align-items:center}.adf-attach-widget-container input{cursor:pointer;height:100%;right:0;opacity:0;position:absolute;top:0;width:300px;z-index:4}.adf-attach-widget__input-type{width:.1px;height:.1px;opacity:0;overflow:hidden;position:absolute;z-index:-1}.adf-attach-widget{width:100%;word-break:break-all;padding:.4375em 0;border-top:.8438em solid transparent}.adf-attach-widget__icon{cursor:pointer}.adf-attach-widget__label{display:flex;align-items:center;cursor:pointer}.adf-attach-widget__label:hover{text-decoration:underline}\n"] }]
5783
5733
  }] });
@@ -5842,10 +5792,10 @@ class AttachFolderWidgetComponent extends WidgetComponent {
5842
5792
  this.selectedFolderName = '';
5843
5793
  this.hasFolder = false;
5844
5794
  }
5845
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFolderWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5846
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: AttachFolderWidgetComponent, isStandalone: true, selector: "attach-folder-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-attach-folder-widget {{ field.className }}\" [class.adf-invalid]=\"!field.isValid\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{ field.name | translate }}<span [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <div class=\"adf-attach-folder-widget-container\">\n <div *ngIf=\"hasFolder\" class=\"adf-attach-folder-result\">\n <mat-icon>folder</mat-icon>\n <div class=\"adf-attach-folder-files-row\">\n <span matLine id=\"{{ 'folder-' + field?.id }}\" role=\"button\" tabindex=\"0\" class=\"adf-folder\">{{ selectedFolderName }}</span>\n <button *ngIf=\"!field.readOnly\" mat-icon-button [id]=\"'folder-' + field?.id + '-remove'\" (click)=\"removeFolder()\">\n <mat-icon class=\"mat-24\">highlight_off</mat-icon>\n </button>\n </div>\n </div>\n\n <div *ngIf=\"!hasFolder && !field.readOnly\">\n <button\n mat-raised-button\n (click)=\"openSelectDialogFromFileSource()\"\n [id]=\"'folder-' + field?.id + '-button'\"\n class=\"adf-attach-folder-menu-trigger\"\n >\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n <mat-icon>cloud_upload</mat-icon>\n </button>\n </div>\n </div>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-attach-folder-widget-container{margin-bottom:15px;display:flex;align-items:center}.adf-attach-folder-widget-container input{cursor:pointer;height:100%;right:0;opacity:0;position:absolute;top:0;width:300px;z-index:4}.adf-attach-folder-widget{width:100%;word-break:break-all;padding:.4375em 0;border-top:.8438em solid transparent}.adf-attach-folder-files-row{padding-left:8px}.adf-attach-folder-files-row .mat-line{margin-bottom:0}.adf-attach-folder-result{display:flex;align-items:center}.adf-attach-folder-menu-trigger{display:flex;flex-direction:row-reverse}.adf-attach-folder-menu-trigger .mat-icon{margin-left:4px;margin-right:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatLineModule }, { kind: "directive", type: i3$6.MatLine, selector: "[mat-line], [matLine]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
5795
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFolderWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5796
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: AttachFolderWidgetComponent, isStandalone: true, selector: "attach-folder-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-attach-folder-widget {{ field.className }}\" [class.adf-invalid]=\"!field.isValid\" [class.adf-readonly]=\"field.readOnly\">\n <label class=\"adf-label\" [attr.for]=\"field.id\"\n >{{ field.name | translate }}<span [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span></label\n >\n <div class=\"adf-attach-folder-widget-container\">\n <div *ngIf=\"hasFolder\" class=\"adf-attach-folder-result\">\n <mat-icon>folder</mat-icon>\n <div class=\"adf-attach-folder-files-row\">\n <span matLine id=\"{{ 'folder-' + field?.id }}\" role=\"button\" tabindex=\"0\" class=\"adf-folder\">{{ selectedFolderName }}</span>\n <button *ngIf=\"!field.readOnly\" mat-icon-button [id]=\"'folder-' + field?.id + '-remove'\" (click)=\"removeFolder()\">\n <mat-icon class=\"mat-24\">highlight_off</mat-icon>\n </button>\n </div>\n </div>\n\n <div *ngIf=\"!hasFolder && !field.readOnly\">\n <button\n mat-raised-button\n (click)=\"openSelectDialogFromFileSource()\"\n [id]=\"'folder-' + field?.id + '-button'\"\n class=\"adf-attach-folder-menu-trigger\"\n >\n {{ 'FORM.FIELD.UPLOAD' | translate }}\n <mat-icon>cloud_upload</mat-icon>\n </button>\n </div>\n </div>\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget *ngIf=\"isInvalidFieldRequired()\" required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\" />\n</div>\n", styles: [".adf-attach-folder-widget-container{margin-bottom:15px;display:flex;align-items:center}.adf-attach-folder-widget-container input{cursor:pointer;height:100%;right:0;opacity:0;position:absolute;top:0;width:300px;z-index:4}.adf-attach-folder-widget{width:100%;word-break:break-all;padding:.4375em 0;border-top:.8438em solid transparent}.adf-attach-folder-files-row{padding-left:8px}.adf-attach-folder-files-row .mat-line{margin-bottom:0}.adf-attach-folder-result{display:flex;align-items:center}.adf-attach-folder-menu-trigger{display:flex;flex-direction:row-reverse}.adf-attach-folder-menu-trigger .mat-icon{margin-left:4px;margin-right:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatLineModule }, { kind: "directive", type: i3$6.MatLine, selector: "[mat-line], [matLine]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
5847
5797
  }
5848
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFolderWidgetComponent, decorators: [{
5798
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFolderWidgetComponent, decorators: [{
5849
5799
  type: Component,
5850
5800
  args: [{ selector: 'attach-folder-widget', imports: [CommonModule, TranslatePipe, MatIconModule, MatLineModule, MatButtonModule, ErrorWidgetComponent], host: {
5851
5801
  '(click)': 'event($event)',
@@ -6009,10 +5959,10 @@ class ProcessFormRenderingService extends FormRenderingService {
6009
5959
  [FormFieldTypes.ALFRESCO_FILE_VIEWER]: () => FileViewerWidgetComponent
6010
5960
  }, true);
6011
5961
  }
6012
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFormRenderingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6013
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFormRenderingService, providedIn: 'root' }); }
5962
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFormRenderingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5963
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFormRenderingService, providedIn: 'root' }); }
6014
5964
  }
6015
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessFormRenderingService, decorators: [{
5965
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessFormRenderingService, decorators: [{
6016
5966
  type: Injectable,
6017
5967
  args: [{
6018
5968
  providedIn: 'root'
@@ -6286,10 +6236,10 @@ class TaskFormComponent {
6286
6236
  isExternalIdEqual() {
6287
6237
  return this.taskDetails.assignee && this.currentLoggedUser && this.taskDetails.assignee.externalId === this.currentLoggedUser.externalId;
6288
6238
  }
6289
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6290
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskFormComponent, isStandalone: true, selector: "adf-task-form", inputs: { taskId: "taskId", showFormTitle: "showFormTitle", showFormCompleteButton: "showFormCompleteButton", showFormSaveButton: "showFormSaveButton", showCancelButton: "showCancelButton", readOnlyForm: "readOnlyForm", showFormRefreshButton: "showFormRefreshButton", showFormValidationIcon: "showFormValidationIcon", fieldValidators: "fieldValidators" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formContentClicked: "formContentClicked", formLoaded: "formLoaded", showAttachForm: "showAttachForm", executeOutcome: "executeOutcome", completed: "completed", formError: "formError", error: "error", cancel: "cancel", taskClaimed: "taskClaimed", taskUnclaimed: "taskUnclaimed" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!loading; else loadingTemplate\">\n <adf-form *ngIf=\"hasFormKey(); else withoutForm\"\n [taskId]=\"taskDetails?.id\"\n [showTitle]=\"showFormTitle\"\n [showValidationIcon]=\"showFormValidationIcon\"\n [showRefreshButton]=\"showFormRefreshButton\"\n [showCompleteButton]=\"showFormCompleteButton\"\n [showSaveButton]=\"isSaveButtonVisible()\"\n [disableCompleteButton]=\"!isCompleteButtonEnabled()\"\n [readOnly]=\"isReadOnlyForm()\"\n [fieldValidators]=\"fieldValidators\"\n (formSaved)='onFormSaved($event)'\n (formCompleted)='onFormCompleted($event)'\n (formContentClicked)='onFormContentClick($event)'\n (formLoaded)='onFormLoaded($event)'\n (formError)='onFormError($event)'\n (error)='onError($event)'\n (executeOutcome)='onFormExecuteOutcome($event)'>\n <adf-form-custom-outcomes>\n <ng-template [ngTemplateOutlet]=\"taskFormButtons\" />\n </adf-form-custom-outcomes>\n </adf-form>\n <ng-template #withoutForm>\n <adf-task-standalone *ngIf=\"isStandaloneTask(); else emptyFormMessage\"\n [taskName]=\"taskDetails.name\"\n [taskId]=\"taskDetails.id\"\n [isCompleted]=\"isCompletedTask()\"\n [hasCompletePermission]=\"isCompleteButtonVisible()\"\n [hideCancelButton]=\"showCancelButton\"\n (complete)=\"onCompleteTask()\"\n (showAttachForm)=\"onShowAttachForm()\" />\n <ng-template #emptyFormMessage>\n <mat-card appearance=\"outlined\" class=\"adf-task-form-container\">\n <mat-card-header>\n <mat-card-title>\n <h4>\n <span class=\"adf-form-title\">\n {{taskDetails.name}}\n <ng-container *ngIf=\"!taskDetails.name\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <adf-empty-content *ngIf=\"isCompletedTask(); else emptyFormTemplate\"\n [icon]=\"'description'\"\n [title]=\"getCompletedTaskTranslatedMessage() | async\"\n [subtitle]=\"'ADF_TASK_FORM.COMPLETED_TASK.SUBTITLE'\" />\n <ng-template #emptyFormTemplate>\n <adf-empty-content\n [icon]=\"'description'\"\n [title]=\"'ADF_TASK_LIST.STANDALONE_TASK.NO_FORM_MESSAGE'\"\n [subtitle]=\"'ADF_TASK_FORM.EMPTY_FORM.SUBTITLE'\" />\n </ng-template>\n </mat-card-content>\n <mat-card-actions align=\"end\">\n <div class=\"adf-task-form-actions\">\n <ng-template [ngTemplateOutlet]=\"taskFormButtons\" />\n <button mat-button\n *ngIf=\"!isCompletedTask()\" id=\"adf-no-form-complete-button\"\n class=\"adf-task-form-actions-button\"\n [disabled]=\"canCompleteNoFormTask()\"\n (click)=\"onCompleteTask()\">\n {{'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.COMPLETE' | translate}}\n </button>\n </div>\n </mat-card-actions>\n </mat-card>\n </ng-template>\n </ng-template>\n\n <ng-template #taskFormButtons>\n <button mat-button id=\"adf-no-form-cancel-button\"\n *ngIf=\"showCancelButton\"\n (click)=\"onCancel()\">\n {{'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.CANCEL' | translate}}\n </button>\n <button mat-button data-automation-id=\"adf-task-form-claim-button\"\n *ngIf=\"isTaskClaimable()\"\n adf-claim-task\n [taskId]=\"taskId\"\n (success)=\"onClaimTask($event)\"\n (error)=\"onClaimTaskError($event)\">\n {{ 'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.CLAIM' | translate }}\n </button>\n <button mat-button data-automation-id=\"adf-task-form-unclaim-button\"\n *ngIf=\"isTaskClaimedByCandidateMember()\"\n adf-unclaim-task\n [taskId]=\"taskId\"\n (success)=\"onUnclaimTask($event)\"\n (error)=\"onUnclaimTaskError($event)\">\n {{ 'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.UNCLAIM' | translate }}\n </button>\n </ng-template>\n</ng-container>\n<ng-template #loadingTemplate>\n <div class=\"adf-task-form-spinner-container\">\n <mat-spinner />\n </div>\n</ng-template>\n", styles: [".adf-task-form-container{overflow:hidden}.adf-task-form-actions{float:right;padding-right:25px;padding-bottom:25px}.adf-task-form-actions .mat-mdc-button{height:36px;border-radius:5px}.adf-task-form-actions .mdc-button__label{width:58px;height:20px;font:var(--mat-sys-title-small);color:var(--mat-sys-on-surface-variant)}.adf-task-form-spinner-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.adf-task-form-spinner-container mat-spinner{display:flex;max-height:100%;place-content:center;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: ClaimTaskDirective, selector: "[adf-claim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "directive", type: UnclaimTaskDirective, selector: "[adf-unclaim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "component", type: TaskStandaloneComponent, selector: "adf-task-standalone", inputs: ["taskName", "taskId", "isCompleted", "hasCompletePermission", "hideCancelButton"], outputs: ["cancel", "complete", "showAttachForm"] }, { kind: "component", type: FormComponent, selector: "adf-form", inputs: ["taskId", "nodeId", "formId", "formName", "saveMetadata", "data", "enableFixedSpacedForm"], outputs: ["formSaved", "formCompleted", "formContentClicked", "formLoaded", "formDataRefreshed"] }, { kind: "component", type: FormCustomOutcomesComponent, selector: "adf-form-custom-outcomes" }], encapsulation: i0.ViewEncapsulation.None }); }
6239
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6240
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskFormComponent, isStandalone: true, selector: "adf-task-form", inputs: { taskId: "taskId", showFormTitle: "showFormTitle", showFormCompleteButton: "showFormCompleteButton", showFormSaveButton: "showFormSaveButton", showCancelButton: "showCancelButton", readOnlyForm: "readOnlyForm", showFormRefreshButton: "showFormRefreshButton", showFormValidationIcon: "showFormValidationIcon", fieldValidators: "fieldValidators" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formContentClicked: "formContentClicked", formLoaded: "formLoaded", showAttachForm: "showAttachForm", executeOutcome: "executeOutcome", completed: "completed", formError: "formError", error: "error", cancel: "cancel", taskClaimed: "taskClaimed", taskUnclaimed: "taskUnclaimed" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!loading; else loadingTemplate\">\n <adf-form *ngIf=\"hasFormKey(); else withoutForm\"\n [taskId]=\"taskDetails?.id\"\n [showTitle]=\"showFormTitle\"\n [showValidationIcon]=\"showFormValidationIcon\"\n [showRefreshButton]=\"showFormRefreshButton\"\n [showCompleteButton]=\"showFormCompleteButton\"\n [showSaveButton]=\"isSaveButtonVisible()\"\n [disableCompleteButton]=\"!isCompleteButtonEnabled()\"\n [readOnly]=\"isReadOnlyForm()\"\n [fieldValidators]=\"fieldValidators\"\n (formSaved)='onFormSaved($event)'\n (formCompleted)='onFormCompleted($event)'\n (formContentClicked)='onFormContentClick($event)'\n (formLoaded)='onFormLoaded($event)'\n (formError)='onFormError($event)'\n (error)='onError($event)'\n (executeOutcome)='onFormExecuteOutcome($event)'>\n <adf-form-custom-outcomes>\n <ng-template [ngTemplateOutlet]=\"taskFormButtons\" />\n </adf-form-custom-outcomes>\n </adf-form>\n <ng-template #withoutForm>\n <adf-task-standalone *ngIf=\"isStandaloneTask(); else emptyFormMessage\"\n [taskName]=\"taskDetails.name\"\n [taskId]=\"taskDetails.id\"\n [isCompleted]=\"isCompletedTask()\"\n [hasCompletePermission]=\"isCompleteButtonVisible()\"\n [hideCancelButton]=\"showCancelButton\"\n (complete)=\"onCompleteTask()\"\n (showAttachForm)=\"onShowAttachForm()\" />\n <ng-template #emptyFormMessage>\n <mat-card appearance=\"outlined\" class=\"adf-task-form-container\">\n <mat-card-header>\n <mat-card-title>\n <h4>\n <span class=\"adf-form-title\">\n {{taskDetails.name}}\n <ng-container *ngIf=\"!taskDetails.name\">\n {{'FORM.FORM_RENDERER.NAMELESS_TASK' | translate}}\n </ng-container>\n </span>\n </h4>\n </mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <adf-empty-content *ngIf=\"isCompletedTask(); else emptyFormTemplate\"\n [icon]=\"'description'\"\n [title]=\"getCompletedTaskTranslatedMessage() | async\"\n [subtitle]=\"'ADF_TASK_FORM.COMPLETED_TASK.SUBTITLE'\" />\n <ng-template #emptyFormTemplate>\n <adf-empty-content\n [icon]=\"'description'\"\n [title]=\"'ADF_TASK_LIST.STANDALONE_TASK.NO_FORM_MESSAGE'\"\n [subtitle]=\"'ADF_TASK_FORM.EMPTY_FORM.SUBTITLE'\" />\n </ng-template>\n </mat-card-content>\n <mat-card-actions align=\"end\">\n <div class=\"adf-task-form-actions\">\n <ng-template [ngTemplateOutlet]=\"taskFormButtons\" />\n <button mat-button\n *ngIf=\"!isCompletedTask()\" id=\"adf-no-form-complete-button\"\n class=\"adf-task-form-actions-button\"\n [disabled]=\"canCompleteNoFormTask()\"\n (click)=\"onCompleteTask()\">\n {{'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.COMPLETE' | translate}}\n </button>\n </div>\n </mat-card-actions>\n </mat-card>\n </ng-template>\n </ng-template>\n\n <ng-template #taskFormButtons>\n <button mat-button id=\"adf-no-form-cancel-button\"\n *ngIf=\"showCancelButton\"\n (click)=\"onCancel()\">\n {{'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.CANCEL' | translate}}\n </button>\n <button mat-button data-automation-id=\"adf-task-form-claim-button\"\n *ngIf=\"isTaskClaimable()\"\n adf-claim-task\n [taskId]=\"taskId\"\n (success)=\"onClaimTask($event)\"\n (error)=\"onClaimTaskError($event)\">\n {{ 'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.CLAIM' | translate }}\n </button>\n <button mat-button data-automation-id=\"adf-task-form-unclaim-button\"\n *ngIf=\"isTaskClaimedByCandidateMember()\"\n adf-unclaim-task\n [taskId]=\"taskId\"\n (success)=\"onUnclaimTask($event)\"\n (error)=\"onUnclaimTaskError($event)\">\n {{ 'ADF_TASK_FORM.EMPTY_FORM.BUTTONS.UNCLAIM' | translate }}\n </button>\n </ng-template>\n</ng-container>\n<ng-template #loadingTemplate>\n <div class=\"adf-task-form-spinner-container\">\n <mat-spinner />\n </div>\n</ng-template>\n", styles: [".adf-task-form-container{overflow:hidden}.adf-task-form-actions{float:right;padding-right:25px;padding-bottom:25px}.adf-task-form-actions .mat-mdc-button{height:36px;border-radius:5px}.adf-task-form-actions .mdc-button__label{width:58px;height:20px;font:var(--mat-sys-title-small);color:var(--mat-sys-on-surface-variant)}.adf-task-form-spinner-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.adf-task-form-spinner-container mat-spinner{display:flex;max-height:100%;place-content:center;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: ClaimTaskDirective, selector: "[adf-claim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "directive", type: UnclaimTaskDirective, selector: "[adf-unclaim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "component", type: TaskStandaloneComponent, selector: "adf-task-standalone", inputs: ["taskName", "taskId", "isCompleted", "hasCompletePermission", "hideCancelButton"], outputs: ["cancel", "complete", "showAttachForm"] }, { kind: "component", type: FormComponent, selector: "adf-form", inputs: ["taskId", "nodeId", "formId", "formName", "saveMetadata", "data", "enableFixedSpacedForm"], outputs: ["formSaved", "formCompleted", "formContentClicked", "formLoaded", "formDataRefreshed"] }, { kind: "component", type: FormCustomOutcomesComponent, selector: "adf-form-custom-outcomes" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
6291
6241
  }
6292
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFormComponent, decorators: [{
6242
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFormComponent, decorators: [{
6293
6243
  type: Component,
6294
6244
  args: [{ selector: 'adf-task-form', imports: [
6295
6245
  CommonModule,
@@ -6434,10 +6384,10 @@ class AttachFormComponent {
6434
6384
  });
6435
6385
  }
6436
6386
  }
6437
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6438
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: AttachFormComponent, isStandalone: true, selector: "adf-attach-form", inputs: { taskId: "taskId", formKey: "formKey" }, outputs: { cancelAttachForm: "cancelAttachForm", success: "success", error: "error" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"adf-attach-form\">\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n <div class=\"adf-attache-form-message-container\">\n <mat-card-title class=\"mat-card-title\">\n <h4 class=\"adf-form-title\">{{ 'ADF_TASK_LIST.ATTACH_FORM.SELECT_FORM' | translate }}</h4>\n </mat-card-title>\n <div class=\"adf-attach-form-row\">\n <mat-form-field class=\"adf-grid-full-width\">\n <mat-select [formControl]=\"attachFormControl\" placeholder=\"{{ 'ADF_TASK_LIST.ATTACH_FORM.SELECT_OPTION' | translate }}\" id=\"form_id\" [(ngModel)]=\"selectedFormId\">\n <mat-option *ngFor=\"let form of forms\" [value]=\"form.id\">{{ form.name }}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <adf-form *ngIf=\"this.attachFormControl.valid\"\n [formId]=\"selectedFormId\"\n [readOnly]=\"true\"\n [showCompleteButton]=\"false\"\n [showRefreshButton]=\"false\"\n [showValidationIcon]=\"false\" />\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-attach-form-mat-card-actions\">\n <div>\n <button mat-button id=\"adf-attach-form-remove-button\" *ngIf=\"formKey\" (click)=\"onRemoveButtonClick()\">{{ 'ADF_TASK_LIST.ATTACH_FORM.REMOVE_FORM' | translate }}</button>\n </div>\n <div>\n <button mat-button id=\"adf-attach-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button id=\"adf-attach-form-attach-button\" [disabled]=\"disableSubmit\" (click)=\"onAttachFormButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n </div>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-attach-form .mat-mdc-form-field{width:100%}.adf-attach-form-row{display:flex;justify-content:space-between;margin:20px 0}.adf-attach-form .adf-attach-form-mat-card-actions{justify-content:space-between;margin-top:30px;text-align:right}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: FormComponent, selector: "adf-form", inputs: ["taskId", "nodeId", "formId", "formName", "saveMetadata", "data", "enableFixedSpacedForm"], outputs: ["formSaved", "formCompleted", "formContentClicked", "formLoaded", "formDataRefreshed"] }] }); }
6387
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6388
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: AttachFormComponent, isStandalone: true, selector: "adf-attach-form", inputs: { taskId: "taskId", formKey: "formKey" }, outputs: { cancelAttachForm: "cancelAttachForm", success: "success", error: "error" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"adf-attach-form\">\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n <div class=\"adf-attache-form-message-container\">\n <mat-card-title class=\"mat-card-title\">\n <h4 class=\"adf-form-title\">{{ 'ADF_TASK_LIST.ATTACH_FORM.SELECT_FORM' | translate }}</h4>\n </mat-card-title>\n <div class=\"adf-attach-form-row\">\n <mat-form-field class=\"adf-grid-full-width\">\n <mat-select [formControl]=\"attachFormControl\" placeholder=\"{{ 'ADF_TASK_LIST.ATTACH_FORM.SELECT_OPTION' | translate }}\" id=\"form_id\" [(ngModel)]=\"selectedFormId\">\n <mat-option *ngFor=\"let form of forms\" [value]=\"form.id\">{{ form.name }}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <adf-form *ngIf=\"this.attachFormControl.valid\"\n [formId]=\"selectedFormId\"\n [readOnly]=\"true\"\n [showCompleteButton]=\"false\"\n [showRefreshButton]=\"false\"\n [showValidationIcon]=\"false\" />\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-attach-form-mat-card-actions\">\n <div>\n <button mat-button id=\"adf-attach-form-remove-button\" *ngIf=\"formKey\" (click)=\"onRemoveButtonClick()\">{{ 'ADF_TASK_LIST.ATTACH_FORM.REMOVE_FORM' | translate }}</button>\n </div>\n <div>\n <button mat-button id=\"adf-attach-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button id=\"adf-attach-form-attach-button\" [disabled]=\"disableSubmit\" (click)=\"onAttachFormButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n </div>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-attach-form .mat-mdc-form-field{width:100%}.adf-attach-form-row{display:flex;justify-content:space-between;margin:20px 0}.adf-attach-form .adf-attach-form-mat-card-actions{justify-content:space-between;margin-top:30px;text-align:right}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: FormComponent, selector: "adf-form", inputs: ["taskId", "nodeId", "formId", "formName", "saveMetadata", "data", "enableFixedSpacedForm"], outputs: ["formSaved", "formCompleted", "formContentClicked", "formLoaded", "formDataRefreshed"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6439
6389
  }
6440
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachFormComponent, decorators: [{
6390
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachFormComponent, decorators: [{
6441
6391
  type: Component,
6442
6392
  args: [{ selector: 'adf-attach-form', imports: [CommonModule, MatCardModule, TranslatePipe, MatFormFieldModule, MatSelectModule, ReactiveFormsModule, MatButtonModule, FormComponent], template: "<div class=\"adf-attach-form\">\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n <div class=\"adf-attache-form-message-container\">\n <mat-card-title class=\"mat-card-title\">\n <h4 class=\"adf-form-title\">{{ 'ADF_TASK_LIST.ATTACH_FORM.SELECT_FORM' | translate }}</h4>\n </mat-card-title>\n <div class=\"adf-attach-form-row\">\n <mat-form-field class=\"adf-grid-full-width\">\n <mat-select [formControl]=\"attachFormControl\" placeholder=\"{{ 'ADF_TASK_LIST.ATTACH_FORM.SELECT_OPTION' | translate }}\" id=\"form_id\" [(ngModel)]=\"selectedFormId\">\n <mat-option *ngFor=\"let form of forms\" [value]=\"form.id\">{{ form.name }}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <adf-form *ngIf=\"this.attachFormControl.valid\"\n [formId]=\"selectedFormId\"\n [readOnly]=\"true\"\n [showCompleteButton]=\"false\"\n [showRefreshButton]=\"false\"\n [showValidationIcon]=\"false\" />\n </div>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-attach-form-mat-card-actions\">\n <div>\n <button mat-button id=\"adf-attach-form-remove-button\" *ngIf=\"formKey\" (click)=\"onRemoveButtonClick()\">{{ 'ADF_TASK_LIST.ATTACH_FORM.REMOVE_FORM' | translate }}</button>\n </div>\n <div>\n <button mat-button id=\"adf-attach-form-cancel-button\" (click)=\"onCancelButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}</button>\n <button mat-button id=\"adf-attach-form-attach-button\" [disabled]=\"disableSubmit\" (click)=\"onAttachFormButtonClick()\">{{ 'ADF_TASK_LIST.START_TASK.FORM.LABEL.ATTACHFORM' | translate }}</button>\n </div>\n </mat-card-actions>\n </mat-card>\n</div>\n", styles: [".adf-attach-form .mat-mdc-form-field{width:100%}.adf-attach-form-row{display:flex;justify-content:space-between;margin:20px 0}.adf-attach-form .adf-attach-form-mat-card-actions{justify-content:space-between;margin-top:30px;text-align:right}\n"] }]
6443
6393
  }], propDecorators: { taskId: [{
@@ -6538,10 +6488,10 @@ class ChecklistComponent {
6538
6488
  this.dialog.closeAll();
6539
6489
  this.taskName = '';
6540
6490
  }
6541
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ChecklistComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6542
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ChecklistComponent, isStandalone: true, selector: "adf-checklist", inputs: { taskId: "taskId", readOnly: "readOnly", assignee: "assignee" }, outputs: { checklistTaskCreated: "checklistTaskCreated", checklistTaskDeleted: "checklistTaskDeleted", error: "error" }, viewQueries: [{ propertyName: "addNewDialog", first: true, predicate: ["dialog"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"adf-checklist-control\">\n <mat-chip-listbox data-automation-id=\"checklist-label\">\n <span class=\"adf-activiti-label\">{{ 'ADF_TASK_LIST.DETAILS.LABELS.CHECKLIST' | translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{checklist?.length}}</mat-chip-option>\n </mat-chip-listbox>\n\n\n <button mat-icon-button *ngIf=\"!readOnly\" title=\"Add a checklist\"\n id=\"add-checklist\" class=\"adf-add-to-checklist-button\" (click)=\"showDialog()\">\n <mat-icon>add</mat-icon>\n </button>\n</div>\n\n<div class=\"adf-checklist-menu-container\" *ngIf=\"checklist?.length > 0\">\n <mat-chip-listbox class=\"mat-chip-list-stacked\">\n <mat-chip-option id=\"check-{{check.id}}\" class=\"adf-checklist-chip\" *ngFor=\"let check of checklist\"\n (removed)=\"delete(check.id)\">\n <span>{{check.name}}</span>\n <mat-icon *ngIf=\"!readOnly && !check.endDate\" id=\"remove-{{check.id}}\" matChipRemove>cancel\n </mat-icon>\n </mat-chip-option>\n </mat-chip-listbox>\n\n</div>\n<div *ngIf=\"checklist?.length === 0\" id=\"checklist-none-message\" class=\"adf-checklist-none-message\">\n {{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.NONE' | translate }}\n</div>\n\n<ng-template #dialog>\n <div class=\"adf-checklist-dialog\" id=\"checklist-dialog\">\n <h4 matDialogTitle id=\"add-checklist-title\">{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.TITLE' | translate }}</h4>\n <mat-dialog-content>\n <mat-form-field>\n <input matInput placeholder=\"{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.PLACEHOLDER' | translate }}\" [(ngModel)]=\"taskName\" id=\"checklist-name\"\n data-automation-id=\"checklist-name\">\n </mat-form-field>\n </mat-dialog-content>\n <mat-dialog-actions class=\"adf-checklist-dialog-actions\">\n <button mat-button type=\"button\" id=\"close-check-dialog\" (click)=\"cancel()\">{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.CANCEL-BUTTON' | translate | uppercase }}</button>\n <button mat-button type=\"button\" id=\"add-check\" (click)=\"add()\">{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.ADD-BUTTON' | translate | uppercase }}</button>\n </mat-dialog-actions>\n </div>\n</ng-template>\n", styles: [":host{width:100%}.adf-activiti-label{font-weight:bolder}.mat-mdc-form-field{width:100%}.adf-checklist-cancel-button{margin-top:-13px;margin-right:-13px;float:right}.adf-checklist-chip{outline:none}.adf-checklist-menu-container,.adf-checklist-none-message{margin-top:10px}.adf-checklist-control{display:flex;justify-content:space-between}.adf-checklist-control .adfactiviti-label{margin-top:6px;margin-right:10px}.adf-checklist-control .adf-add-to-checklist-button{float:right}.adf-checklist-dialog-actions{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: i4.MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }, { kind: "directive", type: i4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
6491
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChecklistComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6492
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ChecklistComponent, isStandalone: true, selector: "adf-checklist", inputs: { taskId: "taskId", readOnly: "readOnly", assignee: "assignee" }, outputs: { checklistTaskCreated: "checklistTaskCreated", checklistTaskDeleted: "checklistTaskDeleted", error: "error" }, viewQueries: [{ propertyName: "addNewDialog", first: true, predicate: ["dialog"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"adf-checklist-control\">\n <mat-chip-listbox data-automation-id=\"checklist-label\">\n <span class=\"adf-activiti-label\">{{ 'ADF_TASK_LIST.DETAILS.LABELS.CHECKLIST' | translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{checklist?.length}}</mat-chip-option>\n </mat-chip-listbox>\n\n\n <button mat-icon-button *ngIf=\"!readOnly\" title=\"Add a checklist\"\n id=\"add-checklist\" class=\"adf-add-to-checklist-button\" (click)=\"showDialog()\">\n <mat-icon>add</mat-icon>\n </button>\n</div>\n\n<div class=\"adf-checklist-menu-container\" *ngIf=\"checklist?.length > 0\">\n <mat-chip-listbox class=\"mat-chip-list-stacked\">\n <mat-chip-option id=\"check-{{check.id}}\" class=\"adf-checklist-chip\" *ngFor=\"let check of checklist\"\n (removed)=\"delete(check.id)\">\n <span>{{check.name}}</span>\n <mat-icon *ngIf=\"!readOnly && !check.endDate\" id=\"remove-{{check.id}}\" matChipRemove>cancel\n </mat-icon>\n </mat-chip-option>\n </mat-chip-listbox>\n\n</div>\n<div *ngIf=\"checklist?.length === 0\" id=\"checklist-none-message\" class=\"adf-checklist-none-message\">\n {{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.NONE' | translate }}\n</div>\n\n<ng-template #dialog>\n <div class=\"adf-checklist-dialog\" id=\"checklist-dialog\">\n <h4 matDialogTitle id=\"add-checklist-title\">{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.TITLE' | translate }}</h4>\n <mat-dialog-content>\n <mat-form-field>\n <input matInput placeholder=\"{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.PLACEHOLDER' | translate }}\" [(ngModel)]=\"taskName\" id=\"checklist-name\"\n data-automation-id=\"checklist-name\">\n </mat-form-field>\n </mat-dialog-content>\n <mat-dialog-actions class=\"adf-checklist-dialog-actions\">\n <button mat-button type=\"button\" id=\"close-check-dialog\" (click)=\"cancel()\">{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.CANCEL-BUTTON' | translate | uppercase }}</button>\n <button mat-button type=\"button\" id=\"add-check\" (click)=\"add()\">{{ 'ADF_TASK_LIST.DETAILS.CHECKLIST.DIALOG.ADD-BUTTON' | translate | uppercase }}</button>\n </mat-dialog-actions>\n </div>\n</ng-template>\n", styles: [":host{width:100%}.adf-activiti-label{font-weight:bolder}.mat-mdc-form-field{width:100%}.adf-checklist-cancel-button{margin-top:-13px;margin-right:-13px;float:right}.adf-checklist-chip{outline:none}.adf-checklist-menu-container,.adf-checklist-none-message{margin-top:10px}.adf-checklist-control{display:flex;justify-content:space-between}.adf-checklist-control .adfactiviti-label{margin-top:6px;margin-right:10px}.adf-checklist-control .adf-add-to-checklist-button{float:right}.adf-checklist-dialog-actions{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: i4.MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }, { kind: "directive", type: i4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6543
6493
  }
6544
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ChecklistComponent, decorators: [{
6494
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChecklistComponent, decorators: [{
6545
6495
  type: Component,
6546
6496
  args: [{ selector: 'adf-checklist', imports: [
6547
6497
  CommonModule,
@@ -6577,9 +6527,6 @@ var __decorate$4 = (this && this.__decorate) || function (decorators, target, ke
6577
6527
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6578
6528
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6579
6529
  };
6580
- var __metadata$4 = (this && this.__metadata) || function (k, v) {
6581
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
6582
- };
6583
6530
  class TaskFilterService {
6584
6531
  constructor() {
6585
6532
  this.apiService = inject(AlfrescoApiService);
@@ -6793,14 +6740,13 @@ class TaskFilterService {
6793
6740
  index
6794
6741
  });
6795
6742
  }
6796
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6797
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFilterService, providedIn: 'root' }); }
6743
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6744
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFilterService, providedIn: 'root' }); }
6798
6745
  }
6799
6746
  __decorate$4([
6800
- LazyApi((self) => new UserFiltersApi(self.apiService.getInstance())),
6801
- __metadata$4("design:type", UserFiltersApi)
6747
+ LazyApi((self) => new UserFiltersApi(self.apiService.getInstance()))
6802
6748
  ], TaskFilterService.prototype, "userFiltersApi", void 0);
6803
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFilterService, decorators: [{
6749
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFilterService, decorators: [{
6804
6750
  type: Injectable,
6805
6751
  args: [{
6806
6752
  providedIn: 'root'
@@ -7023,10 +6969,10 @@ class TaskFiltersComponent {
7023
6969
  this.selectFilter(this.filterParam);
7024
6970
  this.success.emit(taskFilters);
7025
6971
  }
7026
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7027
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskFiltersComponent, isStandalone: true, selector: "adf-task-filters", inputs: { filterParam: "filterParam", appId: "appId", appName: "appName", showIcon: "showIcon" }, outputs: { filterClicked: "filterClicked", filterSelected: "filterSelected", success: "success", error: "error" }, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let filter of filters\" class=\"adf-filters__entry\" [class.adf-active]=\"isActiveRoute(filter)\">\n <button\n (click)=\"onFilterClick(filter)\"\n [attr.aria-label]=\"filter.name | translate\"\n [id]=\"filter.id\"\n [attr.data-automation-id]=\"filter.name + '_filter'\"\n mat-button\n class=\"adf-filter-action-button adf-full-width\"\n >\n <ng-container *ngIf=\"showIcon\">\n <mat-icon data-automation-id=\"adf-filter-icon\" aria-hidden=\"true\">{{ getFilterIcon(filter.icon) }}</mat-icon>\n </ng-container>\n <span data-automation-id=\"adf-filter-label\" class=\"adf-filter-action-button__label\">{{ filter.name | translate }}</span>\n </button>\n</div>\n", styles: ["adf-task-filters .adf-filters__entry:has(.adf-filter-action-button){padding:0;width:100%;cursor:pointer;font:var(--mat-sys-body-medium)}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-full-width{display:flex;width:100%}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button{align-items:center;height:32px;justify-content:flex-start}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button .adf-filter-action-button__label{padding-left:20px;margin:0 8px;color:var(--mat-sys-on-surface)}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button).adf-active .adf-filter-action-button__label{color:var(--mat-sys-primary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
6972
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6973
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskFiltersComponent, isStandalone: true, selector: "adf-task-filters", inputs: { filterParam: "filterParam", appId: "appId", appName: "appName", showIcon: "showIcon" }, outputs: { filterClicked: "filterClicked", filterSelected: "filterSelected", success: "success", error: "error" }, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let filter of filters\" class=\"adf-filters__entry\" [class.adf-active]=\"isActiveRoute(filter)\">\n <button\n (click)=\"onFilterClick(filter)\"\n [attr.aria-label]=\"filter.name | translate\"\n [id]=\"filter.id\"\n [attr.data-automation-id]=\"filter.name + '_filter'\"\n mat-button\n class=\"adf-filter-action-button adf-full-width\"\n >\n <ng-container *ngIf=\"showIcon\">\n <mat-icon data-automation-id=\"adf-filter-icon\" aria-hidden=\"true\">{{ getFilterIcon(filter.icon) }}</mat-icon>\n </ng-container>\n <span data-automation-id=\"adf-filter-label\" class=\"adf-filter-action-button__label\">{{ filter.name | translate }}</span>\n </button>\n</div>\n", styles: ["adf-task-filters .adf-filters__entry:has(.adf-filter-action-button){padding:0;width:100%;cursor:pointer;font:var(--mat-sys-body-medium)}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-full-width{display:flex;width:100%}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button{align-items:center;height:32px;justify-content:flex-start}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button .adf-filter-action-button__label{padding-left:20px;margin:0 8px;color:var(--mat-sys-on-surface)}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button).adf-active .adf-filter-action-button__label{color:var(--mat-sys-primary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
7028
6974
  }
7029
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskFiltersComponent, decorators: [{
6975
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskFiltersComponent, decorators: [{
7030
6976
  type: Component,
7031
6977
  args: [{ selector: 'adf-task-filters', imports: [CommonModule, TranslatePipe, MatButtonModule, MatIconModule], encapsulation: ViewEncapsulation.None, template: "<div *ngFor=\"let filter of filters\" class=\"adf-filters__entry\" [class.adf-active]=\"isActiveRoute(filter)\">\n <button\n (click)=\"onFilterClick(filter)\"\n [attr.aria-label]=\"filter.name | translate\"\n [id]=\"filter.id\"\n [attr.data-automation-id]=\"filter.name + '_filter'\"\n mat-button\n class=\"adf-filter-action-button adf-full-width\"\n >\n <ng-container *ngIf=\"showIcon\">\n <mat-icon data-automation-id=\"adf-filter-icon\" aria-hidden=\"true\">{{ getFilterIcon(filter.icon) }}</mat-icon>\n </ng-container>\n <span data-automation-id=\"adf-filter-label\" class=\"adf-filter-action-button__label\">{{ filter.name | translate }}</span>\n </button>\n</div>\n", styles: ["adf-task-filters .adf-filters__entry:has(.adf-filter-action-button){padding:0;width:100%;cursor:pointer;font:var(--mat-sys-body-medium)}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-full-width{display:flex;width:100%}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button{align-items:center;height:32px;justify-content:flex-start}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button) .adf-filter-action-button .adf-filter-action-button__label{padding-left:20px;margin:0 8px;color:var(--mat-sys-on-surface)}adf-task-filters .adf-filters__entry:has(.adf-filter-action-button).adf-active .adf-filter-action-button__label{color:var(--mat-sys-primary)}\n"] }]
7032
6978
  }], propDecorators: { filterParam: [{
@@ -7353,10 +7299,10 @@ class TaskListComponent extends DataTableSchema {
7353
7299
  includeProcessInstance: this.includeProcessInstance
7354
7300
  });
7355
7301
  }
7356
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7357
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskListComponent, isStandalone: true, selector: "adf-tasklist", inputs: { appId: "appId", processInstanceId: "processInstanceId", processDefinitionId: "processDefinitionId", state: "state", assignment: "assignment", sort: "sort", name: "name", landingTaskId: "landingTaskId", data: "data", selectionMode: "selectionMode", multiselect: "multiselect", selectFirstRow: "selectFirstRow", taskId: "taskId", includeProcessInstance: "includeProcessInstance", start: "start", showContextMenu: "showContextMenu", stickyHeader: "stickyHeader", isResizingEnabled: "isResizingEnabled", blurOnResize: "blurOnResize", page: "page", size: "size", dueAfter: "dueAfter", dueBefore: "dueBefore" }, outputs: { showRowContextMenu: "showRowContextMenu", rowClick: "rowClick", rowsSelected: "rowsSelected", success: "success", error: "error" }, queries: [{ propertyName: "customEmptyContent", first: true, predicate: CustomEmptyContentTemplateDirective, descendants: true }, { propertyName: "customLoadingContent", first: true, predicate: CustomLoadingContentTemplateDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<adf-datatable\n *ngIf=\"requestNode; else noMessagesTemplate\"\n [data]=\"data\"\n [rows]=\"rows\"\n [columns]=\"columns\"\n [sorting]=\"sorting\"\n [loading]=\"isLoading\"\n [isResizingEnabled]=\"isResizingEnabled\"\n [blurOnResize]=\"blurOnResize\"\n [stickyHeader]=\"stickyHeader\"\n [multiselect]=\"multiselect\"\n [selectionMode]=\"selectionMode\"\n [contextMenu]=\"showContextMenu\"\n (showRowContextMenu)=\"onShowRowContextMenu($event)\"\n (row-select)=\"onRowSelect($any($event))\"\n (row-unselect)=\"onRowUnselect($any($event))\"\n (rowClick)=\"onRowClick($any($event))\"\n (row-keyup)=\"onRowKeyUp($any($event))\"\n>\n <adf-loading-content-template>\n <ng-template>\n <!--Add your custom loading template here-->\n <mat-progress-spinner *ngIf=\"!customLoadingContent\" class=\"adf-task-list-loading-margin\" mode=\"indeterminate\" />\n <ng-content select=\"adf-custom-loading-content-template\" />\n </ng-template>\n </adf-loading-content-template>\n <adf-no-content-template>\n <ng-template>\n <adf-empty-content\n *ngIf=\"!customEmptyContent\"\n icon=\"assignment\"\n [title]=\"'ADF_TASK_LIST.LIST.MESSAGES.TITLE' | translate\"\n [subtitle]=\"'ADF_TASK_LIST.LIST.MESSAGES.SUBTITLE' | translate\"\n />\n <ng-content select=\"adf-custom-empty-content-template\" />\n </ng-template>\n </adf-no-content-template>\n</adf-datatable>\n\n<ng-template #noMessagesTemplate>\n <div>{{ 'ADF_TASK_LIST.FILTERS.MESSAGES.NONE' | translate }}</div>\n</ng-template>\n", styles: [".adf-task-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }] }); }
7302
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7303
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskListComponent, isStandalone: true, selector: "adf-tasklist", inputs: { appId: "appId", processInstanceId: "processInstanceId", processDefinitionId: "processDefinitionId", state: "state", assignment: "assignment", sort: "sort", name: "name", landingTaskId: "landingTaskId", data: "data", selectionMode: "selectionMode", multiselect: "multiselect", selectFirstRow: "selectFirstRow", taskId: "taskId", includeProcessInstance: "includeProcessInstance", start: "start", showContextMenu: "showContextMenu", stickyHeader: "stickyHeader", isResizingEnabled: "isResizingEnabled", blurOnResize: "blurOnResize", page: "page", size: "size", dueAfter: "dueAfter", dueBefore: "dueBefore" }, outputs: { showRowContextMenu: "showRowContextMenu", rowClick: "rowClick", rowsSelected: "rowsSelected", success: "success", error: "error" }, queries: [{ propertyName: "customEmptyContent", first: true, predicate: CustomEmptyContentTemplateDirective, descendants: true }, { propertyName: "customLoadingContent", first: true, predicate: CustomLoadingContentTemplateDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<adf-datatable\n *ngIf=\"requestNode; else noMessagesTemplate\"\n [data]=\"data\"\n [rows]=\"rows\"\n [columns]=\"columns\"\n [sorting]=\"sorting\"\n [loading]=\"isLoading\"\n [isResizingEnabled]=\"isResizingEnabled\"\n [blurOnResize]=\"blurOnResize\"\n [stickyHeader]=\"stickyHeader\"\n [multiselect]=\"multiselect\"\n [selectionMode]=\"selectionMode\"\n [contextMenu]=\"showContextMenu\"\n (showRowContextMenu)=\"onShowRowContextMenu($event)\"\n (row-select)=\"onRowSelect($any($event))\"\n (row-unselect)=\"onRowUnselect($any($event))\"\n (rowClick)=\"onRowClick($any($event))\"\n (row-keyup)=\"onRowKeyUp($any($event))\"\n>\n <adf-loading-content-template>\n <ng-template>\n <!--Add your custom loading template here-->\n <mat-progress-spinner *ngIf=\"!customLoadingContent\" class=\"adf-task-list-loading-margin\" mode=\"indeterminate\" />\n <ng-content select=\"adf-custom-loading-content-template\" />\n </ng-template>\n </adf-loading-content-template>\n <adf-no-content-template>\n <ng-template>\n <adf-empty-content\n *ngIf=\"!customEmptyContent\"\n icon=\"assignment\"\n [title]=\"'ADF_TASK_LIST.LIST.MESSAGES.TITLE' | translate\"\n [subtitle]=\"'ADF_TASK_LIST.LIST.MESSAGES.SUBTITLE' | translate\"\n />\n <ng-content select=\"adf-custom-empty-content-template\" />\n </ng-template>\n </adf-no-content-template>\n</adf-datatable>\n\n<ng-template #noMessagesTemplate>\n <div>{{ 'ADF_TASK_LIST.FILTERS.MESSAGES.NONE' | translate }}</div>\n</ng-template>\n", styles: [".adf-task-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
7358
7304
  }
7359
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListComponent, decorators: [{
7305
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskListComponent, decorators: [{
7360
7306
  type: Component,
7361
7307
  args: [{ selector: 'adf-tasklist', imports: [
7362
7308
  CommonModule,
@@ -7501,10 +7447,10 @@ class PeopleListComponent {
7501
7447
  const action = args.action;
7502
7448
  this.clickAction.emit({ type: action.name, value: args.row.obj });
7503
7449
  }
7504
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7505
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: PeopleListComponent, isStandalone: true, selector: "adf-people-list", inputs: { users: "users", actions: "actions" }, outputs: { clickRow: "clickRow", clickAction: "clickAction" }, queries: [{ propertyName: "columnList", first: true, predicate: DataColumnListComponent, descendants: true }], viewQueries: [{ propertyName: "peopleDataTable", first: true, predicate: ["dataTable"], descendants: true, static: true }], ngImport: i0, template: "<adf-datatable\n #dataTable\n class=\"adf-task-people-list\"\n [rows]=\"users\"\n [actions]=\"hasActions()\"\n [showHeader]=\"showHeader\"\n (rowClick)=\"selectUser($event)\"\n (rowDblClick)=\"selectUser($event)\"\n (showRowActionsMenu)=\"onShowRowActionsMenu($event)\"\n (executeRowAction)=\"onExecuteRowAction($event)\" />\n", styles: [".adf-task-people-list .adf-datatable-list{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }] }); }
7450
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7451
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: PeopleListComponent, isStandalone: true, selector: "adf-people-list", inputs: { users: "users", actions: "actions" }, outputs: { clickRow: "clickRow", clickAction: "clickAction" }, queries: [{ propertyName: "columnList", first: true, predicate: DataColumnListComponent, descendants: true }], viewQueries: [{ propertyName: "peopleDataTable", first: true, predicate: ["dataTable"], descendants: true, static: true }], ngImport: i0, template: "<adf-datatable\n #dataTable\n class=\"adf-task-people-list\"\n [rows]=\"users\"\n [actions]=\"hasActions()\"\n [showHeader]=\"showHeader\"\n (rowClick)=\"selectUser($event)\"\n (rowDblClick)=\"selectUser($event)\"\n (showRowActionsMenu)=\"onShowRowActionsMenu($event)\"\n (executeRowAction)=\"onExecuteRowAction($event)\" />\n", styles: [".adf-task-people-list .adf-datatable-list{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }] }); }
7506
7452
  }
7507
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleListComponent, decorators: [{
7453
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleListComponent, decorators: [{
7508
7454
  type: Component,
7509
7455
  args: [{ selector: 'adf-people-list', imports: [CommonModule, DataTableComponent], template: "<adf-datatable\n #dataTable\n class=\"adf-task-people-list\"\n [rows]=\"users\"\n [actions]=\"hasActions()\"\n [showHeader]=\"showHeader\"\n (rowClick)=\"selectUser($event)\"\n (rowDblClick)=\"selectUser($event)\"\n (showRowActionsMenu)=\"onShowRowActionsMenu($event)\"\n (executeRowAction)=\"onExecuteRowAction($event)\" />\n", styles: [".adf-task-people-list .adf-datatable-list{width:100%}\n"] }]
7510
7456
  }], propDecorators: { columnList: [{
@@ -7573,10 +7519,10 @@ class PeopleSearchFieldComponent {
7573
7519
  lastName = lastName !== null && lastName !== '' ? lastName[0] : '';
7574
7520
  return this.getDisplayUser(firstName, lastName, '');
7575
7521
  }
7576
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleSearchFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7577
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: PeopleSearchFieldComponent, isStandalone: true, selector: "adf-people-search-field", inputs: { performSearch: "performSearch", placeholder: "placeholder" }, outputs: { rowClick: "rowClick" }, host: { classAttribute: "adf-people-search-field" }, ngImport: i0, template: "<mat-form-field class=\"adf-search-text-container\">\n <input\n matInput\n placeholder=\"{{ searchPlaceholder }}\"\n type=\"text\"\n id=\"userSearchText\"\n [value]=\"\"\n [formControl]=\"searchUser\"\n data-automation-id=\"adf-people-search-input\">\n</mat-form-field>\n<ng-container *ngIf=\"users$ | async; let users\">\n <div class=\"adf-search-list-container\" id=\"search-people-list\" *ngIf=\"users.length > 0\">\n <adf-people-list [users]=\"users\" (clickRow)=\"onRowClick($event)\">\n <data-columns>\n <data-column key=\"firstName\">\n <ng-template let-entry=\"$implicit\">\n <div *ngIf=\"!entry.row.obj.pictureId\" class=\"adf-people-pic\">\n {{getInitialUserName(entry.row.obj.firstName, entry.row.obj.lastName)}}</div>\n <div>\n <img [alt]=\"getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ')\" *ngIf=\"entry.row.obj.pictureId\" class=\"adf-people-img\"\n [src]=\"peopleProcessService.getUserImage(entry.row.obj.id.toString())\"/>\n </div>\n </ng-template>\n </data-column>\n <data-column key=\"email\" class=\"adf-full-width\">\n <ng-template let-entry=\"$implicit\">\n <div [attr.data-automation-id]=\"'adf-people-full-name-'+ getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, '-')\" class=\"adf-people-full-name\">{{ getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ') }}</div>\n </ng-template>\n </data-column>\n </data-columns>\n </adf-people-list>\n </div>\n</ng-container>\n", styles: [".adf-people-search-field,.adf-people-search-field .adf-search-text-container{width:100%}.adf-people-search-field .adf-search-text-container input{line-height:normal}.adf-people-search-field .adf-search-list-container{max-height:152px;width:100%;overflow-y:auto}.adf-people-search-field adf-people-list ::ng-deep adf-datatable ::ng-deep thead{display:none}.adf-people-search-field .adf-people-pic{background:var(--mat-sys-primary);width:30px;padding:10px 5px;border-radius:90%;color:var(--mat-sys-on-primary);text-align:center;font:var(--mat-sys-label-large);text-transform:uppercase;vertical-align:text-bottom}.adf-people-search-field .adf-people-img{border-radius:90%;width:40px;height:40px;vertical-align:middle}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: PeopleListComponent, selector: "adf-people-list", inputs: ["users", "actions"], outputs: ["clickRow", "clickAction"] }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }], encapsulation: i0.ViewEncapsulation.None }); }
7522
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleSearchFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7523
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: PeopleSearchFieldComponent, isStandalone: true, selector: "adf-people-search-field", inputs: { performSearch: "performSearch", placeholder: "placeholder" }, outputs: { rowClick: "rowClick" }, host: { classAttribute: "adf-people-search-field" }, ngImport: i0, template: "<mat-form-field class=\"adf-search-text-container\">\n <input\n matInput\n placeholder=\"{{ searchPlaceholder }}\"\n type=\"text\"\n id=\"userSearchText\"\n [value]=\"\"\n [formControl]=\"searchUser\"\n data-automation-id=\"adf-people-search-input\">\n</mat-form-field>\n<ng-container *ngIf=\"users$ | async; let users\">\n <div class=\"adf-search-list-container\" id=\"search-people-list\" *ngIf=\"users.length > 0\">\n <adf-people-list [users]=\"users\" (clickRow)=\"onRowClick($event)\">\n <data-columns>\n <data-column key=\"firstName\">\n <ng-template let-entry=\"$implicit\">\n <div *ngIf=\"!entry.row.obj.pictureId\" class=\"adf-people-pic\">\n {{getInitialUserName(entry.row.obj.firstName, entry.row.obj.lastName)}}</div>\n <div>\n <img [alt]=\"getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ')\" *ngIf=\"entry.row.obj.pictureId\" class=\"adf-people-img\"\n [src]=\"peopleProcessService.getUserImage(entry.row.obj.id.toString())\"/>\n </div>\n </ng-template>\n </data-column>\n <data-column key=\"email\" class=\"adf-full-width\">\n <ng-template let-entry=\"$implicit\">\n <div [attr.data-automation-id]=\"'adf-people-full-name-'+ getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, '-')\" class=\"adf-people-full-name\">{{ getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ') }}</div>\n </ng-template>\n </data-column>\n </data-columns>\n </adf-people-list>\n </div>\n</ng-container>\n", styles: [".adf-people-search-field,.adf-people-search-field .adf-search-text-container{width:100%}.adf-people-search-field .adf-search-text-container input{line-height:normal}.adf-people-search-field .adf-search-list-container{max-height:152px;width:100%;overflow-y:auto}.adf-people-search-field adf-people-list ::ng-deep adf-datatable ::ng-deep thead{display:none}.adf-people-search-field .adf-people-pic{background:var(--mat-sys-primary);width:30px;padding:10px 5px;border-radius:90%;color:var(--mat-sys-on-primary);text-align:center;font:var(--mat-sys-label-large);text-transform:uppercase;vertical-align:text-bottom}.adf-people-search-field .adf-people-img{border-radius:90%;width:40px;height:40px;vertical-align:middle}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: PeopleListComponent, selector: "adf-people-list", inputs: ["users", "actions"], outputs: ["clickRow", "clickAction"] }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None }); }
7578
7524
  }
7579
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleSearchFieldComponent, decorators: [{
7525
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleSearchFieldComponent, decorators: [{
7580
7526
  type: Component,
7581
7527
  args: [{ selector: 'adf-people-search-field', imports: [
7582
7528
  CommonModule,
@@ -7645,10 +7591,10 @@ class PeopleSearchComponent {
7645
7591
  this.searchPeople.emit(event);
7646
7592
  return this.filteredResults$;
7647
7593
  }
7648
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7649
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: PeopleSearchComponent, isStandalone: true, selector: "adf-people-search", inputs: { headerTitle: "headerTitle", actionLabel: "actionLabel", results: "results" }, outputs: { searchPeople: "searchPeople", success: "success", closeSearch: "closeSearch" }, host: { classAttribute: "adf-people-search" }, ngImport: i0, template: "<div class=\"adf-search-text-header\" *ngIf=\"headerTitle\">\n {{headerTitle | translate}}\n</div>\n\n<adf-people-search-field [performSearch]=\"performSearch\" (rowClick)=\"onRowClick($event)\" />\n\n<div class=\"search-list-action-container\">\n <button mat-button type=\"button\" id=\"close-people-search\" (click)=\"closeSearchList()\">\n {{'ADF_TASK_LIST.PEOPLE.DIALOG_CLOSE' | translate }}\n </button>\n <button mat-button type=\"button\" id=\"add-people\" (click)=\"involveUserAndClose()\">\n {{actionLabel | translate}}\n </button>\n</div>\n", styles: [".adf-people-search{width:100%}.adf-people-search .adf-activiti-label{font-weight:bolder}.adf-people-search .adf-fix-element-user-list{padding:0}.adf-people-search .adf-search-text-header{font-weight:700;opacity:.54}.adf-people-search .adf-search-list-action-container{border-top:1px solid var(--mat-sys-outline-variant);text-align:right;padding:5px 0;margin-top:5px}.adf-people-search .adf-search-list-action-container>button{color:var(--mat-sys-on-surface-variant);font:var(--mat-sys-label-large)}.adf-people-search .adf-search-list-action-container>button:hover{color:var(--mat-sys-primary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: PeopleSearchFieldComponent, selector: "adf-people-search-field", inputs: ["performSearch", "placeholder"], outputs: ["rowClick"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
7594
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7595
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: PeopleSearchComponent, isStandalone: true, selector: "adf-people-search", inputs: { headerTitle: "headerTitle", actionLabel: "actionLabel", results: "results" }, outputs: { searchPeople: "searchPeople", success: "success", closeSearch: "closeSearch" }, host: { classAttribute: "adf-people-search" }, ngImport: i0, template: "<div class=\"adf-search-text-header\" *ngIf=\"headerTitle\">\n {{headerTitle | translate}}\n</div>\n\n<adf-people-search-field [performSearch]=\"performSearch\" (rowClick)=\"onRowClick($event)\" />\n\n<div class=\"search-list-action-container\">\n <button mat-button type=\"button\" id=\"close-people-search\" (click)=\"closeSearchList()\">\n {{'ADF_TASK_LIST.PEOPLE.DIALOG_CLOSE' | translate }}\n </button>\n <button mat-button type=\"button\" id=\"add-people\" (click)=\"involveUserAndClose()\">\n {{actionLabel | translate}}\n </button>\n</div>\n", styles: [".adf-people-search{width:100%}.adf-people-search .adf-activiti-label{font-weight:bolder}.adf-people-search .adf-fix-element-user-list{padding:0}.adf-people-search .adf-search-text-header{font-weight:700;opacity:.54}.adf-people-search .adf-search-list-action-container{border-top:1px solid var(--mat-sys-outline-variant);text-align:right;padding:5px 0;margin-top:5px}.adf-people-search .adf-search-list-action-container>button{color:var(--mat-sys-on-surface-variant);font:var(--mat-sys-label-large)}.adf-people-search .adf-search-list-action-container>button:hover{color:var(--mat-sys-primary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PeopleSearchFieldComponent, selector: "adf-people-search-field", inputs: ["performSearch", "placeholder"], outputs: ["rowClick"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
7650
7596
  }
7651
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleSearchComponent, decorators: [{
7597
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleSearchComponent, decorators: [{
7652
7598
  type: Component,
7653
7599
  args: [{ selector: 'adf-people-search', imports: [CommonModule, TranslatePipe, PeopleSearchFieldComponent, MatButtonModule], host: {
7654
7600
  class: 'adf-people-search'
@@ -7748,10 +7694,10 @@ class PeopleComponent {
7748
7694
  onCloseSearch() {
7749
7695
  this.showAssignment = false;
7750
7696
  }
7751
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7752
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: PeopleComponent, isStandalone: true, selector: "adf-people", inputs: { people: "people", taskId: "taskId", readOnly: "readOnly" }, outputs: { error: "error" }, viewQueries: [{ propertyName: "peopleSearch", first: true, predicate: ["peopleSearch"], descendants: true }], ngImport: i0, template: "<mat-card appearance=\"outlined\" class=\"adf-assignment-top-container\">\n <div mat-card-content class=\"adf-assignment-top-container-content\">\n <div class=\"assignment-header\">\n <div *ngIf=\"hasPeople()\" class=\"adf-assignment-count\" id=\"people-title\">\n {{ 'ADF_TASK_LIST.DETAILS.LABELS.PEOPLE' | translate }} {{ ' (' + people.length + ')' }}\n </div>\n <div *ngIf=\"!hasPeople()\" class=\"adf-assignment-count\" id=\"no-people-label\">\n {{ 'ADF_TASK_LIST.DETAILS.PEOPLE.NONE' | translate }}\n </div>\n <div *ngIf=\"isEditMode()\" class=\"adf-add-people\" (click)=\"onAddAssignment()\" role=\"button\" tabindex=\"0\" (keyup.enter)=\"onAddAssignment()\">\n <mat-icon class=\"adf-add-person-icon\">person_add</mat-icon>\n </div>\n </div>\n <div class=\"adf-assignment-container\" *ngIf=\"showAssignment\">\n <adf-people-search\n #peopleSearch\n [headerTitle]=\"'ADF_TASK_LIST.DETAILS.LABELS.ADD_PEOPLE'\"\n [actionLabel]=\"'ADF_TASK_LIST.PEOPLE.ADD_USER'\"\n (searchPeople)=\"searchUser($event)\"\n (success)=\"involveUser($event)\"\n (closeSearch)=\"onCloseSearch()\"\n [results]=\"peopleSearch$\"\n />\n </div>\n <div class=\"adf-assignment-list-container\" id=\"assignment-people-list\" *ngIf=\"hasPeople()\">\n <adf-people-list [users]=\"people\" [actions]=\"isEditMode()\" (clickAction)=\"onClickAction($event)\">\n <data-columns>\n <data-column key=\"firstName\">\n <ng-template let-entry=\"$implicit\">\n <div *ngIf=\"!entry.row.obj.pictureId\" class=\"adf-people-search-people-pic\">\n {{ getInitialUserName(entry.row.obj.firstName, entry.row.obj.lastName) }}\n </div>\n <div>\n <img\n [alt]=\"getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ')\"\n *ngIf=\"entry.row.obj.pictureId\"\n class=\"adf-people-img\"\n [src]=\"peopleProcessService.getUserImage(entry.row.obj.id.toString())\"\n />\n </div>\n </ng-template>\n </data-column>\n <data-column key=\"email\" class=\"adf-full-width\">\n <ng-template let-entry=\"$implicit\">\n <div class=\"adf-people-user-info\">\n <div\n [attr.data-automation-id]=\"\n 'adf-people-full-name-' + getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, '-')\n \"\n class=\"adf-people-full-name\"\n >\n {{ getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ') }}\n </div>\n <div\n [attr.data-automation-id]=\"\n 'adf-people-email-' + getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, '-')\n \"\n class=\"adf-people-email\"\n >\n {{ entry.row.obj.email }}\n </div>\n </div>\n </ng-template>\n </data-column>\n </data-columns>\n </adf-people-list>\n </div>\n </div>\n</mat-card>\n", styles: [".adf-assignment-header{border-bottom:1px solid var(--mat-sys-outline-variant);padding:6px 20px}.adf-assignment-count{float:left;padding:10px 0;font-weight:bolder;opacity:.54;margin:13px}.adf-add-people{margin:13px;float:right;padding:8px;height:26px;cursor:pointer}.adf-add-people:hover{color:var(--mat-sys-primary)}.adf-assignment-top-container.mat-mdc-card{border-top:1px solid var(--mat-sys-outline-variant);margin:0;padding:0;display:flex;flex-flow:row wrap;align-items:stretch}.adf-assignment-top-container-content{display:flex;flex-flow:column;align-items:stretch;flex:1 0 auto;max-width:100%}.adf-assignment-container{padding:10px 20px;border-bottom:1px solid var(--mat-sys-outline-variant);max-width:100%}.adf-assignment-list-container{padding:0}adf-people-list adf-datatable thead{display:none}adf-people-list adf-datatable .adf-datatable-cell{margin:13px}adf-people-list adf-datatable .adf-datatable .adf-datatable-cell .adf-cell-container{flex-direction:column;align-items:left}adf-people-list adf-datatable .adf-people-email{opacity:.54}.adf-people-img{border-radius:90%;width:40px;height:40px;vertical-align:middle}.adf-people-search-people-pic{background:var(--mat-sys-primary);width:30px;padding:10px 5px;border-radius:100px;color:var(--mat-sys-on-primary);text-align:center;font:var(--mat-sys-label-large);text-transform:uppercase;vertical-align:text-bottom}.adf-people-user-info{flex-direction:column;text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: PeopleSearchComponent, selector: "adf-people-search", inputs: ["headerTitle", "actionLabel", "results"], outputs: ["searchPeople", "success", "closeSearch"] }, { kind: "component", type: PeopleListComponent, selector: "adf-people-list", inputs: ["users", "actions"], outputs: ["clickRow", "clickAction"] }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }], encapsulation: i0.ViewEncapsulation.None }); }
7697
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7698
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: PeopleComponent, isStandalone: true, selector: "adf-people", inputs: { people: "people", taskId: "taskId", readOnly: "readOnly" }, outputs: { error: "error" }, viewQueries: [{ propertyName: "peopleSearch", first: true, predicate: ["peopleSearch"], descendants: true }], ngImport: i0, template: "<mat-card appearance=\"outlined\" class=\"adf-assignment-top-container\">\n <div mat-card-content class=\"adf-assignment-top-container-content\">\n <div class=\"assignment-header\">\n <div *ngIf=\"hasPeople()\" class=\"adf-assignment-count\" id=\"people-title\">\n {{ 'ADF_TASK_LIST.DETAILS.LABELS.PEOPLE' | translate }} {{ ' (' + people.length + ')' }}\n </div>\n <div *ngIf=\"!hasPeople()\" class=\"adf-assignment-count\" id=\"no-people-label\">\n {{ 'ADF_TASK_LIST.DETAILS.PEOPLE.NONE' | translate }}\n </div>\n <div *ngIf=\"isEditMode()\" class=\"adf-add-people\" (click)=\"onAddAssignment()\" role=\"button\" tabindex=\"0\" (keyup.enter)=\"onAddAssignment()\">\n <mat-icon class=\"adf-add-person-icon\">person_add</mat-icon>\n </div>\n </div>\n <div class=\"adf-assignment-container\" *ngIf=\"showAssignment\">\n <adf-people-search\n #peopleSearch\n [headerTitle]=\"'ADF_TASK_LIST.DETAILS.LABELS.ADD_PEOPLE'\"\n [actionLabel]=\"'ADF_TASK_LIST.PEOPLE.ADD_USER'\"\n (searchPeople)=\"searchUser($event)\"\n (success)=\"involveUser($event)\"\n (closeSearch)=\"onCloseSearch()\"\n [results]=\"peopleSearch$\"\n />\n </div>\n <div class=\"adf-assignment-list-container\" id=\"assignment-people-list\" *ngIf=\"hasPeople()\">\n <adf-people-list [users]=\"people\" [actions]=\"isEditMode()\" (clickAction)=\"onClickAction($event)\">\n <data-columns>\n <data-column key=\"firstName\">\n <ng-template let-entry=\"$implicit\">\n <div *ngIf=\"!entry.row.obj.pictureId\" class=\"adf-people-search-people-pic\">\n {{ getInitialUserName(entry.row.obj.firstName, entry.row.obj.lastName) }}\n </div>\n <div>\n <img\n [alt]=\"getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ')\"\n *ngIf=\"entry.row.obj.pictureId\"\n class=\"adf-people-img\"\n [src]=\"peopleProcessService.getUserImage(entry.row.obj.id.toString())\"\n />\n </div>\n </ng-template>\n </data-column>\n <data-column key=\"email\" class=\"adf-full-width\">\n <ng-template let-entry=\"$implicit\">\n <div class=\"adf-people-user-info\">\n <div\n [attr.data-automation-id]=\"\n 'adf-people-full-name-' + getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, '-')\n \"\n class=\"adf-people-full-name\"\n >\n {{ getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, ' ') }}\n </div>\n <div\n [attr.data-automation-id]=\"\n 'adf-people-email-' + getDisplayUser(entry.row.obj.firstName, entry.row.obj.lastName, '-')\n \"\n class=\"adf-people-email\"\n >\n {{ entry.row.obj.email }}\n </div>\n </div>\n </ng-template>\n </data-column>\n </data-columns>\n </adf-people-list>\n </div>\n </div>\n</mat-card>\n", styles: [".adf-assignment-header{border-bottom:1px solid var(--mat-sys-outline-variant);padding:6px 20px}.adf-assignment-count{float:left;padding:10px 0;font-weight:bolder;opacity:.54;margin:13px}.adf-add-people{margin:13px;float:right;padding:8px;height:26px;cursor:pointer}.adf-add-people:hover{color:var(--mat-sys-primary)}.adf-assignment-top-container.mat-mdc-card{border-top:1px solid var(--mat-sys-outline-variant);margin:0;padding:0;display:flex;flex-flow:row wrap;align-items:stretch}.adf-assignment-top-container-content{display:flex;flex-flow:column;align-items:stretch;flex:1 0 auto;max-width:100%}.adf-assignment-container{padding:10px 20px;border-bottom:1px solid var(--mat-sys-outline-variant);max-width:100%}.adf-assignment-list-container{padding:0}adf-people-list adf-datatable thead{display:none}adf-people-list adf-datatable .adf-datatable-cell{margin:13px}adf-people-list adf-datatable .adf-datatable .adf-datatable-cell .adf-cell-container{flex-direction:column;align-items:left}adf-people-list adf-datatable .adf-people-email{opacity:.54}.adf-people-img{border-radius:90%;width:40px;height:40px;vertical-align:middle}.adf-people-search-people-pic{background:var(--mat-sys-primary);width:30px;padding:10px 5px;border-radius:100px;color:var(--mat-sys-on-primary);text-align:center;font:var(--mat-sys-label-large);text-transform:uppercase;vertical-align:text-bottom}.adf-people-user-info{flex-direction:column;text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: PeopleSearchComponent, selector: "adf-people-search", inputs: ["headerTitle", "actionLabel", "results"], outputs: ["searchPeople", "success", "closeSearch"] }, { kind: "component", type: PeopleListComponent, selector: "adf-people-list", inputs: ["users", "actions"], outputs: ["clickRow", "clickAction"] }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
7753
7699
  }
7754
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleComponent, decorators: [{
7700
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleComponent, decorators: [{
7755
7701
  type: Component,
7756
7702
  args: [{ selector: 'adf-people', imports: [
7757
7703
  CommonModule,
@@ -7821,10 +7767,10 @@ class PeopleSelectorComponent {
7821
7767
  }
7822
7768
  return getDisplayUser(this.selectedUser.firstName, this.selectedUser.lastName, ' ');
7823
7769
  }
7824
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7825
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: PeopleSelectorComponent, isStandalone: true, selector: "adf-people-selector", inputs: { peopleId: "peopleId" }, outputs: { peopleIdChange: "peopleIdChange" }, host: { classAttribute: "adf-people-selector" }, viewQueries: [{ propertyName: "searchFieldComponent", first: true, predicate: ["peopleSearchField"], descendants: true, static: true }], ngImport: i0, template: "<adf-people-search-field\n #peopleSearchField\n class=\"adf-people-selector-field\"\n [performSearch]=\"performSearch\"\n [placeholder]=\"placeholder\"\n (rowClick)=\"userSelected($event)\" />\n<button\n *ngIf=\"selectedUser\"\n mat-icon-button\n class=\"adf-people-selector-deselect\"\n data-automation-id=\"adf-people-selector-deselect\"\n (click)=\"userDeselected()\">\n <mat-icon>cancel</mat-icon>\n</button>\n", styles: [".adf-people-selector{display:flex;flex-flow:row;justify-content:space-between}.adf-people-selector-field{flex:1 1 auto}.adf-people-selector-deselect{flex:0 0 auto;top:5px;right:5px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PeopleSearchFieldComponent, selector: "adf-people-search-field", inputs: ["performSearch", "placeholder"], outputs: ["rowClick"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
7770
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7771
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: PeopleSelectorComponent, isStandalone: true, selector: "adf-people-selector", inputs: { peopleId: "peopleId" }, outputs: { peopleIdChange: "peopleIdChange" }, host: { classAttribute: "adf-people-selector" }, viewQueries: [{ propertyName: "searchFieldComponent", first: true, predicate: ["peopleSearchField"], descendants: true, static: true }], ngImport: i0, template: "<adf-people-search-field\n #peopleSearchField\n class=\"adf-people-selector-field\"\n [performSearch]=\"performSearch\"\n [placeholder]=\"placeholder\"\n (rowClick)=\"userSelected($event)\" />\n<button\n *ngIf=\"selectedUser\"\n mat-icon-button\n class=\"adf-people-selector-deselect\"\n data-automation-id=\"adf-people-selector-deselect\"\n (click)=\"userDeselected()\">\n <mat-icon>cancel</mat-icon>\n</button>\n", styles: [".adf-people-selector{display:flex;flex-flow:row;justify-content:space-between}.adf-people-selector-field{flex:1 1 auto}.adf-people-selector-deselect{flex:0 0 auto;top:5px;right:5px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PeopleSearchFieldComponent, selector: "adf-people-search-field", inputs: ["performSearch", "placeholder"], outputs: ["rowClick"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
7826
7772
  }
7827
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: PeopleSelectorComponent, decorators: [{
7773
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PeopleSelectorComponent, decorators: [{
7828
7774
  type: Component,
7829
7775
  args: [{ selector: 'adf-people-selector', imports: [CommonModule, PeopleSearchFieldComponent, MatButtonModule, MatIconModule], host: { class: 'adf-people-selector' }, encapsulation: ViewEncapsulation.None, template: "<adf-people-search-field\n #peopleSearchField\n class=\"adf-people-selector-field\"\n [performSearch]=\"performSearch\"\n [placeholder]=\"placeholder\"\n (rowClick)=\"userSelected($event)\" />\n<button\n *ngIf=\"selectedUser\"\n mat-icon-button\n class=\"adf-people-selector-deselect\"\n data-automation-id=\"adf-people-selector-deselect\"\n (click)=\"userDeselected()\">\n <mat-icon>cancel</mat-icon>\n</button>\n", styles: [".adf-people-selector{display:flex;flex-flow:row;justify-content:space-between}.adf-people-selector-field{flex:1 1 auto}.adf-people-selector-deselect{flex:0 0 auto;top:5px;right:5px}\n"] }]
7830
7776
  }], ctorParameters: () => [], propDecorators: { peopleId: [{
@@ -8238,10 +8184,10 @@ class TaskHeaderComponent {
8238
8184
  isValidSelection(filteredProperties, cardItem) {
8239
8185
  return filteredProperties ? filteredProperties.indexOf(cardItem.key) >= 0 : true;
8240
8186
  }
8241
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8242
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskHeaderComponent, isStandalone: true, selector: "adf-task-header", inputs: { formName: "formName", taskDetails: "taskDetails", showClaimRelease: "showClaimRelease", readOnly: "readOnly", resetChanges: "resetChanges" }, outputs: { claim: "claim", unclaim: "unclaim" }, usesOnChanges: true, ngImport: i0, template: "<mat-card appearance=\"outlined\" *ngIf=\"taskDetails\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" [editable]=\"!readOnly && !isCompleted()\" [displayClearAction]=\"displayDateClearAction\"/>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-controls\" *ngIf=\"showClaimRelease\">\n <button *ngIf=\"isTaskClaimedByCandidateMember()\"\n mat-button\n data-automation-id=\"header-unclaim-button\"\n id=\"unclaim-task\"\n class=\"adf-claim-controls\"\n adf-unclaim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onUnclaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.UNCLAIM' | translate }}\n </button>\n <button *ngIf=\"isTaskClaimable()\"\n mat-button\n data-automation-id=\"header-claim-button\"\n id=\"claim-task\"\n class=\"adf-claim-controls\"\n adf-claim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onClaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.CLAIM' | translate }}\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-controls{display:flex;justify-content:space-between}.adf-edit-controls{display:flex;justify-content:flex-end;margin-left:auto}.adf-switch-to-edit-mode,.adf-save-edit-mode{color:var(--mat-sys-primary)}.adf-cancel-edit-mode,.adf-claim-controls{color:var(--mat-sys-secondary)}.adf-card-container{font-family:inherit}@media(max-width:959.9px){adf-card-view .adf-property-value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: UnclaimTaskDirective, selector: "[adf-unclaim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "directive", type: ClaimTaskDirective, selector: "[adf-claim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: CardViewComponent, selector: "adf-card-view", inputs: ["properties", "editable", "displayEmpty", "displayNoneOption", "displayClearAction", "copyToClipboardAction", "useChipsForMultiValueProperty", "multiValueSeparator"] }], encapsulation: i0.ViewEncapsulation.None }); }
8187
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8188
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskHeaderComponent, isStandalone: true, selector: "adf-task-header", inputs: { formName: "formName", taskDetails: "taskDetails", showClaimRelease: "showClaimRelease", readOnly: "readOnly", resetChanges: "resetChanges" }, outputs: { claim: "claim", unclaim: "unclaim" }, usesOnChanges: true, ngImport: i0, template: "<mat-card appearance=\"outlined\" *ngIf=\"taskDetails\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" [editable]=\"!readOnly && !isCompleted()\" [displayClearAction]=\"displayDateClearAction\"/>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-controls\" *ngIf=\"showClaimRelease\">\n <button *ngIf=\"isTaskClaimedByCandidateMember()\"\n mat-button\n data-automation-id=\"header-unclaim-button\"\n id=\"unclaim-task\"\n class=\"adf-claim-controls\"\n adf-unclaim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onUnclaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.UNCLAIM' | translate }}\n </button>\n <button *ngIf=\"isTaskClaimable()\"\n mat-button\n data-automation-id=\"header-claim-button\"\n id=\"claim-task\"\n class=\"adf-claim-controls\"\n adf-claim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onClaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.CLAIM' | translate }}\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-controls{display:flex;justify-content:space-between}.adf-edit-controls{display:flex;justify-content:flex-end;margin-left:auto}.adf-switch-to-edit-mode,.adf-save-edit-mode{color:var(--mat-sys-primary)}.adf-cancel-edit-mode,.adf-claim-controls{color:var(--mat-sys-secondary)}.adf-card-container{font-family:inherit}@media(max-width:959.9px){adf-card-view .adf-property-value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: UnclaimTaskDirective, selector: "[adf-unclaim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "directive", type: ClaimTaskDirective, selector: "[adf-claim-task]", inputs: ["taskId"], outputs: ["success", "error"] }, { kind: "component", type: CardViewComponent, selector: "adf-card-view", inputs: ["properties", "editable", "displayEmpty", "displayNoneOption", "displayClearAction", "copyToClipboardAction", "useChipsForMultiValueProperty", "multiValueSeparator"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
8243
8189
  }
8244
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskHeaderComponent, decorators: [{
8190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskHeaderComponent, decorators: [{
8245
8191
  type: Component,
8246
8192
  args: [{ selector: 'adf-task-header', imports: [CommonModule, MatCardModule, MatButtonModule, UnclaimTaskDirective, ClaimTaskDirective, TranslatePipe, CardViewComponent], encapsulation: ViewEncapsulation.None, template: "<mat-card appearance=\"outlined\" *ngIf=\"taskDetails\" class=\"adf-card-container\">\n <mat-card-content>\n <adf-card-view [properties]=\"properties\" [editable]=\"!readOnly && !isCompleted()\" [displayClearAction]=\"displayDateClearAction\"/>\n </mat-card-content>\n\n <mat-card-actions class=\"adf-controls\" *ngIf=\"showClaimRelease\">\n <button *ngIf=\"isTaskClaimedByCandidateMember()\"\n mat-button\n data-automation-id=\"header-unclaim-button\"\n id=\"unclaim-task\"\n class=\"adf-claim-controls\"\n adf-unclaim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onUnclaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.UNCLAIM' | translate }}\n </button>\n <button *ngIf=\"isTaskClaimable()\"\n mat-button\n data-automation-id=\"header-claim-button\"\n id=\"claim-task\"\n class=\"adf-claim-controls\"\n adf-claim-task\n [taskId]=\"taskDetails.id\"\n (success)=\"onClaimTask($event)\">\n {{ 'ADF_TASK_LIST.DETAILS.BUTTON.CLAIM' | translate }}\n </button>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-controls{display:flex;justify-content:space-between}.adf-edit-controls{display:flex;justify-content:flex-end;margin-left:auto}.adf-switch-to-edit-mode,.adf-save-edit-mode{color:var(--mat-sys-primary)}.adf-cancel-edit-mode,.adf-claim-controls{color:var(--mat-sys-secondary)}.adf-card-container{font-family:inherit}@media(max-width:959.9px){adf-card-view .adf-property-value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}\n"] }]
8247
8193
  }], ctorParameters: () => [], propDecorators: { formName: [{
@@ -8267,9 +8213,6 @@ var __decorate$3 = (this && this.__decorate) || function (decorators, target, ke
8267
8213
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
8268
8214
  return c > 3 && r && Object.defineProperty(target, key, r), r;
8269
8215
  };
8270
- var __metadata$3 = (this && this.__metadata) || function (k, v) {
8271
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
8272
- };
8273
8216
  class TaskCommentsService {
8274
8217
  constructor() {
8275
8218
  this.apiService = inject(AlfrescoApiService);
@@ -8297,14 +8240,13 @@ class TaskCommentsService {
8297
8240
  getUserImage(userId) {
8298
8241
  return this.peopleProcessService.getUserImage(userId);
8299
8242
  }
8300
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskCommentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8301
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskCommentsService, providedIn: 'root' }); }
8243
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskCommentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8244
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskCommentsService, providedIn: 'root' }); }
8302
8245
  }
8303
8246
  __decorate$3([
8304
- LazyApi((self) => new ActivitiCommentsApi(self.apiService.getInstance())),
8305
- __metadata$3("design:type", ActivitiCommentsApi)
8247
+ LazyApi((self) => new ActivitiCommentsApi(self.apiService.getInstance()))
8306
8248
  ], TaskCommentsService.prototype, "commentsApi", void 0);
8307
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskCommentsService, decorators: [{
8249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskCommentsService, decorators: [{
8308
8250
  type: Injectable,
8309
8251
  args: [{
8310
8252
  providedIn: 'root'
@@ -8328,15 +8270,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
8328
8270
  * limitations under the License.
8329
8271
  */
8330
8272
  class TaskCommentsComponent {
8331
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskCommentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8332
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskCommentsComponent, isStandalone: true, selector: "adf-task-comments", inputs: { taskId: "taskId", readOnly: "readOnly" }, providers: [
8273
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskCommentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8274
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskCommentsComponent, isStandalone: true, selector: "adf-task-comments", inputs: { taskId: "taskId", readOnly: "readOnly" }, providers: [
8333
8275
  {
8334
8276
  provide: ADF_COMMENTS_SERVICE,
8335
8277
  useClass: TaskCommentsService
8336
8278
  }
8337
8279
  ], ngImport: i0, template: "<adf-comments \n [readOnly]=\"readOnly\"\n [id]=\"taskId\"\n/>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: CommentsComponent, selector: "adf-comments", inputs: ["id", "readOnly"], outputs: ["error", "commentAdded"] }], encapsulation: i0.ViewEncapsulation.None }); }
8338
8280
  }
8339
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskCommentsComponent, decorators: [{
8281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskCommentsComponent, decorators: [{
8340
8282
  type: Component,
8341
8283
  args: [{ selector: 'adf-task-comments', imports: [CommonModule, CommentsComponent], encapsulation: ViewEncapsulation.None, providers: [
8342
8284
  {
@@ -8613,15 +8555,15 @@ class TaskDetailsComponent {
8613
8555
  this.error.emit(error);
8614
8556
  });
8615
8557
  }
8616
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8617
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskDetailsComponent, isStandalone: true, selector: "adf-task-details", inputs: { taskId: "taskId", showNextTask: "showNextTask", showHeader: "showHeader", showHeaderContent: "showHeaderContent", showInvolvePeople: "showInvolvePeople", showComments: "showComments", showChecklist: "showChecklist", showFormTitle: "showFormTitle", showFormCompleteButton: "showFormCompleteButton", showFormSaveButton: "showFormSaveButton", readOnlyForm: "readOnlyForm", showFormRefreshButton: "showFormRefreshButton", fieldValidators: "fieldValidators" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formContentClicked: "formContentClicked", formLoaded: "formLoaded", taskCreated: "taskCreated", taskDeleted: "taskDeleted", error: "error", executeOutcome: "executeOutcome", assignTask: "assignTask", claimedTask: "claimedTask", unClaimedTask: "unClaimedTask" }, providers: [
8558
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8559
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskDetailsComponent, isStandalone: true, selector: "adf-task-details", inputs: { taskId: "taskId", showNextTask: "showNextTask", showHeader: "showHeader", showHeaderContent: "showHeaderContent", showInvolvePeople: "showInvolvePeople", showComments: "showComments", showChecklist: "showChecklist", showFormTitle: "showFormTitle", showFormCompleteButton: "showFormCompleteButton", showFormSaveButton: "showFormSaveButton", readOnlyForm: "readOnlyForm", showFormRefreshButton: "showFormRefreshButton", fieldValidators: "fieldValidators" }, outputs: { formSaved: "formSaved", formCompleted: "formCompleted", formContentClicked: "formContentClicked", formLoaded: "formLoaded", taskCreated: "taskCreated", taskDeleted: "taskDeleted", error: "error", executeOutcome: "executeOutcome", assignTask: "assignTask", claimedTask: "claimedTask", unClaimedTask: "unClaimedTask" }, providers: [
8618
8560
  {
8619
8561
  provide: ADF_COMMENTS_SERVICE,
8620
8562
  useClass: TaskCommentsService
8621
8563
  }
8622
- ], viewQueries: [{ propertyName: "errorDialog", first: true, predicate: ["errorDialog"], descendants: true }, { propertyName: "taskFormComponent", first: true, predicate: ["taskForm"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!taskDetails\" data-automation-id=\"adf-tasks-details--empty\">\n <ng-template *ngIf=\"noTaskDetailsTemplateComponent\" ngFor [ngForOf]=\"[data]\"\n [ngForTemplate]=\"noTaskDetailsTemplateComponent\">\n {{ 'ADF_TASK_LIST.DETAILS.MESSAGES.NONE' | translate }}\n </ng-template>\n <div *ngIf=\"!noTaskDetailsTemplateComponent\">\n {{ 'ADF_TASK_LIST.DETAILS.MESSAGES.NONE' | translate }}\n </div>\n</div>\n<div *ngIf=\"taskDetails\" class=\"adf-task-details\">\n\n <div *ngIf=\"showHeader\" class=\"adf-task-details-header\">\n <h2 class=\"adf-activiti-task-details__header\">\n <span>{{taskDetails.name || 'No name'}}</span>\n </h2>\n </div>\n\n <div class=\"adf-task-details-core\">\n <div class=\"adf-task-details-core-form\">\n <div *ngIf=\"isAssigned()\">\n <adf-task-form #taskForm\n [taskId]=\"taskDetails.id\"\n [showFormTitle]=\"showFormTitle\"\n [showFormRefreshButton]=\"showFormRefreshButton\"\n [showCancelButton]=\"true\"\n [fieldValidators]=\"fieldValidators\"\n (formSaved)='onFormSaved($event)'\n (formCompleted)='onFormCompleted($event)'\n (formContentClicked)='onFormContentClick($event)'\n (formLoaded)='onFormLoaded($event)'\n (completed)=\"onComplete()\"\n (showAttachForm)=\"onShowAttachForm()\"\n (executeOutcome)='onFormExecuteOutcome($event)'\n (taskClaimed)=\"onClaimAction($event)\"\n (taskUnclaimed)=\"onUnclaimAction($event)\"\n (error)=\"onFormError($event)\" />\n <adf-attach-form *ngIf=\"showAttachForm\"\n [taskId]=\"taskDetails.id\"\n [formKey]=\"taskDetails.formKey\"\n (cancelAttachForm)=\"onCancelAttachForm()\"\n (success)=\"onCompleteAttachForm()\" />\n </div>\n <div *ngIf=\"!isAssigned()\" id=\"claim-message-id\">\n {{ 'ADF_TASK_LIST.DETAILS.MESSAGES.CLAIM' | translate }}\n </div>\n </div>\n <div class=\"adf-task-details-core-sidebar\">\n <adf-info-drawer *ngIf=\"showHeaderContent\" title=\"ADF_TASK_LIST.DETAILS.LABELS.INFO_DRAWER_TITLE\" id=\"adf-task-details-core-sidebar-drawer\" class=\"adf-task-details-core-sidebar-drawer\">\n <adf-info-drawer-tab label=\"ADF_TASK_LIST.DETAILS.LABELS.INFO_DRAWER_TAB_DETAILS_TITLE\">\n <div class=\"adf-assignment-container\" *ngIf=\"showAssignee\">\n <adf-people-search\n [headerTitle]=\"'ADF_TASK_LIST.DETAILS.LABELS.ADD_ASSIGNEE'\"\n [actionLabel]=\"'ADF_TASK_LIST.PEOPLE.ADD_ASSIGNEE'\"\n (searchPeople)=\"searchUser($event)\"\n (success)=\"assignTaskToUser($event)\"\n (closeSearch)=\"onCloseSearch()\"\n [results]=\"peopleSearch\" />\n </div>\n <adf-task-header\n [class]=\"getTaskHeaderViewClass()\"\n [taskDetails]=\"taskDetails\"\n [formName]=\"taskFormName\"\n (claim)=\"onClaimAction($event)\"\n (unclaim)=\"onUnclaimAction($event)\" />\n <adf-people *ngIf=\"showInvolvePeople\"\n [people]=\"taskPeople\"\n [readOnly]=\"internalReadOnlyForm\"\n [taskId]=\"taskDetails.id\" />\n </adf-info-drawer-tab>\n\n <adf-info-drawer-tab label=\"ADF_TASK_LIST.DETAILS.LABELS.INFO_DRAWER_TAB_ACTIVITY_TITLE\">\n <mat-card appearance=\"outlined\" *ngIf=\"showComments\">\n <mat-card-content>\n <adf-task-comments\n [readOnly]=\"isReadOnlyComment()\"\n [taskId]=\"taskDetails.id\"\n />\n </mat-card-content>\n </mat-card>\n </adf-info-drawer-tab>\n\n </adf-info-drawer>\n\n <div *ngIf=\"showHeaderContent\" class=\"adf-task-details-core-sidebar-checklist\">\n <div *ngIf=\"showChecklist\">\n <adf-checklist\n [readOnly]=\"internalReadOnlyForm\"\n [taskId]=\"taskDetails.id\"\n [assignee]=\"taskDetails.assignee?.id\"\n (checklistTaskCreated)=\"onChecklistTaskCreated($event)\"\n (checklistTaskDeleted)=\"onChecklistTaskDeleted($event)\" />\n </div>\n </div>\n </div>\n </div>\n\n <ng-template #errorDialog>\n <h3 matDialogTitle>{{'ADF_TASK_LIST.DETAILS.ERROR.TITLE'|translate}}</h3>\n <mat-dialog-content>\n <p>{{'ADF_TASK_LIST.DETAILS.ERROR.DESCRIPTION'|translate}}</p>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button type=\"button\" (click)=\"closeErrorDialog()\">{{'ADF_TASK_LIST.DETAILS.ERROR.CLOSE'|translate}}\n </button>\n </mat-dialog-actions>\n </ng-template>\n\n</div>\n", styles: ["adf-task-details{width:100%}adf-task-details .adf-activiti-task-details__header{align-self:flex-end;display:flex;font:var(--mat-sys-headline-small);overflow:hidden;margin:8px 0 16px;cursor:pointer;-webkit-user-select:none;user-select:none}adf-task-details .adf-activiti-task-details__action-button{text-transform:uppercase}adf-task-details .adf-assignment-container{padding:10px 20px;width:auto}adf-task-details adf-task-header.adf-assign-edit-view adf-card-view .adf-property[data-automation-id=header-assignee]{display:none}adf-task-details .adf-task-details-header{display:flex;justify-content:space-between}adf-task-details .adf-task-details-header-toggle{position:relative;top:10px;margin-right:2px;height:23px;cursor:pointer;-webkit-user-select:none;user-select:none}adf-task-details .adf-task-details-toggle{position:relative}adf-task-details .adf-task-details-core{display:flex;flex-direction:column;justify-content:space-between}@media(max-width:1279.9px){adf-task-details .adf-task-details-core-sidebar-drawer{margin-left:0}}adf-task-details .adf-task-details-core-sidebar-checklist{margin-top:30px;padding-left:20px;padding-right:20px}adf-task-details .adf-task-details-core-form{flex-grow:1;margin-bottom:8px}adf-task-details .adf-task-details-core-form .adf-form-debug-container{display:flex;flex-direction:column;padding:20px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: TaskFormComponent, selector: "adf-task-form", inputs: ["taskId", "showFormTitle", "showFormCompleteButton", "showFormSaveButton", "showCancelButton", "readOnlyForm", "showFormRefreshButton", "showFormValidationIcon", "fieldValidators"], outputs: ["formSaved", "formCompleted", "formContentClicked", "formLoaded", "showAttachForm", "executeOutcome", "completed", "formError", "error", "cancel", "taskClaimed", "taskUnclaimed"] }, { kind: "component", type: AttachFormComponent, selector: "adf-attach-form", inputs: ["taskId", "formKey"], outputs: ["cancelAttachForm", "success", "error"] }, { kind: "component", type: PeopleSearchComponent, selector: "adf-people-search", inputs: ["headerTitle", "actionLabel", "results"], outputs: ["searchPeople", "success", "closeSearch"] }, { kind: "component", type: TaskHeaderComponent, selector: "adf-task-header", inputs: ["formName", "taskDetails", "showClaimRelease", "readOnly", "resetChanges"], outputs: ["claim", "unclaim"] }, { kind: "component", type: PeopleComponent, selector: "adf-people", inputs: ["people", "taskId", "readOnly"], outputs: ["error"] }, { kind: "component", type: TaskCommentsComponent, selector: "adf-task-comments", inputs: ["taskId", "readOnly"] }, { kind: "component", type: ChecklistComponent, selector: "adf-checklist", inputs: ["taskId", "readOnly", "assignee"], outputs: ["checklistTaskCreated", "checklistTaskDeleted", "error"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: InfoDrawerTabComponent, selector: "adf-info-drawer-tab", inputs: ["label", "icon"] }, { kind: "component", type: InfoDrawerComponent, selector: "adf-info-drawer", inputs: ["title", "icon", "selectedIndex", "showHeader"], outputs: ["currentTab"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }], encapsulation: i0.ViewEncapsulation.None }); }
8564
+ ], viewQueries: [{ propertyName: "errorDialog", first: true, predicate: ["errorDialog"], descendants: true }, { propertyName: "taskFormComponent", first: true, predicate: ["taskForm"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!taskDetails\" data-automation-id=\"adf-tasks-details--empty\">\n <ng-template *ngIf=\"noTaskDetailsTemplateComponent\" ngFor [ngForOf]=\"[data]\"\n [ngForTemplate]=\"noTaskDetailsTemplateComponent\">\n {{ 'ADF_TASK_LIST.DETAILS.MESSAGES.NONE' | translate }}\n </ng-template>\n <div *ngIf=\"!noTaskDetailsTemplateComponent\">\n {{ 'ADF_TASK_LIST.DETAILS.MESSAGES.NONE' | translate }}\n </div>\n</div>\n<div *ngIf=\"taskDetails\" class=\"adf-task-details\">\n\n <div *ngIf=\"showHeader\" class=\"adf-task-details-header\">\n <h2 class=\"adf-activiti-task-details__header\">\n <span>{{taskDetails.name || 'No name'}}</span>\n </h2>\n </div>\n\n <div class=\"adf-task-details-core\">\n <div class=\"adf-task-details-core-form\">\n <div *ngIf=\"isAssigned()\">\n <adf-task-form #taskForm\n [taskId]=\"taskDetails.id\"\n [showFormTitle]=\"showFormTitle\"\n [showFormRefreshButton]=\"showFormRefreshButton\"\n [showCancelButton]=\"true\"\n [fieldValidators]=\"fieldValidators\"\n (formSaved)='onFormSaved($event)'\n (formCompleted)='onFormCompleted($event)'\n (formContentClicked)='onFormContentClick($event)'\n (formLoaded)='onFormLoaded($event)'\n (completed)=\"onComplete()\"\n (showAttachForm)=\"onShowAttachForm()\"\n (executeOutcome)='onFormExecuteOutcome($event)'\n (taskClaimed)=\"onClaimAction($event)\"\n (taskUnclaimed)=\"onUnclaimAction($event)\"\n (error)=\"onFormError($event)\" />\n <adf-attach-form *ngIf=\"showAttachForm\"\n [taskId]=\"taskDetails.id\"\n [formKey]=\"taskDetails.formKey\"\n (cancelAttachForm)=\"onCancelAttachForm()\"\n (success)=\"onCompleteAttachForm()\" />\n </div>\n <div *ngIf=\"!isAssigned()\" id=\"claim-message-id\">\n {{ 'ADF_TASK_LIST.DETAILS.MESSAGES.CLAIM' | translate }}\n </div>\n </div>\n <div class=\"adf-task-details-core-sidebar\">\n <adf-info-drawer *ngIf=\"showHeaderContent\" title=\"ADF_TASK_LIST.DETAILS.LABELS.INFO_DRAWER_TITLE\" id=\"adf-task-details-core-sidebar-drawer\" class=\"adf-task-details-core-sidebar-drawer\">\n <adf-info-drawer-tab label=\"ADF_TASK_LIST.DETAILS.LABELS.INFO_DRAWER_TAB_DETAILS_TITLE\">\n <div class=\"adf-assignment-container\" *ngIf=\"showAssignee\">\n <adf-people-search\n [headerTitle]=\"'ADF_TASK_LIST.DETAILS.LABELS.ADD_ASSIGNEE'\"\n [actionLabel]=\"'ADF_TASK_LIST.PEOPLE.ADD_ASSIGNEE'\"\n (searchPeople)=\"searchUser($event)\"\n (success)=\"assignTaskToUser($event)\"\n (closeSearch)=\"onCloseSearch()\"\n [results]=\"peopleSearch\" />\n </div>\n <adf-task-header\n [class]=\"getTaskHeaderViewClass()\"\n [taskDetails]=\"taskDetails\"\n [formName]=\"taskFormName\"\n (claim)=\"onClaimAction($event)\"\n (unclaim)=\"onUnclaimAction($event)\" />\n <adf-people *ngIf=\"showInvolvePeople\"\n [people]=\"taskPeople\"\n [readOnly]=\"internalReadOnlyForm\"\n [taskId]=\"taskDetails.id\" />\n </adf-info-drawer-tab>\n\n <adf-info-drawer-tab label=\"ADF_TASK_LIST.DETAILS.LABELS.INFO_DRAWER_TAB_ACTIVITY_TITLE\">\n <mat-card appearance=\"outlined\" *ngIf=\"showComments\">\n <mat-card-content>\n <adf-task-comments\n [readOnly]=\"isReadOnlyComment()\"\n [taskId]=\"taskDetails.id\"\n />\n </mat-card-content>\n </mat-card>\n </adf-info-drawer-tab>\n\n </adf-info-drawer>\n\n <div *ngIf=\"showHeaderContent\" class=\"adf-task-details-core-sidebar-checklist\">\n <div *ngIf=\"showChecklist\">\n <adf-checklist\n [readOnly]=\"internalReadOnlyForm\"\n [taskId]=\"taskDetails.id\"\n [assignee]=\"taskDetails.assignee?.id\"\n (checklistTaskCreated)=\"onChecklistTaskCreated($event)\"\n (checklistTaskDeleted)=\"onChecklistTaskDeleted($event)\" />\n </div>\n </div>\n </div>\n </div>\n\n <ng-template #errorDialog>\n <h3 matDialogTitle>{{'ADF_TASK_LIST.DETAILS.ERROR.TITLE'|translate}}</h3>\n <mat-dialog-content>\n <p>{{'ADF_TASK_LIST.DETAILS.ERROR.DESCRIPTION'|translate}}</p>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button type=\"button\" (click)=\"closeErrorDialog()\">{{'ADF_TASK_LIST.DETAILS.ERROR.CLOSE'|translate}}\n </button>\n </mat-dialog-actions>\n </ng-template>\n\n</div>\n", styles: ["adf-task-details{width:100%}adf-task-details .adf-activiti-task-details__header{align-self:flex-end;display:flex;font:var(--mat-sys-headline-small);overflow:hidden;margin:8px 0 16px;cursor:pointer;-webkit-user-select:none;user-select:none}adf-task-details .adf-activiti-task-details__action-button{text-transform:uppercase}adf-task-details .adf-assignment-container{padding:10px 20px;width:auto}adf-task-details adf-task-header.adf-assign-edit-view adf-card-view .adf-property[data-automation-id=header-assignee]{display:none}adf-task-details .adf-task-details-header{display:flex;justify-content:space-between}adf-task-details .adf-task-details-header-toggle{position:relative;top:10px;margin-right:2px;height:23px;cursor:pointer;-webkit-user-select:none;user-select:none}adf-task-details .adf-task-details-toggle{position:relative}adf-task-details .adf-task-details-core{display:flex;flex-direction:column;justify-content:space-between}@media(max-width:1279.9px){adf-task-details .adf-task-details-core-sidebar-drawer{margin-left:0}}adf-task-details .adf-task-details-core-sidebar-checklist{margin-top:30px;padding-left:20px;padding-right:20px}adf-task-details .adf-task-details-core-form{flex-grow:1;margin-bottom:8px}adf-task-details .adf-task-details-core-form .adf-form-debug-container{display:flex;flex-direction:column;padding:20px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TaskFormComponent, selector: "adf-task-form", inputs: ["taskId", "showFormTitle", "showFormCompleteButton", "showFormSaveButton", "showCancelButton", "readOnlyForm", "showFormRefreshButton", "showFormValidationIcon", "fieldValidators"], outputs: ["formSaved", "formCompleted", "formContentClicked", "formLoaded", "showAttachForm", "executeOutcome", "completed", "formError", "error", "cancel", "taskClaimed", "taskUnclaimed"] }, { kind: "component", type: AttachFormComponent, selector: "adf-attach-form", inputs: ["taskId", "formKey"], outputs: ["cancelAttachForm", "success", "error"] }, { kind: "component", type: PeopleSearchComponent, selector: "adf-people-search", inputs: ["headerTitle", "actionLabel", "results"], outputs: ["searchPeople", "success", "closeSearch"] }, { kind: "component", type: TaskHeaderComponent, selector: "adf-task-header", inputs: ["formName", "taskDetails", "showClaimRelease", "readOnly", "resetChanges"], outputs: ["claim", "unclaim"] }, { kind: "component", type: PeopleComponent, selector: "adf-people", inputs: ["people", "taskId", "readOnly"], outputs: ["error"] }, { kind: "component", type: TaskCommentsComponent, selector: "adf-task-comments", inputs: ["taskId", "readOnly"] }, { kind: "component", type: ChecklistComponent, selector: "adf-checklist", inputs: ["taskId", "readOnly", "assignee"], outputs: ["checklistTaskCreated", "checklistTaskDeleted", "error"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: InfoDrawerTabComponent, selector: "adf-info-drawer-tab", inputs: ["label", "icon"] }, { kind: "component", type: InfoDrawerComponent, selector: "adf-info-drawer", inputs: ["title", "icon", "selectedIndex", "showHeader"], outputs: ["currentTab"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
8623
8565
  }
8624
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskDetailsComponent, decorators: [{
8566
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskDetailsComponent, decorators: [{
8625
8567
  type: Component,
8626
8568
  args: [{ selector: 'adf-task-details', imports: [
8627
8569
  CommonModule,
@@ -8735,6 +8677,9 @@ class StartTaskComponent {
8735
8677
  this.dateError = false;
8736
8678
  this.maxTaskNameLength = MAX_LENGTH$1;
8737
8679
  this.loading = false;
8680
+ this.dateErrorStateMatcher = {
8681
+ isErrorState: () => this.dateError
8682
+ };
8738
8683
  this.destroyRef = inject(DestroyRef);
8739
8684
  }
8740
8685
  ngOnInit() {
@@ -8853,13 +8798,13 @@ class StartTaskComponent {
8853
8798
  loadFormsTask() {
8854
8799
  this.forms$ = this.taskService.getFormList();
8855
8800
  }
8856
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartTaskComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8857
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: StartTaskComponent, isStandalone: true, selector: "adf-start-task", inputs: { appId: "appId", name: "name" }, outputs: { success: "success", cancel: "cancel", error: "error" }, providers: [
8801
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: StartTaskComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8802
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: StartTaskComponent, isStandalone: true, selector: "adf-start-task", inputs: { appId: "appId", name: "name" }, outputs: { success: "success", cancel: "cancel", error: "error" }, providers: [
8858
8803
  { provide: DateAdapter, useClass: AdfDateFnsAdapter },
8859
8804
  { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS }
8860
- ], ngImport: i0, template: "<mat-card appearance=\"outlined\" class=\"adf-new-task-layout-card\">\n <mat-card-header class=\"adf-new-task-heading\">\n <mat-card-title>{{'ADF_TASK_LIST.START_TASK.FORM.TITLE' | translate}}</mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <form [formGroup]=\"taskForm\" class=\"adf-new-task-form\">\n <div class=\"adf-task-name\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NAME' | translate}}</mat-label>\n <input\n matInput\n id=\"name_id\"\n formControlName=\"name\">\n <mat-error *ngIf=\"nameController.hasError('required') || nameController.hasError('whitespace')\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.REQUIRED' | translate }}\n </mat-error>\n <mat-error *ngIf=\"nameController.hasError('maxlength')\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MAXIMUM_LENGTH' | translate : { characters : maxTaskNameLength } }}\n </mat-error>\n </mat-form-field>\n </div>\n <div class=\"adf-task-description\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DESCRIPTION' | translate}}</mat-label>\n <textarea\n matInput\n rows=\"1\"\n id=\"description_id\"\n formControlName=\"description\">\n </textarea>\n <mat-error *ngIf=\"descriptionController.hasError('whitespace')\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MESSAGE' | translate }}\n </mat-error>\n </mat-form-field>\n </div>\n <div class=\"adf-input-row\">\n <mat-form-field>\n <input\n matInput\n (keyup)=\"onDateChanged($any($event).srcElement.value)\"\n (dateInput)=\"onDateChanged($any($event).value)\"\n [matDatepicker]=\"taskDatePicker\"\n placeholder=\"{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DATE'|translate}}\"\n id=\"date_id\">\n <mat-datepicker-toggle\n matSuffix\n [for]=\"taskDatePicker\" />\n <mat-datepicker\n #taskDatePicker\n [touchUi]=\"true\" />\n <div class=\"adf-error-text-container\">\n <div *ngIf=\"dateError\">\n <div class=\"adf-error-text\">{{'ADF_TASK_LIST.START_TASK.FORM.ERROR.DATE'|translate}}</div>\n <mat-icon class=\"adf-error-icon\">warning</mat-icon>\n </div>\n </div>\n </mat-form-field>\n <people-widget\n (peopleSelected)=\"setAssigneeId($event)\"\n [field]=\"field\"\n class=\"adf-people-widget-content\" />\n </div>\n <mat-form-field class=\"adf-task-form\">\n <mat-label id=\"form_label\">{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.FORM'|translate}}</mat-label>\n <mat-select\n id=\"form_id\"\n class=\"form-control\"\n formControlName=\"formKey\">\n <mat-option>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NONE'|translate}}</mat-option>\n <mat-option *ngFor=\"let form of forms$ | async\" [value]=\"form.id\">{{ form.name }}</mat-option>\n </mat-select>\n </mat-form-field>\n </form>\n </mat-card-content>\n <mat-card-actions>\n <div class=\"adf-new-task-footer\">\n <button\n mat-button\n class=\"adf-uppercase\"\n (click)=\"onCancel()\"\n id=\"button-cancel\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}\n </button>\n <button\n mat-button\n class=\"adf-uppercase\"\n [disabled]=\"!isFormValid()\"\n (click)=\"saveTask()\"\n id=\"button-start\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.START' | translate }}\n </button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-new-task-heading{padding-top:12px;border-bottom:1px solid var(--mat-sys-outline-variant)}.adf-new-task-layout-card{margin:10px auto;flex:1 1 100%;max-width:70%}.adf-new-task-layout-card .adf-new-task-form{flex-direction:column;display:flex}.adf-new-task-layout-card .adf-new-task-form .adf-task-name,.adf-new-task-layout-card .adf-new-task-form .adf-task-description{display:flex;margin-bottom:10px}.adf-new-task-layout-card .adf-new-task-form .adf-task-name mat-form-field,.adf-new-task-layout-card .adf-new-task-form .adf-task-description mat-form-field{flex:1}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row{flex-direction:column}}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row mat-form-field{margin-right:20px}}.adf-new-task-layout-card .adf-new-task-form .adf-task-form{flex:1 1 100%;box-sizing:border-box;max-width:48%}@media(max-width:599.9px){.adf-new-task-layout-card .adf-new-task-form .adf-task-form{max-width:100%}}.adf-new-task-footer{padding:4px;font:var(--mat-sys-body-medium);border-top:1px solid var(--mat-sys-outline-variant);display:flex;place-content:flex-end;align-items:flex-end}.adf-mat-select{padding-top:0}adf-start-task button.adf-uppercase{text-transform:uppercase}adf-start-task people-widget.adf-people-widget-content{width:100%}adf-start-task .adf-people-widget-content .adf-people-widget-field{width:100%}adf-start-task .adf-people-widget-content .adf-label{line-height:0}adf-start-task .adf-people-widget-content .adf-error-container{margin-top:-10px}adf-start-task .adf-start-task-input-container{padding-top:8px}adf-start-task .adf-error-text-container{position:absolute;height:20px;margin-top:12px;width:100%}adf-start-task .adf-error-text-container>div{display:flex;flex-flow:row;justify-content:flex-start}adf-start-task .adf-error-text{padding-right:8px;height:16px;font:var(--mat-sys-body-small);line-height:1.33;color:var(--mat-sys-error);width:auto}adf-start-task .adf-error-icon{font:var(--mat-sys-body-medium);color:var(--mat-sys-error)}adf-start-task .adf-label{color:var(--mat-sys-outline)}adf-start-task .adf-invalid .adf-file{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-input{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label{color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label:after{background-color:var(--mat-sys-error)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2$3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i3$4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3$4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3$4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: PeopleWidgetComponent, selector: "people-widget", outputs: ["peopleSelected"] }], encapsulation: i0.ViewEncapsulation.None }); }
8805
+ ], ngImport: i0, template: "<mat-card appearance=\"outlined\" class=\"adf-new-task-layout-card\">\n <mat-card-header class=\"adf-new-task-heading\">\n <mat-card-title>{{'ADF_TASK_LIST.START_TASK.FORM.TITLE' | translate}}</mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <form [formGroup]=\"taskForm\" class=\"adf-new-task-form\">\n <div class=\"adf-task-name\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NAME' | translate}}</mat-label>\n <input\n matInput\n id=\"name_id\"\n formControlName=\"name\">\n @if (nameController.invalid) {\n <mat-error>\n <span class=\"adf-error-text\"\n >@if (nameController.hasError('required') || nameController.hasError('whitespace')) {{{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.REQUIRED' | translate }}} @else if (nameController.hasError('maxlength')) {{{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MAXIMUM_LENGTH' | translate : { characters : maxTaskNameLength } }}}</span>\n </mat-error>\n }\n </mat-form-field>\n </div>\n <div class=\"adf-task-description\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DESCRIPTION' | translate}}</mat-label>\n <textarea\n matInput\n rows=\"1\"\n id=\"description_id\"\n formControlName=\"description\">\n </textarea>\n @if (descriptionController.hasError('whitespace')) {\n <mat-error>\n <span class=\"adf-error-text\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MESSAGE' | translate }}</span>\n </mat-error>\n }\n </mat-form-field>\n </div>\n <div class=\"adf-input-row\">\n <mat-form-field class=\"adf-form-field-input\">\n <input\n matInput\n (keyup)=\"onDateChanged($any($event).srcElement.value)\"\n (dateInput)=\"onDateChanged($any($event).value)\"\n [matDatepicker]=\"taskDatePicker\"\n [errorStateMatcher]=\"dateErrorStateMatcher\"\n placeholder=\"{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DATE'|translate}}\"\n id=\"date_id\">\n <mat-datepicker-toggle\n matSuffix\n [for]=\"taskDatePicker\" />\n <mat-datepicker\n #taskDatePicker\n [touchUi]=\"true\" />\n @if (dateError) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">warning</mat-icon>\n <span class=\"adf-error-text\">{{'ADF_TASK_LIST.START_TASK.FORM.ERROR.DATE'|translate}}</span>\n </mat-error>\n }\n </mat-form-field>\n <people-widget\n (peopleSelected)=\"setAssigneeId($event)\"\n [field]=\"field\"\n class=\"adf-people-widget-content\" />\n </div>\n <mat-form-field class=\"adf-task-form\">\n <mat-label id=\"form_label\">{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.FORM'|translate}}</mat-label>\n <mat-select\n id=\"form_id\"\n class=\"form-control\"\n formControlName=\"formKey\">\n <mat-option>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NONE'|translate}}</mat-option>\n <mat-option *ngFor=\"let form of forms$ | async\" [value]=\"form.id\">{{ form.name }}</mat-option>\n </mat-select>\n </mat-form-field>\n </form>\n </mat-card-content>\n <mat-card-actions>\n <div class=\"adf-new-task-footer\">\n <button\n mat-button\n class=\"adf-uppercase\"\n (click)=\"onCancel()\"\n id=\"button-cancel\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}\n </button>\n <button\n mat-button\n class=\"adf-uppercase\"\n [disabled]=\"!isFormValid()\"\n (click)=\"saveTask()\"\n id=\"button-start\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.START' | translate }}\n </button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-new-task-heading{padding-top:12px;border-bottom:1px solid var(--mat-sys-outline-variant)}.adf-new-task-layout-card{margin:10px auto;flex:1 1 100%;max-width:70%}.adf-new-task-layout-card .adf-new-task-form{flex-direction:column;display:flex}.adf-new-task-layout-card .adf-new-task-form .adf-task-name,.adf-new-task-layout-card .adf-new-task-form .adf-task-description{display:flex;margin-bottom:10px}.adf-new-task-layout-card .adf-new-task-form .adf-task-name mat-form-field,.adf-new-task-layout-card .adf-new-task-form .adf-task-description mat-form-field{flex:1}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row{flex-direction:column}}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row mat-form-field{margin-right:20px}}.adf-new-task-layout-card .adf-new-task-form .adf-task-form{flex:1 1 100%;box-sizing:border-box;max-width:48%}@media(max-width:599.9px){.adf-new-task-layout-card .adf-new-task-form .adf-task-form{max-width:100%}}.adf-new-task-footer{padding:4px;font:var(--mat-sys-body-medium);border-top:1px solid var(--mat-sys-outline-variant);display:flex;place-content:flex-end;align-items:flex-end}.adf-mat-select{padding-top:0}adf-start-task button.adf-uppercase{text-transform:uppercase}adf-start-task people-widget.adf-people-widget-content{width:100%}adf-start-task .adf-people-widget-content .adf-people-widget-field{width:100%}adf-start-task .adf-people-widget-content .adf-label{line-height:0}adf-start-task .adf-people-widget-content .adf-error-container{margin-top:-10px}adf-start-task .adf-start-task-input-container{padding-top:8px}adf-start-task .adf-error-text-container{position:absolute;height:20px;margin-top:12px;width:100%}adf-start-task .adf-error-text-container>div{display:flex;flex-flow:row;justify-content:flex-start}adf-start-task .adf-error-text{padding-right:8px;height:16px;font:var(--mat-sys-body-small);line-height:1.33;color:var(--mat-sys-error);width:auto}adf-start-task .adf-label{color:var(--mat-sys-outline)}adf-start-task .adf-invalid .adf-file{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-input{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label{color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label:after{background-color:var(--mat-sys-error)}.adf-form-field-input .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2$3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i3$4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3$4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3$4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: PeopleWidgetComponent, selector: "people-widget", outputs: ["peopleSelected"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
8861
8806
  }
8862
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartTaskComponent, decorators: [{
8807
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: StartTaskComponent, decorators: [{
8863
8808
  type: Component,
8864
8809
  args: [{ selector: 'adf-start-task', imports: [
8865
8810
  CommonModule,
@@ -8876,7 +8821,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
8876
8821
  ], providers: [
8877
8822
  { provide: DateAdapter, useClass: AdfDateFnsAdapter },
8878
8823
  { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS }
8879
- ], encapsulation: ViewEncapsulation.None, template: "<mat-card appearance=\"outlined\" class=\"adf-new-task-layout-card\">\n <mat-card-header class=\"adf-new-task-heading\">\n <mat-card-title>{{'ADF_TASK_LIST.START_TASK.FORM.TITLE' | translate}}</mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <form [formGroup]=\"taskForm\" class=\"adf-new-task-form\">\n <div class=\"adf-task-name\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NAME' | translate}}</mat-label>\n <input\n matInput\n id=\"name_id\"\n formControlName=\"name\">\n <mat-error *ngIf=\"nameController.hasError('required') || nameController.hasError('whitespace')\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.REQUIRED' | translate }}\n </mat-error>\n <mat-error *ngIf=\"nameController.hasError('maxlength')\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MAXIMUM_LENGTH' | translate : { characters : maxTaskNameLength } }}\n </mat-error>\n </mat-form-field>\n </div>\n <div class=\"adf-task-description\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DESCRIPTION' | translate}}</mat-label>\n <textarea\n matInput\n rows=\"1\"\n id=\"description_id\"\n formControlName=\"description\">\n </textarea>\n <mat-error *ngIf=\"descriptionController.hasError('whitespace')\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MESSAGE' | translate }}\n </mat-error>\n </mat-form-field>\n </div>\n <div class=\"adf-input-row\">\n <mat-form-field>\n <input\n matInput\n (keyup)=\"onDateChanged($any($event).srcElement.value)\"\n (dateInput)=\"onDateChanged($any($event).value)\"\n [matDatepicker]=\"taskDatePicker\"\n placeholder=\"{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DATE'|translate}}\"\n id=\"date_id\">\n <mat-datepicker-toggle\n matSuffix\n [for]=\"taskDatePicker\" />\n <mat-datepicker\n #taskDatePicker\n [touchUi]=\"true\" />\n <div class=\"adf-error-text-container\">\n <div *ngIf=\"dateError\">\n <div class=\"adf-error-text\">{{'ADF_TASK_LIST.START_TASK.FORM.ERROR.DATE'|translate}}</div>\n <mat-icon class=\"adf-error-icon\">warning</mat-icon>\n </div>\n </div>\n </mat-form-field>\n <people-widget\n (peopleSelected)=\"setAssigneeId($event)\"\n [field]=\"field\"\n class=\"adf-people-widget-content\" />\n </div>\n <mat-form-field class=\"adf-task-form\">\n <mat-label id=\"form_label\">{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.FORM'|translate}}</mat-label>\n <mat-select\n id=\"form_id\"\n class=\"form-control\"\n formControlName=\"formKey\">\n <mat-option>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NONE'|translate}}</mat-option>\n <mat-option *ngFor=\"let form of forms$ | async\" [value]=\"form.id\">{{ form.name }}</mat-option>\n </mat-select>\n </mat-form-field>\n </form>\n </mat-card-content>\n <mat-card-actions>\n <div class=\"adf-new-task-footer\">\n <button\n mat-button\n class=\"adf-uppercase\"\n (click)=\"onCancel()\"\n id=\"button-cancel\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}\n </button>\n <button\n mat-button\n class=\"adf-uppercase\"\n [disabled]=\"!isFormValid()\"\n (click)=\"saveTask()\"\n id=\"button-start\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.START' | translate }}\n </button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-new-task-heading{padding-top:12px;border-bottom:1px solid var(--mat-sys-outline-variant)}.adf-new-task-layout-card{margin:10px auto;flex:1 1 100%;max-width:70%}.adf-new-task-layout-card .adf-new-task-form{flex-direction:column;display:flex}.adf-new-task-layout-card .adf-new-task-form .adf-task-name,.adf-new-task-layout-card .adf-new-task-form .adf-task-description{display:flex;margin-bottom:10px}.adf-new-task-layout-card .adf-new-task-form .adf-task-name mat-form-field,.adf-new-task-layout-card .adf-new-task-form .adf-task-description mat-form-field{flex:1}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row{flex-direction:column}}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row mat-form-field{margin-right:20px}}.adf-new-task-layout-card .adf-new-task-form .adf-task-form{flex:1 1 100%;box-sizing:border-box;max-width:48%}@media(max-width:599.9px){.adf-new-task-layout-card .adf-new-task-form .adf-task-form{max-width:100%}}.adf-new-task-footer{padding:4px;font:var(--mat-sys-body-medium);border-top:1px solid var(--mat-sys-outline-variant);display:flex;place-content:flex-end;align-items:flex-end}.adf-mat-select{padding-top:0}adf-start-task button.adf-uppercase{text-transform:uppercase}adf-start-task people-widget.adf-people-widget-content{width:100%}adf-start-task .adf-people-widget-content .adf-people-widget-field{width:100%}adf-start-task .adf-people-widget-content .adf-label{line-height:0}adf-start-task .adf-people-widget-content .adf-error-container{margin-top:-10px}adf-start-task .adf-start-task-input-container{padding-top:8px}adf-start-task .adf-error-text-container{position:absolute;height:20px;margin-top:12px;width:100%}adf-start-task .adf-error-text-container>div{display:flex;flex-flow:row;justify-content:flex-start}adf-start-task .adf-error-text{padding-right:8px;height:16px;font:var(--mat-sys-body-small);line-height:1.33;color:var(--mat-sys-error);width:auto}adf-start-task .adf-error-icon{font:var(--mat-sys-body-medium);color:var(--mat-sys-error)}adf-start-task .adf-label{color:var(--mat-sys-outline)}adf-start-task .adf-invalid .adf-file{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-input{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label{color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label:after{background-color:var(--mat-sys-error)}\n"] }]
8824
+ ], encapsulation: ViewEncapsulation.None, template: "<mat-card appearance=\"outlined\" class=\"adf-new-task-layout-card\">\n <mat-card-header class=\"adf-new-task-heading\">\n <mat-card-title>{{'ADF_TASK_LIST.START_TASK.FORM.TITLE' | translate}}</mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <form [formGroup]=\"taskForm\" class=\"adf-new-task-form\">\n <div class=\"adf-task-name\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NAME' | translate}}</mat-label>\n <input\n matInput\n id=\"name_id\"\n formControlName=\"name\">\n @if (nameController.invalid) {\n <mat-error>\n <span class=\"adf-error-text\"\n >@if (nameController.hasError('required') || nameController.hasError('whitespace')) {{{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.REQUIRED' | translate }}} @else if (nameController.hasError('maxlength')) {{{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MAXIMUM_LENGTH' | translate : { characters : maxTaskNameLength } }}}</span>\n </mat-error>\n }\n </mat-form-field>\n </div>\n <div class=\"adf-task-description\">\n <mat-form-field>\n <mat-label>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DESCRIPTION' | translate}}</mat-label>\n <textarea\n matInput\n rows=\"1\"\n id=\"description_id\"\n formControlName=\"description\">\n </textarea>\n @if (descriptionController.hasError('whitespace')) {\n <mat-error>\n <span class=\"adf-error-text\">{{ 'ADF_TASK_LIST.START_TASK.FORM.ERROR.MESSAGE' | translate }}</span>\n </mat-error>\n }\n </mat-form-field>\n </div>\n <div class=\"adf-input-row\">\n <mat-form-field class=\"adf-form-field-input\">\n <input\n matInput\n (keyup)=\"onDateChanged($any($event).srcElement.value)\"\n (dateInput)=\"onDateChanged($any($event).value)\"\n [matDatepicker]=\"taskDatePicker\"\n [errorStateMatcher]=\"dateErrorStateMatcher\"\n placeholder=\"{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.DATE'|translate}}\"\n id=\"date_id\">\n <mat-datepicker-toggle\n matSuffix\n [for]=\"taskDatePicker\" />\n <mat-datepicker\n #taskDatePicker\n [touchUi]=\"true\" />\n @if (dateError) {\n <mat-error>\n <mat-icon class=\"adf-error-icon\">warning</mat-icon>\n <span class=\"adf-error-text\">{{'ADF_TASK_LIST.START_TASK.FORM.ERROR.DATE'|translate}}</span>\n </mat-error>\n }\n </mat-form-field>\n <people-widget\n (peopleSelected)=\"setAssigneeId($event)\"\n [field]=\"field\"\n class=\"adf-people-widget-content\" />\n </div>\n <mat-form-field class=\"adf-task-form\">\n <mat-label id=\"form_label\">{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.FORM'|translate}}</mat-label>\n <mat-select\n id=\"form_id\"\n class=\"form-control\"\n formControlName=\"formKey\">\n <mat-option>{{'ADF_TASK_LIST.START_TASK.FORM.LABEL.NONE'|translate}}</mat-option>\n <mat-option *ngFor=\"let form of forms$ | async\" [value]=\"form.id\">{{ form.name }}</mat-option>\n </mat-select>\n </mat-form-field>\n </form>\n </mat-card-content>\n <mat-card-actions>\n <div class=\"adf-new-task-footer\">\n <button\n mat-button\n class=\"adf-uppercase\"\n (click)=\"onCancel()\"\n id=\"button-cancel\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.CANCEL' | translate }}\n </button>\n <button\n mat-button\n class=\"adf-uppercase\"\n [disabled]=\"!isFormValid()\"\n (click)=\"saveTask()\"\n id=\"button-start\">\n {{ 'ADF_TASK_LIST.START_TASK.FORM.ACTION.START' | translate }}\n </button>\n </div>\n </mat-card-actions>\n</mat-card>\n", styles: [".adf-new-task-heading{padding-top:12px;border-bottom:1px solid var(--mat-sys-outline-variant)}.adf-new-task-layout-card{margin:10px auto;flex:1 1 100%;max-width:70%}.adf-new-task-layout-card .adf-new-task-form{flex-direction:column;display:flex}.adf-new-task-layout-card .adf-new-task-form .adf-task-name,.adf-new-task-layout-card .adf-new-task-form .adf-task-description{display:flex;margin-bottom:10px}.adf-new-task-layout-card .adf-new-task-form .adf-task-name mat-form-field,.adf-new-task-layout-card .adf-new-task-form .adf-task-description mat-form-field{flex:1}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row{flex-direction:column}}@media(max-width:959.9px){.adf-new-task-layout-card .adf-new-task-form .adf-input-row mat-form-field{margin-right:20px}}.adf-new-task-layout-card .adf-new-task-form .adf-task-form{flex:1 1 100%;box-sizing:border-box;max-width:48%}@media(max-width:599.9px){.adf-new-task-layout-card .adf-new-task-form .adf-task-form{max-width:100%}}.adf-new-task-footer{padding:4px;font:var(--mat-sys-body-medium);border-top:1px solid var(--mat-sys-outline-variant);display:flex;place-content:flex-end;align-items:flex-end}.adf-mat-select{padding-top:0}adf-start-task button.adf-uppercase{text-transform:uppercase}adf-start-task people-widget.adf-people-widget-content{width:100%}adf-start-task .adf-people-widget-content .adf-people-widget-field{width:100%}adf-start-task .adf-people-widget-content .adf-label{line-height:0}adf-start-task .adf-people-widget-content .adf-error-container{margin-top:-10px}adf-start-task .adf-start-task-input-container{padding-top:8px}adf-start-task .adf-error-text-container{position:absolute;height:20px;margin-top:12px;width:100%}adf-start-task .adf-error-text-container>div{display:flex;flex-flow:row;justify-content:flex-start}adf-start-task .adf-error-text{padding-right:8px;height:16px;font:var(--mat-sys-body-small);line-height:1.33;color:var(--mat-sys-error);width:auto}adf-start-task .adf-label{color:var(--mat-sys-outline)}adf-start-task .adf-invalid .adf-file{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-input{border-color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label{color:var(--mat-sys-error)}adf-start-task .adf-invalid .adf-label:after{background-color:var(--mat-sys-error)}.adf-form-field-input .adf-error-icon{font-size:16px;width:16px;height:16px;margin-right:4px;vertical-align:text-bottom}\n"] }]
8880
8825
  }], propDecorators: { appId: [{
8881
8826
  type: Input,
8882
8827
  args: [{ required: true }]
@@ -8896,9 +8841,6 @@ var __decorate$2 = (this && this.__decorate) || function (decorators, target, ke
8896
8841
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
8897
8842
  return c > 3 && r && Object.defineProperty(target, key, r), r;
8898
8843
  };
8899
- var __metadata$2 = (this && this.__metadata) || function (k, v) {
8900
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
8901
- };
8902
8844
  class ProcessUploadService extends UploadService {
8903
8845
  getUploadPromise(file) {
8904
8846
  const opts = {
@@ -8907,14 +8849,13 @@ class ProcessUploadService extends UploadService {
8907
8849
  const processInstanceId = file.options.parentId;
8908
8850
  return this.contentApi.createRelatedContentOnProcessInstance(processInstanceId, file.file, opts);
8909
8851
  }
8910
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessUploadService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
8911
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessUploadService, providedIn: 'root' }); }
8852
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessUploadService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
8853
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessUploadService, providedIn: 'root' }); }
8912
8854
  }
8913
8855
  __decorate$2([
8914
- LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance())),
8915
- __metadata$2("design:type", ActivitiContentApi)
8856
+ LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance()))
8916
8857
  ], ProcessUploadService.prototype, "contentApi", void 0);
8917
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessUploadService, decorators: [{
8858
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessUploadService, decorators: [{
8918
8859
  type: Injectable,
8919
8860
  args: [{
8920
8861
  providedIn: 'root'
@@ -8927,9 +8868,6 @@ var __decorate$1 = (this && this.__decorate) || function (decorators, target, ke
8927
8868
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
8928
8869
  return c > 3 && r && Object.defineProperty(target, key, r), r;
8929
8870
  };
8930
- var __metadata$1 = (this && this.__metadata) || function (k, v) {
8931
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
8932
- };
8933
8871
  class TaskUploadService extends UploadService {
8934
8872
  getUploadPromise(file) {
8935
8873
  const opts = {
@@ -8938,14 +8876,13 @@ class TaskUploadService extends UploadService {
8938
8876
  const taskId = file.options.parentId;
8939
8877
  return this.contentApi.createRelatedContentOnTask(taskId, file.file, opts);
8940
8878
  }
8941
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskUploadService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
8942
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskUploadService, providedIn: 'root' }); }
8879
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskUploadService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
8880
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskUploadService, providedIn: 'root' }); }
8943
8881
  }
8944
8882
  __decorate$1([
8945
- LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance())),
8946
- __metadata$1("design:type", ActivitiContentApi)
8883
+ LazyApi((self) => new ActivitiContentApi(self.apiService.getInstance()))
8947
8884
  ], TaskUploadService.prototype, "contentApi", void 0);
8948
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskUploadService, decorators: [{
8885
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskUploadService, decorators: [{
8949
8886
  type: Injectable,
8950
8887
  args: [{
8951
8888
  providedIn: 'root'
@@ -9182,10 +9119,10 @@ class ProcessInstanceTasksComponent {
9182
9119
  onFormContentClick() {
9183
9120
  this.closeStartDialog();
9184
9121
  }
9185
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceTasksComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9186
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ProcessInstanceTasksComponent, isStandalone: true, selector: "adf-process-instance-tasks", inputs: { processInstanceDetails: "processInstanceDetails", showRefreshButton: "showRefreshButton" }, outputs: { error: "error", taskClick: "taskClick" }, viewQueries: [{ propertyName: "startDialog", first: true, predicate: ["startDialog"], descendants: true }, { propertyName: "taskDetails", first: true, predicate: ["taskDetails"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"showRefreshButton\" class=\"process-tasks-refresh\" >\n <button mat-icon-button (click)=\"onRefreshClicked()\">\n <mat-icon class=\"md-24\" [attr.aria-label]=\"'ADF_PROCESS_LIST.DETAILS.LABELS.REFRESH' | translate\">refresh</mat-icon>\n </button>\n</div>\n\n<!-- ACTIVE FORM -->\n\n<mat-chip-listbox>\n <span class=\"adf-chip-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASKS_ACTIVE'|translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{activeTasks?.length}}</mat-chip-option>\n</mat-chip-listbox>\n\n<div class=\"menu-container\" *ngIf=\"activeTasks?.length > 0\" data-automation-id=\"active-tasks\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" *ngFor=\"let task of activeTasks\" (click)=\"clickTask(task)\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{task.name || 'Nameless task'}}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user: getUserFullName(task.assignee), created: getFormatDate(task.created, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n</div>\n\n<!-- START FORM -->\n\n<div *ngIf=\"activeTasks?.length === 0\" data-automation-id=\"active-tasks-none\" class=\"no-results\">\n {{ 'ADF_PROCESS_LIST.DETAILS.TASKS.NO_ACTIVE' | translate }}\n</div>\n\n<div *ngIf=\"hasStartFormDefined()\">\n <span class=\"adf-activiti-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</span>\n\n <!--IF START TASK COMPLETED -->\n <div class=\"menu-container\" data-automation-id=\"start-form\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" (click)=\"clickStartTask()\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user:getUserFullName(processInstanceDetails.startedBy), created: getFormatDate(processInstanceDetails.started, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n </div>\n\n</div>\n\n<!-- COMPLETED FORM -->\n<mat-chip-listbox>\n <span class=\"adf-chip-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASKS_COMPLETED'|translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{completedTasks?.length}}</mat-chip-option>\n</mat-chip-listbox>\n\n<div class=\"menu-container\" *ngIf=\"completedTasks?.length > 0\" data-automation-id=\"completed-tasks\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" *ngFor=\"let task of completedTasks\" (click)=\"clickTask(task)\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{task.name || 'Nameless task'}}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user:getUserFullName(task.assignee), created: getFormatDate(task.created, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n</div>\n\n<div *ngIf=\"completedTasks?.length === 0\" data-automation-id=\"completed-tasks-none\" class=\"no-results\">\n {{ 'ADF_PROCESS_LIST.DETAILS.TASKS.NO_COMPLETED' | translate }}\n</div>\n\n<ng-template *ngIf=\"hasStartFormDefined()\" #startDialog>\n <div id=\"adf-start-process-dialog\" class=\"adf-start-process-dialog\">\n <h4 matDialogTitle>{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</h4>\n <div mat-dialog-content class=\"adf-start-process-dialog-content\">\n <adf-start-form [processId]=\"processId\"\n [showRefreshButton]=\"false\" [readOnlyForm]=\"true\"\n (formContentClicked)='onFormContentClick()' />\n </div>\n <div mat-dialog-actions class=\"adf-start-process-dialog-actions\">\n <button mat-button type=\"button\" (click)=\"closeStartDialog()\">{{ 'ADF_PROCESS_LIST.DETAILS.TASKS.TASK_CLOSE' | translate }}</button>\n </div>\n </div>\n</ng-template>\n", styles: [":host{width:100%}.activiti-label{font-weight:bolder;vertical-align:top}.adf-process-badge{pointer-events:none;outline:none}.adf-chip-label{position:relative;top:5px;margin-right:8px;font-weight:700}.menu-container{margin-bottom:32px}.activiti-label+.icon{position:relative;top:-2px}.task-details-dialog{position:fixed;top:50%;transform:translateY(-50%);width:40%}.process-tasks-refresh{float:right}.adf-start-process-dialog{width:100%;height:100%;display:flex;flex-direction:column}.adf-start-process-dialog-content{flex-grow:1}.adf-start-process-dialog-actions{display:flex;justify-content:flex-end}.no-results{margin-left:9px;font:var(--mat-sys-body-medium);display:block;padding:12px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: i4.MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemLine, selector: "[matListItemLine]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: StartFormComponent, selector: "adf-start-form", inputs: ["processDefinitionId", "processId", "showOutcomeButtons", "showRefreshButton", "readOnlyForm"], outputs: ["outcomeClick", "formContentClicked"] }] }); }
9122
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceTasksComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9123
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ProcessInstanceTasksComponent, isStandalone: true, selector: "adf-process-instance-tasks", inputs: { processInstanceDetails: "processInstanceDetails", showRefreshButton: "showRefreshButton" }, outputs: { error: "error", taskClick: "taskClick" }, viewQueries: [{ propertyName: "startDialog", first: true, predicate: ["startDialog"], descendants: true }, { propertyName: "taskDetails", first: true, predicate: ["taskDetails"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"showRefreshButton\" class=\"process-tasks-refresh\" >\n <button mat-icon-button (click)=\"onRefreshClicked()\">\n <mat-icon class=\"md-24\" [attr.aria-label]=\"'ADF_PROCESS_LIST.DETAILS.LABELS.REFRESH' | translate\">refresh</mat-icon>\n </button>\n</div>\n\n<!-- ACTIVE FORM -->\n\n<mat-chip-listbox>\n <span class=\"adf-chip-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASKS_ACTIVE'|translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{activeTasks?.length}}</mat-chip-option>\n</mat-chip-listbox>\n\n<div class=\"menu-container\" *ngIf=\"activeTasks?.length > 0\" data-automation-id=\"active-tasks\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" *ngFor=\"let task of activeTasks\" (click)=\"clickTask(task)\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{task.name || 'Nameless task'}}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user: getUserFullName(task.assignee), created: getFormatDate(task.created, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n</div>\n\n<!-- START FORM -->\n\n<div *ngIf=\"activeTasks?.length === 0\" data-automation-id=\"active-tasks-none\" class=\"no-results\">\n {{ 'ADF_PROCESS_LIST.DETAILS.TASKS.NO_ACTIVE' | translate }}\n</div>\n\n<div *ngIf=\"hasStartFormDefined()\">\n <span class=\"adf-activiti-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</span>\n\n <!--IF START TASK COMPLETED -->\n <div class=\"menu-container\" data-automation-id=\"start-form\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" (click)=\"clickStartTask()\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user:getUserFullName(processInstanceDetails.startedBy), created: getFormatDate(processInstanceDetails.started, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n </div>\n\n</div>\n\n<!-- COMPLETED FORM -->\n<mat-chip-listbox>\n <span class=\"adf-chip-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASKS_COMPLETED'|translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{completedTasks?.length}}</mat-chip-option>\n</mat-chip-listbox>\n\n<div class=\"menu-container\" *ngIf=\"completedTasks?.length > 0\" data-automation-id=\"completed-tasks\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" *ngFor=\"let task of completedTasks\" (click)=\"clickTask(task)\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{task.name || 'Nameless task'}}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user:getUserFullName(task.assignee), created: getFormatDate(task.created, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n</div>\n\n<div *ngIf=\"completedTasks?.length === 0\" data-automation-id=\"completed-tasks-none\" class=\"no-results\">\n {{ 'ADF_PROCESS_LIST.DETAILS.TASKS.NO_COMPLETED' | translate }}\n</div>\n\n<ng-template *ngIf=\"hasStartFormDefined()\" #startDialog>\n <div id=\"adf-start-process-dialog\" class=\"adf-start-process-dialog\">\n <h4 matDialogTitle>{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</h4>\n <div mat-dialog-content class=\"adf-start-process-dialog-content\">\n <adf-start-form [processId]=\"processId\"\n [showRefreshButton]=\"false\" [readOnlyForm]=\"true\"\n (formContentClicked)='onFormContentClick()' />\n </div>\n <div mat-dialog-actions class=\"adf-start-process-dialog-actions\">\n <button mat-button type=\"button\" (click)=\"closeStartDialog()\">{{ 'ADF_PROCESS_LIST.DETAILS.TASKS.TASK_CLOSE' | translate }}</button>\n </div>\n </div>\n</ng-template>\n", styles: [":host{width:100%}.activiti-label{font-weight:bolder;vertical-align:top}.adf-process-badge{pointer-events:none;outline:none}.adf-chip-label{position:relative;top:5px;margin-right:8px;font-weight:700}.menu-container{margin-bottom:32px}.activiti-label+.icon{position:relative;top:-2px}.task-details-dialog{position:fixed;top:50%;transform:translateY(-50%);width:40%}.process-tasks-refresh{float:right}.adf-start-process-dialog{width:100%;height:100%;display:flex;flex-direction:column}.adf-start-process-dialog-content{flex-grow:1}.adf-start-process-dialog-actions{display:flex;justify-content:flex-end}.no-results{margin-left:9px;font:var(--mat-sys-body-medium);display:block;padding:12px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i4.MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: i4.MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemLine, selector: "[matListItemLine]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: StartFormComponent, selector: "adf-start-form", inputs: ["processDefinitionId", "processId", "showOutcomeButtons", "showRefreshButton", "readOnlyForm"], outputs: ["outcomeClick", "formContentClicked"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
9187
9124
  }
9188
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceTasksComponent, decorators: [{
9125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceTasksComponent, decorators: [{
9189
9126
  type: Component,
9190
9127
  args: [{ selector: 'adf-process-instance-tasks', imports: [CommonModule, MatButtonModule, TranslatePipe, MatChipsModule, MatListModule, MatIconModule, MatDialogModule, StartFormComponent], template: "<div *ngIf=\"showRefreshButton\" class=\"process-tasks-refresh\" >\n <button mat-icon-button (click)=\"onRefreshClicked()\">\n <mat-icon class=\"md-24\" [attr.aria-label]=\"'ADF_PROCESS_LIST.DETAILS.LABELS.REFRESH' | translate\">refresh</mat-icon>\n </button>\n</div>\n\n<!-- ACTIVE FORM -->\n\n<mat-chip-listbox>\n <span class=\"adf-chip-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASKS_ACTIVE'|translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{activeTasks?.length}}</mat-chip-option>\n</mat-chip-listbox>\n\n<div class=\"menu-container\" *ngIf=\"activeTasks?.length > 0\" data-automation-id=\"active-tasks\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" *ngFor=\"let task of activeTasks\" (click)=\"clickTask(task)\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{task.name || 'Nameless task'}}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user: getUserFullName(task.assignee), created: getFormatDate(task.created, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n</div>\n\n<!-- START FORM -->\n\n<div *ngIf=\"activeTasks?.length === 0\" data-automation-id=\"active-tasks-none\" class=\"no-results\">\n {{ 'ADF_PROCESS_LIST.DETAILS.TASKS.NO_ACTIVE' | translate }}\n</div>\n\n<div *ngIf=\"hasStartFormDefined()\">\n <span class=\"adf-activiti-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</span>\n\n <!--IF START TASK COMPLETED -->\n <div class=\"menu-container\" data-automation-id=\"start-form\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" (click)=\"clickStartTask()\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user:getUserFullName(processInstanceDetails.startedBy), created: getFormatDate(processInstanceDetails.started, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n </div>\n\n</div>\n\n<!-- COMPLETED FORM -->\n<mat-chip-listbox>\n <span class=\"adf-chip-label\">{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASKS_COMPLETED'|translate }}</span>\n <mat-chip-option class=\"adf-process-badge\" selected=\"true\">{{completedTasks?.length}}</mat-chip-option>\n</mat-chip-listbox>\n\n<div class=\"menu-container\" *ngIf=\"completedTasks?.length > 0\" data-automation-id=\"completed-tasks\">\n <mat-list>\n <mat-list-item class=\"process-tasks__task-item\" *ngFor=\"let task of completedTasks\" (click)=\"clickTask(task)\">\n <mat-icon matListItemLine>assignment</mat-icon>\n <h3 matLine>{{task.name || 'Nameless task'}}</h3>\n <span matLine>\n {{ 'ADF_PROCESS_LIST.DETAILS.LABELS.TASK_SUBTITLE' | translate:{user:getUserFullName(task.assignee), created: getFormatDate(task.created, 'mediumDate') } }}\n </span>\n </mat-list-item>\n </mat-list>\n</div>\n\n<div *ngIf=\"completedTasks?.length === 0\" data-automation-id=\"completed-tasks-none\" class=\"no-results\">\n {{ 'ADF_PROCESS_LIST.DETAILS.TASKS.NO_COMPLETED' | translate }}\n</div>\n\n<ng-template *ngIf=\"hasStartFormDefined()\" #startDialog>\n <div id=\"adf-start-process-dialog\" class=\"adf-start-process-dialog\">\n <h4 matDialogTitle>{{ 'ADF_PROCESS_LIST.DETAILS.LABELS.START_FORM'|translate }}</h4>\n <div mat-dialog-content class=\"adf-start-process-dialog-content\">\n <adf-start-form [processId]=\"processId\"\n [showRefreshButton]=\"false\" [readOnlyForm]=\"true\"\n (formContentClicked)='onFormContentClick()' />\n </div>\n <div mat-dialog-actions class=\"adf-start-process-dialog-actions\">\n <button mat-button type=\"button\" (click)=\"closeStartDialog()\">{{ 'ADF_PROCESS_LIST.DETAILS.TASKS.TASK_CLOSE' | translate }}</button>\n </div>\n </div>\n</ng-template>\n", styles: [":host{width:100%}.activiti-label{font-weight:bolder;vertical-align:top}.adf-process-badge{pointer-events:none;outline:none}.adf-chip-label{position:relative;top:5px;margin-right:8px;font-weight:700}.menu-container{margin-bottom:32px}.activiti-label+.icon{position:relative;top:-2px}.task-details-dialog{position:fixed;top:50%;transform:translateY(-50%);width:40%}.process-tasks-refresh{float:right}.adf-start-process-dialog{width:100%;height:100%;display:flex;flex-direction:column}.adf-start-process-dialog-content{flex-grow:1}.adf-start-process-dialog-actions{display:flex;justify-content:flex-end}.no-results{margin-left:9px;font:var(--mat-sys-body-medium);display:block;padding:12px}\n"] }]
9191
9128
  }], ctorParameters: () => [], propDecorators: { processInstanceDetails: [{
@@ -9211,9 +9148,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
9211
9148
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9212
9149
  return c > 3 && r && Object.defineProperty(target, key, r), r;
9213
9150
  };
9214
- var __metadata = (this && this.__metadata) || function (k, v) {
9215
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9216
- };
9217
9151
  class CommentProcessService {
9218
9152
  constructor() {
9219
9153
  this.apiService = inject(AlfrescoApiService);
@@ -9251,14 +9185,13 @@ class CommentProcessService {
9251
9185
  getUserImage(userId) {
9252
9186
  return this.peopleProcessService.getUserImage(userId);
9253
9187
  }
9254
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CommentProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9255
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CommentProcessService, providedIn: 'root' }); }
9188
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: CommentProcessService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9189
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: CommentProcessService, providedIn: 'root' }); }
9256
9190
  }
9257
9191
  __decorate([
9258
- LazyApi((self) => new ActivitiCommentsApi(self.apiService.getInstance())),
9259
- __metadata("design:type", ActivitiCommentsApi)
9192
+ LazyApi((self) => new ActivitiCommentsApi(self.apiService.getInstance()))
9260
9193
  ], CommentProcessService.prototype, "commentsApi", void 0);
9261
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CommentProcessService, decorators: [{
9194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: CommentProcessService, decorators: [{
9262
9195
  type: Injectable,
9263
9196
  args: [{
9264
9197
  providedIn: 'root'
@@ -9282,15 +9215,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
9282
9215
  * limitations under the License.
9283
9216
  */
9284
9217
  class ProcessCommentsComponent {
9285
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessCommentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9286
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ProcessCommentsComponent, isStandalone: true, selector: "adf-process-instance-comments", inputs: { processInstanceId: "processInstanceId", readOnly: "readOnly" }, providers: [
9218
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessCommentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9219
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ProcessCommentsComponent, isStandalone: true, selector: "adf-process-instance-comments", inputs: { processInstanceId: "processInstanceId", readOnly: "readOnly" }, providers: [
9287
9220
  {
9288
9221
  provide: ADF_COMMENTS_SERVICE,
9289
9222
  useClass: CommentProcessService
9290
9223
  }
9291
9224
  ], ngImport: i0, template: "<adf-comments \n [readOnly]=\"readOnly\"\n [id]=\"processInstanceId\"\n/>\n", dependencies: [{ kind: "component", type: CommentsComponent, selector: "adf-comments", inputs: ["id", "readOnly"], outputs: ["error", "commentAdded"] }], encapsulation: i0.ViewEncapsulation.None }); }
9292
9225
  }
9293
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessCommentsComponent, decorators: [{
9226
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessCommentsComponent, decorators: [{
9294
9227
  type: Component,
9295
9228
  args: [{ selector: 'adf-process-instance-comments', imports: [CommentsComponent], providers: [
9296
9229
  {
@@ -9414,10 +9347,10 @@ class ProcessInstanceDetailsComponent {
9414
9347
  onShowProcessDiagram() {
9415
9348
  this.showProcessDiagram.emit({ value: this.processInstanceId });
9416
9349
  }
9417
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9418
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ProcessInstanceDetailsComponent, isStandalone: true, selector: "adf-process-instance-details", inputs: { processInstanceId: "processInstanceId", showTitle: "showTitle", showRefreshButton: "showRefreshButton" }, outputs: { processCancelled: "processCancelled", error: "error", taskClick: "taskClick", showProcessDiagram: "showProcessDiagram" }, viewQueries: [{ propertyName: "processInstanceHeader", first: true, predicate: ["processInstanceHeader"], descendants: true }, { propertyName: "tasksList", first: true, predicate: ["processInstanceTasks"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!processInstanceDetails\">{{ 'ADF_PROCESS_LIST.DETAILS.MESSAGES.NONE' | translate }}</div>\n<mat-card *ngIf=\"processInstanceDetails\">\n <mat-card-header>\n <mat-card-title>{{ getProcessNameOrDescription('medium') }}</mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <adf-process-instance-header\n #processInstanceHeader\n [processInstance]=\"processInstanceDetails\" />\n\n <button\n class=\"adf-in-medias-res-button\"\n id=\"show-diagram-button\"\n type=\"button\"\n mat-button\n mat-raised-button\n [disabled]=\"!isRunning()\"\n (click)=\"onShowProcessDiagram()\">{{ 'ADF_PROCESS_LIST.DETAILS.BUTTON.SHOW_DIAGRAM' | translate }}</button>\n\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n <adf-process-instance-tasks\n #processInstanceTasks\n [processInstanceDetails]=\"processInstanceDetails\"\n (taskClick)=\"onTaskClicked($event)\" />\n </mat-card-content>\n </mat-card>\n\n <div data-automation-id=\"header-status\" *ngIf=\"isRunning()\" class=\"adf-in-medias-res-button\">\n <button mat-button type=\"button\" (click)=\"cancelProcess()\">{{ 'ADF_PROCESS_LIST.DETAILS.BUTTON.CANCEL' | translate }}</button>\n </div>\n\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n <adf-process-instance-comments\n [readOnly]=\"false\"\n [processInstanceId]=\"processInstanceDetails.id\" />\n </mat-card-content>\n </mat-card>\n\n </mat-card-content>\n</mat-card>\n", styles: [":host{width:100%}.activiti-process-container{width:100%;min-height:100px;overflow:visible;padding:10px}.adf-comments-dialog{position:fixed;top:50%;transform:translateY(-50%);width:40%}.adf-in-medias-res-button{margin:16px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: ProcessCommentsComponent, selector: "adf-process-instance-comments", inputs: ["processInstanceId", "readOnly"] }, { kind: "component", type: ProcessInstanceTasksComponent, selector: "adf-process-instance-tasks", inputs: ["processInstanceDetails", "showRefreshButton"], outputs: ["error", "taskClick"] }, { kind: "component", type: ProcessInstanceHeaderComponent, selector: "adf-process-instance-header", inputs: ["processInstance"] }] }); }
9350
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9351
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ProcessInstanceDetailsComponent, isStandalone: true, selector: "adf-process-instance-details", inputs: { processInstanceId: "processInstanceId", showTitle: "showTitle", showRefreshButton: "showRefreshButton" }, outputs: { processCancelled: "processCancelled", error: "error", taskClick: "taskClick", showProcessDiagram: "showProcessDiagram" }, viewQueries: [{ propertyName: "processInstanceHeader", first: true, predicate: ["processInstanceHeader"], descendants: true }, { propertyName: "tasksList", first: true, predicate: ["processInstanceTasks"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!processInstanceDetails\">{{ 'ADF_PROCESS_LIST.DETAILS.MESSAGES.NONE' | translate }}</div>\n<mat-card *ngIf=\"processInstanceDetails\">\n <mat-card-header>\n <mat-card-title>{{ getProcessNameOrDescription('medium') }}</mat-card-title>\n </mat-card-header>\n <mat-card-content>\n <adf-process-instance-header\n #processInstanceHeader\n [processInstance]=\"processInstanceDetails\" />\n\n <button\n class=\"adf-in-medias-res-button\"\n id=\"show-diagram-button\"\n type=\"button\"\n mat-button\n mat-raised-button\n [disabled]=\"!isRunning()\"\n (click)=\"onShowProcessDiagram()\">{{ 'ADF_PROCESS_LIST.DETAILS.BUTTON.SHOW_DIAGRAM' | translate }}</button>\n\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n <adf-process-instance-tasks\n #processInstanceTasks\n [processInstanceDetails]=\"processInstanceDetails\"\n (taskClick)=\"onTaskClicked($event)\" />\n </mat-card-content>\n </mat-card>\n\n <div data-automation-id=\"header-status\" *ngIf=\"isRunning()\" class=\"adf-in-medias-res-button\">\n <button mat-button type=\"button\" (click)=\"cancelProcess()\">{{ 'ADF_PROCESS_LIST.DETAILS.BUTTON.CANCEL' | translate }}</button>\n </div>\n\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n <adf-process-instance-comments\n [readOnly]=\"false\"\n [processInstanceId]=\"processInstanceDetails.id\" />\n </mat-card-content>\n </mat-card>\n\n </mat-card-content>\n</mat-card>\n", styles: [":host{width:100%}.activiti-process-container{width:100%;min-height:100px;overflow:visible;padding:10px}.adf-comments-dialog{position:fixed;top:50%;transform:translateY(-50%);width:40%}.adf-in-medias-res-button{margin:16px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: ProcessCommentsComponent, selector: "adf-process-instance-comments", inputs: ["processInstanceId", "readOnly"] }, { kind: "component", type: ProcessInstanceTasksComponent, selector: "adf-process-instance-tasks", inputs: ["processInstanceDetails", "showRefreshButton"], outputs: ["error", "taskClick"] }, { kind: "component", type: ProcessInstanceHeaderComponent, selector: "adf-process-instance-header", inputs: ["processInstance"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
9419
9352
  }
9420
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessInstanceDetailsComponent, decorators: [{
9353
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessInstanceDetailsComponent, decorators: [{
9421
9354
  type: Component,
9422
9355
  args: [{ selector: 'adf-process-instance-details', imports: [
9423
9356
  CommonModule,
@@ -9781,10 +9714,10 @@ class StartProcessInstanceComponent {
9781
9714
  }
9782
9715
  return processName;
9783
9716
  }
9784
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartProcessInstanceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9785
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: StartProcessInstanceComponent, isStandalone: true, selector: "adf-start-process", inputs: { appId: "appId", title: "title", processDefinitionName: "processDefinitionName", variables: "variables", values: "values", name: "name", showSelectProcessDropdown: "showSelectProcessDropdown", showSelectApplicationDropdown: "showSelectApplicationDropdown", processFilterSelector: "processFilterSelector" }, outputs: { start: "start", cancel: "cancel", error: "error", processDefinitionSelection: "processDefinitionSelection", applicationSelection: "applicationSelection" }, viewQueries: [{ propertyName: "startForm", first: true, predicate: ["startForm"], descendants: true }, { propertyName: "inputAutocomplete", first: true, predicate: MatAutocompleteTrigger, descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n<ng-container *ngIf=\"isLoading(); then showLoadingTemplate; else showStartProcessTemplate\" />\n <ng-template #showLoadingTemplate>\n <mat-spinner class=\"adf-start-process-loading\" />\n </ng-template>\n<ng-template #showStartProcessTemplate>\n <ng-container *ngIf=\"hasApplications() || hasProcessDefinitions() ; else showEmptyTemplate\">\n <div class=\"adf-start-process\">\n <div class=\"adf-title\" *ngIf=\"title\">{{ title | translate}}</div>\n <div class=\"content\">\n <div class=\"adf-start-process-definition-container\">\n <mat-form-field *ngIf=\"showSelectApplicationDropdown\" class=\"adf-start-process-app-list\">\n <mat-label>{{ 'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECT_APPLICATION' | translate }}</mat-label>\n <mat-select\n placeholder=\"{{ 'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECT_APPLICATION' | translate }}\"\n (selectionChange)=\"onAppSelectionChange($event)\"\n [(ngModel)]=\"selectedApplication\"\n class=\"adf-start-process-definition-select\"\n data-automation-id=\"adf-start-process-apps-drop-down\">\n <mat-option\n *ngFor=\"let application of applications\"\n [value]=\"application\"\n role=\"option\"\n [attr.data-automation-id]=\"'adf-start-process-apps-option-' + application.name\">\n {{ application.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field class=\"adf-process-input-container\">\n <mat-label>{{'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.TYPE' | translate}}</mat-label>\n <input\n type=\"text\"\n matInput\n [formControl]=\"processDefinitionInput\"\n [matAutocomplete]=\"auto\"\n id=\"processDefinitionName\">\n <div class=\"adf-process-input-autocomplete\">\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n id=\"processDefinitionOptions\"\n [displayWith]=\"displayFn\">\n <mat-option *ngFor=\"let processDef of filteredProcessesDefinitions$ | async\" [value]=\"processDef.name\"\n (click)=\"processDefinitionSelectionChanged(processDef)\">\n {{ processDef.name }}\n </mat-option>\n </mat-autocomplete>\n <ng-container *ngIf=\"!isProcessDefinitionsLoading ; else showProcessDefLoadingTemplate\">\n <button\n class=\"adf-start-process-button\"\n id=\"adf-select-process-dropdown\"\n *ngIf=\"showSelectProcessDropdown\"\n mat-icon-button\n (click)=\"displayDropdown($event)\"\n [disabled]=\"isDropdownDisabled()\"\n [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.TYPE' | translate | uppercase\">\n <mat-icon>arrow_drop_down</mat-icon>\n </button>\n </ng-container>\n <ng-template #showProcessDefLoadingTemplate>\n <mat-spinner id=\"adf-select-process-spinner\" [diameter]=\"20\" />\n </ng-template>\n </div>\n </mat-form-field>\n </div>\n <mat-form-field class=\"adf-process-input-container adf-process-input-container-process-name\">\n <mat-label>{{'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.NAME' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"processNameInput\"\n id=\"processName\"\n required/>\n <mat-error *ngIf=\"nameController.hasError('maxlength')\">\n {{ 'ADF_PROCESS_LIST.START_PROCESS.ERROR.MAXIMUM_LENGTH' | translate : { characters : maxProcessNameLength } }}\n </mat-error>\n <mat-error *ngIf=\"nameController.hasError('required')\">\n {{ 'ADF_PROCESS_LIST.START_PROCESS.ERROR.PROCESS_NAME_REQUIRED' | translate }}\n </mat-error>\n <mat-error *ngIf=\"nameController.hasError('pattern')\">\n {{ 'ADF_PROCESS_LIST.START_PROCESS.ERROR.SPACE_VALIDATOR' | translate }}\n </mat-error>\n </mat-form-field>\n\n <ng-container *ngIf=\"!isProcessDefinitionsLoading ; else showStartFormLoadingTemplate\">\n <ng-container *ngIf=\"isProcessDefinitionSelected() ; else emptyProcessDefTemplate\">\n <ng-container *ngIf=\"hasStartForm(); else noStartFormTemplate\">\n <adf-start-form\n #startForm\n [data]=\"populatedFormData\"\n [disableStartProcessButton]=\"processNameInput.invalid\"\n [processDefinitionId]=\"selectedProcessDef.id\"\n (outcomeClick)=\"onOutcomeClick($event)\"\n [showRefreshButton]=\"false\">\n <button\n class=\"adf-start-process-button\"\n adf-form-custom-button\n mat-button\n (click)=\"cancelStartProcess()\"\n id=\"cancel_process\">\n {{'ADF_PROCESS_LIST.START_PROCESS.FORM.ACTION.CANCEL'| translate | uppercase}}\n </button>\n </adf-start-form>\n </ng-container>\n <ng-template #noStartFormTemplate>\n <adf-empty-content\n class=\"adf-start-process-empty-template\"\n [icon]=\"'assessment'\"\n [title]=\"'ADF_PROCESS_LIST.START_PROCESS.NO_START_FORM' | translate\" />\n </ng-template>\n </ng-container>\n <ng-template #emptyProcessDefTemplate>\n <adf-empty-content class=\"adf-start-process-empty-template\"\n [icon]=\"'assessment'\"\n [title]=\"'ADF_PROCESS_LIST.START_PROCESS.NO_PROCESS_DEF_SELECTED' | translate\" />\n </ng-template>\n </ng-container>\n <ng-template #showStartFormLoadingTemplate>\n <mat-spinner class=\"adf-start-process-loading\" />\n </ng-template>\n </div>\n <div class=\"adf-start-process-content-actions\" *ngIf=\"!hasStartForm()\">\n <button\n class=\"adf-start-process-button\"\n mat-button\n *ngIf=\"!hasStartForm()\"\n (click)=\"cancelStartProcess()\"\n id=\"cancel_process\">\n {{'ADF_PROCESS_LIST.START_PROCESS.FORM.ACTION.CANCEL'| translate | uppercase}}\n </button>\n <button\n mat-button\n *ngIf=\"!hasStartForm()\"\n [disabled]=\"!validateForm()\"\n (click)=\"startProcess()\"\n data-automation-id=\"btn-start\"\n id=\"button-start\"\n class=\"btn-start adf-start-process-button\">\n {{'ADF_PROCESS_LIST.START_PROCESS.FORM.ACTION.START' | translate | uppercase}}\n </button>\n </div>\n </div>\n </ng-container>\n <ng-template #showEmptyTemplate>\n <adf-empty-content class=\"adf-start-process-empty-template\"\n [icon]=\"'assessment'\"\n [title]=\"'ADF_PROCESS_LIST.START_PROCESS.NO_PROCESS_DEFINITIONS' | translate\" />\n </ng-template>\n</ng-template>\n", styles: [".adf-start-process{width:96%;margin-left:auto;margin-right:auto;margin-top:10px}.adf-start-process mat-form-field{width:100%}.adf-start-process-content-actions{padding-bottom:16px;padding-right:16px;text-align:right}.adf-start-process .mat-mdc-button{width:auto;padding:0 16px;margin:0 8px;white-space:nowrap}.adf-title{padding-bottom:1.25em}.adf-process-input-container mat-form-field{width:100%}.adf-process-input-container-process-name{margin-top:16px}.adf-process-input-autocomplete{display:flex;padding-bottom:2px}.adf-process-input-autocomplete .adf-start-process-button{position:absolute;right:-14px;top:10px}.adf-process-input-autocomplete mat-spinner{position:absolute;right:-1px;top:0}.adf-start-form-container .mat-mdc-card-content{margin-bottom:100px}.adf-start-form-container .mat-mdc-card-header{display:none}.adf-start-form-container .adf-start-form-card:has(.adf-start-form-header){box-shadow:none;padding:0}.adf-start-form-actions:has(.adf-start-form-actions-button){text-align:right;padding-bottom:16px}.adf-start-form-actions:has(.adf-start-form-actions-button) button{text-wrap:nowrap}.adf-start-process-definition-container{display:flex;flex-direction:row;justify-content:space-around;align-items:baseline}.adf-start-process-definition-container .adf-start-process-definition-select .mat-mdc-select-arrow-wrapper{transform:none}.adf-start-process-definition-container .adf-start-process-definition-select .mat-mdc-select-arrow-wrapper svg{fill:currentcolor}.adf-start-process-app-list{margin-right:10px}@media(max-width:599.9px){.adf-start-process{width:90%;margin-left:auto;margin-right:auto}}.adf-start-process-loading{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "component", type: StartFormComponent, selector: "adf-start-form", inputs: ["processDefinitionId", "processId", "showOutcomeButtons", "showRefreshButton", "readOnlyForm"], outputs: ["outcomeClick", "formContentClicked"] }], encapsulation: i0.ViewEncapsulation.None }); }
9717
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: StartProcessInstanceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9718
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: StartProcessInstanceComponent, isStandalone: true, selector: "adf-start-process", inputs: { appId: "appId", title: "title", processDefinitionName: "processDefinitionName", variables: "variables", values: "values", name: "name", showSelectProcessDropdown: "showSelectProcessDropdown", showSelectApplicationDropdown: "showSelectApplicationDropdown", processFilterSelector: "processFilterSelector" }, outputs: { start: "start", cancel: "cancel", error: "error", processDefinitionSelection: "processDefinitionSelection", applicationSelection: "applicationSelection" }, viewQueries: [{ propertyName: "startForm", first: true, predicate: ["startForm"], descendants: true }, { propertyName: "inputAutocomplete", first: true, predicate: MatAutocompleteTrigger, descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n<ng-container *ngIf=\"isLoading(); then showLoadingTemplate; else showStartProcessTemplate\" />\n <ng-template #showLoadingTemplate>\n <mat-spinner class=\"adf-start-process-loading\" />\n </ng-template>\n<ng-template #showStartProcessTemplate>\n <ng-container *ngIf=\"hasApplications() || hasProcessDefinitions() ; else showEmptyTemplate\">\n <div class=\"adf-start-process\">\n <div class=\"adf-title\" *ngIf=\"title\">{{ title | translate}}</div>\n <div class=\"content\">\n <div class=\"adf-start-process-definition-container\">\n <mat-form-field *ngIf=\"showSelectApplicationDropdown\" class=\"adf-start-process-app-list\">\n <mat-label>{{ 'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECT_APPLICATION' | translate }}</mat-label>\n <mat-select\n placeholder=\"{{ 'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.SELECT_APPLICATION' | translate }}\"\n (selectionChange)=\"onAppSelectionChange($event)\"\n [(ngModel)]=\"selectedApplication\"\n class=\"adf-start-process-definition-select\"\n data-automation-id=\"adf-start-process-apps-drop-down\">\n <mat-option\n *ngFor=\"let application of applications\"\n [value]=\"application\"\n role=\"option\"\n [attr.data-automation-id]=\"'adf-start-process-apps-option-' + application.name\">\n {{ application.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field class=\"adf-process-input-container\">\n <mat-label>{{'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.TYPE' | translate}}</mat-label>\n <input\n type=\"text\"\n matInput\n [formControl]=\"processDefinitionInput\"\n [matAutocomplete]=\"auto\"\n id=\"processDefinitionName\">\n <div class=\"adf-process-input-autocomplete\">\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n id=\"processDefinitionOptions\"\n [displayWith]=\"displayFn\">\n <mat-option *ngFor=\"let processDef of filteredProcessesDefinitions$ | async\" [value]=\"processDef.name\"\n (click)=\"processDefinitionSelectionChanged(processDef)\">\n {{ processDef.name }}\n </mat-option>\n </mat-autocomplete>\n <ng-container *ngIf=\"!isProcessDefinitionsLoading ; else showProcessDefLoadingTemplate\">\n <button\n class=\"adf-start-process-button\"\n id=\"adf-select-process-dropdown\"\n *ngIf=\"showSelectProcessDropdown\"\n mat-icon-button\n (click)=\"displayDropdown($event)\"\n [disabled]=\"isDropdownDisabled()\"\n [attr.aria-label]=\"'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.TYPE' | translate | uppercase\">\n <mat-icon>arrow_drop_down</mat-icon>\n </button>\n </ng-container>\n <ng-template #showProcessDefLoadingTemplate>\n <mat-spinner id=\"adf-select-process-spinner\" [diameter]=\"20\" />\n </ng-template>\n </div>\n </mat-form-field>\n </div>\n <mat-form-field class=\"adf-process-input-container adf-process-input-container-process-name\">\n <mat-label>{{'ADF_PROCESS_LIST.START_PROCESS.FORM.LABEL.NAME' | translate}}</mat-label>\n <input\n matInput\n [formControl]=\"processNameInput\"\n id=\"processName\"\n required/>\n <mat-error *ngIf=\"nameController.hasError('maxlength')\">\n {{ 'ADF_PROCESS_LIST.START_PROCESS.ERROR.MAXIMUM_LENGTH' | translate : { characters : maxProcessNameLength } }}\n </mat-error>\n <mat-error *ngIf=\"nameController.hasError('required')\">\n {{ 'ADF_PROCESS_LIST.START_PROCESS.ERROR.PROCESS_NAME_REQUIRED' | translate }}\n </mat-error>\n <mat-error *ngIf=\"nameController.hasError('pattern')\">\n {{ 'ADF_PROCESS_LIST.START_PROCESS.ERROR.SPACE_VALIDATOR' | translate }}\n </mat-error>\n </mat-form-field>\n\n <ng-container *ngIf=\"!isProcessDefinitionsLoading ; else showStartFormLoadingTemplate\">\n <ng-container *ngIf=\"isProcessDefinitionSelected() ; else emptyProcessDefTemplate\">\n <ng-container *ngIf=\"hasStartForm(); else noStartFormTemplate\">\n <adf-start-form\n #startForm\n [data]=\"populatedFormData\"\n [disableStartProcessButton]=\"processNameInput.invalid\"\n [processDefinitionId]=\"selectedProcessDef.id\"\n (outcomeClick)=\"onOutcomeClick($event)\"\n [showRefreshButton]=\"false\">\n <button\n class=\"adf-start-process-button\"\n adf-form-custom-button\n mat-button\n (click)=\"cancelStartProcess()\"\n id=\"cancel_process\">\n {{'ADF_PROCESS_LIST.START_PROCESS.FORM.ACTION.CANCEL'| translate | uppercase}}\n </button>\n </adf-start-form>\n </ng-container>\n <ng-template #noStartFormTemplate>\n <adf-empty-content\n class=\"adf-start-process-empty-template\"\n [icon]=\"'assessment'\"\n [title]=\"'ADF_PROCESS_LIST.START_PROCESS.NO_START_FORM' | translate\" />\n </ng-template>\n </ng-container>\n <ng-template #emptyProcessDefTemplate>\n <adf-empty-content class=\"adf-start-process-empty-template\"\n [icon]=\"'assessment'\"\n [title]=\"'ADF_PROCESS_LIST.START_PROCESS.NO_PROCESS_DEF_SELECTED' | translate\" />\n </ng-template>\n </ng-container>\n <ng-template #showStartFormLoadingTemplate>\n <mat-spinner class=\"adf-start-process-loading\" />\n </ng-template>\n </div>\n <div class=\"adf-start-process-content-actions\" *ngIf=\"!hasStartForm()\">\n <button\n class=\"adf-start-process-button\"\n mat-button\n *ngIf=\"!hasStartForm()\"\n (click)=\"cancelStartProcess()\"\n id=\"cancel_process\">\n {{'ADF_PROCESS_LIST.START_PROCESS.FORM.ACTION.CANCEL'| translate | uppercase}}\n </button>\n <button\n mat-button\n *ngIf=\"!hasStartForm()\"\n [disabled]=\"!validateForm()\"\n (click)=\"startProcess()\"\n data-automation-id=\"btn-start\"\n id=\"button-start\"\n class=\"btn-start adf-start-process-button\">\n {{'ADF_PROCESS_LIST.START_PROCESS.FORM.ACTION.START' | translate | uppercase}}\n </button>\n </div>\n </div>\n </ng-container>\n <ng-template #showEmptyTemplate>\n <adf-empty-content class=\"adf-start-process-empty-template\"\n [icon]=\"'assessment'\"\n [title]=\"'ADF_PROCESS_LIST.START_PROCESS.NO_PROCESS_DEFINITIONS' | translate\" />\n </ng-template>\n</ng-template>\n", styles: [".adf-start-process{width:96%;margin-left:auto;margin-right:auto;margin-top:10px}.adf-start-process mat-form-field{width:100%}.adf-start-process-content-actions{padding-bottom:16px;padding-right:16px;text-align:right}.adf-start-process .mat-mdc-button{width:auto;padding:0 16px;margin:0 8px;white-space:nowrap}.adf-title{padding-bottom:1.25em}.adf-process-input-container mat-form-field{width:100%}.adf-process-input-container-process-name{margin-top:16px}.adf-process-input-autocomplete{display:flex;padding-bottom:2px}.adf-process-input-autocomplete .adf-start-process-button{position:absolute;right:-14px;top:10px}.adf-process-input-autocomplete mat-spinner{position:absolute;right:-1px;top:0}.adf-start-form-container .mat-mdc-card-content{margin-bottom:100px}.adf-start-form-container .mat-mdc-card-header{display:none}.adf-start-form-container .adf-start-form-card:has(.adf-start-form-header){box-shadow:none;padding:0}.adf-start-form-actions:has(.adf-start-form-actions-button){text-align:right;padding-bottom:16px}.adf-start-form-actions:has(.adf-start-form-actions-button) button{text-wrap:nowrap}.adf-start-process-definition-container{display:flex;flex-direction:row;justify-content:space-around;align-items:baseline}.adf-start-process-definition-container .adf-start-process-definition-select .mat-mdc-select-arrow-wrapper{transform:none}.adf-start-process-definition-container .adf-start-process-definition-select .mat-mdc-select-arrow-wrapper svg{fill:currentcolor}.adf-start-process-app-list{margin-right:10px}@media(max-width:599.9px){.adf-start-process{width:90%;margin-left:auto;margin-right:auto}}.adf-start-process-loading{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "component", type: StartFormComponent, selector: "adf-start-form", inputs: ["processDefinitionId", "processId", "showOutcomeButtons", "showRefreshButton", "readOnlyForm"], outputs: ["outcomeClick", "formContentClicked"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
9786
9719
  }
9787
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartProcessInstanceComponent, decorators: [{
9720
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: StartProcessInstanceComponent, decorators: [{
9788
9721
  type: Component,
9789
9722
  args: [{ selector: 'adf-start-process', imports: [
9790
9723
  CommonModule,
@@ -10025,10 +9958,10 @@ class AppsListComponent {
10025
9958
  (f.tenantId !== undefined && app.tenantId === f.tenantId)))
10026
9959
  : apps;
10027
9960
  }
10028
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AppsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10029
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: AppsListComponent, isStandalone: true, selector: "adf-apps", inputs: { layoutType: "layoutType", defaultAppId: "defaultAppId", filtersAppId: "filtersAppId" }, outputs: { appClick: "appClick", error: "error" }, host: { classAttribute: "adf-apps" }, queries: [{ propertyName: "emptyCustomContent", first: true, predicate: CustomEmptyContentTemplateDirective, descendants: true }], ngImport: i0, template: "<div class=\"menu-container\" *ngIf=\"!isEmpty()\">\n <mat-list *ngIf=\"isList()\" class=\"adf-app-list\">\n <mat-list-item class=\"adf-app-list-item\" (click)=\"selectApp(app)\" (keyup.enter)=\"selectApp(app)\" *ngFor=\"let app of appList\" tabindex=\"0\" role=\"button\" title=\"{{app.name}}\">\n <mat-icon matListItemIcon>touch_app</mat-icon>\n <span matLine>{{getAppName(app) | translate}}</span>\n </mat-list-item>\n </mat-list>\n <div *ngIf=\"isGrid()\" class=\"adf-app-listgrid\">\n <div *ngFor=\"let app of appList\"\n class=\"adf-app-listgrid-item\">\n <mat-card appearance=\"outlined\" tabindex=\"0\"\n role=\"button\"\n class=\"adf-app-listgrid-item-card\"\n title=\"{{getAppName(app) | translate}}\"\n [ngClass]=\"[getTheme(app)]\"\n (click)=\"selectApp(app)\"\n (keyup.enter)=\"selectApp(app)\">\n <div class=\"adf-app-listgrid-item-card-logo\">\n <mat-icon class=\"adf-app-listgrid-item-card-logo-icon\">{{getBackgroundIcon(app)}}</mat-icon>\n </div>\n <div mat-card-title class=\"adf-app-listgrid-item-card-title\">\n <h1>{{getAppName(app) | translate}}</h1>\n </div>\n <mat-card-subtitle class=\"adf-app-listgrid-item-card-subtitle\">\n <div class=\"adf-line-clamp\">{{app.description}}</div>\n </mat-card-subtitle>\n\n <mat-card-actions class=\"adf-app-listgrid-item-card-actions\">\n <mat-icon class=\"adf-app-listgrid-item-card-actions-icon\" *ngIf=\"isSelected(app.id)\">done</mat-icon>\n </mat-card-actions>\n </mat-card>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"isLoading(); else empty\">\n <div class=\"adf-app-list-spinner\">\n <mat-progress-spinner mode=\"indeterminate\" />\n </div>\n</ng-container>\n\n<ng-template #empty>\n <div class=\"adf-app-list-empty\" *ngIf=\"isEmpty()\">\n <ng-content select=\"adf-custom-empty-content-template\"\n *ngIf=\"hasEmptyCustomContentTemplate; else defaultEmptyTemplate\"\n class=\"adf-custom-empty-template\" />\n\n <ng-template #defaultEmptyTemplate>\n <adf-empty-content\n icon=\"apps\"\n [title]=\"'ADF_TASK_LIST.APPS.TITLE' | translate\"\n [subtitle]=\"'ADF_TASK_LIST.APPS.SUBTITLE' | translate\" />\n </ng-template>\n </div>\n</ng-template>\n", styles: [".adf-app-list-item{cursor:pointer}.adf-app-list-spinner,.adf-app-list-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;height:85vh}.adf-app-list-spinner .mat-mdc-progress-spinner,.adf-app-list-empty .mat-mdc-progress-spinner{margin:0 auto}.adf-apps{width:100%}.adf-apps .adf-app-listgrid{padding:8px;flex-flow:row wrap;display:flex}.adf-apps .adf-app-listgrid-item{outline:none;padding:8px;box-sizing:border-box;flex:1 1 33.3333%;max-width:33.3333%}@media(max-width:959.9px){.adf-apps .adf-app-listgrid-item{flex:1 1 50%;max-width:50%}}@media(max-width:599.9px){.adf-apps .adf-app-listgrid-item{flex:1 1 100%;max-width:100%}}.adf-apps .adf-app-listgrid-item-card.theme-1{background-color:#269abc}.adf-apps .adf-app-listgrid-item-card.theme-1 .adf-app-listgrid-item-card-logo-icon{color:#168aac}.adf-apps .adf-app-listgrid-item-card.theme-2{background-color:#7da9b0}.adf-apps .adf-app-listgrid-item-card.theme-2 .adf-app-listgrid-item-card-logo-icon{color:#6d99a0}.adf-apps .adf-app-listgrid-item-card.theme-3{background-color:#7689ab}.adf-apps .adf-app-listgrid-item-card.theme-3 .adf-app-listgrid-item-card-logo-icon{color:#66799b}.adf-apps .adf-app-listgrid-item-card.theme-4{background-color:#c74e3e}.adf-apps .adf-app-listgrid-item-card.theme-4 .adf-app-listgrid-item-card-logo-icon{color:#b73e2e}.adf-apps .adf-app-listgrid-item-card.theme-5{background-color:#fab96c}.adf-apps .adf-app-listgrid-item-card.theme-5 .adf-app-listgrid-item-card-logo-icon{color:#eaa95c}.adf-apps .adf-app-listgrid-item-card.theme-6{background-color:#759d4c}.adf-apps .adf-app-listgrid-item-card.theme-6 .adf-app-listgrid-item-card-logo-icon{color:#658d3c}.adf-apps .adf-app-listgrid-item-card.theme-7{background-color:#b1b489}.adf-apps .adf-app-listgrid-item-card.theme-7 .adf-app-listgrid-item-card-logo-icon{color:#a1a479}.adf-apps .adf-app-listgrid-item-card.theme-8{background-color:#a17299}.adf-apps .adf-app-listgrid-item-card.theme-8 .adf-app-listgrid-item-card-logo-icon{color:#916289}.adf-apps .adf-app-listgrid-item-card.theme-9{background-color:#696c67}.adf-apps .adf-app-listgrid-item-card.theme-9 .adf-app-listgrid-item-card-logo-icon{color:#595c57}.adf-apps .adf-app-listgrid-item-card.theme-10{background-color:#cabb33}.adf-apps .adf-app-listgrid-item-card.theme-10 .adf-app-listgrid-item-card-logo-icon{color:#baab23}.adf-apps .adf-app-listgrid-item-card{outline:none;flex-direction:column;display:flex;transition:transform .28s cubic-bezier(.4,0,.2,1),box-shadow .28s cubic-bezier(.4,0,.2,1);min-height:200px;padding:0}.adf-apps .adf-app-listgrid-item-card:hover{box-shadow:var(--mat-sys-level3);cursor:pointer;transform:scale(1.015)}.adf-apps .adf-app-listgrid-item-card-logo{position:absolute;right:20px;top:20px;padding:16px;z-index:9}.adf-apps .adf-app-listgrid-item-card-logo-icon{font-size:70px;width:1em;height:1em}.adf-apps .adf-app-listgrid-item-card-title{padding:16px;margin-bottom:0;z-index:9999}.adf-apps .adf-app-listgrid-item-card-title h1{width:80%;font:var(--mat-sys-headline-medium);margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.adf-apps .adf-app-listgrid-item-card-subtitle{z-index:9999;padding:16px;flex:1 0 auto}.adf-apps .adf-app-listgrid-item-card-subtitle .adf-line-clamp{position:relative;line-height:1.25;padding:0;overflow:hidden;text-overflow:ellipsis}.adf-apps .adf-app-listgrid-item-card-actions:has(.adf-app-listgrid-item-card-actions-icon){padding:0 16px 16px;border-top:1px solid var(--mat-sys-outline-variant);min-height:48px;box-sizing:border-box;margin-left:0;margin-right:0}.adf-apps .adf-app-listgrid-item-card-actions:has(.adf-app-listgrid-item-card-actions-icon):last-child{margin-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "ngmodule", type: MatLineModule }, { kind: "directive", type: i3$6.MatLine, selector: "[mat-line], [matLine]" }], encapsulation: i0.ViewEncapsulation.None }); }
9961
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AppsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9962
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: AppsListComponent, isStandalone: true, selector: "adf-apps", inputs: { layoutType: "layoutType", defaultAppId: "defaultAppId", filtersAppId: "filtersAppId" }, outputs: { appClick: "appClick", error: "error" }, host: { classAttribute: "adf-apps" }, queries: [{ propertyName: "emptyCustomContent", first: true, predicate: CustomEmptyContentTemplateDirective, descendants: true }], ngImport: i0, template: "<div class=\"menu-container\" *ngIf=\"!isEmpty()\">\n <mat-list *ngIf=\"isList()\" class=\"adf-app-list\">\n <mat-list-item class=\"adf-app-list-item\" (click)=\"selectApp(app)\" (keyup.enter)=\"selectApp(app)\" *ngFor=\"let app of appList\" tabindex=\"0\" role=\"button\" title=\"{{app.name}}\">\n <mat-icon matListItemIcon>touch_app</mat-icon>\n <span matLine>{{getAppName(app) | translate}}</span>\n </mat-list-item>\n </mat-list>\n <div *ngIf=\"isGrid()\" class=\"adf-app-listgrid\">\n <div *ngFor=\"let app of appList\"\n class=\"adf-app-listgrid-item\">\n <mat-card appearance=\"outlined\" tabindex=\"0\"\n role=\"button\"\n class=\"adf-app-listgrid-item-card\"\n title=\"{{getAppName(app) | translate}}\"\n [ngClass]=\"[getTheme(app)]\"\n (click)=\"selectApp(app)\"\n (keyup.enter)=\"selectApp(app)\">\n <div class=\"adf-app-listgrid-item-card-logo\">\n <mat-icon class=\"adf-app-listgrid-item-card-logo-icon\">{{getBackgroundIcon(app)}}</mat-icon>\n </div>\n <div mat-card-title class=\"adf-app-listgrid-item-card-title\">\n <h1>{{getAppName(app) | translate}}</h1>\n </div>\n <mat-card-subtitle class=\"adf-app-listgrid-item-card-subtitle\">\n <div class=\"adf-line-clamp\">{{app.description}}</div>\n </mat-card-subtitle>\n\n <mat-card-actions class=\"adf-app-listgrid-item-card-actions\">\n <mat-icon class=\"adf-app-listgrid-item-card-actions-icon\" *ngIf=\"isSelected(app.id)\">done</mat-icon>\n </mat-card-actions>\n </mat-card>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"isLoading(); else empty\">\n <div class=\"adf-app-list-spinner\">\n <mat-progress-spinner mode=\"indeterminate\" />\n </div>\n</ng-container>\n\n<ng-template #empty>\n <div class=\"adf-app-list-empty\" *ngIf=\"isEmpty()\">\n <ng-content select=\"adf-custom-empty-content-template\"\n *ngIf=\"hasEmptyCustomContentTemplate; else defaultEmptyTemplate\"\n class=\"adf-custom-empty-template\" />\n\n <ng-template #defaultEmptyTemplate>\n <adf-empty-content\n icon=\"apps\"\n [title]=\"'ADF_TASK_LIST.APPS.TITLE' | translate\"\n [subtitle]=\"'ADF_TASK_LIST.APPS.SUBTITLE' | translate\" />\n </ng-template>\n </div>\n</ng-template>\n", styles: [".adf-app-list-item{cursor:pointer}.adf-app-list-spinner,.adf-app-list-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;height:85vh}.adf-app-list-spinner .mat-mdc-progress-spinner,.adf-app-list-empty .mat-mdc-progress-spinner{margin:0 auto}.adf-apps{width:100%}.adf-apps .adf-app-listgrid{padding:8px;flex-flow:row wrap;display:flex}.adf-apps .adf-app-listgrid-item{outline:none;padding:8px;box-sizing:border-box;flex:1 1 33.3333%;max-width:33.3333%}@media(max-width:959.9px){.adf-apps .adf-app-listgrid-item{flex:1 1 50%;max-width:50%}}@media(max-width:599.9px){.adf-apps .adf-app-listgrid-item{flex:1 1 100%;max-width:100%}}.adf-apps .adf-app-listgrid-item-card.theme-1{background-color:#269abc}.adf-apps .adf-app-listgrid-item-card.theme-1 .adf-app-listgrid-item-card-logo-icon{color:#168aac}.adf-apps .adf-app-listgrid-item-card.theme-2{background-color:#7da9b0}.adf-apps .adf-app-listgrid-item-card.theme-2 .adf-app-listgrid-item-card-logo-icon{color:#6d99a0}.adf-apps .adf-app-listgrid-item-card.theme-3{background-color:#7689ab}.adf-apps .adf-app-listgrid-item-card.theme-3 .adf-app-listgrid-item-card-logo-icon{color:#66799b}.adf-apps .adf-app-listgrid-item-card.theme-4{background-color:#c74e3e}.adf-apps .adf-app-listgrid-item-card.theme-4 .adf-app-listgrid-item-card-logo-icon{color:#b73e2e}.adf-apps .adf-app-listgrid-item-card.theme-5{background-color:#fab96c}.adf-apps .adf-app-listgrid-item-card.theme-5 .adf-app-listgrid-item-card-logo-icon{color:#eaa95c}.adf-apps .adf-app-listgrid-item-card.theme-6{background-color:#759d4c}.adf-apps .adf-app-listgrid-item-card.theme-6 .adf-app-listgrid-item-card-logo-icon{color:#658d3c}.adf-apps .adf-app-listgrid-item-card.theme-7{background-color:#b1b489}.adf-apps .adf-app-listgrid-item-card.theme-7 .adf-app-listgrid-item-card-logo-icon{color:#a1a479}.adf-apps .adf-app-listgrid-item-card.theme-8{background-color:#a17299}.adf-apps .adf-app-listgrid-item-card.theme-8 .adf-app-listgrid-item-card-logo-icon{color:#916289}.adf-apps .adf-app-listgrid-item-card.theme-9{background-color:#696c67}.adf-apps .adf-app-listgrid-item-card.theme-9 .adf-app-listgrid-item-card-logo-icon{color:#595c57}.adf-apps .adf-app-listgrid-item-card.theme-10{background-color:#cabb33}.adf-apps .adf-app-listgrid-item-card.theme-10 .adf-app-listgrid-item-card-logo-icon{color:#baab23}.adf-apps .adf-app-listgrid-item-card{outline:none;flex-direction:column;display:flex;transition:transform .28s cubic-bezier(.4,0,.2,1),box-shadow .28s cubic-bezier(.4,0,.2,1);min-height:200px;padding:0}.adf-apps .adf-app-listgrid-item-card:hover{box-shadow:var(--mat-sys-level3);cursor:pointer;transform:scale(1.015)}.adf-apps .adf-app-listgrid-item-card-logo{position:absolute;right:20px;top:20px;padding:16px;z-index:9}.adf-apps .adf-app-listgrid-item-card-logo-icon{font-size:70px;width:1em;height:1em}.adf-apps .adf-app-listgrid-item-card-title{padding:16px;margin-bottom:0;z-index:9999}.adf-apps .adf-app-listgrid-item-card-title h1{width:80%;font:var(--mat-sys-headline-medium);margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.adf-apps .adf-app-listgrid-item-card-subtitle{z-index:9999;padding:16px;flex:1 0 auto}.adf-apps .adf-app-listgrid-item-card-subtitle .adf-line-clamp{position:relative;line-height:1.25;padding:0;overflow:hidden;text-overflow:ellipsis}.adf-apps .adf-app-listgrid-item-card-actions:has(.adf-app-listgrid-item-card-actions-icon){padding:0 16px 16px;border-top:1px solid var(--mat-sys-outline-variant);min-height:48px;box-sizing:border-box;margin-left:0;margin-right:0}.adf-apps .adf-app-listgrid-item-card-actions:has(.adf-app-listgrid-item-card-actions-icon):last-child{margin-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "ngmodule", type: MatLineModule }, { kind: "directive", type: i3$6.MatLine, selector: "[mat-line], [matLine]" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
10030
9963
  }
10031
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AppsListComponent, decorators: [{
9964
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AppsListComponent, decorators: [{
10032
9965
  type: Component,
10033
9966
  args: [{ selector: 'adf-apps', imports: [
10034
9967
  CommonModule,
@@ -10083,10 +10016,10 @@ class SelectAppsDialogComponent {
10083
10016
  onStart() {
10084
10017
  this.dialogRef.close(this.selectedProcess);
10085
10018
  }
10086
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: SelectAppsDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10087
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: SelectAppsDialogComponent, isStandalone: true, selector: "adf-select-apps-dialog", ngImport: i0, template: "<header mat-dialog-title id=\"adf-select-app-dialog-title\">{{'APP.DIALOG.TITLE' | translate}}</header>\n<section mat-dialog-content>\n\n <mat-select id=\"adf-select-app-dialog-dropdown\" placeholder=\"{{'APP.DIALOG.LIST' | translate}}\" [(value)]=\"selectedProcess\" >\n <mat-option *ngFor=\"let currentProcessApp of processApps\" [value]=\"currentProcessApp\">\n {{ currentProcessApp.name }}\n </mat-option>\n </mat-select>\n\n</section>\n<footer mat-dialog-actions class=\"adf-select-apps-dialog-actions\">\n <button mat-button (click)=\"onStart()\">{{'APP.DIALOG.START' | translate}}</button>\n</footer>\n", styles: ["adf-select-apps-dialog .adf-select-apps-dialog-actions{display:flex;max-height:100%;place-content:center flex-end;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }], encapsulation: i0.ViewEncapsulation.None }); }
10019
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SelectAppsDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10020
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: SelectAppsDialogComponent, isStandalone: true, selector: "adf-select-apps-dialog", ngImport: i0, template: "<header mat-dialog-title id=\"adf-select-app-dialog-title\">{{'APP.DIALOG.TITLE' | translate}}</header>\n<section mat-dialog-content>\n\n <mat-select id=\"adf-select-app-dialog-dropdown\" placeholder=\"{{'APP.DIALOG.LIST' | translate}}\" [(value)]=\"selectedProcess\" >\n <mat-option *ngFor=\"let currentProcessApp of processApps\" [value]=\"currentProcessApp\">\n {{ currentProcessApp.name }}\n </mat-option>\n </mat-select>\n\n</section>\n<footer mat-dialog-actions class=\"adf-select-apps-dialog-actions\">\n <button mat-button (click)=\"onStart()\">{{'APP.DIALOG.START' | translate}}</button>\n</footer>\n", styles: ["adf-select-apps-dialog .adf-select-apps-dialog-actions{display:flex;max-height:100%;place-content:center flex-end;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2$6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2$6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2$6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
10088
10021
  }
10089
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: SelectAppsDialogComponent, decorators: [{
10022
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SelectAppsDialogComponent, decorators: [{
10090
10023
  type: Component,
10091
10024
  args: [{ selector: 'adf-select-apps-dialog', imports: [CommonModule, TranslatePipe, MatDialogModule, MatSelectModule, MatButtonModule], encapsulation: ViewEncapsulation.None, template: "<header mat-dialog-title id=\"adf-select-app-dialog-title\">{{'APP.DIALOG.TITLE' | translate}}</header>\n<section mat-dialog-content>\n\n <mat-select id=\"adf-select-app-dialog-dropdown\" placeholder=\"{{'APP.DIALOG.LIST' | translate}}\" [(value)]=\"selectedProcess\" >\n <mat-option *ngFor=\"let currentProcessApp of processApps\" [value]=\"currentProcessApp\">\n {{ currentProcessApp.name }}\n </mat-option>\n </mat-select>\n\n</section>\n<footer mat-dialog-actions class=\"adf-select-apps-dialog-actions\">\n <button mat-button (click)=\"onStart()\">{{'APP.DIALOG.START' | translate}}</button>\n</footer>\n", styles: ["adf-select-apps-dialog .adf-select-apps-dialog-actions{display:flex;max-height:100%;place-content:center flex-end;align-items:center}\n"] }]
10092
10025
  }], ctorParameters: () => [] });
@@ -10278,10 +10211,10 @@ class TaskAttachmentListComponent {
10278
10211
  });
10279
10212
  }
10280
10213
  }
10281
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskAttachmentListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10282
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: TaskAttachmentListComponent, isStandalone: true, selector: "adf-task-attachment-list", inputs: { taskId: "taskId", disabled: "disabled" }, outputs: { attachmentClick: "attachmentClick", success: "success", error: "error" }, queries: [{ propertyName: "emptyTemplate", first: true, predicate: EmptyListComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<adf-datatable [rows]=\"attachments\"\n [actions]=\"true\"\n [loading]=\"isLoading\"\n (rowDblClick)=\"openContent($event)\"\n (showRowActionsMenu)=\"onShowRowActionsMenu($event)\"\n (executeRowAction)=\"onExecuteRowAction($event)\">\n <adf-no-content-template>\n <ng-template>\n <ng-content *ngIf=\"hasCustomTemplate; else defaultEmptyList\" class=\"adf-custom-empty-template\" />\n <ng-template #defaultEmptyList>\n <adf-empty-list>\n <div adf-empty-list-header class=\"adf-empty-list-header\">\n {{'ADF_TASK_LIST.ATTACHMENT.EMPTY.HEADER' | translate}}\n </div>\n </adf-empty-list>\n </ng-template>\n </ng-template>\n </adf-no-content-template>\n\n <data-columns>\n <data-column key=\"icon\" type=\"image\" [sr-title]=\"'ADF_TASK_LIST.PROPERTIES.THUMBNAIL'\" [sortable]=\"false\" />\n <data-column key=\"name\" type=\"text\" title=\"ADF_TASK_LIST.PROPERTIES.NAME\" class=\"adf-full-width adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"created\" type=\"date\" format=\"shortDate\" title=\"ADF_TASK_LIST.PROPERTIES.CREATED\" />\n </data-columns>\n <adf-loading-content-template>\n <ng-template>\n <!--Add your custom loading template here-->\n <mat-progress-spinner class=\"adf-attachment-list-loading-margin\" [mode]=\"'indeterminate'\" />\n </ng-template>\n </adf-loading-content-template>\n</adf-datatable>\n", styles: [".adf-attachment-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}.adf-empty-list-header{height:32px;color:var(--mat-sys-on-secondary-container);font:var(--mat-sys-headline-medium)}.adf-empty-list-drag_drop{min-height:56px;font:var(--mat-sys-headline-large);margin-top:40px;word-break:break-all;white-space:pre-line}@media(max-width:599.9px){.adf-empty-list-drag_drop{font-size:40px}}.adf-empty-list__any-files-here-to-add{min-height:24px;color:var(--mat-sys-on-surface);font:var(--mat-sys-body-large);margin-top:17px;word-break:break-all;white-space:pre-line}.adf-empty-list__empty_doc_lib{width:565px;max-width:100%;height:161px;object-fit:contain;margin-top:17px}@media(max-width:599.9px){.adf-empty-list__empty_doc_lib{width:250px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: EmptyListHeaderDirective, selector: "[adf-empty-list-header]" }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "component", type: EmptyListComponent, selector: "adf-empty-list" }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }], encapsulation: i0.ViewEncapsulation.None }); }
10214
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskAttachmentListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10215
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: TaskAttachmentListComponent, isStandalone: true, selector: "adf-task-attachment-list", inputs: { taskId: "taskId", disabled: "disabled" }, outputs: { attachmentClick: "attachmentClick", success: "success", error: "error" }, queries: [{ propertyName: "emptyTemplate", first: true, predicate: EmptyListComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<adf-datatable [rows]=\"attachments\"\n [actions]=\"true\"\n [loading]=\"isLoading\"\n (rowDblClick)=\"openContent($event)\"\n (showRowActionsMenu)=\"onShowRowActionsMenu($event)\"\n (executeRowAction)=\"onExecuteRowAction($event)\">\n <adf-no-content-template>\n <ng-template>\n <ng-content *ngIf=\"hasCustomTemplate; else defaultEmptyList\" class=\"adf-custom-empty-template\" />\n <ng-template #defaultEmptyList>\n <adf-empty-list>\n <div adf-empty-list-header class=\"adf-empty-list-header\">\n {{'ADF_TASK_LIST.ATTACHMENT.EMPTY.HEADER' | translate}}\n </div>\n </adf-empty-list>\n </ng-template>\n </ng-template>\n </adf-no-content-template>\n\n <data-columns>\n <data-column key=\"icon\" type=\"image\" [sr-title]=\"'ADF_TASK_LIST.PROPERTIES.THUMBNAIL'\" [sortable]=\"false\" />\n <data-column key=\"name\" type=\"text\" title=\"ADF_TASK_LIST.PROPERTIES.NAME\" class=\"adf-full-width adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"created\" type=\"date\" format=\"shortDate\" title=\"ADF_TASK_LIST.PROPERTIES.CREATED\" />\n </data-columns>\n <adf-loading-content-template>\n <ng-template>\n <!--Add your custom loading template here-->\n <mat-progress-spinner class=\"adf-attachment-list-loading-margin\" [mode]=\"'indeterminate'\" />\n </ng-template>\n </adf-loading-content-template>\n</adf-datatable>\n", styles: [".adf-attachment-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}.adf-empty-list-header{height:32px;color:var(--mat-sys-on-secondary-container);font:var(--mat-sys-headline-medium)}.adf-empty-list-drag_drop{min-height:56px;font:var(--mat-sys-headline-large);margin-top:40px;word-break:break-all;white-space:pre-line}@media(max-width:599.9px){.adf-empty-list-drag_drop{font-size:40px}}.adf-empty-list__any-files-here-to-add{min-height:24px;color:var(--mat-sys-on-surface);font:var(--mat-sys-body-large);margin-top:17px;word-break:break-all;white-space:pre-line}.adf-empty-list__empty_doc_lib{width:565px;max-width:100%;height:161px;object-fit:contain;margin-top:17px}@media(max-width:599.9px){.adf-empty-list__empty_doc_lib{width:250px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: EmptyListHeaderDirective, selector: "[adf-empty-list-header]" }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "component", type: EmptyListComponent, selector: "adf-empty-list" }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
10283
10216
  }
10284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskAttachmentListComponent, decorators: [{
10217
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: TaskAttachmentListComponent, decorators: [{
10285
10218
  type: Component,
10286
10219
  args: [{ selector: 'adf-task-attachment-list', imports: [
10287
10220
  CommonModule,
@@ -10465,10 +10398,10 @@ class ProcessAttachmentListComponent {
10465
10398
  });
10466
10399
  }
10467
10400
  }
10468
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessAttachmentListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10469
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: ProcessAttachmentListComponent, isStandalone: true, selector: "adf-process-attachment-list", inputs: { processInstanceId: "processInstanceId", disabled: "disabled" }, outputs: { attachmentClick: "attachmentClick", success: "success", error: "error" }, queries: [{ propertyName: "emptyTemplate", first: true, predicate: EmptyListComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<adf-datatable [rows]=\"attachments\"\n [actions]=\"true\"\n [loading]=\"isLoading\"\n (rowDblClick)=\"openContent($event)\"\n (showRowActionsMenu)=\"onShowRowActionsMenu($event)\"\n (executeRowAction)=\"onExecuteRowAction($event)\">\n\n <adf-no-content-template>\n <ng-template>\n <ng-content *ngIf=\"hasCustomTemplate; else defaultEmptyList\" class=\"adf-custom-empty-template\" />\n <ng-template #defaultEmptyList>\n <adf-empty-list>\n <div adf-empty-list-header class=\"adf-empty-list-header\">\n {{'ADF_PROCESS_LIST.PROCESS-ATTACHMENT.EMPTY.HEADER' | translate}}\n </div>\n </adf-empty-list>\n </ng-template>\n </ng-template>\n </adf-no-content-template>\n\n <data-columns>\n <data-column key=\"icon\" type=\"image\" [sr-title]=\"'ADF_PROCESS_LIST.PROPERTIES.THUMBNAIL'\" [sortable]=\"false\" />\n <data-column key=\"name\" type=\"text\" title=\"{{'ADF_PROCESS_LIST.PROPERTIES.NAME' | translate}}\" class=\"adf-full-width adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"created\" type=\"date\" format=\"shortDate\" title=\"{{'ADF_PROCESS_LIST.PROPERTIES.CREATED' | translate}}\" />\n </data-columns>\n\n <adf-loading-content-template>\n <ng-template>\n <!--Add your custom loading template here-->\n <mat-progress-spinner class=\"adf-attachment-list-loading-margin\" [mode]=\"'indeterminate'\" />\n </ng-template>\n </adf-loading-content-template>\n\n</adf-datatable>\n", styles: [".adf-attachment-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}.adf-empty-list-header{height:32px;color:var(--mat-sys-on-secondary-container);font:var(--mat-sys-headline-medium)}.adf-empty-list-drag_drop{min-height:56px;color:var(--mat-sys-on-surface);font:var(--mat-sys-headline-large);margin-top:40px;word-break:break-all;white-space:pre-line}.adf-empty-list__any-files-here-to-add{min-height:24px;color:var(--mat-sys-on-surface);font:var(--mat-sys-body-large);margin-top:17px;word-break:break-all;white-space:pre-line}.adf-empty-list__empty_doc_lib{width:565px;height:161px;object-fit:contain;margin-top:17px}@media(max-width:599.9px){.adf-empty-list__empty_doc_lib{width:250px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }, { kind: "component", type: EmptyListComponent, selector: "adf-empty-list" }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }], encapsulation: i0.ViewEncapsulation.None }); }
10401
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessAttachmentListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10402
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ProcessAttachmentListComponent, isStandalone: true, selector: "adf-process-attachment-list", inputs: { processInstanceId: "processInstanceId", disabled: "disabled" }, outputs: { attachmentClick: "attachmentClick", success: "success", error: "error" }, queries: [{ propertyName: "emptyTemplate", first: true, predicate: EmptyListComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<adf-datatable [rows]=\"attachments\"\n [actions]=\"true\"\n [loading]=\"isLoading\"\n (rowDblClick)=\"openContent($event)\"\n (showRowActionsMenu)=\"onShowRowActionsMenu($event)\"\n (executeRowAction)=\"onExecuteRowAction($event)\">\n\n <adf-no-content-template>\n <ng-template>\n <ng-content *ngIf=\"hasCustomTemplate; else defaultEmptyList\" class=\"adf-custom-empty-template\" />\n <ng-template #defaultEmptyList>\n <adf-empty-list>\n <div adf-empty-list-header class=\"adf-empty-list-header\">\n {{'ADF_PROCESS_LIST.PROCESS-ATTACHMENT.EMPTY.HEADER' | translate}}\n </div>\n </adf-empty-list>\n </ng-template>\n </ng-template>\n </adf-no-content-template>\n\n <data-columns>\n <data-column key=\"icon\" type=\"image\" [sr-title]=\"'ADF_PROCESS_LIST.PROPERTIES.THUMBNAIL'\" [sortable]=\"false\" />\n <data-column key=\"name\" type=\"text\" title=\"{{'ADF_PROCESS_LIST.PROPERTIES.NAME' | translate}}\" class=\"adf-full-width adf-ellipsis-cell\" [sortable]=\"true\" />\n <data-column key=\"created\" type=\"date\" format=\"shortDate\" title=\"{{'ADF_PROCESS_LIST.PROPERTIES.CREATED' | translate}}\" />\n </data-columns>\n\n <adf-loading-content-template>\n <ng-template>\n <!--Add your custom loading template here-->\n <mat-progress-spinner class=\"adf-attachment-list-loading-margin\" [mode]=\"'indeterminate'\" />\n </ng-template>\n </adf-loading-content-template>\n\n</adf-datatable>\n", styles: [".adf-attachment-list-loading-margin{margin-left:calc((100% - 100px)/2);margin-right:calc((100% - 100px)/2)}.adf-empty-list-header{height:32px;color:var(--mat-sys-on-secondary-container);font:var(--mat-sys-headline-medium)}.adf-empty-list-drag_drop{min-height:56px;color:var(--mat-sys-on-surface);font:var(--mat-sys-headline-large);margin-top:40px;word-break:break-all;white-space:pre-line}.adf-empty-list__any-files-here-to-add{min-height:24px;color:var(--mat-sys-on-surface);font:var(--mat-sys-body-large);margin-top:17px;word-break:break-all;white-space:pre-line}.adf-empty-list__empty_doc_lib{width:565px;height:161px;object-fit:contain;margin-top:17px}@media(max-width:599.9px){.adf-empty-list__empty_doc_lib{width:250px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }, { kind: "directive", type: NoContentTemplateDirective, selector: "adf-no-content-template, no-content-template" }, { kind: "component", type: EmptyListComponent, selector: "adf-empty-list" }, { kind: "component", type: DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "subtitle", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }, { kind: "directive", type: LoadingContentTemplateDirective, selector: "adf-loading-content-template, loading-content-template" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
10470
10403
  }
10471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessAttachmentListComponent, decorators: [{
10404
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessAttachmentListComponent, decorators: [{
10472
10405
  type: Component,
10473
10406
  args: [{ selector: 'adf-process-attachment-list', imports: [
10474
10407
  CommonModule,
@@ -10546,10 +10479,10 @@ class CreateProcessAttachmentComponent {
10546
10479
  });
10547
10480
  }
10548
10481
  }
10549
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CreateProcessAttachmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10550
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: CreateProcessAttachmentComponent, isStandalone: true, selector: "adf-create-process-attachment", inputs: { processInstanceId: "processInstanceId" }, outputs: { error: "error", success: "success" }, usesOnChanges: true, ngImport: i0, template: "<button\n id=\"add_new_process_content_button\"\n mat-button\n class=\"adf-create-attachment\"\n [adf-upload]=\"true\"\n [mode]=\"['click']\"\n [multiple]=\"true\"\n (upload-files)=\"onFileUpload($event)\">\n <mat-icon>add</mat-icon>\n</button>\n", styles: [".adf-create-attachment{display:inline-block;line-height:0;vertical-align:middle}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: UploadDirective, selector: "[adf-upload]", inputs: ["adf-upload", "adf-upload-data", "mode", "multiple", "accept", "directory"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
10482
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: CreateProcessAttachmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10483
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: CreateProcessAttachmentComponent, isStandalone: true, selector: "adf-create-process-attachment", inputs: { processInstanceId: "processInstanceId" }, outputs: { error: "error", success: "success" }, usesOnChanges: true, ngImport: i0, template: "<button\n id=\"add_new_process_content_button\"\n mat-button\n class=\"adf-create-attachment\"\n [adf-upload]=\"true\"\n [mode]=\"['click']\"\n [multiple]=\"true\"\n (upload-files)=\"onFileUpload($event)\">\n <mat-icon>add</mat-icon>\n</button>\n", styles: [".adf-create-attachment{display:inline-block;line-height:0;vertical-align:middle}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: UploadDirective, selector: "[adf-upload]", inputs: ["adf-upload", "adf-upload-data", "mode", "multiple", "accept", "directory"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
10551
10484
  }
10552
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CreateProcessAttachmentComponent, decorators: [{
10485
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: CreateProcessAttachmentComponent, decorators: [{
10553
10486
  type: Component,
10554
10487
  args: [{ selector: 'adf-create-process-attachment', imports: [CommonModule, UploadDirective, MatButtonModule, MatIconModule], template: "<button\n id=\"add_new_process_content_button\"\n mat-button\n class=\"adf-create-attachment\"\n [adf-upload]=\"true\"\n [mode]=\"['click']\"\n [multiple]=\"true\"\n (upload-files)=\"onFileUpload($event)\">\n <mat-icon>add</mat-icon>\n</button>\n", styles: [".adf-create-attachment{display:inline-block;line-height:0;vertical-align:middle}\n"] }]
10555
10488
  }], propDecorators: { processInstanceId: [{
@@ -10610,10 +10543,10 @@ class AttachmentComponent {
10610
10543
  });
10611
10544
  }
10612
10545
  }
10613
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10614
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: AttachmentComponent, isStandalone: true, selector: "adf-create-task-attachment", inputs: { taskId: "taskId" }, outputs: { error: "error", success: "success" }, usesOnChanges: true, ngImport: i0, template: "<button\n mat-button\n class=\"adf-create-attachment\"\n [adf-upload]=\"true\"\n [mode]=\"['click']\"\n [multiple]=\"true\"\n (upload-files)=\"onFileUpload($event)\">\n <mat-icon>add</mat-icon>\n</button>\n", styles: [".adf-create-attachment{display:inline-block;line-height:0;vertical-align:middle}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: UploadDirective, selector: "[adf-upload]", inputs: ["adf-upload", "adf-upload-data", "mode", "multiple", "accept", "directory"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
10546
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10547
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: AttachmentComponent, isStandalone: true, selector: "adf-create-task-attachment", inputs: { taskId: "taskId" }, outputs: { error: "error", success: "success" }, usesOnChanges: true, ngImport: i0, template: "<button\n mat-button\n class=\"adf-create-attachment\"\n [adf-upload]=\"true\"\n [mode]=\"['click']\"\n [multiple]=\"true\"\n (upload-files)=\"onFileUpload($event)\">\n <mat-icon>add</mat-icon>\n</button>\n", styles: [".adf-create-attachment{display:inline-block;line-height:0;vertical-align:middle}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: UploadDirective, selector: "[adf-upload]", inputs: ["adf-upload", "adf-upload-data", "mode", "multiple", "accept", "directory"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
10615
10548
  }
10616
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: AttachmentComponent, decorators: [{
10549
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AttachmentComponent, decorators: [{
10617
10550
  type: Component,
10618
10551
  args: [{ selector: 'adf-create-task-attachment', imports: [CommonModule, MatButtonModule, UploadDirective, MatIconModule], template: "<button\n mat-button\n class=\"adf-create-attachment\"\n [adf-upload]=\"true\"\n [mode]=\"['click']\"\n [multiple]=\"true\"\n (upload-files)=\"onFileUpload($event)\">\n <mat-icon>add</mat-icon>\n</button>\n", styles: [".adf-create-attachment{display:inline-block;line-height:0;vertical-align:middle}\n"] }]
10619
10552
  }], propDecorators: { taskId: [{
@@ -10703,11 +10636,11 @@ class ProcessModule {
10703
10636
  ]
10704
10637
  };
10705
10638
  }
10706
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10707
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.20", ngImport: i0, type: ProcessModule, imports: [ProcessCommentsComponent, ProcessInstanceListComponent, ProcessFiltersComponent, ProcessInstanceDetailsComponent, ProcessInstanceHeaderComponent, ProcessInstanceTasksComponent, StartProcessInstanceComponent, TaskFormComponent, AttachFormComponent, ChecklistComponent, TaskFiltersComponent, TaskListComponent, TaskDetailsComponent, TaskHeaderComponent, StartTaskComponent, TaskStandaloneComponent, ClaimTaskDirective, UnclaimTaskDirective, TaskCommentsComponent, AppsListComponent, SelectAppsDialogComponent, TaskAttachmentListComponent, ProcessAttachmentListComponent, CreateProcessAttachmentComponent, AttachmentComponent, PeopleComponent, PeopleSearchComponent, PeopleSearchFieldComponent, PeopleSelectorComponent, PeopleListComponent, FormListComponent, FormCustomOutcomesComponent, StartFormComponent, FormComponent, AttachFileWidgetComponent, AttachFolderWidgetComponent, AttachFileWidgetDialogComponent, ContentWidgetComponent, DocumentWidgetComponent, DropdownWidgetComponent, DynamicTableWidgetComponent, DropdownEditorComponent, AmountEditorComponent, BooleanEditorComponent, DateEditorComponent, DateTimeEditorComponent, RowEditorComponent, TextEditorComponent, FileViewerWidgetComponent, FunctionalGroupWidgetComponent, PeopleWidgetComponent, RadioButtonsWidgetComponent, TypeaheadWidgetComponent, UploadWidgetComponent], exports: [ProcessCommentsComponent, ProcessInstanceListComponent, ProcessFiltersComponent, ProcessInstanceDetailsComponent, ProcessInstanceHeaderComponent, ProcessInstanceTasksComponent, StartProcessInstanceComponent, TaskFormComponent, AttachFormComponent, ChecklistComponent, TaskFiltersComponent, TaskListComponent, TaskDetailsComponent, TaskHeaderComponent, StartTaskComponent, TaskStandaloneComponent, ClaimTaskDirective, UnclaimTaskDirective, TaskCommentsComponent, AppsListComponent, SelectAppsDialogComponent, TaskAttachmentListComponent, ProcessAttachmentListComponent, CreateProcessAttachmentComponent, AttachmentComponent, PeopleComponent, PeopleSearchComponent, PeopleSearchFieldComponent, PeopleSelectorComponent, PeopleListComponent, FormListComponent, FormCustomOutcomesComponent, StartFormComponent, FormComponent, AttachFileWidgetComponent, AttachFolderWidgetComponent, AttachFileWidgetDialogComponent, ContentWidgetComponent, DocumentWidgetComponent, DropdownWidgetComponent, DynamicTableWidgetComponent, DropdownEditorComponent, AmountEditorComponent, BooleanEditorComponent, DateEditorComponent, DateTimeEditorComponent, RowEditorComponent, TextEditorComponent, FileViewerWidgetComponent, FunctionalGroupWidgetComponent, PeopleWidgetComponent, RadioButtonsWidgetComponent, TypeaheadWidgetComponent, UploadWidgetComponent] }); }
10708
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessModule, providers: [provideTranslations('adf-process-services', 'assets/adf-process-services')], imports: [PROCESS_COMMENTS_DIRECTIVES, PROCESS_LIST_DIRECTIVES, TaskFormComponent, AttachFormComponent, ChecklistComponent, TaskFiltersComponent, TaskListComponent, TaskDetailsComponent, TaskHeaderComponent, StartTaskComponent, TaskStandaloneComponent, TASK_COMMENTS_DIRECTIVES, APPS_LIST_DIRECTIVES, ATTACHMENT_DIRECTIVES, PEOPLE_DIRECTIVES, FormListComponent, StartFormComponent, FormComponent, AttachFileWidgetComponent, AttachFolderWidgetComponent, AttachFileWidgetDialogComponent, ContentWidgetComponent, DocumentWidgetComponent, DropdownWidgetComponent, DynamicTableWidgetComponent, DropdownEditorComponent, AmountEditorComponent, BooleanEditorComponent, DateEditorComponent, DateTimeEditorComponent, RowEditorComponent, TextEditorComponent, FileViewerWidgetComponent, FunctionalGroupWidgetComponent, PeopleWidgetComponent, RadioButtonsWidgetComponent, TypeaheadWidgetComponent, UploadWidgetComponent] }); }
10639
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10640
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: ProcessModule, imports: [ProcessCommentsComponent, ProcessInstanceListComponent, ProcessFiltersComponent, ProcessInstanceDetailsComponent, ProcessInstanceHeaderComponent, ProcessInstanceTasksComponent, StartProcessInstanceComponent, TaskFormComponent, AttachFormComponent, ChecklistComponent, TaskFiltersComponent, TaskListComponent, TaskDetailsComponent, TaskHeaderComponent, StartTaskComponent, TaskStandaloneComponent, ClaimTaskDirective, UnclaimTaskDirective, TaskCommentsComponent, AppsListComponent, SelectAppsDialogComponent, TaskAttachmentListComponent, ProcessAttachmentListComponent, CreateProcessAttachmentComponent, AttachmentComponent, PeopleComponent, PeopleSearchComponent, PeopleSearchFieldComponent, PeopleSelectorComponent, PeopleListComponent, FormListComponent, FormCustomOutcomesComponent, StartFormComponent, FormComponent, AttachFileWidgetComponent, AttachFolderWidgetComponent, AttachFileWidgetDialogComponent, ContentWidgetComponent, DocumentWidgetComponent, DropdownWidgetComponent, DynamicTableWidgetComponent, DropdownEditorComponent, AmountEditorComponent, BooleanEditorComponent, DateEditorComponent, DateTimeEditorComponent, RowEditorComponent, TextEditorComponent, FileViewerWidgetComponent, FunctionalGroupWidgetComponent, PeopleWidgetComponent, RadioButtonsWidgetComponent, TypeaheadWidgetComponent, UploadWidgetComponent], exports: [ProcessCommentsComponent, ProcessInstanceListComponent, ProcessFiltersComponent, ProcessInstanceDetailsComponent, ProcessInstanceHeaderComponent, ProcessInstanceTasksComponent, StartProcessInstanceComponent, TaskFormComponent, AttachFormComponent, ChecklistComponent, TaskFiltersComponent, TaskListComponent, TaskDetailsComponent, TaskHeaderComponent, StartTaskComponent, TaskStandaloneComponent, ClaimTaskDirective, UnclaimTaskDirective, TaskCommentsComponent, AppsListComponent, SelectAppsDialogComponent, TaskAttachmentListComponent, ProcessAttachmentListComponent, CreateProcessAttachmentComponent, AttachmentComponent, PeopleComponent, PeopleSearchComponent, PeopleSearchFieldComponent, PeopleSelectorComponent, PeopleListComponent, FormListComponent, FormCustomOutcomesComponent, StartFormComponent, FormComponent, AttachFileWidgetComponent, AttachFolderWidgetComponent, AttachFileWidgetDialogComponent, ContentWidgetComponent, DocumentWidgetComponent, DropdownWidgetComponent, DynamicTableWidgetComponent, DropdownEditorComponent, AmountEditorComponent, BooleanEditorComponent, DateEditorComponent, DateTimeEditorComponent, RowEditorComponent, TextEditorComponent, FileViewerWidgetComponent, FunctionalGroupWidgetComponent, PeopleWidgetComponent, RadioButtonsWidgetComponent, TypeaheadWidgetComponent, UploadWidgetComponent] }); }
10641
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessModule, providers: [provideTranslations('adf-process-services', 'assets/adf-process-services')], imports: [PROCESS_COMMENTS_DIRECTIVES, PROCESS_LIST_DIRECTIVES, TaskFormComponent, AttachFormComponent, ChecklistComponent, TaskFiltersComponent, TaskListComponent, TaskDetailsComponent, TaskHeaderComponent, StartTaskComponent, TaskStandaloneComponent, TASK_COMMENTS_DIRECTIVES, APPS_LIST_DIRECTIVES, ATTACHMENT_DIRECTIVES, PEOPLE_DIRECTIVES, FormListComponent, StartFormComponent, FormComponent, AttachFileWidgetComponent, AttachFolderWidgetComponent, AttachFileWidgetDialogComponent, ContentWidgetComponent, DocumentWidgetComponent, DropdownWidgetComponent, DynamicTableWidgetComponent, DropdownEditorComponent, AmountEditorComponent, BooleanEditorComponent, DateEditorComponent, DateTimeEditorComponent, RowEditorComponent, TextEditorComponent, FileViewerWidgetComponent, FunctionalGroupWidgetComponent, PeopleWidgetComponent, RadioButtonsWidgetComponent, TypeaheadWidgetComponent, UploadWidgetComponent] }); }
10709
10642
  }
10710
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ProcessModule, decorators: [{
10643
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ProcessModule, decorators: [{
10711
10644
  type: NgModule,
10712
10645
  args: [{
10713
10646
  imports: [