@valtimo/task-management 12.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 (57) hide show
  1. package/esm2022/lib/components/index.mjs +20 -0
  2. package/esm2022/lib/components/task-management/index.mjs +17 -0
  3. package/esm2022/lib/components/task-management/task-management.component.mjs +73 -0
  4. package/esm2022/lib/components/task-management-column-modal/index.mjs +17 -0
  5. package/esm2022/lib/components/task-management-column-modal/task-management-column-modal.component.mjs +373 -0
  6. package/esm2022/lib/components/task-management-columns/index.mjs +17 -0
  7. package/esm2022/lib/components/task-management-columns/task-management-columns.component.mjs +218 -0
  8. package/esm2022/lib/components/task-management-detail/index.mjs +17 -0
  9. package/esm2022/lib/components/task-management-detail/task-management-detail.component.mjs +64 -0
  10. package/esm2022/lib/models/index.mjs +17 -0
  11. package/esm2022/lib/models/task-management.model.mjs +21 -0
  12. package/esm2022/lib/services/index.mjs +18 -0
  13. package/esm2022/lib/services/task-management-api.service.mjs +48 -0
  14. package/esm2022/lib/services/task-management.service.mjs +36 -0
  15. package/esm2022/lib/task-management-routing.module.mjs +50 -0
  16. package/esm2022/lib/task-management.module.mjs +31 -0
  17. package/esm2022/public_api.mjs +23 -0
  18. package/esm2022/valtimo-task-management.mjs +5 -0
  19. package/fesm2022/valtimo-task-management.mjs +993 -0
  20. package/fesm2022/valtimo-task-management.mjs.map +1 -0
  21. package/index.d.ts +6 -0
  22. package/lib/components/index.d.ts +5 -0
  23. package/lib/components/index.d.ts.map +1 -0
  24. package/lib/components/task-management/index.d.ts +2 -0
  25. package/lib/components/task-management/index.d.ts.map +1 -0
  26. package/lib/components/task-management/task-management.component.d.ts +20 -0
  27. package/lib/components/task-management/task-management.component.d.ts.map +1 -0
  28. package/lib/components/task-management-column-modal/index.d.ts +2 -0
  29. package/lib/components/task-management-column-modal/index.d.ts.map +1 -0
  30. package/lib/components/task-management-column-modal/task-management-column-modal.component.d.ts +89 -0
  31. package/lib/components/task-management-column-modal/task-management-column-modal.component.d.ts.map +1 -0
  32. package/lib/components/task-management-columns/index.d.ts +2 -0
  33. package/lib/components/task-management-columns/index.d.ts.map +1 -0
  34. package/lib/components/task-management-columns/task-management-columns.component.d.ts +43 -0
  35. package/lib/components/task-management-columns/task-management-columns.component.d.ts.map +1 -0
  36. package/lib/components/task-management-detail/index.d.ts +2 -0
  37. package/lib/components/task-management-detail/index.d.ts.map +1 -0
  38. package/lib/components/task-management-detail/task-management-detail.component.d.ts +22 -0
  39. package/lib/components/task-management-detail/task-management-detail.component.d.ts.map +1 -0
  40. package/lib/models/index.d.ts +2 -0
  41. package/lib/models/index.d.ts.map +1 -0
  42. package/lib/models/task-management.model.d.ts +5 -0
  43. package/lib/models/task-management.model.d.ts.map +1 -0
  44. package/lib/services/index.d.ts +3 -0
  45. package/lib/services/index.d.ts.map +1 -0
  46. package/lib/services/task-management-api.service.d.ts +17 -0
  47. package/lib/services/task-management-api.service.d.ts.map +1 -0
  48. package/lib/services/task-management.service.d.ts +11 -0
  49. package/lib/services/task-management.service.d.ts.map +1 -0
  50. package/lib/task-management-routing.module.d.ts +9 -0
  51. package/lib/task-management-routing.module.d.ts.map +1 -0
  52. package/lib/task-management.module.d.ts +9 -0
  53. package/lib/task-management.module.d.ts.map +1 -0
  54. package/package.json +27 -0
  55. package/public_api.d.ts +5 -0
  56. package/public_api.d.ts.map +1 -0
  57. package/valtimo-task-management.d.ts.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"valtimo-task-management.mjs","sources":["../../../../projects/valtimo/task-management/src/lib/components/task-management/task-management.component.ts","../../../../projects/valtimo/task-management/src/lib/components/task-management/task-management.component.html","../../../../projects/valtimo/task-management/src/lib/components/task-management/index.ts","../../../../projects/valtimo/task-management/src/lib/models/task-management.model.ts","../../../../projects/valtimo/task-management/src/lib/models/index.ts","../../../../projects/valtimo/task-management/src/lib/services/task-management.service.ts","../../../../projects/valtimo/task-management/src/lib/services/task-management-api.service.ts","../../../../projects/valtimo/task-management/src/lib/services/index.ts","../../../../projects/valtimo/task-management/src/lib/components/task-management-column-modal/task-management-column-modal.component.ts","../../../../projects/valtimo/task-management/src/lib/components/task-management-column-modal/task-management-column-modal.component.html","../../../../projects/valtimo/task-management/src/lib/components/task-management-columns/task-management-columns.component.ts","../../../../projects/valtimo/task-management/src/lib/components/task-management-columns/task-management-columns.component.html","../../../../projects/valtimo/task-management/src/lib/components/task-management-columns/index.ts","../../../../projects/valtimo/task-management/src/lib/components/task-management-detail/task-management-detail.component.ts","../../../../projects/valtimo/task-management/src/lib/components/task-management-detail/task-management-detail.component.html","../../../../projects/valtimo/task-management/src/lib/components/task-management-detail/index.ts","../../../../projects/valtimo/task-management/src/lib/components/task-management-column-modal/index.ts","../../../../projects/valtimo/task-management/src/lib/components/index.ts","../../../../projects/valtimo/task-management/src/lib/task-management-routing.module.ts","../../../../projects/valtimo/task-management/src/lib/task-management.module.ts","../../../../projects/valtimo/task-management/src/public_api.ts","../../../../projects/valtimo/task-management/src/valtimo-task-management.ts"],"sourcesContent":["/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {ChangeDetectionStrategy, Component} from '@angular/core';\nimport {CarbonListModule, ColumnConfig, Pagination, ViewType} from '@valtimo/components';\nimport {BehaviorSubject, map, Observable, switchMap} from 'rxjs';\nimport {DocumentDefinition, DocumentService, Page} from '@valtimo/document';\nimport moment from 'moment/moment';\nimport {CommonModule} from '@angular/common';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {Router} from '@angular/router';\n\n@Component({\n templateUrl: './task-management.component.html',\n styleUrls: ['./task-management.component.scss'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, CarbonListModule, TranslateModule],\n})\nexport class TaskManagementComponent {\n public pagination: Pagination = {\n collectionSize: 0,\n page: 1,\n size: 10,\n };\n\n private readonly _refreshData$ = new BehaviorSubject<null>(null);\n\n public readonly dossiers$: Observable<DocumentDefinition[]> = this._refreshData$.pipe(\n switchMap(() =>\n this.documentService.queryDefinitionsForManagement({\n page: this.pagination.page - 1,\n size: this.pagination.size,\n })\n ),\n map((documentDefinitionPage: Page<DocumentDefinition>) => {\n this.pagination = {\n ...this.pagination,\n collectionSize: documentDefinitionPage.totalElements,\n };\n\n return documentDefinitionPage.content.map((documentDefinition: DocumentDefinition) => ({\n ...documentDefinition,\n createdOn: moment(documentDefinition.createdOn).format('DD MMM YYYY HH:mm'),\n }));\n })\n );\n\n public readonly dossierFields: ColumnConfig[] = [\n {key: 'schema.title', label: 'taskManagement.caseName', viewType: ViewType.TEXT},\n ];\n\n constructor(\n private readonly documentService: DocumentService,\n private readonly router: Router\n ) {}\n\n public paginationClicked(page: number): void {\n this.pagination = {...this.pagination, page};\n this._refreshData$.next(null);\n }\n\n public paginationSet(size: number): void {\n this.pagination = {...this.pagination, size};\n this._refreshData$.next(null);\n }\n\n public redirectToDetails(documentDefinition: DocumentDefinition): void {\n this.router.navigate(['/task-management/dossier', documentDefinition.id.name]);\n }\n}\n","<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<valtimo-carbon-list\n *ngIf=\"dossiers$ | async as dossiers; else loading\"\n [items]=\"dossiers\"\n [fields]=\"dossierFields\"\n [pagination]=\"pagination\"\n paginationIdentifier=\"dossierManagementList\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n (rowClicked)=\"redirectToDetails($event)\"\n [hideToolbar]=\"true\"\n>\n <valtimo-no-results\n [description]=\"'dossierManagement.noResults.description' | translate\"\n [title]=\"'dossierManagement.noResults.title' | translate\"\n ></valtimo-no-results>\n</valtimo-carbon-list>\n\n<ng-template #loading>\n <valtimo-carbon-list loading=\"true\"></valtimo-carbon-list>\n</ng-template>\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './task-management.component';\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nenum TaskManagementTab {\n COLUMNS,\n}\n\nexport {TaskManagementTab};\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './task-management.model';\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Injectable} from '@angular/core';\nimport {BehaviorSubject, Observable} from 'rxjs';\nimport {TaskManagementTab} from '../models';\n\n@Injectable()\nexport class TaskManagementService {\n private readonly _activeTab$ = new BehaviorSubject<TaskManagementTab>(TaskManagementTab.COLUMNS);\n\n public get activeTab$(): Observable<TaskManagementTab> {\n return this._activeTab$.asObservable();\n }\n\n public setActiveTab(tab: TaskManagementTab): void {\n this._activeTab$.next(tab);\n }\n}\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Injectable} from '@angular/core';\nimport {BaseApiService, ConfigService} from '@valtimo/config';\nimport {HttpClient} from '@angular/common/http';\nimport {Observable} from 'rxjs';\nimport {TaskListColumn} from '@valtimo/task';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TaskManagementApiService extends BaseApiService {\n constructor(\n protected readonly httpClient: HttpClient,\n protected readonly configService: ConfigService\n ) {\n super(httpClient, configService);\n }\n\n public getTaskListColumns(caseDefinitionName: string): Observable<TaskListColumn[]> {\n return this.httpClient.get<TaskListColumn[]>(\n this.getApiUrl(`/management/v1/case/${caseDefinitionName}/task-list-column`)\n );\n }\n\n public updateTaskListColumn(\n caseDefinitionName: string,\n column: TaskListColumn\n ): Observable<TaskListColumn> {\n return this.httpClient.put<TaskListColumn>(\n this.getApiUrl(`/management/v1/case/${caseDefinitionName}/task-list-column/${column.key}`),\n column\n );\n }\n\n public deleteTaskListColumn(\n caseDefinitionName: string,\n columnKey: string\n ): Observable<TaskListColumn> {\n return this.httpClient.delete<TaskListColumn>(\n this.getApiUrl(`/management/v1/case/${caseDefinitionName}/task-list-column/${columnKey}`)\n );\n }\n\n public swapTaskListColumns(\n caseDefinitionName: string,\n firstColumn: TaskListColumn,\n secondColumn: TaskListColumn\n ): Observable<TaskListColumn[]> {\n return this.httpClient.post<TaskListColumn[]>(\n this.getApiUrl(`/management/v1/case/${caseDefinitionName}/task-list-column`),\n {first: firstColumn.key, second: secondColumn.key}\n );\n }\n}\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './task-management.service';\nexport * from './task-management-api.service';\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {ChangeDetectionStrategy, Component, EventEmitter, Input, Output} from '@angular/core';\nimport {\n CARBON_CONSTANTS,\n CARBON_THEME,\n CarbonListModule,\n CarbonMultiInputModule,\n MultiInputValues,\n TooltipIconModule,\n ValtimoCdsModalDirectiveModule,\n ViewType,\n} from '@valtimo/components';\nimport {CommonModule} from '@angular/common';\nimport {TranslateModule, TranslateService} from '@ngx-translate/core';\nimport {\n ButtonModule,\n CheckboxModule,\n DropdownModule,\n InputModule,\n ModalModule,\n TabsModule,\n} from 'carbon-components-angular';\nimport {TaskManagementApiService} from '../../services';\nimport {\n AbstractControl,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {BehaviorSubject, combineLatest, map, Observable, of, tap} from 'rxjs';\nimport {\n TaskListColumn,\n TaskListColumnDefaultSort,\n TaskListColumnEnum,\n TaskListColumnListItem,\n TaskListColumnModalCloseEvent,\n TaskListColumnModalType,\n} from '@valtimo/task';\nimport {distinctUntilChanged} from 'rxjs/operators';\nimport {isEqual} from 'lodash';\n\n@Component({\n selector: 'valtimo-task-management-column-modal',\n templateUrl: './task-management-column-modal.component.html',\n styleUrls: ['./task-management-column-modal.component.scss'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n CarbonListModule,\n TranslateModule,\n TabsModule,\n FormsModule,\n ModalModule,\n CheckboxModule,\n DropdownModule,\n InputModule,\n ReactiveFormsModule,\n TooltipIconModule,\n CarbonMultiInputModule,\n ButtonModule,\n ValtimoCdsModalDirectiveModule,\n ],\n})\nexport class TaskManagementColumnModalComponent {\n @Input() public carbonTheme: CARBON_THEME = CARBON_THEME.G10;\n @Input() public set taskListColumns(value: TaskListColumn[]) {\n if (value?.length > 0) {\n this._taskListColumns$.next(value);\n }\n }\n @Input() public set type(value: TaskListColumnModalType) {\n this.type$.next(value);\n }\n public get type(): TaskListColumnModalType {\n return this.type$.getValue();\n }\n @Input() public set show(showModal: boolean) {\n this.show$.next(showModal);\n if (showModal) this.enable();\n if (!showModal) this.resetFormAfterTimeout();\n }\n @Input() public documentDefinitionName!: string;\n @Input() public set selectedTaskListColumn(column: TaskListColumn) {\n if (column) this.prefillForm(column);\n }\n @Output() closeEvent = new EventEmitter<TaskListColumnModalCloseEvent>();\n\n public readonly type$ = new BehaviorSubject<TaskListColumnModalType>('add');\n public readonly isAdd$ = this.type$.pipe(map(type => type === 'add'));\n public readonly isEdit$ = this.type$.pipe(\n map(type => type === 'edit'),\n tap(isEdit => {\n if (isEdit) {\n this.key.disable();\n } else {\n this.key.enable();\n }\n })\n );\n public readonly show$ = new BehaviorSubject<boolean>(false);\n public readonly disabled$ = new BehaviorSubject<boolean>(false);\n\n private readonly _taskListColumns$ = new BehaviorSubject<TaskListColumn[]>([]);\n\n public get taskListColumns$(): Observable<TaskListColumn[]> {\n return this._taskListColumns$.pipe(\n distinctUntilChanged((previous, current) => isEqual(previous, current))\n );\n }\n\n private readonly _INVALID_KEY = 'INVALID_KEY';\n\n private readonly DISPLAY_TYPES: Array<ViewType> = [\n ViewType.TEXT,\n ViewType.DATE,\n ViewType.BOOLEAN,\n ViewType.ENUM,\n ViewType.ARRAY_COUNT,\n ViewType.UNDERSCORES_TO_SPACES,\n ];\n\n private getInvalidListItem = (translateKey: string): TaskListColumnListItem => ({\n content: this.translateService.instant(translateKey),\n key: this._INVALID_KEY,\n selected: true,\n });\n\n private uniqueKeyValidator = (\n keyFormControl: AbstractControl<TaskListColumnListItem>\n ): {notUnique: boolean} | null => {\n const taskListColumns = this._taskListColumns$.getValue();\n\n return !taskListColumns?.find(\n column => column?.key?.trim()?.toLowerCase() === keyFormControl?.value?.trim()?.toLowerCase()\n )\n ? null\n : {notUnique: true};\n };\n\n private listItemValidator = (\n listItemControl: AbstractControl<TaskListColumnListItem>\n ): {invalidItem: boolean} | null =>\n listItemControl?.value?.key && listItemControl.value.key !== this._INVALID_KEY\n ? null\n : {invalidItem: true};\n\n public readonly formGroup = new FormGroup({\n title: new FormControl(null),\n key: new FormControl(null, [this.uniqueKeyValidator.bind(this), Validators.required]),\n path: new FormControl(null, Validators.required),\n dateFormat: new FormControl(null),\n displayType: new FormControl(this.getInvalidListItem(`listColumn.selectDefaultSort`), [\n Validators.required,\n this.listItemValidator.bind(this),\n ]),\n sortable: new FormControl(false),\n defaultSort: new FormControl(this.getInvalidListItem(`listColumn.selectDefaultSort`), [\n Validators.required,\n ]),\n });\n\n public get title(): AbstractControl<string> {\n return this.formGroup.get('title');\n }\n public get key(): AbstractControl<string> {\n return this.formGroup.get('key');\n }\n public get keyValue$(): Observable<string> {\n return this.key.valueChanges.pipe(distinctUntilChanged());\n }\n public get path(): AbstractControl<string> {\n return this.formGroup.get('path');\n }\n public get dateFormat(): AbstractControl<string> {\n return this.formGroup.get('dateFormat');\n }\n public get displayType(): AbstractControl<TaskListColumnListItem> {\n return this.formGroup.get('displayType');\n }\n public get sortable(): AbstractControl<boolean> {\n return this.formGroup.get('sortable');\n }\n public get defaultSort(): AbstractControl<TaskListColumnListItem> {\n return this.formGroup.get('defaultSort');\n }\n\n private get _SORT_ASC_ITEM() {\n return {\n content: this.translateService.instant(`listColumn.sortableAsc`),\n key: 'ASC',\n } as TaskListColumnListItem;\n }\n private get _SORT_DESC_ITEM() {\n return {\n content: this.translateService.instant(`listColumn.sortableDesc`),\n key: 'DESC',\n } as TaskListColumnListItem;\n }\n public readonly sortItems$: Observable<Array<TaskListColumnListItem>> = combineLatest([\n this.defaultSort?.valueChanges || of(null),\n this.translateService.stream('key'),\n ]).pipe(\n map(([defaultSortItem]) =>\n [\n this.getInvalidListItem(`listColumn.selectDefaultSort`),\n this._SORT_ASC_ITEM,\n this._SORT_DESC_ITEM,\n ].map((item, index) => ({\n ...item,\n selected: defaultSortItem?.key === item?.key,\n }))\n )\n );\n\n public readonly viewTypeItems$: Observable<Array<TaskListColumnListItem>> = combineLatest([\n this.displayType?.valueChanges || of(null),\n this.translateService.stream('key'),\n ]).pipe(\n map(([displayTypeItem]) =>\n [\n {\n content: this.translateService.instant(`listColumnDisplayType.select`),\n key: this._INVALID_KEY,\n },\n ...this.DISPLAY_TYPES.map(type => this.getListItemFromViewType(type)),\n ].map((item, index) => ({\n ...item,\n selected: displayTypeItem?.key === item?.key,\n }))\n )\n );\n\n private _showDateFormat!: boolean;\n public readonly showDateFormat$ = this.formGroup.valueChanges.pipe(\n map(formValues => !!(formValues.displayType?.key === this.DISPLAY_TYPES[1])),\n tap(showDateFormat => (this._showDateFormat = showDateFormat))\n );\n\n private _showEnum!: boolean;\n public readonly showEnum$ = this.formGroup.valueChanges.pipe(\n map(formValues => !!(formValues.displayType?.key === ViewType.ENUM)),\n tap(showEnum => {\n this._showEnum = showEnum;\n if ((this._enumValues$.getValue() || []).length === 0) this.resetEnumValues();\n })\n );\n\n private _showYesNo!: boolean;\n public readonly showYesNo$ = this.formGroup.valueChanges.pipe(\n map(formValues => !!(formValues.displayType?.key === ViewType.BOOLEAN)),\n tap(showYesNo => {\n this._showYesNo = showYesNo;\n if ((this._yesNoValues$.getValue() || []).length === 0) this.resetYesNoValues();\n })\n );\n\n public readonly CARBON_THEME_WHITE = CARBON_THEME.WHITE;\n\n public readonly disableDefaultSort$ = combineLatest([this.taskListColumns$, this.keyValue$]).pipe(\n map(([taskListColumns, keyValue]) => {\n const defaultSortColumn = taskListColumns.find(\n column =>\n column?.defaultSort === TaskListColumnDefaultSort.ASC ||\n column?.defaultSort === TaskListColumnDefaultSort.DESC\n );\n const defaultSortColumnExists = !!defaultSortColumn;\n const enabled = !defaultSortColumnExists || defaultSortColumn.key === keyValue;\n\n if (enabled) {\n this.defaultSort?.enable();\n } else {\n this.defaultSort?.disable();\n }\n\n return !enabled;\n })\n );\n\n private readonly _DEFAULT_ENUM_VALUES: MultiInputValues = [{key: '', value: ''}];\n\n private readonly _enumValues$ = new BehaviorSubject<MultiInputValues>(this._DEFAULT_ENUM_VALUES);\n\n public get enumValues$(): Observable<MultiInputValues> {\n return this._enumValues$.pipe(\n distinctUntilChanged((previous, current) => isEqual(previous, current))\n );\n }\n\n public get enumValid$(): Observable<boolean> {\n return this.enumValues$.pipe(map(values => this.getValidEnumValues(values).length > 0));\n }\n\n private readonly _yesNoValues$ = new BehaviorSubject<MultiInputValues>(this._DEFAULT_ENUM_VALUES);\n\n public get yesNoValues$(): Observable<MultiInputValues> {\n return this._yesNoValues$.pipe(\n distinctUntilChanged((previous, current) => isEqual(previous, current))\n );\n }\n\n constructor(\n private readonly translateService: TranslateService,\n private readonly taskManagementApiService: TaskManagementApiService\n ) {}\n\n public closeModal(): void {\n this.closeEvent.emit('close');\n }\n\n public save(): void {\n this.disable();\n\n this.taskManagementApiService\n .updateTaskListColumn(\n this.documentDefinitionName,\n this.getTaskListColumnFromFormValue(this._showEnum, this._showDateFormat, this._showYesNo)\n )\n .subscribe({\n next: () => {\n this.closeModalAndRefresh();\n this.enableAfterTimeout();\n },\n error: () => {\n this.enable();\n },\n });\n }\n\n public enumValueChange(value: MultiInputValues): void {\n this._enumValues$.next(value);\n }\n\n public yesNoValueChange(value: MultiInputValues): void {\n this._yesNoValues$.next(value);\n }\n\n private resetEnumValues(): void {\n this._enumValues$.next(this._DEFAULT_ENUM_VALUES);\n }\n\n private resetYesNoValues(): void {\n this._yesNoValues$.next(this._DEFAULT_ENUM_VALUES);\n }\n\n private resetFormAfterTimeout(): void {\n setTimeout(() => {\n this.resetForm();\n }, CARBON_CONSTANTS.modalAnimationMs);\n }\n\n private resetForm(): void {\n this.resetEnumValues();\n this.resetYesNoValues();\n this.formGroup.reset({\n title: null,\n key: null,\n dateFormat: null,\n displayType: this.getInvalidListItem('listColumnDisplayType.select'),\n sortable: false,\n defaultSort: this.getInvalidListItem(`listColumn.selectDefaultSort`),\n });\n }\n\n private disable(): void {\n this.disabled$.next(true);\n }\n\n private enableAfterTimeout(): void {\n setTimeout(() => {\n this.enable();\n }, CARBON_CONSTANTS.modalAnimationMs);\n }\n\n private enable(): void {\n this.disabled$.next(false);\n }\n\n private closeModalAndRefresh(): void {\n this.closeEvent.emit('refresh');\n }\n\n private getTaskListColumnFromFormValue(\n includeEnum: boolean,\n includeDateFormat: boolean,\n includeYesNo: boolean\n ): TaskListColumn {\n const validEnumValues = this.getValidEnumValues(this._enumValues$.getValue());\n const mappedEnumValues =\n validEnumValues && validEnumValues.length > 0 && this.mapEnumValues(validEnumValues);\n const validYesNoValues = this.getValidEnumValues(this._yesNoValues$.getValue());\n const mappedYesNoValues =\n validYesNoValues && validYesNoValues.length > 0 && this.mapEnumValues(validYesNoValues);\n\n const formValue = this.formGroup.getRawValue();\n const taskListColumn: TaskListColumn = {\n ...(formValue.title && {title: formValue.title}),\n key: formValue.key,\n path: formValue.path,\n displayType: {\n type: formValue.displayType.key,\n displayTypeParameters: {\n ...(includeDateFormat && formValue.dateFormat && {dateFormat: formValue.dateFormat}),\n ...(includeEnum && mappedEnumValues && {enum: mappedEnumValues}),\n ...(includeYesNo && mappedYesNoValues && {enum: mappedYesNoValues}),\n },\n },\n sortable: formValue.sortable,\n ...(formValue.defaultSort.key !== this._INVALID_KEY && {\n defaultSort: formValue.defaultSort.key as TaskListColumnDefaultSort,\n }),\n };\n\n return taskListColumn;\n }\n\n private mapEnumValues(enumValues: MultiInputValues): TaskListColumnEnum {\n return enumValues.reduce((acc, curr) => ({...acc, [curr.key]: curr.value}), {});\n }\n\n private getValidEnumValues(values: MultiInputValues): MultiInputValues {\n return (values || []).filter(value => value.value && value.key);\n }\n\n private getListItemFromViewType(viewType: ViewType | string): TaskListColumnListItem {\n return {\n content: this.translateService.instant(`listColumnDisplayType.${viewType}`),\n key: viewType,\n } as TaskListColumnListItem;\n }\n\n private getMultiInputValuesFromTaskListColumnEnum(\n taskListColumnEnum: TaskListColumnEnum\n ): MultiInputValues {\n return Object.keys(taskListColumnEnum).reduce(\n (acc, curr) => [...acc, {key: curr, value: taskListColumnEnum[curr]}],\n []\n );\n }\n\n private prefillForm(column: TaskListColumn): void {\n if (\n column?.displayType?.type === ViewType.ENUM &&\n column?.displayType?.displayTypeParameters?.enum\n ) {\n this._enumValues$.next(\n this.getMultiInputValuesFromTaskListColumnEnum(\n column.displayType.displayTypeParameters.enum\n )\n );\n }\n\n if (\n column?.displayType?.type === ViewType.BOOLEAN &&\n column?.displayType?.displayTypeParameters?.enum\n ) {\n this._yesNoValues$.next(\n this.getMultiInputValuesFromTaskListColumnEnum(\n column.displayType.displayTypeParameters.enum\n )\n );\n }\n\n this.formGroup.patchValue({\n key: column.key,\n path: column.path,\n sortable: column.sortable,\n displayType: this.getListItemFromViewType(column.displayType.type),\n ...(column.title && {title: column.title}),\n ...(!column.defaultSort && {\n defaultSort: this.getInvalidListItem(`listColumn.selectDefaultSort`),\n }),\n ...(column.defaultSort === 'ASC' && {defaultSort: this._SORT_ASC_ITEM}),\n ...(column.defaultSort === 'DESC' && {defaultSort: this._SORT_DESC_ITEM}),\n ...(column.displayType?.type === ViewType.DATE && {\n dateFormat: column.displayType.displayTypeParameters.dateFormat,\n }),\n });\n }\n}\n","<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container\n *ngIf=\"{\n show: show$ | async,\n type: type$ | async,\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n disabled: disabled$ | async,\n showDateFormat: showDateFormat$ | async,\n showEnum: showEnum$ | async,\n showYesNo: showYesNo$ | async,\n disableDefaultSort: disableDefaultSort$ | async,\n enumValues: enumValues$ | async,\n enumValid: enumValid$ | async,\n yesNoValues: yesNoValues$ | async,\n viewTypeItems: viewTypeItems$ | async,\n sortItems: sortItems$ | async\n } as obs\"\n>\n <cds-modal size=\"sm\" [open]=\"obs.show\" valtimoCdsModal>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\">\n <h3 cdsModalHeaderHeading>\n {{\n obs.type === 'add'\n ? ('listColumn.addButtonText' | translate)\n : ('listColumn.editColumnTitle' | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent>\n <ng-container *ngTemplateOutlet=\"form; context: {obs: obs}\"></ng-container>\n </section>\n\n <ng-container *ngTemplateOutlet=\"modalFooter; context: {obs: obs}\"> </ng-container>\n </cds-modal>\n</ng-container>\n\n<ng-template #form let-obs=\"obs\">\n <form [formGroup]=\"formGroup\" class=\"list-column-form\">\n <div class=\"cds--text-input__field-wrapper\">\n <cds-label [disabled]=\"obs.disabled\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.titleTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.titleTooltip' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"title\" />\n </cds-label>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\">\n <cds-label\n [invalid]=\"key?.touched && key?.invalid\"\n [disabled]=\"obs.disabled || obs.isEdit\"\n [invalidText]=\"'listColumn.uniqueKeyWarning' | translate\"\n >\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.key' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.keyTooltip' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"key\" />\n </cds-label>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\">\n <cds-label [disabled]=\"obs.disabled\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.path' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.pathTooltip' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"path\" />\n </cds-label>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\">\n <cds-label [disabled]=\"obs.disabled\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.displayType' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.displayTypeTooltip' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n *ngIf=\"obs.viewTypeItems\"\n formControlName=\"displayType\"\n [disabled]=\"obs.disabled\"\n >\n <cds-dropdown-list [items]=\"obs.viewTypeItems\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\" *ngIf=\"obs.showDateFormat\">\n <cds-label [disabled]=\"obs.disabled\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.dateFormat' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.dateFormatTooltip' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"dateFormat\" />\n </cds-label>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\" *ngIf=\"obs.showEnum\">\n <cds-label [disabled]=\"obs.disabled\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.enumTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.enumTooltip' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-carbon-multi-input\n *ngIf=\"obs.showEnum\"\n [fullWidth]=\"true\"\n [carbonTheme]=\"CARBON_THEME_WHITE\"\n [defaultValues]=\"obs.enumValues\"\n type=\"keyValue\"\n (valueChange)=\"enumValueChange($event)\"\n ></valtimo-carbon-multi-input>\n </cds-label>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\" *ngIf=\"obs.showYesNo\" [ngClass]=\"'no-margin'\">\n <cds-label [disabled]=\"obs.disabled\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.enumTitleOptional' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.enumTooltipOptional' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-carbon-multi-input\n *ngIf=\"obs.showYesNo\"\n [fullWidth]=\"true\"\n [carbonTheme]=\"CARBON_THEME_WHITE\"\n [defaultValues]=\"obs.yesNoValues\"\n type=\"keyValue\"\n [hideAddButton]=\"true\"\n [hideDeleteButton]=\"true\"\n [maxRows]=\"1\"\n [keyColumnTitle]=\"'viewTypeConverter.Yes' | translate\"\n [valueColumnTitle]=\"'viewTypeConverter.No' | translate\"\n (valueChange)=\"yesNoValueChange($event)\"\n ></valtimo-carbon-multi-input>\n </cds-label>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\">\n <cds-checkbox formControlName=\"sortable\" [disabled]=\"obs.disabled\"\n >{{ 'listColumn.sortable' | translate }}\n </cds-checkbox>\n </div>\n\n <div class=\"cds--text-input__field-wrapper\">\n <cds-label [disabled]=\"obs.disabled || obs.disableDefaultSort\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.defaultSortTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.defaultSortTooltip' | translate\"\n [disabled]=\"obs.disabled\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown formControlName=\"defaultSort\" [disabled]=\"obs.disabled\" *ngIf=\"obs.sortItems\">\n <cds-dropdown-list [items]=\"obs.sortItems\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n </div>\n </form>\n</ng-template>\n\n<ng-template #modalFooter let-obs=\"obs\">\n <cds-modal-footer>\n <ng-container>\n <button\n (click)=\"closeModal()\"\n cdsButton=\"secondary\"\n [attr.modal-primary-focus]=\"true\"\n [disabled]=\"obs.disabled\"\n >\n {{ 'listColumn.close' | translate }}\n </button>\n\n <button\n (click)=\"save()\"\n cdsButton=\"primary\"\n [attr.modal-primary-focus]=\"true\"\n [disabled]=\"!obs.valid\"\n [disabled]=\"obs.disabled || formGroup?.invalid || (obs.showEnum && !obs.enumValid)\"\n >\n {{ 'listColumn.save' | translate }}\n </button>\n </ng-container>\n </cds-modal-footer>\n</ng-template>\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {ChangeDetectionStrategy, Component, Input} from '@angular/core';\nimport {\n ActionItem,\n CARBON_CONSTANTS,\n CARBON_THEME,\n CarbonListModule,\n ColumnConfig,\n ConfirmationModalModule,\n MoveRowDirection,\n MoveRowEvent,\n} from '@valtimo/components';\nimport {CommonModule} from '@angular/common';\nimport {TranslateModule, TranslateService} from '@ngx-translate/core';\nimport {ButtonModule, IconModule, TabsModule} from 'carbon-components-angular';\nimport {TaskManagementApiService, TaskManagementService} from '../../services';\nimport {\n BehaviorSubject,\n combineLatest,\n filter,\n map,\n Observable,\n Subject,\n switchMap,\n take,\n tap,\n} from 'rxjs';\nimport {ActivatedRoute} from '@angular/router';\nimport {\n TaskListColumn,\n TaskListColumnDisplayTypeParameters,\n TaskListColumnModalCloseEvent,\n TaskListColumnModalType,\n} from '@valtimo/task';\nimport {TaskManagementColumnModalComponent} from '../task-management-column-modal/task-management-column-modal.component';\n\n@Component({\n selector: 'valtimo-task-management-columns',\n templateUrl: './task-management-columns.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n CarbonListModule,\n TranslateModule,\n TabsModule,\n TaskManagementColumnModalComponent,\n ButtonModule,\n IconModule,\n ConfirmationModalModule,\n ],\n providers: [TaskManagementService],\n})\nexport class TaskManagementColumnsComponent {\n @Input() public carbonTheme: CARBON_THEME = CARBON_THEME.G10;\n\n private readonly _refreshColumns$ = new BehaviorSubject<null | 'noAnimation'>(null);\n\n public readonly documentDefinitionName$: Observable<string> = this.route.params.pipe(\n map(params => params?.name),\n filter(name => !!name)\n );\n\n public readonly loadingColumns$ = new BehaviorSubject<boolean>(true);\n\n public readonly selectedTaskListColumn$ = new Subject<TaskListColumn>();\n\n public readonly cachedTaskListColumns$ = new BehaviorSubject<TaskListColumn[]>([]);\n\n public readonly taskListColumns$: Observable<TaskListColumn[]> = combineLatest([\n this.documentDefinitionName$,\n this._refreshColumns$,\n this.translateService.stream('key'),\n ]).pipe(\n tap(([_, refresh]) => {\n if (refresh !== 'noAnimation') this.loadingColumns$.next(true);\n }),\n switchMap(([documentDefinitionName]) =>\n this.taskManagementApiService.getTaskListColumns(documentDefinitionName)\n ),\n tap(columns => {\n this.cachedTaskListColumns$.next(columns);\n }),\n map(columns =>\n columns.map(column => ({\n ...column,\n title: column.title || '-',\n sortable: column.sortable\n ? this.translateService.instant('listColumn.sortableYes')\n : this.translateService.instant('listColumn.sortableNo'),\n defaultSort:\n (column.defaultSort === 'ASC' &&\n this.translateService.instant('listColumn.sortableAsc')) ||\n (column.defaultSort === 'DESC' &&\n this.translateService.instant('listColumn.sortableDesc')) ||\n '-',\n displayType: this.translateService.instant(\n `listColumnDisplayType.${column?.displayType?.type}`\n ),\n displayTypeParameters: this.getDisplayTypeParametersView(\n column.displayType.displayTypeParameters\n ),\n }))\n ),\n tap(() => {\n this.enable();\n this.loadingColumns$.next(false);\n })\n );\n\n public readonly showDeleteModal$ = new Subject<boolean>();\n public readonly deleteRowKey$ = new BehaviorSubject<string>('');\n\n public readonly disabled$ = new BehaviorSubject<boolean>(true);\n\n public readonly fields: Array<ColumnConfig> = [\n {\n viewType: 'string',\n sortable: false,\n key: 'title',\n label: 'listColumn.title',\n },\n {\n viewType: 'string',\n sortable: false,\n key: 'key',\n label: 'listColumn.key',\n },\n {\n viewType: 'string',\n sortable: false,\n key: 'path',\n label: 'listColumn.path',\n },\n {\n viewType: 'string',\n sortable: false,\n key: 'displayType',\n label: 'listColumn.displayType',\n },\n {\n viewType: 'string',\n sortable: false,\n key: 'displayTypeParameters',\n label: 'listColumn.displayTypeParameters',\n },\n {\n viewType: 'string',\n sortable: false,\n key: 'sortable',\n label: 'listColumn.sortable',\n },\n {\n viewType: 'string',\n sortable: false,\n key: 'defaultSort',\n label: 'listColumn.defaultSort',\n },\n ];\n\n public readonly actionItems: ActionItem[] = [\n {\n label: 'interface.delete',\n callback: this.deleteRow.bind(this),\n type: 'danger',\n },\n ];\n\n public readonly modalType$ = new Subject<TaskListColumnModalType>();\n public readonly showModal$ = new Subject<boolean>();\n\n constructor(\n private readonly route: ActivatedRoute,\n private readonly taskManagementApiService: TaskManagementApiService,\n private readonly translateService: TranslateService\n ) {}\n\n public refreshColumns(noAnimation = false): void {\n this._refreshColumns$.next(noAnimation ? 'noAnimation' : null);\n }\n\n public deleteRow(taskListColumn: TaskListColumn): void {\n this.showDeleteModal$.next(true);\n this.deleteRowKey$.next(taskListColumn.key);\n }\n\n public onMoveRowClick(event: MoveRowEvent, documentDefinitionName: string): void {\n const {direction, index} = event;\n\n this.disable();\n\n this.cachedTaskListColumns$\n .pipe(\n take(1),\n switchMap(taskListColumns =>\n this.taskManagementApiService.swapTaskListColumns(\n documentDefinitionName,\n taskListColumns[index],\n taskListColumns[direction === MoveRowDirection.UP ? index - 1 : index + 1]\n )\n )\n )\n .subscribe({\n next: () => {\n this.refreshColumns(true);\n },\n error: () => this.enable(),\n });\n }\n\n public columnRowClicked(row: {key: string}): void {\n this.cachedTaskListColumns$.pipe(take(1)).subscribe(cachedTaskListColumns => {\n const selectedTaskListColumn = cachedTaskListColumns.find(column => column.key === row.key);\n this.selectedTaskListColumn$.next(selectedTaskListColumn);\n this.showModal('edit');\n });\n }\n\n public showModal(type: TaskListColumnModalType): void {\n this.modalType$.next(type);\n this.showModal$.next(true);\n }\n\n public onModalCloseEvent(event: TaskListColumnModalCloseEvent): void {\n this.showModal$.next(false);\n\n if (event === 'refresh') {\n this.disable();\n this.refreshColumns();\n }\n\n setTimeout(() => {\n this.clearSelectedTaskListColumn();\n }, CARBON_CONSTANTS.modalAnimationMs);\n }\n\n public deleteRowConfirmation(columnKey: string, documentDefinitionName: string): void {\n this.disable();\n\n this.taskManagementApiService\n .deleteTaskListColumn(documentDefinitionName, columnKey)\n .subscribe({\n next: () => {\n this.refreshColumns(true);\n },\n error: () => this.enable(),\n });\n }\n\n private getDisplayTypeParametersView(\n displayTypeParameters: TaskListColumnDisplayTypeParameters\n ): string {\n if (displayTypeParameters?.dateFormat) {\n return displayTypeParameters.dateFormat;\n } else if (displayTypeParameters?.enum) {\n return Object.keys(displayTypeParameters.enum).reduce((acc, curr) => {\n const keyValuePairString = `${curr}: ${displayTypeParameters.enum[curr]}`;\n if (!acc) {\n return `${keyValuePairString}`;\n }\n\n return `${acc}, ${keyValuePairString}`;\n }, '');\n }\n\n return '-';\n }\n\n private disable(): void {\n this.disabled$.next(true);\n }\n\n private enable(): void {\n this.disabled$.next(false);\n }\n\n private clearSelectedTaskListColumn(): void {\n this.selectedTaskListColumn$.next(null);\n }\n}\n","<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ng-container\n *ngIf=\"{\n taskListColumns: taskListColumns$ | async,\n cachedTaskListColumns: cachedTaskListColumns$ | async,\n documentDefinitionName: documentDefinitionName$ | async,\n loadingColumns: loadingColumns$ | async,\n modalType: modalType$ | async,\n showModal: showModal$ | async,\n disabled: disabled$ | async\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"list; context: {obs: obs}\"></ng-container>\n\n <valtimo-task-management-column-modal\n [taskListColumns]=\"obs.cachedTaskListColumns\"\n [type]=\"obs.modalType\"\n [show]=\"obs.showModal\"\n [documentDefinitionName]=\"obs.documentDefinitionName\"\n [selectedTaskListColumn]=\"selectedTaskListColumn$ | async\"\n (closeEvent)=\"onModalCloseEvent($event)\"\n ></valtimo-task-management-column-modal>\n\n <valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteModal$\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n (confirmEvent)=\"deleteRowConfirmation($event, obs.documentDefinitionName)\"\n confirmButtonTextTranslationKey=\"listColumn.deleteColumn\"\n titleTranslationKey=\"listColumn.deleteColumn\"\n contentTranslationKey=\"listColumn.deleteColumnConfirmation\"\n ></valtimo-confirmation-modal>\n</ng-container>\n\n<ng-template #list let-obs=\"obs\">\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [items]=\"obs.taskListColumns\"\n [loading]=\"obs.loadingColumns\"\n [fields]=\"fields\"\n [header]=\"false\"\n [movingRowsEnabled]=\"true\"\n (rowClicked)=\"columnRowClicked($event)\"\n (moveRow)=\"onMoveRowClick($event, obs.documentDefinitionName)\"\n >\n <ng-container\n carbonToolbarContent\n *ngTemplateOutlet=\"buttons; context: {obs: obs}\"\n ></ng-container>\n\n <valtimo-no-results\n [title]=\"'listColumn.noConfigWarningTitle' | translate\"\n [description]=\"'listColumn.noConfigWarning' | translate\"\n illustration=\"valtimo-layout/img/emptystate-empty.svg\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <button cdsButton=\"primary\" (click)=\"showModal('add')\" [disabled]=\"obs.disabled\">\n {{ 'listColumn.addButtonText' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n</ng-template>\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './task-management-columns.component';\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {ChangeDetectionStrategy, Component, Input, ViewEncapsulation} from '@angular/core';\nimport {CARBON_THEME, CarbonListModule, PageTitleService} from '@valtimo/components';\nimport {CommonModule} from '@angular/common';\nimport {TranslateModule} from '@ngx-translate/core';\nimport {filter, map, Observable, switchMap, tap} from 'rxjs';\nimport {ActivatedRoute} from '@angular/router';\nimport {DocumentDefinition, DocumentService} from '@valtimo/document';\nimport {TabsModule} from 'carbon-components-angular';\nimport {TaskManagementService} from '../../services';\nimport {TaskManagementTab} from '../../models';\nimport {TaskManagementColumnsComponent} from '../task-management-columns';\n\n@Component({\n templateUrl: './task-management-detail.component.html',\n styleUrls: ['./task-management-detail.component.scss'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n CarbonListModule,\n TranslateModule,\n TabsModule,\n TaskManagementColumnsComponent,\n ],\n providers: [TaskManagementService],\n encapsulation: ViewEncapsulation.None,\n})\nexport class TaskManagementDetailComponent {\n @Input() public carbonTheme: CARBON_THEME = CARBON_THEME.G10;\n\n public readonly setDocumentDefinitionName$: Observable<DocumentDefinition> =\n this.route.params.pipe(\n map(params => params.name || ''),\n filter(docDefName => !!docDefName),\n switchMap(documentDefinitionName =>\n this.documentService.getDocumentDefinition(documentDefinitionName)\n ),\n tap(documentDefinition => {\n this.pageTitleService.setCustomPageTitle((documentDefinition as any)?.schema?.title || '-');\n })\n );\n\n public readonly activeTab$ = this.taskManagementService.activeTab$;\n\n public readonly TAB_ENUM = TaskManagementTab;\n\n constructor(\n private readonly route: ActivatedRoute,\n private readonly documentService: DocumentService,\n private readonly pageTitleService: PageTitleService,\n private readonly taskManagementService: TaskManagementService\n ) {}\n\n public setActiveTab(tab: TaskManagementTab): void {\n this.taskManagementService.setActiveTab(tab);\n }\n}\n","<!--\n ~ Copyright 2015-2024 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<div\n *ngIf=\"{\n documentDefinitionName: setDocumentDefinitionName$ | async,\n activeTab: activeTab$ | async\n } as obs\"\n class=\"task-management-detail\"\n>\n <ng-container *ngIf=\"{columns: obs.activeTab === TAB_ENUM.COLUMNS} as activeTab\">\n <cds-tabs class=\"dossier-management-tabs\" type=\"contained\">\n <cds-tab\n [active]=\"activeTab.columns\"\n [heading]=\"'taskManagement.columns' | translate\"\n (selected)=\"setActiveTab(TAB_ENUM.COLUMNS)\"\n ></cds-tab>\n </cds-tabs>\n\n <valtimo-task-management-columns *ngIf=\"activeTab.columns\"> </valtimo-task-management-columns>\n </ng-container>\n</div>\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './task-management-detail.component';\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './task-management-column-modal.component';\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport * from './task-management';\nexport * from './task-management-detail';\nexport * from './task-management-columns';\nexport * from './task-management-column-modal';\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {NgModule} from '@angular/core';\nimport {RouterModule, Routes} from '@angular/router';\nimport {CommonModule} from '@angular/common';\nimport {AuthGuardService} from '@valtimo/security';\nimport {ROLE_ADMIN} from '@valtimo/config';\nimport {TaskManagementComponent, TaskManagementDetailComponent} from './components';\n\nconst routes: Routes = [\n {\n path: 'task-management',\n component: TaskManagementComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Tasks', roles: [ROLE_ADMIN]},\n },\n {\n path: 'task-management/dossier/:name',\n component: TaskManagementDetailComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Task details', roles: [ROLE_ADMIN], customPageTitle: true},\n },\n];\n\n@NgModule({\n imports: [CommonModule, RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class TaskManagementRoutingModule {}\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport {NgModule} from '@angular/core';\nimport {TaskManagementComponent} from './components';\nimport {TaskManagementRoutingModule} from './task-management-routing.module';\n\n@NgModule({\n imports: [TaskManagementRoutingModule, TaskManagementComponent],\n})\nexport class TaskManagementModule {}\n","/*\n * Copyright 2015-2024 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/*\n * Public API Surface of task\n */\n\nexport * from './lib/task-management.module';\nexport * from './lib/components';\nexport * from './lib/models';\nexport * from './lib/services';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i2","i5","i1","i2.TaskManagementApiService","i3","i4","i6","i4.TaskManagementService"],"mappings":"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"}
