@valtimo/task 13.28.1 → 13.30.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.
- package/fesm2022/valtimo-task.mjs +210 -38
- package/fesm2022/valtimo-task.mjs.map +1 -1
- package/lib/components/task-list/task-list.component.d.ts +10 -2
- package/lib/components/task-list/task-list.component.d.ts.map +1 -1
- package/lib/models/index.d.ts +1 -0
- package/lib/models/index.d.ts.map +1 -1
- package/lib/models/task-list-quick-search.model.d.ts +4 -0
- package/lib/models/task-list-quick-search.model.d.ts.map +1 -0
- package/lib/services/index.d.ts +2 -0
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/task-list-column.service.d.ts +10 -4
- package/lib/services/task-list-column.service.d.ts.map +1 -1
- package/lib/services/task-list-hidden-columns.service.d.ts +15 -0
- package/lib/services/task-list-hidden-columns.service.d.ts.map +1 -0
- package/lib/services/task-list-quick-search.service.d.ts +23 -0
- package/lib/services/task-list-quick-search.service.d.ts.map +1 -0
- package/lib/task.module.d.ts +1 -1
- package/lib/task.module.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -6,14 +6,14 @@ import { RecentlyViewed16, CalendarAdd16, Edit16, FolderDetailsReference16 } fro
|
|
|
6
6
|
import * as i4$1 from '@ngx-translate/core';
|
|
7
7
|
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
|
|
8
8
|
import * as i9 from '@valtimo/components';
|
|
9
|
-
import { ViewType, FormioOptionsImpl, FormIoModule, ConfirmationModalModule, TooltipModule, RemoveClassnamesDirective, runAfterCarbonModalClosed, CarbonListModule, PageHeaderModule, WidgetModule, SpinnerModule, CamundaFormModule, RenderInPageHeaderDirective, SearchFieldsModule, AssignmentComponent, ValtimoCdsModalDirective } from '@valtimo/components';
|
|
9
|
+
import { ViewType, FormioOptionsImpl, FormIoModule, ConfirmationModalModule, TooltipModule, RemoveClassnamesDirective, runAfterCarbonModalClosed, QUICK_SEARCH_SERVICE, CarbonListModule, PageHeaderModule, WidgetModule, SpinnerModule, CamundaFormModule, RenderInPageHeaderDirective, SearchFieldsModule, QuickSearchComponent, AssignmentComponent, ValtimoCdsModalDirective, ListColumnViewComponent } from '@valtimo/components';
|
|
10
10
|
import * as i1$1 from '@valtimo/shared';
|
|
11
11
|
import { BaseApiService, TaskListTab, InterceptorSkip, FORM_VIEW_MODEL_TOKEN, ROLE_USER, HttpLoaderFactory } from '@valtimo/shared';
|
|
12
12
|
import * as i7 from '@valtimo/process-link';
|
|
13
13
|
import { FORM_CUSTOM_COMPONENT_TOKEN, ProcessLinkModule, formSizeToCarbonModalSizeMap } from '@valtimo/process-link';
|
|
14
14
|
import * as i2$1 from 'carbon-components-angular';
|
|
15
15
|
import { LoadingModule, NotificationModule, ButtonModule, IconModule, ModalModule, ToggletipModule, DatePickerModule, LayerModule, LinkModule, TabsModule, ContentSwitcherModule, DropdownModule, TooltipModule as TooltipModule$1 } from 'carbon-components-angular';
|
|
16
|
-
import { BehaviorSubject, combineLatest, tap, filter,
|
|
16
|
+
import { BehaviorSubject, combineLatest, Subject, switchMap, of, tap, filter, take as take$1, map as map$1, catchError, Subscription, distinctUntilChanged, shareReplay, EMPTY } from 'rxjs';
|
|
17
17
|
import * as i2 from '@valtimo/document';
|
|
18
18
|
import * as i4 from 'ngx-logger';
|
|
19
19
|
import * as i3 from '@valtimo/access-control';
|
|
@@ -376,8 +376,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
376
376
|
type: Injectable
|
|
377
377
|
}], ctorParameters: () => [{ type: TaskService }, { type: TaskListService }] });
|
|
378
378
|
|
|
379
|
+
class TaskListHiddenColumnsService extends BaseApiService {
|
|
380
|
+
constructor(httpClient, configService) {
|
|
381
|
+
super(httpClient, configService);
|
|
382
|
+
this.httpClient = httpClient;
|
|
383
|
+
this.configService = configService;
|
|
384
|
+
}
|
|
385
|
+
getHiddenColumns(caseDefinitionName) {
|
|
386
|
+
return this.httpClient.get(this.getApiUrl(`v1/case/${caseDefinitionName}/hidden-task-list-column`));
|
|
387
|
+
}
|
|
388
|
+
saveHiddenColumns(caseDefinitionName, hiddenColumns) {
|
|
389
|
+
return this.httpClient.post(this.getApiUrl(`v1/case/${caseDefinitionName}/hidden-task-list-column`), hiddenColumns);
|
|
390
|
+
}
|
|
391
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListHiddenColumnsService, deps: [{ token: i1.HttpClient }, { token: i1$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
392
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListHiddenColumnsService }); }
|
|
393
|
+
}
|
|
394
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListHiddenColumnsService, decorators: [{
|
|
395
|
+
type: Injectable
|
|
396
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i1$1.ConfigService }] });
|
|
397
|
+
|
|
379
398
|
/*
|
|
380
|
-
* Copyright 2015-
|
|
399
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
381
400
|
*
|
|
382
401
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
383
402
|
* you may not use this file except in compliance with the License.
|
|
@@ -395,34 +414,23 @@ class TaskListColumnService {
|
|
|
395
414
|
get hasCustomConfigTaskList() {
|
|
396
415
|
return !!this.taskService.getConfigCustomTaskList();
|
|
397
416
|
}
|
|
398
|
-
get
|
|
399
|
-
return this.
|
|
417
|
+
get availableFields$() {
|
|
418
|
+
return this._availableFields$.asObservable();
|
|
400
419
|
}
|
|
401
|
-
get
|
|
402
|
-
return this.
|
|
403
|
-
if (
|
|
404
|
-
|
|
405
|
-
}
|
|
406
|
-
}), filter(caseDefinitionName => !!caseDefinitionName && caseDefinitionName !== this.taskListService.ALL_CASES_ID), switchMap(caseDefinitionName => this.taskService.getTaskListColumns(caseDefinitionName)), tap(taskListColumns => {
|
|
407
|
-
if (taskListColumns.length === 0) {
|
|
408
|
-
this.taskListSortService.updateSortStates({
|
|
409
|
-
isSorting: true,
|
|
410
|
-
state: {
|
|
411
|
-
name: this._DEFAULT_SPECIFIED_TASK_LIST_FIELDS[0].key,
|
|
412
|
-
direction: 'DESC',
|
|
413
|
-
},
|
|
414
|
-
});
|
|
415
|
-
this._fields$.next(this._DEFAULT_SPECIFIED_TASK_LIST_FIELDS);
|
|
416
|
-
}
|
|
417
|
-
else {
|
|
418
|
-
this._fields$.next(this.mapTaskListColumnToColumnConfig(taskListColumns));
|
|
420
|
+
get fields$() {
|
|
421
|
+
return combineLatest([this._availableFields$, this.hiddenColumns$]).pipe(map(([availableFields, hiddenColumns]) => {
|
|
422
|
+
if (!hiddenColumns || hiddenColumns.length === 0) {
|
|
423
|
+
return availableFields;
|
|
419
424
|
}
|
|
420
|
-
|
|
425
|
+
const hiddenKeys = new Set(hiddenColumns.map(col => col.key));
|
|
426
|
+
return availableFields.filter(field => !hiddenKeys.has(field.key));
|
|
427
|
+
}));
|
|
421
428
|
}
|
|
422
|
-
constructor(taskService, taskListService, taskListSortService) {
|
|
429
|
+
constructor(taskService, taskListService, taskListSortService, hiddenColumnsService) {
|
|
423
430
|
this.taskService = taskService;
|
|
424
431
|
this.taskListService = taskListService;
|
|
425
432
|
this.taskListSortService = taskListSortService;
|
|
433
|
+
this.hiddenColumnsService = hiddenColumnsService;
|
|
426
434
|
this._DEFAULT_TASK_LIST_FIELDS = [
|
|
427
435
|
{
|
|
428
436
|
key: 'created',
|
|
@@ -479,7 +487,34 @@ class TaskListColumnService {
|
|
|
479
487
|
sortable: true,
|
|
480
488
|
},
|
|
481
489
|
];
|
|
482
|
-
this.
|
|
490
|
+
this._availableFields$ = new BehaviorSubject(this._DEFAULT_TASK_LIST_FIELDS);
|
|
491
|
+
this._refreshHiddenColumns$ = new Subject();
|
|
492
|
+
this.hiddenColumns$ = this.taskListService.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => {
|
|
493
|
+
if (!caseDefinitionKey || caseDefinitionKey === this.taskListService.ALL_CASES_ID) {
|
|
494
|
+
return of([]);
|
|
495
|
+
}
|
|
496
|
+
return this._refreshHiddenColumns$.pipe(switchMap(() => this.hiddenColumnsService.getHiddenColumns(caseDefinitionKey)));
|
|
497
|
+
}));
|
|
498
|
+
this.taskListColumnsForCase$ = this.taskListService.caseDefinitionKey$.pipe(tap(caseDefinitionName => {
|
|
499
|
+
if (caseDefinitionName === this.taskListService.ALL_CASES_ID) {
|
|
500
|
+
this.resetTaskListFields();
|
|
501
|
+
}
|
|
502
|
+
}), filter(caseDefinitionName => !!caseDefinitionName && caseDefinitionName !== this.taskListService.ALL_CASES_ID), switchMap(caseDefinitionName => this.taskService.getTaskListColumns(caseDefinitionName)), tap(taskListColumns => {
|
|
503
|
+
if (taskListColumns.length === 0) {
|
|
504
|
+
this.taskListSortService.updateSortStates({
|
|
505
|
+
isSorting: true,
|
|
506
|
+
state: {
|
|
507
|
+
name: this._DEFAULT_SPECIFIED_TASK_LIST_FIELDS[0].key,
|
|
508
|
+
direction: 'DESC',
|
|
509
|
+
},
|
|
510
|
+
});
|
|
511
|
+
this._availableFields$.next(this._DEFAULT_SPECIFIED_TASK_LIST_FIELDS);
|
|
512
|
+
}
|
|
513
|
+
else {
|
|
514
|
+
this._availableFields$.next(this.mapTaskListColumnToColumnConfig(taskListColumns));
|
|
515
|
+
}
|
|
516
|
+
this._refreshHiddenColumns$.next();
|
|
517
|
+
}), tap(() => this.taskListService.setLoadingStateForCaseDefinition(false)));
|
|
483
518
|
}
|
|
484
519
|
resetTaskListFields() {
|
|
485
520
|
if (this.hasCustomConfigTaskList) {
|
|
@@ -491,10 +526,19 @@ class TaskListColumnService {
|
|
|
491
526
|
this.taskListSortService.resetDefaultSortStates();
|
|
492
527
|
this.taskListService.setLoadingStateForCaseDefinition(false);
|
|
493
528
|
}
|
|
529
|
+
saveHiddenColumns(hiddenColumns) {
|
|
530
|
+
this.taskListService.caseDefinitionKey$.pipe(take$1(1)).subscribe(caseDefinitionKey => {
|
|
531
|
+
if (caseDefinitionKey && caseDefinitionKey !== this.taskListService.ALL_CASES_ID) {
|
|
532
|
+
this.hiddenColumnsService
|
|
533
|
+
.saveHiddenColumns(caseDefinitionKey, hiddenColumns)
|
|
534
|
+
.subscribe(() => this._refreshHiddenColumns$.next());
|
|
535
|
+
}
|
|
536
|
+
});
|
|
537
|
+
}
|
|
494
538
|
setFieldsToCustomTaskListFields() {
|
|
495
539
|
const customTaskListFields = this.taskService.getConfigCustomTaskList().fields;
|
|
496
540
|
if (customTaskListFields) {
|
|
497
|
-
this.
|
|
541
|
+
this._availableFields$.next(customTaskListFields.map((column, index) => ({
|
|
498
542
|
key: column.propertyName,
|
|
499
543
|
label: `task-list.fieldLabels.${column.translationKey}`,
|
|
500
544
|
sortable: column.sortable,
|
|
@@ -504,7 +548,7 @@ class TaskListColumnService {
|
|
|
504
548
|
}
|
|
505
549
|
}
|
|
506
550
|
setFieldsToDefaultTaskListFields() {
|
|
507
|
-
this.
|
|
551
|
+
this._availableFields$.next(this._DEFAULT_TASK_LIST_FIELDS);
|
|
508
552
|
}
|
|
509
553
|
mapTaskListColumnToColumnConfig(taskListColumns) {
|
|
510
554
|
const hasDefaultSort = !!taskListColumns.find(column => column.defaultSort);
|
|
@@ -555,12 +599,12 @@ class TaskListColumnService {
|
|
|
555
599
|
return taskListColumnColumnDisplayType;
|
|
556
600
|
}
|
|
557
601
|
}
|
|
558
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListColumnService, deps: [{ token: TaskService }, { token: TaskListService }, { token: TaskListSortService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
602
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListColumnService, deps: [{ token: TaskService }, { token: TaskListService }, { token: TaskListSortService }, { token: TaskListHiddenColumnsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
559
603
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListColumnService }); }
|
|
560
604
|
}
|
|
561
605
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListColumnService, decorators: [{
|
|
562
606
|
type: Injectable
|
|
563
|
-
}], ctorParameters: () => [{ type: TaskService }, { type: TaskListService }, { type: TaskListSortService }] });
|
|
607
|
+
}], ctorParameters: () => [{ type: TaskService }, { type: TaskListService }, { type: TaskListSortService }, { type: TaskListHiddenColumnsService }] });
|
|
564
608
|
|
|
565
609
|
/*
|
|
566
610
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
@@ -866,6 +910,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
866
910
|
args: [{ providedIn: 'root' }]
|
|
867
911
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i1$1.ConfigService }] });
|
|
868
912
|
|
|
913
|
+
class TaskListQuickSearchService extends BaseApiService {
|
|
914
|
+
get _params() {
|
|
915
|
+
return this._params$.getValue() ?? { caseDefinitionKey: '' };
|
|
916
|
+
}
|
|
917
|
+
get params$() {
|
|
918
|
+
return this._params$.pipe(filter(params => !!params));
|
|
919
|
+
}
|
|
920
|
+
constructor(httpClient, configService) {
|
|
921
|
+
super(httpClient, configService);
|
|
922
|
+
this.httpClient = httpClient;
|
|
923
|
+
this.configService = configService;
|
|
924
|
+
this._params$ = new BehaviorSubject(null);
|
|
925
|
+
}
|
|
926
|
+
initParams(caseDefinitionKey) {
|
|
927
|
+
if (caseDefinitionKey === this._params.caseDefinitionKey)
|
|
928
|
+
return;
|
|
929
|
+
this._params$.next({ caseDefinitionKey });
|
|
930
|
+
}
|
|
931
|
+
getQuickSearchItems() {
|
|
932
|
+
return this.params$.pipe(take$1(1), switchMap((params) => this.httpClient.get(this.getApiUrl(`v1/task/${params?.caseDefinitionKey}/stored-quick-search`))));
|
|
933
|
+
}
|
|
934
|
+
createQuickSearchItem(quickSearchItem) {
|
|
935
|
+
return this.params$.pipe(take$1(1), switchMap((params) => this.httpClient.post(this.getApiUrl(`v1/task/${params?.caseDefinitionKey}/stored-quick-search`), quickSearchItem)));
|
|
936
|
+
}
|
|
937
|
+
updateQuickSearchItems(quickSearchItems) {
|
|
938
|
+
throw new Error('Method not implemented.');
|
|
939
|
+
}
|
|
940
|
+
editQuickSearchItem(quickSearchItem) {
|
|
941
|
+
return this.params$.pipe(take$1(1), switchMap((params) => this.httpClient.put(this.getApiUrl(`v1/task/${params?.caseDefinitionKey}/stored-quick-search`), quickSearchItem)));
|
|
942
|
+
}
|
|
943
|
+
deleteQuickSearchItem(quickSearchItem) {
|
|
944
|
+
return this.params$.pipe(take$1(1), switchMap((params) => this.httpClient.delete(this.getApiUrl(`v1/task/${params?.caseDefinitionKey}/stored-quick-search/${quickSearchItem.title}`))));
|
|
945
|
+
}
|
|
946
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListQuickSearchService, deps: [{ token: i1.HttpClient }, { token: i1$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
947
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListQuickSearchService }); }
|
|
948
|
+
}
|
|
949
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListQuickSearchService, decorators: [{
|
|
950
|
+
type: Injectable
|
|
951
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i1$1.ConfigService }] });
|
|
952
|
+
|
|
869
953
|
/*
|
|
870
954
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
871
955
|
*
|
|
@@ -2029,7 +2113,7 @@ class TaskListComponent {
|
|
|
2029
2113
|
this.setParamsFromQueryParams();
|
|
2030
2114
|
});
|
|
2031
2115
|
}
|
|
2032
|
-
constructor(configService, documentService, permissionService, router, taskService, taskListService, translateService, taskListColumnService, taskListPaginationService, taskListSortService, taskListSearchService, taskListQueryParamService, pageTitleService, sseService, teamsApiService) {
|
|
2116
|
+
constructor(configService, documentService, permissionService, router, taskService, taskListService, translateService, taskListColumnService, taskListPaginationService, taskListSortService, taskListSearchService, taskListQueryParamService, pageTitleService, quickSearchStateService, sseService, teamsApiService, quickSearchService) {
|
|
2033
2117
|
this.configService = configService;
|
|
2034
2118
|
this.documentService = documentService;
|
|
2035
2119
|
this.permissionService = permissionService;
|
|
@@ -2043,8 +2127,10 @@ class TaskListComponent {
|
|
|
2043
2127
|
this.taskListSearchService = taskListSearchService;
|
|
2044
2128
|
this.taskListQueryParamService = taskListQueryParamService;
|
|
2045
2129
|
this.pageTitleService = pageTitleService;
|
|
2130
|
+
this.quickSearchStateService = quickSearchStateService;
|
|
2046
2131
|
this.sseService = sseService;
|
|
2047
2132
|
this.teamsApiService = teamsApiService;
|
|
2133
|
+
this.quickSearchService = quickSearchService;
|
|
2048
2134
|
this.ALL_CASES_ID = this.taskListService.ALL_CASES_ID;
|
|
2049
2135
|
this.selectedTaskType$ = this.taskListService.selectedTaskType$;
|
|
2050
2136
|
this._overrideNoResultsMessage$ = new BehaviorSubject(null);
|
|
@@ -2056,6 +2142,8 @@ class TaskListComponent {
|
|
|
2056
2142
|
description: 'task-list.' + selectedTaskType + '.noResultsDescription',
|
|
2057
2143
|
isSearchResult: false,
|
|
2058
2144
|
}));
|
|
2145
|
+
this.availableFields$ = this.taskListColumnService.availableFields$;
|
|
2146
|
+
this.hiddenColumns$ = this.taskListColumnService.hiddenColumns$;
|
|
2059
2147
|
this.fields$ = this.taskListColumnService.fields$.pipe(map((fields) => [
|
|
2060
2148
|
{
|
|
2061
2149
|
key: 'isOpened',
|
|
@@ -2206,6 +2294,9 @@ class TaskListComponent {
|
|
|
2206
2294
|
this.taskListSortService.resetOverrideSortState();
|
|
2207
2295
|
this.loadingTasks$.next(true);
|
|
2208
2296
|
this.taskListService.setCaseDefinitionKey(definition.item.id);
|
|
2297
|
+
if (definition.item.id !== this.ALL_CASES_ID) {
|
|
2298
|
+
this.quickSearchService.initParams(definition.item.id);
|
|
2299
|
+
}
|
|
2209
2300
|
this.taskListPaginationService.loadPageSizeForCaseDefinition(definition.item.id);
|
|
2210
2301
|
}
|
|
2211
2302
|
}
|
|
@@ -2218,6 +2309,49 @@ class TaskListComponent {
|
|
|
2218
2309
|
return;
|
|
2219
2310
|
this.taskListSearchService.setSearchFieldValues(searchFieldValues);
|
|
2220
2311
|
}
|
|
2312
|
+
onSaveSearchEvent(searchFieldValues) {
|
|
2313
|
+
combineLatest([
|
|
2314
|
+
this.taskListSortService.sortStringForCurrentTaskType$,
|
|
2315
|
+
this.selectedTaskType$,
|
|
2316
|
+
])
|
|
2317
|
+
.pipe(take(1))
|
|
2318
|
+
.subscribe(([sort, selectedTaskType]) => {
|
|
2319
|
+
const params = {};
|
|
2320
|
+
if (searchFieldValues && Object.keys(searchFieldValues).length > 0) {
|
|
2321
|
+
params['search'] = btoa(JSON.stringify(searchFieldValues));
|
|
2322
|
+
}
|
|
2323
|
+
if (selectedTaskType) {
|
|
2324
|
+
params['selectedTaskType'] = selectedTaskType;
|
|
2325
|
+
}
|
|
2326
|
+
if (sort) {
|
|
2327
|
+
params['sort'] = sort;
|
|
2328
|
+
}
|
|
2329
|
+
this.quickSearchStateService.openModal(params);
|
|
2330
|
+
});
|
|
2331
|
+
}
|
|
2332
|
+
onViewUpdateEvent(hiddenColumns) {
|
|
2333
|
+
this.taskListColumnService.saveHiddenColumns(hiddenColumns);
|
|
2334
|
+
}
|
|
2335
|
+
onQuickSearchEvent(queryPath) {
|
|
2336
|
+
const queryParams = Object.fromEntries(new URLSearchParams(queryPath));
|
|
2337
|
+
if (queryParams['search']) {
|
|
2338
|
+
const searchFieldValues = JSON.parse(atob(queryParams['search']));
|
|
2339
|
+
this.setSearchFieldValuesSubject$.next(searchFieldValues);
|
|
2340
|
+
this.taskListSearchService.setSearchFieldValues(searchFieldValues);
|
|
2341
|
+
}
|
|
2342
|
+
else {
|
|
2343
|
+
this.clearSearchFieldValuesSubject$.next(null);
|
|
2344
|
+
this.taskListSearchService.setSearchFieldValues({});
|
|
2345
|
+
}
|
|
2346
|
+
if (queryParams['selectedTaskType']) {
|
|
2347
|
+
this.taskListService.setSelectedTaskType(queryParams['selectedTaskType']);
|
|
2348
|
+
}
|
|
2349
|
+
if (queryParams['sort']) {
|
|
2350
|
+
const stateFromSortString = this.taskListSortService.getSortStateFromSortString(queryParams['sort']);
|
|
2351
|
+
if (stateFromSortString)
|
|
2352
|
+
this.taskListSortService.setOverrideSortState(stateFromSortString);
|
|
2353
|
+
}
|
|
2354
|
+
}
|
|
2221
2355
|
updateTaskListPaginationAfterResponse(newCollectionSize) {
|
|
2222
2356
|
this.taskListPaginationService.paginationForCurrentTaskType$
|
|
2223
2357
|
.pipe(take(1))
|
|
@@ -2323,6 +2457,9 @@ class TaskListComponent {
|
|
|
2323
2457
|
if (decodedParams.caseDefinitionKey) {
|
|
2324
2458
|
this.taskListService.setCaseDefinitionKey(decodedParams.caseDefinitionKey);
|
|
2325
2459
|
this._selectedCaseDefinitionId$.next(decodedParams.caseDefinitionKey);
|
|
2460
|
+
if (decodedParams.caseDefinitionKey !== this.ALL_CASES_ID) {
|
|
2461
|
+
this.quickSearchService.initParams(decodedParams.caseDefinitionKey);
|
|
2462
|
+
}
|
|
2326
2463
|
this.taskListPaginationService.loadPageSizeForCaseDefinition(decodedParams.caseDefinitionKey);
|
|
2327
2464
|
}
|
|
2328
2465
|
if (decodedParams.otherFilters?.length > 0) {
|
|
@@ -2342,27 +2479,40 @@ class TaskListComponent {
|
|
|
2342
2479
|
if (decodedParams.params)
|
|
2343
2480
|
this.taskListPaginationService.updateTaskPagination(this.taskListService.selectedTaskType, decodedParams.params);
|
|
2344
2481
|
}
|
|
2345
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListComponent, deps: [{ token: i1$1.ConfigService }, { token: i2.DocumentService }, { token: i3.PermissionService }, { token: i1$2.Router }, { token: TaskService }, { token: TaskListService }, { token: i4$1.TranslateService }, { token: TaskListColumnService }, { token: TaskListPaginationService }, { token: TaskListSortService }, { token: TaskListSearchService }, { token: TaskListQueryParamService }, { token: i9.PageTitleService }, { token: i6$1.SseService }, { token: i11.TeamsApiService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2482
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListComponent, deps: [{ token: i1$1.ConfigService }, { token: i2.DocumentService }, { token: i3.PermissionService }, { token: i1$2.Router }, { token: TaskService }, { token: TaskListService }, { token: i4$1.TranslateService }, { token: TaskListColumnService }, { token: TaskListPaginationService }, { token: TaskListSortService }, { token: TaskListSearchService }, { token: TaskListQueryParamService }, { token: i9.PageTitleService }, { token: i9.QuickSearchStateService }, { token: i6$1.SseService }, { token: i11.TeamsApiService }, { token: QUICK_SEARCH_SERVICE }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2346
2483
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: TaskListComponent, isStandalone: false, selector: "valtimo-task-list", host: { listeners: { "window:popstate": "onPopState($event)" } }, providers: [
|
|
2347
2484
|
TaskListService,
|
|
2348
2485
|
TaskListColumnService,
|
|
2486
|
+
TaskListHiddenColumnsService,
|
|
2349
2487
|
TaskListPaginationService,
|
|
2350
2488
|
TaskListSortService,
|
|
2351
2489
|
TaskListSearchService,
|
|
2352
2490
|
TaskListQueryParamService,
|
|
2353
|
-
], viewQueries: [{ propertyName: "_taskDetail", first: true, predicate: ["taskDetail"], descendants: true }, { propertyName: "_unreadIndicator", first: true, predicate: ["unreadIndicator"], descendants: true, static: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 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 loading: loadingTasks$ | async,\n selectedTaskType: selectedTaskType$ | async,\n tasks: tasks$ | async,\n fields: fields$ | async,\n visibleTabs: visibleTabs$ | async,\n pagination: paginationForCurrentTaskTypeForList$ | async,\n taskListColumnsForCase: taskListColumnsForCase$ | async,\n sortState: sortStateForCurrentTaskType$ | async,\n overrideSortState: overrideSortState$ | async,\n searchFields: searchFields$ | async,\n loadingSearchFields: loadingSearchFields$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n noResultsMessage: noResultsMessage$ | async,\n } as obs\"\n class=\"main-content\"\n>\n <div class=\"container-fluid\">\n @if (obs.caseDefinitionKey && obs.caseDefinitionKey !== ALL_CASES_ID) {\n <ng-container\n *ngTemplateOutlet=\"\n searchFields;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n }\n\n <ng-container\n *ngTemplateOutlet=\"\n tasksList;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n tasksListLoading;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <valtimo-task-detail-modal\n #taskDetail\n (formSubmit)=\"reload()\"\n (assignmentOfTaskChanged)=\"reload()\"\n (dueDateChanged)=\"reload()\"\n (modalClosed)=\"reload()\"\n ></valtimo-task-detail-modal>\n </div>\n</div>\n\n<ng-template #configuredTabs let-selectedTaskType=\"selectedTaskType\" let-visibleTabs=\"visibleTabs\">\n <cds-tabs *ngIf=\"visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n *ngFor=\"let tab of visibleTabs\"\n [attr.data-testid]=\"'task-list-tab-' + tab\"\n [heading]=\"'task-list.' + tab + '.title' | translate\"\n [active]=\"selectedTaskType === tab\"\n (selected)=\"tabChange(tab)\"\n ></cds-tab>\n </cds-tabs>\n</ng-template>\n\n<ng-template #unreadIndicator let-data=\"data\">\n <span *ngIf=\"!data.item?.isOpened\" class=\"valtimo-task-list__unread-dot\"></span>\n</ng-template>\n\n<ng-template #caseLink let-data=\"data\">\n <ng-container *ngIf=\"cachedTasks$ | async as cachedTasks\">\n <div *ngIf=\"cachedTasks[data.index].caseLocked\">\n <a\n class=\"float-left cds--link--disabled\"\n cdsLink\n href=\"javascript:void(0)\"\n ngbTooltip=\"{{ 'task-list.caseLocked' | translate }}\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ 'task-list.goToCase' | translate }}\n </a>\n </div>\n <div *ngIf=\"!cachedTasks[data.index].caseLocked\">\n <a\n class=\"float-left cds--link\"\n cdsLink\n href=\"javascript:void(0)\"\n (click)=\"openRelatedCase($event, data.index)\"\n >\n {{ 'task-list.goToCase' | translate }}\n </a>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #tasksList let-obs=\"obs\">\n <valtimo-carbon-list\n *ngIf=\"!obs.loading\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [items]=\"obs.tasks\"\n [lastColumnTemplate]=\"caseLink\"\n [pagination]=\"obs.pagination\"\n\n lockedTooltipTranslationKey=\"task-list.rowLocked\"\n [sortState]=\"obs.overrideSortState || obs.sortState\"\n (paginationClicked)=\"paginationClicked($event, obs.selectedTaskType)\"\n (paginationSet)=\"paginationSet($event)\"\n (rowClicked)=\"rowOpenTaskClick($event)\"\n (sortChanged)=\"sortChanged($event)\"\n >\n <div tabs>\n <ng-container *ngIf=\"obs.visibleTabs\">\n <ng-container\n *ngTemplateOutlet=\"\n configuredTabs;\n context: {selectedTaskType: obs.selectedTaskType, visibleTabs: obs.visibleTabs}\n \"\n ></ng-container>\n </ng-container>\n </div>\n\n <valtimo-no-results\n [description]=\"obs.noResultsMessage.description | translate\"\n [title]=\"obs.noResultsMessage.title | translate\"\n >\n </valtimo-no-results>\n </valtimo-carbon-list>\n</ng-template>\n\n<ng-template #tasksListLoading let-obs=\"obs\">\n <valtimo-carbon-list *ngIf=\"obs.loading\" [loading]=\"true\">\n <div tabs>\n <cds-tabs *ngIf=\"!obs.visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n [heading]=\"'task-list.mine.title' | translate\"\n [active]=\"obs.selectedTaskType === 'mine'\"\n >\n </cds-tab>\n\n <cds-tab\n [heading]=\"'task-list.open.title' | translate\"\n [active]=\"obs.selectedTaskType === 'open'\"\n >\n </cds-tab>\n\n <cds-tab\n [heading]=\"'task-list.all.title' | translate\"\n [active]=\"obs.selectedTaskType === 'all'\"\n >\n </cds-tab>\n </cds-tabs>\n\n <cds-tabs *ngIf=\"obs.visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n *ngFor=\"let tab of obs.visibleTabs\"\n [heading]=\"'task-list.' + tab + '.title' | translate\"\n [active]=\"obs.selectedTaskType === tab\"\n ></cds-tab>\n </cds-tabs>\n </div>\n </valtimo-carbon-list>\n</ng-template>\n\n<ng-template #searchFields let-obs=\"obs\">\n <div class=\"mb-3\">\n <valtimo-search-fields\n [searchFields]=\"obs.searchFields\"\n [inputDisabled]=\"obs.loadingSearchFields\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n [setValuesSubject$]=\"setSearchFieldValuesSubject$\"\n [clearValuesSubject$]=\"clearSearchFieldValuesSubject$\"\n (doSearch)=\"search($event)\"\n >\n </valtimo-search-fields>\n </div>\n</ng-template>\n\n<ng-container renderInPageHeader [fullWidth]=\"true\">\n <ng-template>\n <cds-dropdown\n class=\"case-definition-selection\"\n *ngIf=\"{\n loadingCaseListItems: loadingCaseListItems$ | async,\n caseListItems: caseListItems$ | async,\n } as obs\"\n [attr.data-testid]=\"'task-list-case-dropdown'\"\n [disabled]=\"obs.loadingCaseListItems || (obs.caseListItems || []).length === 1\"\n [skeleton]=\"obs.loadingCaseListItems\"\n (selected)=\"setCaseDefinition($event)\"\n >\n <cds-dropdown-list [items]=\"obs.caseListItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </ng-template>\n</ng-container>\n", styles: [".cds--link--disabled{cursor:not-allowed;pointer-events:auto!important;outline:0!important}.case-definition-selection{display:flex;width:250px}.valtimo-task-list__unread-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background-color:var(--cds-link-primary)}::ng-deep .valtimo-task-list__unread-column{width:2rem;padding-right:0!important}\n/*!\n * Copyright 2015-2025 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"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i9.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "skeletonRowCount", "actions", "actionItems", "showActionItems", "header", "hideColumnHeader", "initialSortState", "sortState", "isSearchable", "enableSingleSelection", "lastColumnTemplate", "paginationIdentifier", "showSelectionColumn", "striped", "hideToolbar", "lockedTooltipTranslationKey", "movingRowsEnabled", "dragAndDrop", "dragAndDropDisabled"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged", "moveRow", "itemsReordered"] }, { kind: "component", type: i9.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "directive", type: i13.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "triggers", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "directive", type: i2$1.Link, selector: "[cdsLink], [ibmLink]", inputs: ["inline", "disabled"] }, { kind: "component", type: i2$1.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i2$1.Tab, selector: "cds-tab, ibm-tab", inputs: ["heading", "title", "context", "active", "disabled", "tabIndex", "id", "cacheActive", "tabContent", "templateContext"], outputs: ["selected"] }, { kind: "directive", type: i9.RenderInPageHeaderDirective, selector: "[renderInPageHeader]", inputs: ["fullWidth"] }, { kind: "component", type: i2$1.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "readonly", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp", "fluid"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i2$1.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i9.SearchFieldsComponent, selector: "valtimo-search-fields", inputs: ["loading", "searchFields", "caseDefinitionKey", "setValuesSubject$", "clearValuesSubject$", "defaultValues", "disableSaveSearch", "inputDisabled", "externalSearchField", "canSaveSearch"], outputs: ["doSearch", "saveSearchEvent", "clearEvent"] }, { kind: "component", type: TaskDetailModalComponent, selector: "valtimo-task-detail-modal", inputs: ["modalSize", "openFromCaseManagement"], outputs: ["formSubmit", "assignmentOfTaskChanged", "dueDateChanged", "modalClosed"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2491
|
+
{
|
|
2492
|
+
provide: QUICK_SEARCH_SERVICE,
|
|
2493
|
+
useClass: TaskListQuickSearchService,
|
|
2494
|
+
},
|
|
2495
|
+
], viewQueries: [{ propertyName: "_taskDetail", first: true, predicate: ["taskDetail"], descendants: true }, { propertyName: "_unreadIndicator", first: true, predicate: ["unreadIndicator"], descendants: true, static: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2025 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 loading: loadingTasks$ | async,\n selectedTaskType: selectedTaskType$ | async,\n tasks: tasks$ | async,\n fields: fields$ | async,\n availableFields: availableFields$ | async,\n hiddenColumns: hiddenColumns$ | async,\n visibleTabs: visibleTabs$ | async,\n pagination: paginationForCurrentTaskTypeForList$ | async,\n taskListColumnsForCase: taskListColumnsForCase$ | async,\n sortState: sortStateForCurrentTaskType$ | async,\n overrideSortState: overrideSortState$ | async,\n searchFields: searchFields$ | async,\n loadingSearchFields: loadingSearchFields$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n noResultsMessage: noResultsMessage$ | async,\n } as obs\"\n class=\"main-content\"\n>\n <div class=\"container-fluid\">\n @if (obs.caseDefinitionKey && obs.caseDefinitionKey !== ALL_CASES_ID) {\n <ng-container\n *ngTemplateOutlet=\"\n searchFields;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <div class=\"mb-3\">\n <valtimo-quick-search (quickSearchEvent)=\"onQuickSearchEvent($event)\"></valtimo-quick-search>\n </div>\n }\n\n <ng-container\n *ngTemplateOutlet=\"\n tasksList;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n tasksListLoading;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <valtimo-task-detail-modal\n #taskDetail\n (formSubmit)=\"reload()\"\n (assignmentOfTaskChanged)=\"reload()\"\n (dueDateChanged)=\"reload()\"\n (modalClosed)=\"reload()\"\n ></valtimo-task-detail-modal>\n </div>\n</div>\n\n<ng-template #configuredTabs let-selectedTaskType=\"selectedTaskType\" let-visibleTabs=\"visibleTabs\">\n <cds-tabs *ngIf=\"visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n *ngFor=\"let tab of visibleTabs\"\n [attr.data-testid]=\"'task-list-tab-' + tab\"\n [heading]=\"'task-list.' + tab + '.title' | translate\"\n [active]=\"selectedTaskType === tab\"\n (selected)=\"tabChange(tab)\"\n ></cds-tab>\n </cds-tabs>\n</ng-template>\n\n<ng-template #unreadIndicator let-data=\"data\">\n <span *ngIf=\"!data.item?.isOpened\" class=\"valtimo-task-list__unread-dot\"></span>\n</ng-template>\n\n<ng-template #caseLink let-data=\"data\">\n <ng-container *ngIf=\"cachedTasks$ | async as cachedTasks\">\n <div *ngIf=\"cachedTasks[data.index].caseLocked\">\n <a\n class=\"float-left cds--link--disabled\"\n cdsLink\n href=\"javascript:void(0)\"\n ngbTooltip=\"{{ 'task-list.caseLocked' | translate }}\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ 'task-list.goToCase' | translate }}\n </a>\n </div>\n <div *ngIf=\"!cachedTasks[data.index].caseLocked\">\n <a\n class=\"float-left cds--link\"\n cdsLink\n href=\"javascript:void(0)\"\n (click)=\"openRelatedCase($event, data.index)\"\n >\n {{ 'task-list.goToCase' | translate }}\n </a>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #tasksList let-obs=\"obs\">\n <valtimo-carbon-list\n *ngIf=\"!obs.loading\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [items]=\"obs.tasks\"\n [lastColumnTemplate]=\"caseLink\"\n [pagination]=\"obs.pagination\"\n\n lockedTooltipTranslationKey=\"task-list.rowLocked\"\n [sortState]=\"obs.overrideSortState || obs.sortState\"\n (paginationClicked)=\"paginationClicked($event, obs.selectedTaskType)\"\n (paginationSet)=\"paginationSet($event)\"\n (rowClicked)=\"rowOpenTaskClick($event)\"\n (sortChanged)=\"sortChanged($event)\"\n >\n <div tabs>\n <ng-container *ngIf=\"obs.visibleTabs\">\n <ng-container\n *ngTemplateOutlet=\"\n configuredTabs;\n context: {selectedTaskType: obs.selectedTaskType, visibleTabs: obs.visibleTabs}\n \"\n ></ng-container>\n </ng-container>\n </div>\n\n <div carbonToolbarContent>\n <valtimo-list-column-view\n *ngIf=\"obs.caseDefinitionKey && obs.caseDefinitionKey !== ALL_CASES_ID\"\n [availableFields]=\"obs.availableFields\"\n [hiddenColumns]=\"obs.hiddenColumns\"\n (viewUpdateEvent)=\"onViewUpdateEvent($event)\"\n ></valtimo-list-column-view>\n </div>\n\n <valtimo-no-results\n [description]=\"obs.noResultsMessage.description | translate\"\n [title]=\"obs.noResultsMessage.title | translate\"\n >\n </valtimo-no-results>\n </valtimo-carbon-list>\n</ng-template>\n\n<ng-template #tasksListLoading let-obs=\"obs\">\n <valtimo-carbon-list *ngIf=\"obs.loading\" [loading]=\"true\">\n <div tabs>\n <cds-tabs *ngIf=\"!obs.visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n [heading]=\"'task-list.mine.title' | translate\"\n [active]=\"obs.selectedTaskType === 'mine'\"\n >\n </cds-tab>\n\n <cds-tab\n [heading]=\"'task-list.open.title' | translate\"\n [active]=\"obs.selectedTaskType === 'open'\"\n >\n </cds-tab>\n\n <cds-tab\n [heading]=\"'task-list.all.title' | translate\"\n [active]=\"obs.selectedTaskType === 'all'\"\n >\n </cds-tab>\n </cds-tabs>\n\n <cds-tabs *ngIf=\"obs.visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n *ngFor=\"let tab of obs.visibleTabs\"\n [heading]=\"'task-list.' + tab + '.title' | translate\"\n [active]=\"obs.selectedTaskType === tab\"\n ></cds-tab>\n </cds-tabs>\n </div>\n </valtimo-carbon-list>\n</ng-template>\n\n<ng-template #searchFields let-obs=\"obs\">\n <div class=\"mb-3\">\n <valtimo-search-fields\n [canSaveSearch]=\"true\"\n [searchFields]=\"obs.searchFields\"\n [inputDisabled]=\"obs.loadingSearchFields\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n [setValuesSubject$]=\"setSearchFieldValuesSubject$\"\n [clearValuesSubject$]=\"clearSearchFieldValuesSubject$\"\n (doSearch)=\"search($event)\"\n (saveSearchEvent)=\"onSaveSearchEvent($event)\"\n >\n </valtimo-search-fields>\n </div>\n</ng-template>\n\n<ng-container renderInPageHeader [fullWidth]=\"true\">\n <ng-template>\n <cds-dropdown\n class=\"case-definition-selection\"\n *ngIf=\"{\n loadingCaseListItems: loadingCaseListItems$ | async,\n caseListItems: caseListItems$ | async,\n } as obs\"\n [attr.data-testid]=\"'task-list-case-dropdown'\"\n [disabled]=\"obs.loadingCaseListItems || (obs.caseListItems || []).length === 1\"\n [skeleton]=\"obs.loadingCaseListItems\"\n (selected)=\"setCaseDefinition($event)\"\n >\n <cds-dropdown-list [items]=\"obs.caseListItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </ng-template>\n</ng-container>\n", styles: [".cds--link--disabled{cursor:not-allowed;pointer-events:auto!important;outline:0!important}.case-definition-selection{display:flex;width:250px}.valtimo-task-list__unread-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background-color:var(--cds-link-primary)}::ng-deep .valtimo-task-list__unread-column{width:2rem;padding-right:0!important}\n/*!\n * Copyright 2015-2025 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"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i9.CarbonListComponent, selector: "valtimo-carbon-list", inputs: ["items", "fields", "tableTranslations", "paginatorConfig", "pagination", "loading", "skeletonRowCount", "actions", "actionItems", "showActionItems", "header", "hideColumnHeader", "initialSortState", "sortState", "isSearchable", "enableSingleSelection", "lastColumnTemplate", "paginationIdentifier", "showSelectionColumn", "striped", "hideToolbar", "lockedTooltipTranslationKey", "movingRowsEnabled", "dragAndDrop", "dragAndDropDisabled"], outputs: ["rowClicked", "paginationClicked", "paginationSet", "search", "sortChanged", "moveRow", "itemsReordered"] }, { kind: "component", type: i9.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "directive", type: i13.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "triggers", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "directive", type: i2$1.Link, selector: "[cdsLink], [ibmLink]", inputs: ["inline", "disabled"] }, { kind: "component", type: i2$1.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i2$1.Tab, selector: "cds-tab, ibm-tab", inputs: ["heading", "title", "context", "active", "disabled", "tabIndex", "id", "cacheActive", "tabContent", "templateContext"], outputs: ["selected"] }, { kind: "directive", type: i9.RenderInPageHeaderDirective, selector: "[renderInPageHeader]", inputs: ["fullWidth"] }, { kind: "component", type: i2$1.Dropdown, selector: "cds-dropdown, ibm-dropdown", inputs: ["id", "label", "hideLabel", "helperText", "placeholder", "displayValue", "clearText", "size", "type", "theme", "disabled", "readonly", "skeleton", "inline", "disableArrowKeys", "invalid", "invalidText", "warn", "warnText", "appendInline", "scrollableContainer", "itemValueKey", "selectionFeedback", "menuButtonLabel", "selectedLabel", "dropUp", "fluid"], outputs: ["selected", "onClose", "close"] }, { kind: "component", type: i2$1.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i9.SearchFieldsComponent, selector: "valtimo-search-fields", inputs: ["loading", "searchFields", "caseDefinitionKey", "setValuesSubject$", "clearValuesSubject$", "defaultValues", "disableSaveSearch", "inputDisabled", "externalSearchField", "canSaveSearch"], outputs: ["doSearch", "saveSearchEvent", "clearEvent"] }, { kind: "component", type: i9.QuickSearchComponent, selector: "valtimo-quick-search", outputs: ["quickSearchEvent"] }, { kind: "component", type: i9.ListColumnViewComponent, selector: "valtimo-list-column-view", inputs: ["availableFields", "hiddenColumns", "disabled"], outputs: ["viewUpdateEvent"] }, { kind: "component", type: TaskDetailModalComponent, selector: "valtimo-task-detail-modal", inputs: ["modalSize", "openFromCaseManagement"], outputs: ["formSubmit", "assignmentOfTaskChanged", "dueDateChanged", "modalClosed"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2354
2496
|
}
|
|
2355
2497
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskListComponent, decorators: [{
|
|
2356
2498
|
type: Component,
|
|
2357
2499
|
args: [{ standalone: false, selector: 'valtimo-task-list', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
2358
2500
|
TaskListService,
|
|
2359
2501
|
TaskListColumnService,
|
|
2502
|
+
TaskListHiddenColumnsService,
|
|
2360
2503
|
TaskListPaginationService,
|
|
2361
2504
|
TaskListSortService,
|
|
2362
2505
|
TaskListSearchService,
|
|
2363
2506
|
TaskListQueryParamService,
|
|
2364
|
-
|
|
2365
|
-
|
|
2507
|
+
{
|
|
2508
|
+
provide: QUICK_SEARCH_SERVICE,
|
|
2509
|
+
useClass: TaskListQuickSearchService,
|
|
2510
|
+
},
|
|
2511
|
+
], template: "<!--\n ~ Copyright 2015-2025 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 loading: loadingTasks$ | async,\n selectedTaskType: selectedTaskType$ | async,\n tasks: tasks$ | async,\n fields: fields$ | async,\n availableFields: availableFields$ | async,\n hiddenColumns: hiddenColumns$ | async,\n visibleTabs: visibleTabs$ | async,\n pagination: paginationForCurrentTaskTypeForList$ | async,\n taskListColumnsForCase: taskListColumnsForCase$ | async,\n sortState: sortStateForCurrentTaskType$ | async,\n overrideSortState: overrideSortState$ | async,\n searchFields: searchFields$ | async,\n loadingSearchFields: loadingSearchFields$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n noResultsMessage: noResultsMessage$ | async,\n } as obs\"\n class=\"main-content\"\n>\n <div class=\"container-fluid\">\n @if (obs.caseDefinitionKey && obs.caseDefinitionKey !== ALL_CASES_ID) {\n <ng-container\n *ngTemplateOutlet=\"\n searchFields;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <div class=\"mb-3\">\n <valtimo-quick-search (quickSearchEvent)=\"onQuickSearchEvent($event)\"></valtimo-quick-search>\n </div>\n }\n\n <ng-container\n *ngTemplateOutlet=\"\n tasksList;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n tasksListLoading;\n context: {\n obs: obs,\n }\n \"\n ></ng-container>\n\n <valtimo-task-detail-modal\n #taskDetail\n (formSubmit)=\"reload()\"\n (assignmentOfTaskChanged)=\"reload()\"\n (dueDateChanged)=\"reload()\"\n (modalClosed)=\"reload()\"\n ></valtimo-task-detail-modal>\n </div>\n</div>\n\n<ng-template #configuredTabs let-selectedTaskType=\"selectedTaskType\" let-visibleTabs=\"visibleTabs\">\n <cds-tabs *ngIf=\"visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n *ngFor=\"let tab of visibleTabs\"\n [attr.data-testid]=\"'task-list-tab-' + tab\"\n [heading]=\"'task-list.' + tab + '.title' | translate\"\n [active]=\"selectedTaskType === tab\"\n (selected)=\"tabChange(tab)\"\n ></cds-tab>\n </cds-tabs>\n</ng-template>\n\n<ng-template #unreadIndicator let-data=\"data\">\n <span *ngIf=\"!data.item?.isOpened\" class=\"valtimo-task-list__unread-dot\"></span>\n</ng-template>\n\n<ng-template #caseLink let-data=\"data\">\n <ng-container *ngIf=\"cachedTasks$ | async as cachedTasks\">\n <div *ngIf=\"cachedTasks[data.index].caseLocked\">\n <a\n class=\"float-left cds--link--disabled\"\n cdsLink\n href=\"javascript:void(0)\"\n ngbTooltip=\"{{ 'task-list.caseLocked' | translate }}\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ 'task-list.goToCase' | translate }}\n </a>\n </div>\n <div *ngIf=\"!cachedTasks[data.index].caseLocked\">\n <a\n class=\"float-left cds--link\"\n cdsLink\n href=\"javascript:void(0)\"\n (click)=\"openRelatedCase($event, data.index)\"\n >\n {{ 'task-list.goToCase' | translate }}\n </a>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #tasksList let-obs=\"obs\">\n <valtimo-carbon-list\n *ngIf=\"!obs.loading\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [items]=\"obs.tasks\"\n [lastColumnTemplate]=\"caseLink\"\n [pagination]=\"obs.pagination\"\n\n lockedTooltipTranslationKey=\"task-list.rowLocked\"\n [sortState]=\"obs.overrideSortState || obs.sortState\"\n (paginationClicked)=\"paginationClicked($event, obs.selectedTaskType)\"\n (paginationSet)=\"paginationSet($event)\"\n (rowClicked)=\"rowOpenTaskClick($event)\"\n (sortChanged)=\"sortChanged($event)\"\n >\n <div tabs>\n <ng-container *ngIf=\"obs.visibleTabs\">\n <ng-container\n *ngTemplateOutlet=\"\n configuredTabs;\n context: {selectedTaskType: obs.selectedTaskType, visibleTabs: obs.visibleTabs}\n \"\n ></ng-container>\n </ng-container>\n </div>\n\n <div carbonToolbarContent>\n <valtimo-list-column-view\n *ngIf=\"obs.caseDefinitionKey && obs.caseDefinitionKey !== ALL_CASES_ID\"\n [availableFields]=\"obs.availableFields\"\n [hiddenColumns]=\"obs.hiddenColumns\"\n (viewUpdateEvent)=\"onViewUpdateEvent($event)\"\n ></valtimo-list-column-view>\n </div>\n\n <valtimo-no-results\n [description]=\"obs.noResultsMessage.description | translate\"\n [title]=\"obs.noResultsMessage.title | translate\"\n >\n </valtimo-no-results>\n </valtimo-carbon-list>\n</ng-template>\n\n<ng-template #tasksListLoading let-obs=\"obs\">\n <valtimo-carbon-list *ngIf=\"obs.loading\" [loading]=\"true\">\n <div tabs>\n <cds-tabs *ngIf=\"!obs.visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n [heading]=\"'task-list.mine.title' | translate\"\n [active]=\"obs.selectedTaskType === 'mine'\"\n >\n </cds-tab>\n\n <cds-tab\n [heading]=\"'task-list.open.title' | translate\"\n [active]=\"obs.selectedTaskType === 'open'\"\n >\n </cds-tab>\n\n <cds-tab\n [heading]=\"'task-list.all.title' | translate\"\n [active]=\"obs.selectedTaskType === 'all'\"\n >\n </cds-tab>\n </cds-tabs>\n\n <cds-tabs *ngIf=\"obs.visibleTabs\" type=\"contained\" class=\"valtimo-carbon-list__tabs\">\n <cds-tab\n *ngFor=\"let tab of obs.visibleTabs\"\n [heading]=\"'task-list.' + tab + '.title' | translate\"\n [active]=\"obs.selectedTaskType === tab\"\n ></cds-tab>\n </cds-tabs>\n </div>\n </valtimo-carbon-list>\n</ng-template>\n\n<ng-template #searchFields let-obs=\"obs\">\n <div class=\"mb-3\">\n <valtimo-search-fields\n [canSaveSearch]=\"true\"\n [searchFields]=\"obs.searchFields\"\n [inputDisabled]=\"obs.loadingSearchFields\"\n [caseDefinitionKey]=\"obs.caseDefinitionKey\"\n [setValuesSubject$]=\"setSearchFieldValuesSubject$\"\n [clearValuesSubject$]=\"clearSearchFieldValuesSubject$\"\n (doSearch)=\"search($event)\"\n (saveSearchEvent)=\"onSaveSearchEvent($event)\"\n >\n </valtimo-search-fields>\n </div>\n</ng-template>\n\n<ng-container renderInPageHeader [fullWidth]=\"true\">\n <ng-template>\n <cds-dropdown\n class=\"case-definition-selection\"\n *ngIf=\"{\n loadingCaseListItems: loadingCaseListItems$ | async,\n caseListItems: caseListItems$ | async,\n } as obs\"\n [attr.data-testid]=\"'task-list-case-dropdown'\"\n [disabled]=\"obs.loadingCaseListItems || (obs.caseListItems || []).length === 1\"\n [skeleton]=\"obs.loadingCaseListItems\"\n (selected)=\"setCaseDefinition($event)\"\n >\n <cds-dropdown-list [items]=\"obs.caseListItems || []\"></cds-dropdown-list>\n </cds-dropdown>\n </ng-template>\n</ng-container>\n", styles: [".cds--link--disabled{cursor:not-allowed;pointer-events:auto!important;outline:0!important}.case-definition-selection{display:flex;width:250px}.valtimo-task-list__unread-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background-color:var(--cds-link-primary)}::ng-deep .valtimo-task-list__unread-column{width:2rem;padding-right:0!important}\n/*!\n * Copyright 2015-2025 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"] }]
|
|
2512
|
+
}], ctorParameters: () => [{ type: i1$1.ConfigService }, { type: i2.DocumentService }, { type: i3.PermissionService }, { type: i1$2.Router }, { type: TaskService }, { type: TaskListService }, { type: i4$1.TranslateService }, { type: TaskListColumnService }, { type: TaskListPaginationService }, { type: TaskListSortService }, { type: TaskListSearchService }, { type: TaskListQueryParamService }, { type: i9.PageTitleService }, { type: i9.QuickSearchStateService }, { type: i6$1.SseService }, { type: i11.TeamsApiService }, { type: undefined, decorators: [{
|
|
2513
|
+
type: Inject,
|
|
2514
|
+
args: [QUICK_SEARCH_SERVICE]
|
|
2515
|
+
}] }], propDecorators: { _taskDetail: [{
|
|
2366
2516
|
type: ViewChild,
|
|
2367
2517
|
args: ['taskDetail']
|
|
2368
2518
|
}], _unreadIndicator: [{
|
|
@@ -2500,6 +2650,22 @@ var TaskListSearchDropdownDataProvider;
|
|
|
2500
2650
|
* limitations under the License.
|
|
2501
2651
|
*/
|
|
2502
2652
|
|
|
2653
|
+
/*
|
|
2654
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
2655
|
+
*
|
|
2656
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
2657
|
+
* you may not use this file except in compliance with the License.
|
|
2658
|
+
* You may obtain a copy of the License at
|
|
2659
|
+
*
|
|
2660
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
2661
|
+
*
|
|
2662
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
2663
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
2664
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2665
|
+
* See the License for the specific language governing permissions and
|
|
2666
|
+
* limitations under the License.
|
|
2667
|
+
*/
|
|
2668
|
+
|
|
2503
2669
|
/*
|
|
2504
2670
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
2505
2671
|
*
|
|
@@ -2593,11 +2759,13 @@ class TaskModule {
|
|
|
2593
2759
|
TooltipModule,
|
|
2594
2760
|
ConfirmationModalModule,
|
|
2595
2761
|
SearchFieldsModule,
|
|
2762
|
+
QuickSearchComponent,
|
|
2596
2763
|
AssignmentComponent,
|
|
2597
2764
|
TaskDetailContentComponent,
|
|
2598
2765
|
TaskDetailIntermediateSaveComponent,
|
|
2599
2766
|
SetTaskDueDateComponent,
|
|
2600
|
-
ValtimoCdsModalDirective
|
|
2767
|
+
ValtimoCdsModalDirective,
|
|
2768
|
+
ListColumnViewComponent], exports: [TaskListComponent, TaskDetailModalComponent] }); }
|
|
2601
2769
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskModule, imports: [CommonModule,
|
|
2602
2770
|
TaskRoutingModule,
|
|
2603
2771
|
CarbonListModule,
|
|
@@ -2628,10 +2796,12 @@ class TaskModule {
|
|
|
2628
2796
|
TooltipModule,
|
|
2629
2797
|
ConfirmationModalModule,
|
|
2630
2798
|
SearchFieldsModule,
|
|
2799
|
+
QuickSearchComponent,
|
|
2631
2800
|
AssignmentComponent,
|
|
2632
2801
|
TaskDetailContentComponent,
|
|
2633
2802
|
TaskDetailIntermediateSaveComponent,
|
|
2634
|
-
SetTaskDueDateComponent
|
|
2803
|
+
SetTaskDueDateComponent,
|
|
2804
|
+
ListColumnViewComponent] }); }
|
|
2635
2805
|
}
|
|
2636
2806
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TaskModule, decorators: [{
|
|
2637
2807
|
type: NgModule,
|
|
@@ -2669,11 +2839,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
2669
2839
|
TooltipModule,
|
|
2670
2840
|
ConfirmationModalModule,
|
|
2671
2841
|
SearchFieldsModule,
|
|
2842
|
+
QuickSearchComponent,
|
|
2672
2843
|
AssignmentComponent,
|
|
2673
2844
|
TaskDetailContentComponent,
|
|
2674
2845
|
TaskDetailIntermediateSaveComponent,
|
|
2675
2846
|
SetTaskDueDateComponent,
|
|
2676
2847
|
ValtimoCdsModalDirective,
|
|
2848
|
+
ListColumnViewComponent,
|
|
2677
2849
|
],
|
|
2678
2850
|
exports: [TaskListComponent, TaskDetailModalComponent],
|
|
2679
2851
|
}]
|
|
@@ -2702,5 +2874,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
2702
2874
|
* Generated bundle index. Do not edit.
|
|
2703
2875
|
*/
|
|
2704
2876
|
|
|
2705
|
-
export { CAN_ASSIGN_TASK_PERMISSION, CAN_MODIFY_TASK_PERMISSION, CAN_VIEW_CASE_PERMISSION, CAN_VIEW_TASK_PERMISSION, SetTaskDueDateComponent, TASK_DETAIL_PERMISSION_RESOURCE, TASK_LIST_NO_SEARCH_RESULTS_MESSAGE, TaskDetailContentComponent, TaskDetailIntermediateSaveComponent, TaskDetailModalComponent, TaskIntermediateSaveService, TaskListColumnDefaultSort, TaskListColumnService, TaskListComponent, TaskListPaginationService, TaskListQueryParamService, TaskListSearchDropdownDataProvider, TaskListSearchFieldDataType, TaskListSearchFieldFieldType, TaskListSearchFieldMatchType, TaskListSearchService, TaskListService, TaskModule, TaskService };
|
|
2877
|
+
export { CAN_ASSIGN_TASK_PERMISSION, CAN_MODIFY_TASK_PERMISSION, CAN_VIEW_CASE_PERMISSION, CAN_VIEW_TASK_PERMISSION, SetTaskDueDateComponent, TASK_DETAIL_PERMISSION_RESOURCE, TASK_LIST_NO_SEARCH_RESULTS_MESSAGE, TaskDetailContentComponent, TaskDetailIntermediateSaveComponent, TaskDetailModalComponent, TaskIntermediateSaveService, TaskListColumnDefaultSort, TaskListColumnService, TaskListComponent, TaskListHiddenColumnsService, TaskListPaginationService, TaskListQueryParamService, TaskListQuickSearchService, TaskListSearchDropdownDataProvider, TaskListSearchFieldDataType, TaskListSearchFieldFieldType, TaskListSearchFieldMatchType, TaskListSearchService, TaskListService, TaskModule, TaskService };
|
|
2706
2878
|
//# sourceMappingURL=valtimo-task.mjs.map
|