package/index.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@valtimo/task-management" />
5
+ export * from './public_api';
6
+ //# sourceMappingURL=valtimo-task-management.d.ts.map
@@ -0,0 +1,5 @@
1
+ export * from './task-management';
2
+ export * from './task-management-detail';
3
+ export * from './task-management-columns';
4
+ export * from './task-management-column-modal';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/task-management/src/lib/components/index.ts"],"names":[],"mappings":"AAgBA,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './task-management.component';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management/index.ts"],"names":[],"mappings":"AAgBA,cAAc,6BAA6B,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { ColumnConfig, Pagination } from '@valtimo/components';
2
+ import { Observable } from 'rxjs';
3
+ import { DocumentDefinition, DocumentService } from '@valtimo/document';
4
+ import { Router } from '@angular/router';
5
+ import * as i0 from "@angular/core";
6
+ export declare class TaskManagementComponent {
7
+ private readonly documentService;
8
+ private readonly router;
9
+ pagination: Pagination;
10
+ private readonly _refreshData$;
11
+ readonly dossiers$: Observable<DocumentDefinition[]>;
12
+ readonly dossierFields: ColumnConfig[];
13
+ constructor(documentService: DocumentService, router: Router);
14
+ paginationClicked(page: number): void;
15
+ paginationSet(size: number): void;
16
+ redirectToDetails(documentDefinition: DocumentDefinition): void;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementComponent, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<TaskManagementComponent, "ng-component", never, {}, {}, never, never, true, never>;
19
+ }
20
+ //# sourceMappingURL=task-management.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management/task-management.component.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAmB,YAAY,EAAE,UAAU,EAAW,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAuB,UAAU,EAAY,MAAM,MAAM,CAAC;AACjE,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAO,MAAM,mBAAmB,CAAC;AAI5E,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;;AAEvC,qBAOa,uBAAuB;IAkChC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAlClB,UAAU,EAAE,UAAU,CAI3B;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IAEjE,SAAgB,SAAS,EAAE,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAkBzD;IAEF,SAAgB,aAAa,EAAE,YAAY,EAAE,CAE3C;gBAGiB,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,MAAM;IAG1B,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKrC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKjC,iBAAiB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,IAAI;yCAhD3D,uBAAuB;2CAAvB,uBAAuB;CAmDnC"}
@@ -0,0 +1,2 @@
1
+ export * from './task-management-column-modal.component';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management-column-modal/index.ts"],"names":[],"mappings":"AAgBA,cAAc,0CAA0C,CAAC"}
@@ -0,0 +1,89 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { CARBON_THEME, MultiInputValues } from '@valtimo/components';
3
+ import { TranslateService } from '@ngx-translate/core';
4
+ import { TaskManagementApiService } from '../../services';
5
+ import { AbstractControl, FormControl, FormGroup } from '@angular/forms';
6
+ import { BehaviorSubject, Observable } from 'rxjs';
7
+ import { TaskListColumn, TaskListColumnListItem, TaskListColumnModalCloseEvent, TaskListColumnModalType } from '@valtimo/task';
8
+ import * as i0 from "@angular/core";
9
+ export declare class TaskManagementColumnModalComponent {
10
+ private readonly translateService;
11
+ private readonly taskManagementApiService;
12
+ carbonTheme: CARBON_THEME;
13
+ set taskListColumns(value: TaskListColumn[]);
14
+ set type(value: TaskListColumnModalType);
15
+ get type(): TaskListColumnModalType;
16
+ set show(showModal: boolean);
17
+ documentDefinitionName: string;
18
+ set selectedTaskListColumn(column: TaskListColumn);
19
+ closeEvent: EventEmitter<TaskListColumnModalCloseEvent>;
20
+ readonly type$: BehaviorSubject<TaskListColumnModalType>;
21
+ readonly isAdd$: Observable<boolean>;
22
+ readonly isEdit$: Observable<boolean>;
23
+ readonly show$: BehaviorSubject<boolean>;
24
+ readonly disabled$: BehaviorSubject<boolean>;
25
+ private readonly _taskListColumns$;
26
+ get taskListColumns$(): Observable<TaskListColumn[]>;
27
+ private readonly _INVALID_KEY;
28
+ private readonly DISPLAY_TYPES;
29
+ private getInvalidListItem;
30
+ private uniqueKeyValidator;
31
+ private listItemValidator;
32
+ readonly formGroup: FormGroup<{
33
+ title: FormControl<any>;
34
+ key: FormControl<any>;
35
+ path: FormControl<any>;
36
+ dateFormat: FormControl<any>;
37
+ displayType: FormControl<TaskListColumnListItem>;
38
+ sortable: FormControl<boolean>;
39
+ defaultSort: FormControl<TaskListColumnListItem>;
40
+ }>;
41
+ get title(): AbstractControl<string>;
42
+ get key(): AbstractControl<string>;
43
+ get keyValue$(): Observable<string>;
44
+ get path(): AbstractControl<string>;
45
+ get dateFormat(): AbstractControl<string>;
46
+ get displayType(): AbstractControl<TaskListColumnListItem>;
47
+ get sortable(): AbstractControl<boolean>;
48
+ get defaultSort(): AbstractControl<TaskListColumnListItem>;
49
+ private get _SORT_ASC_ITEM();
50
+ private get _SORT_DESC_ITEM();
51
+ readonly sortItems$: Observable<Array<TaskListColumnListItem>>;
52
+ readonly viewTypeItems$: Observable<Array<TaskListColumnListItem>>;
53
+ private _showDateFormat;
54
+ readonly showDateFormat$: Observable<boolean>;
55
+ private _showEnum;
56
+ readonly showEnum$: Observable<boolean>;
57
+ private _showYesNo;
58
+ readonly showYesNo$: Observable<boolean>;
59
+ readonly CARBON_THEME_WHITE = CARBON_THEME.WHITE;
60
+ readonly disableDefaultSort$: Observable<boolean>;
61
+ private readonly _DEFAULT_ENUM_VALUES;
62
+ private readonly _enumValues$;
63
+ get enumValues$(): Observable<MultiInputValues>;
64
+ get enumValid$(): Observable<boolean>;
65
+ private readonly _yesNoValues$;
66
+ get yesNoValues$(): Observable<MultiInputValues>;
67
+ constructor(translateService: TranslateService, taskManagementApiService: TaskManagementApiService);
68
+ closeModal(): void;
69
+ save(): void;
70
+ enumValueChange(value: MultiInputValues): void;
71
+ yesNoValueChange(value: MultiInputValues): void;
72
+ private resetEnumValues;
73
+ private resetYesNoValues;
74
+ private resetFormAfterTimeout;
75
+ private resetForm;
76
+ private disable;
77
+ private enableAfterTimeout;
78
+ private enable;
79
+ private closeModalAndRefresh;
80
+ private getTaskListColumnFromFormValue;
81
+ private mapEnumValues;
82
+ private getValidEnumValues;
83
+ private getListItemFromViewType;
84
+ private getMultiInputValuesFromTaskListColumnEnum;
85
+ private prefillForm;
86
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementColumnModalComponent, never>;
87
+ static ɵcmp: i0.ɵɵComponentDeclaration<TaskManagementColumnModalComponent, "valtimo-task-management-column-modal", never, { "carbonTheme": { "alias": "carbonTheme"; "required": false; }; "taskListColumns": { "alias": "taskListColumns"; "required": false; }; "type": { "alias": "type"; "required": false; }; "show": { "alias": "show"; "required": false; }; "documentDefinitionName": { "alias": "documentDefinitionName"; "required": false; }; "selectedTaskListColumn": { "alias": "selectedTaskListColumn"; "required": false; }; }, { "closeEvent": "closeEvent"; }, never, never, true, never>;
88
+ }
89
+ //# sourceMappingURL=task-management-column-modal.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management-column-modal.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management-column-modal/task-management-column-modal.component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './task-management-columns.component';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management-columns/index.ts"],"names":[],"mappings":"AAgBA,cAAc,qCAAqC,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { ActionItem, CARBON_THEME, ColumnConfig, MoveRowEvent } from '@valtimo/components';
2
+ import { TranslateService } from '@ngx-translate/core';
3
+ import { TaskManagementApiService } from '../../services';
4
+ import { BehaviorSubject, Observable, Subject } from 'rxjs';
5
+ import { ActivatedRoute } from '@angular/router';
6
+ import { TaskListColumn, TaskListColumnModalCloseEvent, TaskListColumnModalType } from '@valtimo/task';
7
+ import * as i0 from "@angular/core";
8
+ export declare class TaskManagementColumnsComponent {
9
+ private readonly route;
10
+ private readonly taskManagementApiService;
11
+ private readonly translateService;
12
+ carbonTheme: CARBON_THEME;
13
+ private readonly _refreshColumns$;
14
+ readonly documentDefinitionName$: Observable<string>;
15
+ readonly loadingColumns$: BehaviorSubject<boolean>;
16
+ readonly selectedTaskListColumn$: Subject<TaskListColumn>;
17
+ readonly cachedTaskListColumns$: BehaviorSubject<TaskListColumn[]>;
18
+ readonly taskListColumns$: Observable<TaskListColumn[]>;
19
+ readonly showDeleteModal$: Subject<boolean>;
20
+ readonly deleteRowKey$: BehaviorSubject<string>;
21
+ readonly disabled$: BehaviorSubject<boolean>;
22
+ readonly fields: Array<ColumnConfig>;
23
+ readonly actionItems: ActionItem[];
24
+ readonly modalType$: Subject<TaskListColumnModalType>;
25
+ readonly showModal$: Subject<boolean>;
26
+ constructor(route: ActivatedRoute, taskManagementApiService: TaskManagementApiService, translateService: TranslateService);
27
+ refreshColumns(noAnimation?: boolean): void;
28
+ deleteRow(taskListColumn: TaskListColumn): void;
29
+ onMoveRowClick(event: MoveRowEvent, documentDefinitionName: string): void;
30
+ columnRowClicked(row: {
31
+ key: string;
32
+ }): void;
33
+ showModal(type: TaskListColumnModalType): void;
34
+ onModalCloseEvent(event: TaskListColumnModalCloseEvent): void;
35
+ deleteRowConfirmation(columnKey: string, documentDefinitionName: string): void;
36
+ private getDisplayTypeParametersView;
37
+ private disable;
38
+ private enable;
39
+ private clearSelectedTaskListColumn;
40
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementColumnsComponent, never>;
41
+ static ɵcmp: i0.ɵɵComponentDeclaration<TaskManagementColumnsComponent, "valtimo-task-management-columns", never, { "carbonTheme": { "alias": "carbonTheme"; "required": false; }; }, {}, never, never, true, never>;
42
+ }
43
+ //# sourceMappingURL=task-management-columns.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management-columns.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management-columns/task-management-columns.component.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,UAAU,EAEV,YAAY,EAEZ,YAAY,EAGZ,YAAY,EACb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAkB,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAEtE,OAAO,EAAC,wBAAwB,EAAwB,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EACL,eAAe,EAIf,UAAU,EACV,OAAO,EAIR,MAAM,MAAM,CAAC;AACd,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,cAAc,EAEd,6BAA6B,EAC7B,uBAAuB,EACxB,MAAM,eAAe,CAAC;;AAGvB,qBAiBa,8BAA8B;IAuHvC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,wBAAwB;IACzC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAxHnB,WAAW,EAAE,YAAY,CAAoB;IAE7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmD;IAEpF,SAAgB,uBAAuB,EAAE,UAAU,CAAC,MAAM,CAAC,CAGzD;IAEF,SAAgB,eAAe,2BAAsC;IAErE,SAAgB,uBAAuB,0BAAiC;IAExE,SAAgB,sBAAsB,oCAA6C;IAEnF,SAAgB,gBAAgB,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,CAuC5D;IAEF,SAAgB,gBAAgB,mBAA0B;IAC1D,SAAgB,aAAa,0BAAmC;IAEhE,SAAgB,SAAS,2BAAsC;IAE/D,SAAgB,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CA2CzC;IAEF,SAAgB,WAAW,EAAE,UAAU,EAAE,CAMvC;IAEF,SAAgB,UAAU,mCAA0C;IACpE,SAAgB,UAAU,mBAA0B;gBAGjC,KAAK,EAAE,cAAc,EACrB,wBAAwB,EAAE,wBAAwB,EAClD,gBAAgB,EAAE,gBAAgB;IAG9C,cAAc,CAAC,WAAW,UAAQ,GAAG,IAAI;IAIzC,SAAS,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAK/C,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,GAAG,IAAI;IAwBzE,gBAAgB,CAAC,GAAG,EAAE;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI;IAQ1C,SAAS,CAAC,IAAI,EAAE,uBAAuB,GAAG,IAAI;IAK9C,iBAAiB,CAAC,KAAK,EAAE,6BAA6B,GAAG,IAAI;IAa7D,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,sBAAsB,EAAE,MAAM,GAAG,IAAI;IAarF,OAAO,CAAC,4BAA4B;IAmBpC,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,2BAA2B;yCA/NxB,8BAA8B;2CAA9B,8BAA8B;CAkO1C"}
@@ -0,0 +1,2 @@
1
+ export * from './task-management-detail.component';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management-detail/index.ts"],"names":[],"mappings":"AAgBA,cAAc,oCAAoC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { CARBON_THEME, PageTitleService } from '@valtimo/components';
2
+ import { Observable } from 'rxjs';
3
+ import { ActivatedRoute } from '@angular/router';
4
+ import { DocumentDefinition, DocumentService } from '@valtimo/document';
5
+ import { TaskManagementService } from '../../services';
6
+ import { TaskManagementTab } from '../../models';
7
+ import * as i0 from "@angular/core";
8
+ export declare class TaskManagementDetailComponent {
9
+ private readonly route;
10
+ private readonly documentService;
11
+ private readonly pageTitleService;
12
+ private readonly taskManagementService;
13
+ carbonTheme: CARBON_THEME;
14
+ readonly setDocumentDefinitionName$: Observable<DocumentDefinition>;
15
+ readonly activeTab$: Observable<TaskManagementTab>;
16
+ readonly TAB_ENUM: typeof TaskManagementTab;
17
+ constructor(route: ActivatedRoute, documentService: DocumentService, pageTitleService: PageTitleService, taskManagementService: TaskManagementService);
18
+ setActiveTab(tab: TaskManagementTab): void;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementDetailComponent, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<TaskManagementDetailComponent, "ng-component", never, { "carbonTheme": { "alias": "carbonTheme"; "required": false; }; }, {}, never, never, true, never>;
21
+ }
22
+ //# sourceMappingURL=task-management-detail.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management-detail.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/valtimo/task-management/src/lib/components/task-management-detail/task-management-detail.component.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,YAAY,EAAoB,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAGrF,OAAO,EAAc,UAAU,EAAiB,MAAM,MAAM,CAAC;AAC7D,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAEtE,OAAO,EAAC,qBAAqB,EAAC,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;;AAG/C,qBAea,6BAA6B;IAoBtC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAtBxB,WAAW,EAAE,YAAY,CAAoB;IAE7D,SAAgB,0BAA0B,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAUtE;IAEJ,SAAgB,UAAU,gCAAyC;IAEnE,SAAgB,QAAQ,2BAAqB;gBAG1B,KAAK,EAAE,cAAc,EACrB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAGxD,YAAY,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;yCA1BtC,6BAA6B;2CAA7B,6BAA6B;CA6BzC"}
@@ -0,0 +1,2 @@
1
+ export * from './task-management.model';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/task-management/src/lib/models/index.ts"],"names":[],"mappings":"AAgBA,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,5 @@
1
+ declare enum TaskManagementTab {
2
+ COLUMNS = 0
3
+ }
4
+ export { TaskManagementTab };
5
+ //# sourceMappingURL=task-management.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management.model.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/task-management/src/lib/models/task-management.model.ts"],"names":[],"mappings":"AAgBA,aAAK,iBAAiB;IACpB,OAAO,IAAA;CACR;AAED,OAAO,EAAC,iBAAiB,EAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './task-management.service';
2
+ export * from './task-management-api.service';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/task-management/src/lib/services/index.ts"],"names":[],"mappings":"AAgBA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { BaseApiService, ConfigService } from '@valtimo/config';
2
+ import { HttpClient } from '@angular/common/http';
3
+ import { Observable } from 'rxjs';
4
+ import { TaskListColumn } from '@valtimo/task';
5
+ import * as i0 from "@angular/core";
6
+ export declare class TaskManagementApiService extends BaseApiService {
7
+ protected readonly httpClient: HttpClient;
8
+ protected readonly configService: ConfigService;
9
+ constructor(httpClient: HttpClient, configService: ConfigService);
10
+ getTaskListColumns(caseDefinitionName: string): Observable<TaskListColumn[]>;
11
+ updateTaskListColumn(caseDefinitionName: string, column: TaskListColumn): Observable<TaskListColumn>;
12
+ deleteTaskListColumn(caseDefinitionName: string, columnKey: string): Observable<TaskListColumn>;
13
+ swapTaskListColumns(caseDefinitionName: string, firstColumn: TaskListColumn, secondColumn: TaskListColumn): Observable<TaskListColumn[]>;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementApiService, never>;
15
+ static ɵprov: i0.ɵɵInjectableDeclaration<TaskManagementApiService>;
16
+ }
17
+ //# sourceMappingURL=task-management-api.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management-api.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/task-management/src/lib/services/task-management-api.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,cAAc,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AAChC,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;;AAE7C,qBAGa,wBAAyB,SAAQ,cAAc;IAExD,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU;IACzC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;gBAD5B,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,aAAa;IAK1C,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;IAM5E,oBAAoB,CACzB,kBAAkB,EAAE,MAAM,EAC1B,MAAM,EAAE,cAAc,GACrB,UAAU,CAAC,cAAc,CAAC;IAOtB,oBAAoB,CACzB,kBAAkB,EAAE,MAAM,EAC1B,SAAS,EAAE,MAAM,GAChB,UAAU,CAAC,cAAc,CAAC;IAMtB,mBAAmB,CACxB,kBAAkB,EAAE,MAAM,EAC1B,WAAW,EAAE,cAAc,EAC3B,YAAY,EAAE,cAAc,GAC3B,UAAU,CAAC,cAAc,EAAE,CAAC;yCArCpB,wBAAwB;6CAAxB,wBAAwB;CA2CpC"}
@@ -0,0 +1,11 @@
1
+ import { Observable } from 'rxjs';
2
+ import { TaskManagementTab } from '../models';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TaskManagementService {
5
+ private readonly _activeTab$;
6
+ get activeTab$(): Observable<TaskManagementTab>;
7
+ setActiveTab(tab: TaskManagementTab): void;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementService, never>;
9
+ static ɵprov: i0.ɵɵInjectableDeclaration<TaskManagementService>;
10
+ }
11
+ //# sourceMappingURL=task-management.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/task-management/src/lib/services/task-management.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAkB,UAAU,EAAC,MAAM,MAAM,CAAC;AACjD,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;;AAE5C,qBACa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqE;IAEjG,IAAW,UAAU,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAErD;IAEM,YAAY,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;yCAPtC,qBAAqB;6CAArB,qBAAqB;CAUjC"}
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "@angular/common";
3
+ import * as i2 from "@angular/router";
4
+ export declare class TaskManagementRoutingModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementRoutingModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TaskManagementRoutingModule, never, [typeof i1.CommonModule, typeof i2.RouterModule], [typeof i2.RouterModule]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<TaskManagementRoutingModule>;
8
+ }
9
+ //# sourceMappingURL=task-management-routing.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management-routing.module.d.ts","sourceRoot":"","sources":["../../../../projects/valtimo/task-management/src/lib/task-management-routing.module.ts"],"names":[],"mappings":";;;AAsCA,qBAIa,2BAA2B;yCAA3B,2BAA2B;0CAA3B,2BAA2B;0CAA3B,2BAA2B;CAAG"}
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./task-management-routing.module";
3
+ import * as i2 from "./components/task-management/task-management.component";
4
+ export declare class TaskManagementModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<TaskManagementModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TaskManagementModule, never, [typeof i1.TaskManagementRoutingModule, typeof i2.TaskManagementComponent], never>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<TaskManagementModule>;
8
+ }
9
+ //# sourceMappingURL=task-management.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-management.module.d.ts","sourceRoot":"","sources":["../../../../projects/valtimo/task-management/src/lib/task-management.module.ts"],"names":[],"mappings":";;;AAmBA,qBAGa,oBAAoB;yCAApB,oBAAoB;0CAApB,oBAAoB;0CAApB,oBAAoB;CAAG"}