@valtimo/case-management 13.18.0 → 13.20.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-case-management.mjs +332 -165
- package/fesm2022/valtimo-case-management.mjs.map +1 -1
- package/lib/components/case-management-create/case-management-create.component.d.ts +9 -0
- package/lib/components/case-management-create/case-management-create.component.d.ts.map +1 -1
- package/lib/components/case-management-deployment/case-management-deployment.component.d.ts +9 -4
- package/lib/components/case-management-deployment/case-management-deployment.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/case-management-detail.component.d.ts +15 -4
- package/lib/components/case-management-detail/case-management-detail.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-general/components/case-management-case-handler/case-management-case-handler.component.d.ts +4 -0
- package/lib/components/case-management-detail/tabs/case-management-general/components/case-management-case-handler/case-management-case-handler.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-general/components/case-management-external-start-form/case-management-external-start-form.component.d.ts +6 -0
- package/lib/components/case-management-detail/tabs/case-management-general/components/case-management-external-start-form/case-management-external-start-form.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-list-columns/case-management-list-columns.component.d.ts +20 -0
- package/lib/components/case-management-detail/tabs/case-management-list-columns/case-management-list-columns.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-statuses/case-management-status-modal/case-management-status-modal.component.d.ts +10 -0
- package/lib/components/case-management-detail/tabs/case-management-statuses/case-management-status-modal/case-management-status-modal.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-statuses/case-management-statuses.component.d.ts +3 -0
- package/lib/components/case-management-detail/tabs/case-management-statuses/case-management-statuses.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-tags/case-management-tags-modal/case-management-tags-modal.component.d.ts +9 -0
- package/lib/components/case-management-detail/tabs/case-management-tags/case-management-tags-modal/case-management-tags-modal.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-tags/case-management-tags.component.d.ts +3 -0
- package/lib/components/case-management-detail/tabs/case-management-tags/case-management-tags.component.d.ts.map +1 -1
- package/lib/components/case-management-detail-actions/case-management-detail-actions.component.d.ts +15 -4
- package/lib/components/case-management-detail-actions/case-management-detail-actions.component.d.ts.map +1 -1
- package/lib/components/case-management-list/case-management-list.component.d.ts +12 -5
- package/lib/components/case-management-list/case-management-list.component.d.ts.map +1 -1
- package/lib/components/case-management-upload/case-management-upload.component.d.ts +8 -0
- package/lib/components/case-management-upload/case-management-upload.component.d.ts.map +1 -1
- package/lib/constants/case-management.test-ids.d.ts +88 -0
- package/lib/constants/case-management.test-ids.d.ts.map +1 -0
- package/lib/constants/index.d.ts +2 -0
- package/lib/constants/index.d.ts.map +1 -0
- package/lib/models/case-deployment.model.d.ts +12 -0
- package/lib/models/case-deployment.model.d.ts.map +1 -1
- package/lib/models/case-list.model.d.ts +2 -0
- package/lib/models/case-list.model.d.ts.map +1 -1
- package/lib/services/case-management.service.d.ts +2 -1
- package/lib/services/case-management.service.d.ts.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/public-api.d.ts.map +1 -1
|
@@ -22,7 +22,7 @@ import { FormFlowOverviewComponent, FormFlowEditorComponent } from '@valtimo/for
|
|
|
22
22
|
import { ProcessManagementComponent, ProcessManagementBuilderComponent } from '@valtimo/process-management';
|
|
23
23
|
import { AuthGuardService } from '@valtimo/security';
|
|
24
24
|
import { TaskManagementDetailComponent } from '@valtimo/task-management';
|
|
25
|
-
import { BehaviorSubject, combineLatest, map, filter, switchMap, catchError, of, Subscription, distinctUntilChanged, Subject, startWith, tap, take as take$1, delay, finalize } from 'rxjs';
|
|
25
|
+
import { BehaviorSubject, combineLatest, map, filter, switchMap, catchError, of, Subscription, distinctUntilChanged, Subject, startWith, tap, take as take$1, delay, shareReplay, finalize } from 'rxjs';
|
|
26
26
|
import * as i1$1 from '@valtimo/layout';
|
|
27
27
|
import { ManagementWidgetDetailsComponent, WidgetType, WidgetWizardStep, WIDGET_MANAGEMENT_SERVICE, WidgetManagementComponent } from '@valtimo/layout';
|
|
28
28
|
import * as i1 from '@angular/common/http';
|
|
@@ -32,11 +32,12 @@ import { Code16, Development16, TableBuilt16, WatsonHealthPageScroll16, ArrowDow
|
|
|
32
32
|
import { DefaultTabs, CASE_TAB_TOKEN, ApiTabType } from '@valtimo/case';
|
|
33
33
|
import * as i1$2 from '@valtimo/document';
|
|
34
34
|
import { InternalCaseStatusUtils, CaseTagsUtils, DocumentDefinitionCreateRequest } from '@valtimo/document';
|
|
35
|
-
import { take, tap as tap$1, switchMap as switchMap$1, catchError as catchError$1, map as map$1 } from 'rxjs/operators';
|
|
35
|
+
import { take, tap as tap$1, switchMap as switchMap$1, catchError as catchError$1, withLatestFrom, map as map$1 } from 'rxjs/operators';
|
|
36
36
|
import * as i1$3 from '@valtimo/form';
|
|
37
37
|
import { v4 } from 'uuid';
|
|
38
38
|
import * as semver from 'semver';
|
|
39
39
|
import { valid, lt } from 'semver';
|
|
40
|
+
import * as i7$1 from '@valtimo/sse';
|
|
40
41
|
import * as i5 from 'ngx-logger';
|
|
41
42
|
import moment from 'moment/moment';
|
|
42
43
|
import moment$1 from 'moment';
|
|
@@ -111,7 +112,7 @@ var TabEnum;
|
|
|
111
112
|
})(TabEnum || (TabEnum = {}));
|
|
112
113
|
|
|
113
114
|
/*
|
|
114
|
-
* Copyright 2015-
|
|
115
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
115
116
|
*
|
|
116
117
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
117
118
|
* you may not use this file except in compliance with the License.
|
|
@@ -201,10 +202,10 @@ class CaseManagementDraftWarningComponent {
|
|
|
201
202
|
showClose: false,
|
|
202
203
|
})));
|
|
203
204
|
}
|
|
204
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
205
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
205
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDraftWarningComponent, deps: [{ token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
206
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementDraftWarningComponent, isStandalone: true, selector: "valtimo-case-management-draft-warning", inputs: { name: "name" }, 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<cds-inline-notification [notificationObj]=\"notificationObj$ | async\"></cds-inline-notification>\n", styles: ["cds-inline-notification{max-inline-size:unset;margin-bottom:16px}\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: "ngmodule", type: CommonModule }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "ngmodule", type: NotificationModule }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "ngmodule", type: TranslateModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
206
207
|
}
|
|
207
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
208
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDraftWarningComponent, decorators: [{
|
|
208
209
|
type: Component,
|
|
209
210
|
args: [{ selector: 'valtimo-case-management-draft-warning', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NotificationModule, TranslateModule], 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<cds-inline-notification [notificationObj]=\"notificationObj$ | async\"></cds-inline-notification>\n", styles: ["cds-inline-notification{max-inline-size:unset;margin-bottom:16px}\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"] }]
|
|
210
211
|
}], ctorParameters: () => [{ type: i3.TranslateService }], propDecorators: { name: [{
|
|
@@ -265,10 +266,10 @@ class CaseHeaderWidgetManagementService extends BaseApiService {
|
|
|
265
266
|
createWidget(widget) {
|
|
266
267
|
return this.paramsRequired$.pipe(switchMap(({ caseDefinitionKey, caseDefinitionVersionTag }) => this.httpClient.post(this.getApiUrl(`management/v1/case-definition/${encodeURIComponent(caseDefinitionKey)}/version/${encodeURIComponent(caseDefinitionVersionTag)}/header-widget`), widget)));
|
|
267
268
|
}
|
|
268
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
269
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
269
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseHeaderWidgetManagementService, deps: [{ token: i1.HttpClient }, { token: i3$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
270
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseHeaderWidgetManagementService }); }
|
|
270
271
|
}
|
|
271
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
272
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseHeaderWidgetManagementService, decorators: [{
|
|
272
273
|
type: Injectable
|
|
273
274
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i3$1.ConfigService }] });
|
|
274
275
|
|
|
@@ -312,15 +313,15 @@ class CaseManagementHeaderComponent extends ManagementWidgetDetailsComponent {
|
|
|
312
313
|
ngOnDestroy() {
|
|
313
314
|
this._subscriptions.unsubscribe();
|
|
314
315
|
}
|
|
315
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
316
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
316
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementHeaderComponent, deps: [{ token: i1$1.WidgetWizardService }, { token: WIDGET_MANAGEMENT_SERVICE }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
317
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementHeaderComponent, isStandalone: true, selector: "valtimo-case-management-header", providers: [
|
|
317
318
|
{
|
|
318
319
|
provide: WIDGET_MANAGEMENT_SERVICE,
|
|
319
320
|
useClass: CaseHeaderWidgetManagementService,
|
|
320
321
|
},
|
|
321
322
|
], usesInheritance: 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<valtimo-widget-management\n [availableWidgetTypes]=\"AVAILABLE_WIDGET_TYPES\"\n [disableDuplicate]=\"true\"\n [enableWidgetDivider]=\"false\"\n [singleWidget]=\"true\"\n [disableJsonEditor]=\"true\"\n [defaultWidth]=\"4\"\n [widgetWizardSteps]=\"WIDGET_WIZARD_STEPS\"\n></valtimo-widget-management>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: WidgetManagementComponent, selector: "valtimo-widget-management", inputs: ["params", "availableWidgetTypes", "disableDuplicate", "enableWidgetDivider", "singleWidget", "disableJsonEditor", "defaultWidth", "widgetWizardSteps"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
322
323
|
}
|
|
323
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
324
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementHeaderComponent, decorators: [{
|
|
324
325
|
type: Component,
|
|
325
326
|
args: [{ standalone: true, selector: 'valtimo-case-management-header', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, WidgetManagementComponent], providers: [
|
|
326
327
|
{
|
|
@@ -420,10 +421,10 @@ class CaseDetailService {
|
|
|
420
421
|
}))
|
|
421
422
|
.subscribe());
|
|
422
423
|
}
|
|
423
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
424
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
424
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseDetailService, deps: [{ token: i1$2.DocumentService }, { token: i7.PageTitleService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
425
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseDetailService }); }
|
|
425
426
|
}
|
|
426
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
427
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseDetailService, decorators: [{
|
|
427
428
|
type: Injectable
|
|
428
429
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i7.PageTitleService }] });
|
|
429
430
|
|
|
@@ -495,10 +496,10 @@ class TabManagementService {
|
|
|
495
496
|
}
|
|
496
497
|
return tab;
|
|
497
498
|
}
|
|
498
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
499
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
499
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabManagementService, deps: [{ token: i3$1.ConfigService }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
500
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabManagementService }); }
|
|
500
501
|
}
|
|
501
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
502
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabManagementService, decorators: [{
|
|
502
503
|
type: Injectable
|
|
503
504
|
}], ctorParameters: () => [{ type: i3$1.ConfigService }, { type: i1.HttpClient }] });
|
|
504
505
|
|
|
@@ -591,10 +592,10 @@ class TabService {
|
|
|
591
592
|
: [caseManagementTabConfig];
|
|
592
593
|
this._injectedCaseManagementTabs$.next(tabs.map(tab => ({ ...tab, enabled$: tab.enabled$ ?? of(true) })));
|
|
593
594
|
}
|
|
594
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
595
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
595
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabService, deps: [{ token: CASE_TAB_TOKEN, optional: true }, { token: CASE_MANAGEMENT_TAB_TOKEN, optional: true }, { token: i1$3.FormService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
596
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabService, providedIn: 'root' }); }
|
|
596
597
|
}
|
|
597
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
598
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabService, decorators: [{
|
|
598
599
|
type: Injectable,
|
|
599
600
|
args: [{
|
|
600
601
|
providedIn: 'root',
|
|
@@ -647,10 +648,10 @@ class CaseWidgetManagementApiService {
|
|
|
647
648
|
updateWidgets(widgets) {
|
|
648
649
|
return this.params$.pipe(switchMap((params) => this.http.post(`${this.valtimoEndpointBase}/${params.caseDefinitionKey}/version/${params.caseDefinitionVersionTag}/widget-tab/${params.key}`, { ...params, widgets })));
|
|
649
650
|
}
|
|
650
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
651
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
651
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseWidgetManagementApiService, deps: [{ token: i1.HttpClient }, { token: i3$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
652
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseWidgetManagementApiService, providedIn: 'root' }); }
|
|
652
653
|
}
|
|
653
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
654
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseWidgetManagementApiService, decorators: [{
|
|
654
655
|
type: Injectable,
|
|
655
656
|
args: [{
|
|
656
657
|
providedIn: 'root',
|
|
@@ -697,7 +698,7 @@ class CaseManagementService extends BaseApiService {
|
|
|
697
698
|
.pipe(map(caseDefinition => !caseDefinition.final));
|
|
698
699
|
}
|
|
699
700
|
getGlobalActiveCase(caseDefinitionKey) {
|
|
700
|
-
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}`));
|
|
701
|
+
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}`), { headers: new HttpHeaders().set(InterceptorSkip, '404') });
|
|
701
702
|
}
|
|
702
703
|
setGlobalActiveCaseVersion(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
703
704
|
return this.httpClient.post(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/active`), {});
|
|
@@ -717,18 +718,23 @@ class CaseManagementService extends BaseApiService {
|
|
|
717
718
|
});
|
|
718
719
|
}
|
|
719
720
|
importDocumentDefinitionZip(file) {
|
|
720
|
-
return this.httpClient
|
|
721
|
+
return this.httpClient
|
|
722
|
+
.post(this.getApiUrl(`management/v1/case/import`), file)
|
|
723
|
+
.pipe(tap(res => console.log({ res })));
|
|
721
724
|
}
|
|
722
725
|
exportDocumentDefinition(caseDefinitionKey, caseDefinitionVersionTag = '0') {
|
|
723
726
|
return this.httpClient.get(this.getApiUrl(`management/v1/case/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/export`), { observe: 'response', responseType: 'blob', headers: InterceptorSkipHeader });
|
|
724
727
|
}
|
|
728
|
+
getConfigurationIssues(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
729
|
+
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/configuration-issues`));
|
|
730
|
+
}
|
|
725
731
|
getCaseDefinitionFinalizationCheck(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
726
732
|
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/finalizable`));
|
|
727
733
|
}
|
|
728
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
729
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
734
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementService, deps: [{ token: i1.HttpClient }, { token: i3$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
735
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementService, providedIn: 'root' }); }
|
|
730
736
|
}
|
|
731
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
737
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementService, decorators: [{
|
|
732
738
|
type: Injectable,
|
|
733
739
|
args: [{
|
|
734
740
|
providedIn: 'root',
|
|
@@ -850,10 +856,10 @@ class TabFormComponent {
|
|
|
850
856
|
selected: this.form?.get('contentKey')?.value === tabItem.contentKey,
|
|
851
857
|
}));
|
|
852
858
|
}
|
|
853
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
854
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
859
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabFormComponent, deps: [{ token: i3$1.ConfigService }, { token: TabService }, { token: i1$4.FormGroupDirective }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
860
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: TabFormComponent, isStandalone: false, selector: "valtimo-tab-form", inputs: { tabType: "tabType" }, 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<form *ngIf=\"form\" [formGroup]=\"form\" class=\"valtimo-tab-form-modal\" [cdsLayer]=\"1\">\n <cds-label>\n {{ 'caseManagement.tabManagement.addModal.tabNameLabel' | translate }}\n\n <input cdsText formControlName=\"name\" [attr.modal-primary-focus]=\"true\" />\n </cds-label>\n\n <cds-label [invalid]=\"!!isKeyError()\" [invalidText]=\"getKeyErrorMessage() | translate\">\n {{ 'caseManagement.tabManagement.addModal.tabKeyLabel' | translate }}\n\n <input\n cdsText\n formControlName=\"key\"\n pattern=\"[a-zA-Z0-9\\-]+\"\n [invalid]=\"!!isKeyError()\"\n [attr.modal-primary-focus]=\"true\"\n />\n </cds-label>\n\n <cds-combo-box\n *ngIf=\"tabType !== 'widgets'\"\n [cdsLayer]=\"1\"\n [dropUp]=\"false\"\n formControlName=\"contentKey\"\n [items]=\"listItems$ | async\"\n itemValueKey=\"contentKey\"\n [label]=\"'caseManagement.tabManagement.contentLabels.' + tabType | translate\"\n (search)=\"onSearch($event)\"\n (selected)=\"onSelected($event)\"\n >\n <cds-dropdown-list [cdsLayer]=\"1\"></cds-dropdown-list>\n </cds-combo-box>\n\n <cds-toggle\n [label]=\"'caseManagement.tabManagement.addModal.visibleTitle' | translate\"\n [onText]=\"'caseManagement.tabManagement.addModal.visible' | translate\"\n [offText]=\"'caseManagement.tabManagement.addModal.invisible' | translate\"\n [checked]=\"showTasks?.value\"\n (checkedChange)=\"toggleCheckedChange($event)\"\n [disabled]=\"disableTaskListVisibleToggle()\"\n ></cds-toggle>\n</form>\n", styles: ["::ng-deep .valtimo-tab-form-modal{display:flex;flex-direction:column;gap:32px}::ng-deep .valtimo-tab-form-modal .cds--modal-container,::ng-deep .valtimo-tab-form-modal .cds--modal-content{overflow:unset}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i2.ComboBox, selector: "cds-combo-box, ibm-combo-box", inputs: ["placeholder", "openMenuAria", "closeMenuAria", "clearSelectionsTitle", "clearSelectionsAria", "clearSelectionTitle", "clearSelectionAria", "id", "labelId", "items", "type", "size", "itemValueKey", "label", "hideLabel", "helperText", "appendInline", "invalid", "invalidText", "warn", "warnText", "maxLength", "theme", "selectionFeedback", "autocomplete", "dropUp", "disabled", "readonly", "fluid"], outputs: ["selected", "submit", "close", "search", "clear"] }, { kind: "component", type: i2.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
855
861
|
}
|
|
856
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
862
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: TabFormComponent, decorators: [{
|
|
857
863
|
type: Component,
|
|
858
864
|
args: [{ standalone: false, selector: 'valtimo-tab-form', changeDetection: ChangeDetectionStrategy.OnPush, 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<form *ngIf=\"form\" [formGroup]=\"form\" class=\"valtimo-tab-form-modal\" [cdsLayer]=\"1\">\n <cds-label>\n {{ 'caseManagement.tabManagement.addModal.tabNameLabel' | translate }}\n\n <input cdsText formControlName=\"name\" [attr.modal-primary-focus]=\"true\" />\n </cds-label>\n\n <cds-label [invalid]=\"!!isKeyError()\" [invalidText]=\"getKeyErrorMessage() | translate\">\n {{ 'caseManagement.tabManagement.addModal.tabKeyLabel' | translate }}\n\n <input\n cdsText\n formControlName=\"key\"\n pattern=\"[a-zA-Z0-9\\-]+\"\n [invalid]=\"!!isKeyError()\"\n [attr.modal-primary-focus]=\"true\"\n />\n </cds-label>\n\n <cds-combo-box\n *ngIf=\"tabType !== 'widgets'\"\n [cdsLayer]=\"1\"\n [dropUp]=\"false\"\n formControlName=\"contentKey\"\n [items]=\"listItems$ | async\"\n itemValueKey=\"contentKey\"\n [label]=\"'caseManagement.tabManagement.contentLabels.' + tabType | translate\"\n (search)=\"onSearch($event)\"\n (selected)=\"onSelected($event)\"\n >\n <cds-dropdown-list [cdsLayer]=\"1\"></cds-dropdown-list>\n </cds-combo-box>\n\n <cds-toggle\n [label]=\"'caseManagement.tabManagement.addModal.visibleTitle' | translate\"\n [onText]=\"'caseManagement.tabManagement.addModal.visible' | translate\"\n [offText]=\"'caseManagement.tabManagement.addModal.invisible' | translate\"\n [checked]=\"showTasks?.value\"\n (checkedChange)=\"toggleCheckedChange($event)\"\n [disabled]=\"disableTaskListVisibleToggle()\"\n ></cds-toggle>\n</form>\n", styles: ["::ng-deep .valtimo-tab-form-modal{display:flex;flex-direction:column;gap:32px}::ng-deep .valtimo-tab-form-modal .cds--modal-container,::ng-deep .valtimo-tab-form-modal .cds--modal-content{overflow:unset}\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"] }]
|
|
859
865
|
}], ctorParameters: () => [{ type: i3$1.ConfigService }, { type: TabService }, { type: i1$4.FormGroupDirective }, { type: i2$1.ActivatedRoute }], propDecorators: { tabType: [{
|
|
@@ -955,10 +961,10 @@ class CaseManagementAddTabModalComponent {
|
|
|
955
961
|
? null
|
|
956
962
|
: { uniqueKey: { value: control.value } };
|
|
957
963
|
}
|
|
958
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
959
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
964
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementAddTabModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: i2.IconService }, { token: TabService }, { token: i3$1.ConfigService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
965
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementAddTabModalComponent, isStandalone: false, selector: "valtimo-case-management-add-tab-modal", inputs: { params: "params", open: "open" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<cds-modal valtimoCdsModal *ngIf=\"{selectedTabType: selectedTabType$ | async} as obs\" [open]=\"open\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n !obs.selectedTabType\n ? ('caseManagement.tabManagement.addModal.title'\n | translate: {documentDefinitionName: (params.caseDefinitionKey | titlecase)})\n : ('caseManagement.tabManagement.titles.' + obs.selectedTabType | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section [formGroup]=\"form\" cdsModalContent class=\"valtimo-add-tab-modal__content\" [cdsLayer]=\"1\">\n <valtimo-tab-form\n *ngIf=\"obs.selectedTabType; else tabTypeSelection\"\n [tabType]=\"obs.selectedTabType\"\n ></valtimo-tab-form>\n\n <ng-template #tabTypeSelection>\n <span> {{ 'caseManagement.tabManagement.addModal.description' | translate }} </span>\n\n <div *ngIf=\"tabTypes$ | async as tabTypes\" class=\"valtimo-add-tab-modal__types\">\n <cds-tooltip\n *ngFor=\"let tabType of tabTypes\"\n [caret]=\"true\"\n enterDelayMs=\"0\"\n leaveDelayMs=\"0\"\n [description]=\"tabType.disabledTooltipTranslationKey | translate\"\n [disabled]=\"!tabType.disabled\"\n align=\"bottom\"\n >\n <button\n cdsButton=\"secondary\"\n [disabled]=\"tabType.disabled\"\n (click)=\"onTabTypeSelect(tabType.type)\"\n >\n {{ tabType.title | translate }}\n\n <svg [cdsIcon]=\"tabType.icon\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </cds-tooltip>\n </div>\n </ng-template>\n </section>\n\n <cds-modal-footer class=\"valtimo-add-tab-modal__footer\" [cdsLayer]=\"1\">\n <button class=\"valtimo-add-tab-modal__cancel\" cdsButton=\"ghost\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <div class=\"valtimo-add-tab-modal__actions\" *ngIf=\"obs.selectedTabType\">\n <button cdsButton=\"secondary\" (click)=\"backClick()\">\n {{ 'interface.back' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"form.invalid\" (click)=\"addTab(obs.selectedTabType)\">\n {{ 'caseManagement.tabManagement.addModal.addTab' | translate }}\n </button>\n </div>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-add-tab-modal__footer .cds--modal-footer{justify-content:unset;display:grid;grid-template-columns:1fr 1fr 2fr;grid-template-areas:\"cancel . actions\"}.valtimo-add-tab-modal__cancel{grid-area:cancel;width:100%}.valtimo-add-tab-modal__actions{grid-area:actions;display:flex}.valtimo-add-tab-modal__types{display:grid;grid-template:1fr/repeat(3,1fr);gap:16px}.valtimo-add-tab-modal__types button{width:100%}.valtimo-add-tab-modal__content{display:flex;flex-direction:column;gap:24px}.cds--popover--open{z-index:999999!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: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: TabFormComponent, selector: "valtimo-tab-form", inputs: ["tabType"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
960
966
|
}
|
|
961
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
967
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementAddTabModalComponent, decorators: [{
|
|
962
968
|
type: Component,
|
|
963
969
|
args: [{ standalone: false, selector: 'valtimo-case-management-add-tab-modal', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, 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<cds-modal valtimoCdsModal *ngIf=\"{selectedTabType: selectedTabType$ | async} as obs\" [open]=\"open\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n !obs.selectedTabType\n ? ('caseManagement.tabManagement.addModal.title'\n | translate: {documentDefinitionName: (params.caseDefinitionKey | titlecase)})\n : ('caseManagement.tabManagement.titles.' + obs.selectedTabType | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section [formGroup]=\"form\" cdsModalContent class=\"valtimo-add-tab-modal__content\" [cdsLayer]=\"1\">\n <valtimo-tab-form\n *ngIf=\"obs.selectedTabType; else tabTypeSelection\"\n [tabType]=\"obs.selectedTabType\"\n ></valtimo-tab-form>\n\n <ng-template #tabTypeSelection>\n <span> {{ 'caseManagement.tabManagement.addModal.description' | translate }} </span>\n\n <div *ngIf=\"tabTypes$ | async as tabTypes\" class=\"valtimo-add-tab-modal__types\">\n <cds-tooltip\n *ngFor=\"let tabType of tabTypes\"\n [caret]=\"true\"\n enterDelayMs=\"0\"\n leaveDelayMs=\"0\"\n [description]=\"tabType.disabledTooltipTranslationKey | translate\"\n [disabled]=\"!tabType.disabled\"\n align=\"bottom\"\n >\n <button\n cdsButton=\"secondary\"\n [disabled]=\"tabType.disabled\"\n (click)=\"onTabTypeSelect(tabType.type)\"\n >\n {{ tabType.title | translate }}\n\n <svg [cdsIcon]=\"tabType.icon\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </cds-tooltip>\n </div>\n </ng-template>\n </section>\n\n <cds-modal-footer class=\"valtimo-add-tab-modal__footer\" [cdsLayer]=\"1\">\n <button class=\"valtimo-add-tab-modal__cancel\" cdsButton=\"ghost\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <div class=\"valtimo-add-tab-modal__actions\" *ngIf=\"obs.selectedTabType\">\n <button cdsButton=\"secondary\" (click)=\"backClick()\">\n {{ 'interface.back' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"form.invalid\" (click)=\"addTab(obs.selectedTabType)\">\n {{ 'caseManagement.tabManagement.addModal.addTab' | translate }}\n </button>\n </div>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-add-tab-modal__footer .cds--modal-footer{justify-content:unset;display:grid;grid-template-columns:1fr 1fr 2fr;grid-template-areas:\"cancel . actions\"}.valtimo-add-tab-modal__cancel{grid-area:cancel;width:100%}.valtimo-add-tab-modal__actions{grid-area:actions;display:flex}.valtimo-add-tab-modal__types{display:grid;grid-template:1fr/repeat(3,1fr);gap:16px}.valtimo-add-tab-modal__types button{width:100%}.valtimo-add-tab-modal__content{display:flex;flex-direction:column;gap:24px}.cds--popover--open{z-index:999999!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"] }]
|
|
964
970
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: TabService }, { type: i3$1.ConfigService }, { type: i2$1.ActivatedRoute }], propDecorators: { params: [{
|
|
@@ -1018,10 +1024,10 @@ class CaseManagementEditTabModalComponent {
|
|
|
1018
1024
|
}
|
|
1019
1025
|
this.closeModalEvent.emit({ ...this.tab, name, contentKey, showTasks });
|
|
1020
1026
|
}
|
|
1021
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1022
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
1027
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementEditTabModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: TabService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1028
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementEditTabModalComponent, isStandalone: false, selector: "valtimo-case-management-edit-tab-modal", inputs: { open: "open", tab: "tab" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<cds-modal valtimoCdsModal *ngIf=\"form\" [open]=\"open\" (close)=\"onCloseModal()\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{\n 'caseManagement.tabManagement.editModal.title'\n | translate: {name: tab?.name ?? 'case.tabs.' + tab.key | translate}\n }}\n </h3>\n </cds-modal-header>\n\n <section\n [formGroup]=\"form\"\n cdsModalContent\n [cdsLayer]=\"1\"\n >\n <valtimo-tab-form\n [configuredContentKeys]=\"configuredKeysForEdit\"\n [tabType]=\"tab?.type\"\n ></valtimo-tab-form>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"secondary\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"form.invalid\" (click)=\"editTab()\">\n {{ 'caseManagement.tabManagement.editModal.updateTab' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: TabFormComponent, selector: "valtimo-tab-form", inputs: ["tabType"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
1023
1029
|
}
|
|
1024
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1030
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementEditTabModalComponent, decorators: [{
|
|
1025
1031
|
type: Component,
|
|
1026
1032
|
args: [{ standalone: false, selector: 'valtimo-case-management-edit-tab-modal', 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<cds-modal valtimoCdsModal *ngIf=\"form\" [open]=\"open\" (close)=\"onCloseModal()\">\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{\n 'caseManagement.tabManagement.editModal.title'\n | translate: {name: tab?.name ?? 'case.tabs.' + tab.key | translate}\n }}\n </h3>\n </cds-modal-header>\n\n <section\n [formGroup]=\"form\"\n cdsModalContent\n [cdsLayer]=\"1\"\n >\n <valtimo-tab-form\n [configuredContentKeys]=\"configuredKeysForEdit\"\n [tabType]=\"tab?.type\"\n ></valtimo-tab-form>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"secondary\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"form.invalid\" (click)=\"editTab()\">\n {{ 'caseManagement.tabManagement.editModal.updateTab' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n" }]
|
|
1027
1033
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: TabService }], propDecorators: { open: [{
|
|
@@ -1186,10 +1192,10 @@ class CaseManagementTabsComponent {
|
|
|
1186
1192
|
},
|
|
1187
1193
|
]);
|
|
1188
1194
|
}
|
|
1189
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1190
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
1195
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementTabsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i2.IconService }, { token: TabManagementService }, { token: TabService }, { token: i3.TranslateService }, { token: i2$1.Router }, { token: i2$1.ActivatedRoute }, { token: i3$1.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1196
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementTabsComponent, isStandalone: false, selector: "valtimo-case-management-tabs", viewQueries: [{ propertyName: "tabContentColumnTemplate", first: true, predicate: ["tabContentColumn"], descendants: true }, { propertyName: "tabTypeColumnTemplate", first: true, predicate: ["tabTypeColumn"], descendants: true }, { propertyName: "moveButtonsTemplate", first: true, predicate: ["moveButtonsTemplate"], descendants: 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<ng-container\n *ngIf=\"{\n routeParams: caseManagementRouteParams$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n *ngIf=\"{fields: fields$ | async, loading: loading$ | async, tabs: tabs$ | async} as obs\"\n [actionItems]=\"actionItems\"\n [items]=\"obs.tabs\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n (rowClicked)=\"onRowClicked($event)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"dragAndDropDisabled() || !(hasEditPermissions$ | async)\"\n (itemsReordered)=\"onItemsReorderedEvent($event)\"\n >\n <ng-container carbonToolbarContent>\n <ng-container [ngTemplateOutlet]=\"addTabButton\"></ng-container>\n </ng-container>\n\n <valtimo-no-results\n [action]=\"addTabButton\"\n [description]=\"'case.tabs.noResultsDescription' | translate\"\n [title]=\"'case.tabs.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #tabTypeColumn let-data=\"data\">\n {{\n isTranslated('caseManagement.tabType.' + data.item.type)\n ? ('caseManagement.tabType.' + data.item.type | translate)\n : data.item.type\n }}\n </ng-template>\n\n <ng-template #tabContentColumn let-data=\"data\">\n {{\n isTranslated('case.tabs.' + data.item.contentKey)\n ? ('case.tabs.' + data.item.contentKey | translate)\n : data.item.contentKey\n }}\n </ng-template>\n\n <ng-template #addTabButton>\n <button cdsButton=\"primary\" *ngIf=\"obs.hasEditPermissions\" (click)=\"openAddTabModal()\">\n {{ 'caseManagement.tabManagement.addModal.addTab' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n\n <valtimo-case-management-add-tab-modal\n *ngIf=\"openAddModal$ | async\"\n [params]=\"obs.routeParams\"\n [open]=\"openAddModal$ | async\"\n (closeModalEvent)=\"onCloseAddModalEvent($event)\"\n ></valtimo-case-management-add-tab-modal>\n\n <valtimo-case-management-edit-tab-modal\n *ngIf=\"openEditModal$ | async\"\n [tab]=\"tab$ | async\"\n (closeModalEvent)=\"onCloseEditModalEvent($event)\"\n [open]=\"openEditModal$ | async\"\n ></valtimo-case-management-edit-tab-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.tabManagement.deleteModal.description\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"caseManagement.tabManagement.deleteModal.title\"\n (confirmEvent)=\"onConfirmEvent($event)\"\n ></valtimo-confirmation-modal>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: CaseManagementAddTabModalComponent, selector: "valtimo-case-management-add-tab-modal", inputs: ["params", "open"], outputs: ["closeModalEvent"] }, { kind: "component", type: CaseManagementEditTabModalComponent, selector: "valtimo-case-management-edit-tab-modal", inputs: ["open", "tab"], outputs: ["closeModalEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1191
1197
|
}
|
|
1192
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementTabsComponent, decorators: [{
|
|
1193
1199
|
type: Component,
|
|
1194
1200
|
args: [{ standalone: false, selector: 'valtimo-case-management-tabs', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, 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<ng-container\n *ngIf=\"{\n routeParams: caseManagementRouteParams$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n } as obs\"\n>\n <valtimo-carbon-list\n *ngIf=\"{fields: fields$ | async, loading: loading$ | async, tabs: tabs$ | async} as obs\"\n [actionItems]=\"actionItems\"\n [items]=\"obs.tabs\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n (rowClicked)=\"onRowClicked($event)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"dragAndDropDisabled() || !(hasEditPermissions$ | async)\"\n (itemsReordered)=\"onItemsReorderedEvent($event)\"\n >\n <ng-container carbonToolbarContent>\n <ng-container [ngTemplateOutlet]=\"addTabButton\"></ng-container>\n </ng-container>\n\n <valtimo-no-results\n [action]=\"addTabButton\"\n [description]=\"'case.tabs.noResultsDescription' | translate\"\n [title]=\"'case.tabs.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #tabTypeColumn let-data=\"data\">\n {{\n isTranslated('caseManagement.tabType.' + data.item.type)\n ? ('caseManagement.tabType.' + data.item.type | translate)\n : data.item.type\n }}\n </ng-template>\n\n <ng-template #tabContentColumn let-data=\"data\">\n {{\n isTranslated('case.tabs.' + data.item.contentKey)\n ? ('case.tabs.' + data.item.contentKey | translate)\n : data.item.contentKey\n }}\n </ng-template>\n\n <ng-template #addTabButton>\n <button cdsButton=\"primary\" *ngIf=\"obs.hasEditPermissions\" (click)=\"openAddTabModal()\">\n {{ 'caseManagement.tabManagement.addModal.addTab' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n\n <valtimo-case-management-add-tab-modal\n *ngIf=\"openAddModal$ | async\"\n [params]=\"obs.routeParams\"\n [open]=\"openAddModal$ | async\"\n (closeModalEvent)=\"onCloseAddModalEvent($event)\"\n ></valtimo-case-management-add-tab-modal>\n\n <valtimo-case-management-edit-tab-modal\n *ngIf=\"openEditModal$ | async\"\n [tab]=\"tab$ | async\"\n (closeModalEvent)=\"onCloseEditModalEvent($event)\"\n [open]=\"openEditModal$ | async\"\n ></valtimo-case-management-edit-tab-modal>\n\n <valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.tabManagement.deleteModal.description\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"caseManagement.tabManagement.deleteModal.title\"\n (confirmEvent)=\"onConfirmEvent($event)\"\n ></valtimo-confirmation-modal>\n</ng-container>\n" }]
|
|
1195
1201
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i2.IconService }, { type: TabManagementService }, { type: TabService }, { type: i3.TranslateService }, { type: i2$1.Router }, { type: i2$1.ActivatedRoute }, { type: i3$1.EditPermissionsService }], propDecorators: { tabContentColumnTemplate: [{
|
|
@@ -1203,6 +1209,94 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
1203
1209
|
args: ['moveButtonsTemplate']
|
|
1204
1210
|
}] } });
|
|
1205
1211
|
|
|
1212
|
+
const CASE_MANAGEMENT_LIST_TEST_IDS = {
|
|
1213
|
+
uploadButton: 'caseManagementUploadButton',
|
|
1214
|
+
createButton: 'caseManagementCreateButton',
|
|
1215
|
+
};
|
|
1216
|
+
const CASE_MANAGEMENT_DETAIL_TEST_IDS = {
|
|
1217
|
+
tabs: 'caseManagementTabs',
|
|
1218
|
+
};
|
|
1219
|
+
const CASE_MANAGEMENT_UPLOAD_TEST_IDS = {
|
|
1220
|
+
fileUploader: 'caseFileUploader',
|
|
1221
|
+
uploadWarningNotification: 'uploadWarningNotification',
|
|
1222
|
+
uploadWarningCheckbox: 'uploadWarningCheckbox',
|
|
1223
|
+
cancelButton: 'uploadWizardCancelButton',
|
|
1224
|
+
nextButton: 'uploadWizardNextButton',
|
|
1225
|
+
finishButton: 'uploadWizardFinishButton',
|
|
1226
|
+
};
|
|
1227
|
+
const CASE_MANAGEMENT_DETAIL_ACTIONS_TEST_IDS = {
|
|
1228
|
+
versionSelectDropdown: 'caseVersionSelectDropdown',
|
|
1229
|
+
globallyActiveCaseVersion: 'globally-active-case-version',
|
|
1230
|
+
versionManagementButton: 'caseVersionManagementButton',
|
|
1231
|
+
exportButton: 'caseExportButton',
|
|
1232
|
+
setActiveVersionButton: 'caseSetActiveVersionButton',
|
|
1233
|
+
moreButton: 'caseMoreButton',
|
|
1234
|
+
};
|
|
1235
|
+
const CASE_MANAGEMENT_CREATE_TEST_IDS = {
|
|
1236
|
+
nameInput: 'caseDefinitionNameInput',
|
|
1237
|
+
keyInput: 'caseDefinitionKeyInput',
|
|
1238
|
+
keyEditButton: 'caseDefinitionKeyEditButton',
|
|
1239
|
+
versionInput: 'caseDefinitionVersionInput',
|
|
1240
|
+
descriptionInput: 'caseDefinitionDescriptionInput',
|
|
1241
|
+
closeButton: 'caseCreateCloseButton',
|
|
1242
|
+
saveButton: 'caseCreateSaveButton',
|
|
1243
|
+
};
|
|
1244
|
+
const CASE_MANAGEMENT_STATUSES_TEST_IDS = {
|
|
1245
|
+
addButton: 'caseStatusAddButton',
|
|
1246
|
+
};
|
|
1247
|
+
const CASE_MANAGEMENT_EXTERNAL_START_FORM_TEST_IDS = {
|
|
1248
|
+
hasExternalForm: 'caseManagementHasExternalForm',
|
|
1249
|
+
externalFormUrl: 'caseManagementExternalFormUrl',
|
|
1250
|
+
externalFormDescription: 'caseManagementExternalFormDescription',
|
|
1251
|
+
externalFormSave: 'caseManagementExternalFormSave',
|
|
1252
|
+
};
|
|
1253
|
+
const CASE_MANAGEMENT_STATUS_MODAL_TEST_IDS = {
|
|
1254
|
+
titleInput: 'caseStatusTitleInput',
|
|
1255
|
+
keyInput: 'caseStatusKeyInput',
|
|
1256
|
+
editKeyButton: 'caseStatusEditKeyButton',
|
|
1257
|
+
colorDropdown: 'caseStatusColorDropdown',
|
|
1258
|
+
visibilityToggle: 'caseStatusVisibilityToggle',
|
|
1259
|
+
cancelButton: 'caseStatusCancelButton',
|
|
1260
|
+
addConfirmButton: 'caseStatusAddConfirmButton',
|
|
1261
|
+
saveButton: 'caseStatusSaveButton',
|
|
1262
|
+
};
|
|
1263
|
+
const CASE_MANAGEMENT_LIST_COLUMNS_TEST_IDS = {
|
|
1264
|
+
columnsList: 'caseListColumnsList',
|
|
1265
|
+
jsonEditor: 'listColumnJSONEditor',
|
|
1266
|
+
addListColumn: 'caseManagementAddListColumn',
|
|
1267
|
+
title: 'listColumnTitle',
|
|
1268
|
+
key: 'listColumnKey',
|
|
1269
|
+
valuePathSelector: 'listColumnValuePathSelector',
|
|
1270
|
+
displayType: 'listColumnDisplayType',
|
|
1271
|
+
tagAmount: 'listColumnTagAmount',
|
|
1272
|
+
dateFormat: 'listColumnDateFormat',
|
|
1273
|
+
multiInput: 'listColumnMultiInput',
|
|
1274
|
+
sortableCheckbox: 'listColumnSortableCheckbox',
|
|
1275
|
+
defaultSort: 'listColumnDefaultSort',
|
|
1276
|
+
exportable: 'listColumnExportable',
|
|
1277
|
+
cancelButton: 'listColumnCancelButton',
|
|
1278
|
+
saveButton: 'listColumnSaveButton',
|
|
1279
|
+
confirmationModal: 'listColumnConfirmationModal',
|
|
1280
|
+
switchView: 'listColumnSwitchView',
|
|
1281
|
+
downloadButton: 'listColumnDownloadButton',
|
|
1282
|
+
};
|
|
1283
|
+
const CASE_MANAGEMENT_CASE_HANDLER_TEST_IDS = {
|
|
1284
|
+
canHaveHandler: 'caseHandlerCanHaveHandler',
|
|
1285
|
+
automaticallyAssign: 'caseHandlerAutomaticallyAssign',
|
|
1286
|
+
};
|
|
1287
|
+
const CASE_MANAGEMENT_TAGS_MODAL_TEST_IDS = {
|
|
1288
|
+
titleInput: 'caseTagTitleInput',
|
|
1289
|
+
keyInput: 'caseTagKeyInput',
|
|
1290
|
+
editKeyButton: 'caseTagEditKeyButton',
|
|
1291
|
+
colorDropdown: 'caseTagColorDropdown',
|
|
1292
|
+
cancelButton: 'caseTagCancelButton',
|
|
1293
|
+
addConfirmButton: 'caseTagAddConfirmButton',
|
|
1294
|
+
saveButton: 'caseTagSaveButton',
|
|
1295
|
+
};
|
|
1296
|
+
const CASE_MANAGEMENT_TAGS_TEST_IDS = {
|
|
1297
|
+
addButton: 'caseTagAddButton',
|
|
1298
|
+
};
|
|
1299
|
+
|
|
1206
1300
|
/*
|
|
1207
1301
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
1208
1302
|
*
|
|
@@ -1267,6 +1361,7 @@ class CaseManagementStatusModalComponent {
|
|
|
1267
1361
|
this.iconService = iconService;
|
|
1268
1362
|
this.caseStatusService = caseStatusService;
|
|
1269
1363
|
this.translateService = translateService;
|
|
1364
|
+
this.testIds = CASE_MANAGEMENT_STATUS_MODAL_TEST_IDS;
|
|
1270
1365
|
this.closeModalEvent = new EventEmitter();
|
|
1271
1366
|
this._type$ = new BehaviorSubject(undefined);
|
|
1272
1367
|
this._typeAnimationDelay$ = new BehaviorSubject(undefined);
|
|
@@ -1466,12 +1561,12 @@ class CaseManagementStatusModalComponent {
|
|
|
1466
1561
|
color: this.color.value,
|
|
1467
1562
|
};
|
|
1468
1563
|
}
|
|
1469
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1470
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: CaseManagementStatusModalComponent, isStandalone: false, selector: "valtimo-case-management-status-modal", inputs: { type: "type", prefill: "prefill", usedKeys: "usedKeys", caseDefinitionKey: "caseDefinitionKey" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n isClosed: isClosed$ | async,\n editingKey: editingKey$ | async,\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"!obs.isClosed\"\n size=\"sm\"\n (close)=\"onClose()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ obs.isAdd ? ('caseManagement.statuses.add' | translate) : '' }}\n {{ obs.isEdit ? ('caseManagement.statuses.edit' | translate) : '' }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"statusForm; context: {obs: obs}\"></ng-container>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"buttons; context: {obs: obs}\"></ng-container>\n </cds-modal-footer>\n</cds-modal>\n\n<ng-template #colorDropdownItemTemplate let-item=\"item\">\n <div class=\"dropdown-color-tag\">\n <cds-tag *ngIf=\"item && item.content\" class=\"cds-tag--no-margin\" [type]=\"item?.tagType\">\n {{ 'interface.tagType.' + item?.tagType | translate }}\n </cds-tag>\n </div>\n</ng-template>\n\n<ng-template #statusForm let-obs=\"obs\">\n <form [formGroup]=\"statusFormGroup\" class=\"status-form\">\n <cds-label>\n {{ 'caseManagement.statuses.columns.title' | translate }}\n\n <input cdsText formControlName=\"title\" data-test-id=\"caseStatusTitleInput\" [attr.modal-primary-focus]=\"true\" />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.statuses.columns.key' | translate }}\n\n <div class=\"edit-key-input\">\n <input\n cdsText\n formControlName=\"key\"\n data-test-id=\"caseStatusKeyInput\"\n [readOnly]=\"!obs.editingKey\"\n [placeholder]=\"\n obs.isAdd && !obs.editingKey\n ? ('caseManagement.statuses.keyAutoGenerated' | translate)\n : ''\n \"\n />\n\n <cds-icon-button\n *ngIf=\"!obs.editingKey && obs.isAdd\"\n data-test-id=\"caseStatusEditKeyButton\"\n [disabled]=\"obs.disabled\"\n (click)=\"editKeyButtonClick()\"\n kind=\"secondary\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </cds-icon-button>\n </div>\n </cds-label>\n\n <div class=\"horizontal-inputs\">\n <cds-label>\n {{ 'caseManagement.statuses.columns.color' | translate }}\n\n <cds-dropdown\n [id]=\"'status-color-dropdown'\"\n data-test-id=\"caseStatusColorDropdown\"\n [appendInline]=\"false\"\n [placeholder]=\"'caseManagement.statuses.colorPlaceholder' | translate\"\n (selected)=\"colorDropdownChange($event)\"\n >\n <cds-dropdown-list [items]=\"colorListItems$\" [listTpl]=\"colorDropdownItemTemplate\">\n </cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-toggle\n data-test-id=\"caseStatusVisibilityToggle\"\n [label]=\"'caseManagement.statuses.visibleTitle' | translate\"\n [onText]=\"'caseManagement.statuses.visible' | translate\"\n [offText]=\"'caseManagement.statuses.invisible' | translate\"\n [disabled]=\"obs.disabled\"\n [checked]=\"visibleInCaseListByDefault?.value\"\n (checkedChange)=\"toggleCheckedChange($event)\"\n ></cds-toggle>\n </div>\n\n <cds-toggle\n [label]=\"'caseManagement.statuses.showRetentionPeriod' | translate\"\n [onText]=\"'interface.yes' | translate\"\n [offText]=\"'interface.no' | translate\"\n [disabled]=\"obs.disabled\"\n [checked]=\"showRetentionPeriod$ | async\"\n (checkedChange)=\"toggleRetentionPeriod($event)\"\n ></cds-toggle>\n\n <cds-label class=\"status-form-retention-period__label\" *ngIf=\"showRetentionPeriod$ | async\">\n <div>\n {{ 'caseManagement.statuses.columns.retentionPeriod' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'caseManagement.statuses.columns.retentionPeriodTooltip' | translate\"\n ></v-tooltip-icon>\n </div>\n\n <input cdsText formControlName=\"retentionPeriodInDays\" />\n </cds-label>\n\n <cds-notification\n class=\"deployment-warning-notification\"\n *ngIf=\"!obs.editingKey && !obs.isAdd\"\n [notificationObj]=\"{\n type: 'warning',\n message:\n ('caseManagement.statuses.retentionPeriodExistingCasesWarning'\n | translate: notificationContent),\n showClose: false,\n lowContrast: true,\n }\"\n ></cds-notification>\n </form>\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <button cdsButton=\"ghost\" data-test-id=\"caseStatusCancelButton\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isAdd\"\n cdsButton=\"primary\"\n data-test-id=\"caseStatusAddConfirmButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"addStatus()\"\n >\n {{ 'interface.add' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isEdit\"\n cdsButton=\"primary\"\n data-test-id=\"caseStatusSaveButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"editStatus()\"\n >\n {{ 'interface.save' | translate }}\n </button>\n</ng-template>\n", styles: [".status-form{display:flex;flex-direction:column;gap:16px}::ng-deep .status-form-retention-period__label .cds--text-input__field-wrapper{flex-direction:column;gap:8px}::ng-deep .status-form-retention-period__label .cds--text-input__field-wrapper div{display:flex;align-items:center}.edit-key-input{height:40px;display:flex;width:100%;flex-direction:row;gap:16px;align-items:flex-end}.edit-key-input input:read-only{color:var(--cds-text-disabled)}::ng-deep .horizontal-inputs{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}::ng-deep .horizontal-inputs .cds--label{width:100%;display:flex;flex-direction:column;gap:8px}::ng-deep .dropdown-color-tag .cds--tag{margin-top:-4px;margin-left:2px}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i2.IconButton, selector: "cds-icon-button, ibm-icon-button", inputs: ["buttonNgClass", "buttonAttributes", "buttonId", "kind", "size", "type", "isExpressive", "disabled", "description", "showTooltipWhenDisabled"], outputs: ["click", "focus", "blur", "tooltipClick"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i7.TooltipIconComponent, selector: "v-tooltip-icon", inputs: ["tooltip", "disabled"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: i2.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1564
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementStatusModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: i2.IconService }, { token: i1$2.CaseStatusService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1565
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementStatusModalComponent, isStandalone: false, selector: "valtimo-case-management-status-modal", inputs: { type: "type", prefill: "prefill", usedKeys: "usedKeys", caseDefinitionKey: "caseDefinitionKey" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n isClosed: isClosed$ | async,\n editingKey: editingKey$ | async,\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"!obs.isClosed\"\n size=\"sm\"\n (close)=\"onClose()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ obs.isAdd ? ('caseManagement.statuses.add' | translate) : '' }}\n {{ obs.isEdit ? ('caseManagement.statuses.edit' | translate) : '' }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"statusForm; context: {obs: obs}\"></ng-container>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"buttons; context: {obs: obs}\"></ng-container>\n </cds-modal-footer>\n</cds-modal>\n\n<ng-template #colorDropdownItemTemplate let-item=\"item\">\n <div class=\"dropdown-color-tag\">\n <cds-tag *ngIf=\"item && item.content\" class=\"cds-tag--no-margin\" [type]=\"item?.tagType\">\n {{ 'interface.tagType.' + item?.tagType | translate }}\n </cds-tag>\n </div>\n</ng-template>\n\n<ng-template #statusForm let-obs=\"obs\">\n <form [formGroup]=\"statusFormGroup\" class=\"status-form\">\n <cds-label>\n {{ 'caseManagement.statuses.columns.title' | translate }}\n\n <input cdsText formControlName=\"title\" [attr.data-test-id]=\"testIds.titleInput\" [attr.modal-primary-focus]=\"true\" />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.statuses.columns.key' | translate }}\n\n <div class=\"edit-key-input\">\n <input\n cdsText\n formControlName=\"key\"\n [attr.data-test-id]=\"testIds.keyInput\"\n [readOnly]=\"!obs.editingKey\"\n [placeholder]=\"\n obs.isAdd && !obs.editingKey\n ? ('caseManagement.statuses.keyAutoGenerated' | translate)\n : ''\n \"\n />\n\n <cds-icon-button\n *ngIf=\"!obs.editingKey && obs.isAdd\"\n [attr.data-test-id]=\"testIds.editKeyButton\"\n [disabled]=\"obs.disabled\"\n (click)=\"editKeyButtonClick()\"\n kind=\"secondary\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </cds-icon-button>\n </div>\n </cds-label>\n\n <div class=\"horizontal-inputs\">\n <cds-label>\n {{ 'caseManagement.statuses.columns.color' | translate }}\n\n <cds-dropdown\n [id]=\"'status-color-dropdown'\"\n [attr.data-test-id]=\"testIds.colorDropdown\"\n [appendInline]=\"false\"\n [placeholder]=\"'caseManagement.statuses.colorPlaceholder' | translate\"\n (selected)=\"colorDropdownChange($event)\"\n >\n <cds-dropdown-list [items]=\"colorListItems$\" [listTpl]=\"colorDropdownItemTemplate\">\n </cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-toggle\n [attr.data-test-id]=\"testIds.visibilityToggle\"\n [label]=\"'caseManagement.statuses.visibleTitle' | translate\"\n [onText]=\"'caseManagement.statuses.visible' | translate\"\n [offText]=\"'caseManagement.statuses.invisible' | translate\"\n [disabled]=\"obs.disabled\"\n [checked]=\"visibleInCaseListByDefault?.value\"\n (checkedChange)=\"toggleCheckedChange($event)\"\n ></cds-toggle>\n </div>\n\n <cds-toggle\n [label]=\"'caseManagement.statuses.showRetentionPeriod' | translate\"\n [onText]=\"'interface.yes' | translate\"\n [offText]=\"'interface.no' | translate\"\n [disabled]=\"obs.disabled\"\n [checked]=\"showRetentionPeriod$ | async\"\n (checkedChange)=\"toggleRetentionPeriod($event)\"\n ></cds-toggle>\n\n <cds-label class=\"status-form-retention-period__label\" *ngIf=\"showRetentionPeriod$ | async\">\n <div>\n {{ 'caseManagement.statuses.columns.retentionPeriod' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'caseManagement.statuses.columns.retentionPeriodTooltip' | translate\"\n ></v-tooltip-icon>\n </div>\n\n <input cdsText formControlName=\"retentionPeriodInDays\" />\n </cds-label>\n\n <cds-notification\n class=\"deployment-warning-notification\"\n *ngIf=\"!obs.editingKey && !obs.isAdd\"\n [notificationObj]=\"{\n type: 'warning',\n message:\n ('caseManagement.statuses.retentionPeriodExistingCasesWarning'\n | translate: notificationContent),\n showClose: false,\n lowContrast: true,\n }\"\n ></cds-notification>\n </form>\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <button cdsButton=\"ghost\" [attr.data-test-id]=\"testIds.cancelButton\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isAdd\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addConfirmButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"addStatus()\"\n >\n {{ 'interface.add' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isEdit\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.saveButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"editStatus()\"\n >\n {{ 'interface.save' | translate }}\n </button>\n</ng-template>\n", styles: [".status-form{display:flex;flex-direction:column;gap:16px}::ng-deep .status-form-retention-period__label .cds--text-input__field-wrapper{flex-direction:column;gap:8px}::ng-deep .status-form-retention-period__label .cds--text-input__field-wrapper div{display:flex;align-items:center}.edit-key-input{height:40px;display:flex;width:100%;flex-direction:row;gap:16px;align-items:flex-end}.edit-key-input input:read-only{color:var(--cds-text-disabled)}::ng-deep .horizontal-inputs{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}::ng-deep .horizontal-inputs .cds--label{width:100%;display:flex;flex-direction:column;gap:8px}::ng-deep .dropdown-color-tag .cds--tag{margin-top:-4px;margin-left:2px}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i2.IconButton, selector: "cds-icon-button, ibm-icon-button", inputs: ["buttonNgClass", "buttonAttributes", "buttonId", "kind", "size", "type", "isExpressive", "disabled", "description", "showTooltipWhenDisabled"], outputs: ["click", "focus", "blur", "tooltipClick"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i7.TooltipIconComponent, selector: "v-tooltip-icon", inputs: ["tooltip", "disabled"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: i2.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1471
1566
|
}
|
|
1472
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1567
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementStatusModalComponent, decorators: [{
|
|
1473
1568
|
type: Component,
|
|
1474
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-status-modal', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n isClosed: isClosed$ | async,\n editingKey: editingKey$ | async,\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"!obs.isClosed\"\n size=\"sm\"\n (close)=\"onClose()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ obs.isAdd ? ('caseManagement.statuses.add' | translate) : '' }}\n {{ obs.isEdit ? ('caseManagement.statuses.edit' | translate) : '' }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"statusForm; context: {obs: obs}\"></ng-container>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"buttons; context: {obs: obs}\"></ng-container>\n </cds-modal-footer>\n</cds-modal>\n\n<ng-template #colorDropdownItemTemplate let-item=\"item\">\n <div class=\"dropdown-color-tag\">\n <cds-tag *ngIf=\"item && item.content\" class=\"cds-tag--no-margin\" [type]=\"item?.tagType\">\n {{ 'interface.tagType.' + item?.tagType | translate }}\n </cds-tag>\n </div>\n</ng-template>\n\n<ng-template #statusForm let-obs=\"obs\">\n <form [formGroup]=\"statusFormGroup\" class=\"status-form\">\n <cds-label>\n {{ 'caseManagement.statuses.columns.title' | translate }}\n\n <input cdsText formControlName=\"title\" data-test-id=\"
|
|
1569
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-status-modal', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n isClosed: isClosed$ | async,\n editingKey: editingKey$ | async,\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"!obs.isClosed\"\n size=\"sm\"\n (close)=\"onClose()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onClose()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{ obs.isAdd ? ('caseManagement.statuses.add' | translate) : '' }}\n {{ obs.isEdit ? ('caseManagement.statuses.edit' | translate) : '' }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"statusForm; context: {obs: obs}\"></ng-container>\n </section>\n\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"buttons; context: {obs: obs}\"></ng-container>\n </cds-modal-footer>\n</cds-modal>\n\n<ng-template #colorDropdownItemTemplate let-item=\"item\">\n <div class=\"dropdown-color-tag\">\n <cds-tag *ngIf=\"item && item.content\" class=\"cds-tag--no-margin\" [type]=\"item?.tagType\">\n {{ 'interface.tagType.' + item?.tagType | translate }}\n </cds-tag>\n </div>\n</ng-template>\n\n<ng-template #statusForm let-obs=\"obs\">\n <form [formGroup]=\"statusFormGroup\" class=\"status-form\">\n <cds-label>\n {{ 'caseManagement.statuses.columns.title' | translate }}\n\n <input cdsText formControlName=\"title\" [attr.data-test-id]=\"testIds.titleInput\" [attr.modal-primary-focus]=\"true\" />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.statuses.columns.key' | translate }}\n\n <div class=\"edit-key-input\">\n <input\n cdsText\n formControlName=\"key\"\n [attr.data-test-id]=\"testIds.keyInput\"\n [readOnly]=\"!obs.editingKey\"\n [placeholder]=\"\n obs.isAdd && !obs.editingKey\n ? ('caseManagement.statuses.keyAutoGenerated' | translate)\n : ''\n \"\n />\n\n <cds-icon-button\n *ngIf=\"!obs.editingKey && obs.isAdd\"\n [attr.data-test-id]=\"testIds.editKeyButton\"\n [disabled]=\"obs.disabled\"\n (click)=\"editKeyButtonClick()\"\n kind=\"secondary\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </cds-icon-button>\n </div>\n </cds-label>\n\n <div class=\"horizontal-inputs\">\n <cds-label>\n {{ 'caseManagement.statuses.columns.color' | translate }}\n\n <cds-dropdown\n [id]=\"'status-color-dropdown'\"\n [attr.data-test-id]=\"testIds.colorDropdown\"\n [appendInline]=\"false\"\n [placeholder]=\"'caseManagement.statuses.colorPlaceholder' | translate\"\n (selected)=\"colorDropdownChange($event)\"\n >\n <cds-dropdown-list [items]=\"colorListItems$\" [listTpl]=\"colorDropdownItemTemplate\">\n </cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-toggle\n [attr.data-test-id]=\"testIds.visibilityToggle\"\n [label]=\"'caseManagement.statuses.visibleTitle' | translate\"\n [onText]=\"'caseManagement.statuses.visible' | translate\"\n [offText]=\"'caseManagement.statuses.invisible' | translate\"\n [disabled]=\"obs.disabled\"\n [checked]=\"visibleInCaseListByDefault?.value\"\n (checkedChange)=\"toggleCheckedChange($event)\"\n ></cds-toggle>\n </div>\n\n <cds-toggle\n [label]=\"'caseManagement.statuses.showRetentionPeriod' | translate\"\n [onText]=\"'interface.yes' | translate\"\n [offText]=\"'interface.no' | translate\"\n [disabled]=\"obs.disabled\"\n [checked]=\"showRetentionPeriod$ | async\"\n (checkedChange)=\"toggleRetentionPeriod($event)\"\n ></cds-toggle>\n\n <cds-label class=\"status-form-retention-period__label\" *ngIf=\"showRetentionPeriod$ | async\">\n <div>\n {{ 'caseManagement.statuses.columns.retentionPeriod' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'caseManagement.statuses.columns.retentionPeriodTooltip' | translate\"\n ></v-tooltip-icon>\n </div>\n\n <input cdsText formControlName=\"retentionPeriodInDays\" />\n </cds-label>\n\n <cds-notification\n class=\"deployment-warning-notification\"\n *ngIf=\"!obs.editingKey && !obs.isAdd\"\n [notificationObj]=\"{\n type: 'warning',\n message:\n ('caseManagement.statuses.retentionPeriodExistingCasesWarning'\n | translate: notificationContent),\n showClose: false,\n lowContrast: true,\n }\"\n ></cds-notification>\n </form>\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <button cdsButton=\"ghost\" [attr.data-test-id]=\"testIds.cancelButton\" (click)=\"onClose()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isAdd\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addConfirmButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"addStatus()\"\n >\n {{ 'interface.add' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isEdit\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.saveButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"editStatus()\"\n >\n {{ 'interface.save' | translate }}\n </button>\n</ng-template>\n", styles: [".status-form{display:flex;flex-direction:column;gap:16px}::ng-deep .status-form-retention-period__label .cds--text-input__field-wrapper{flex-direction:column;gap:8px}::ng-deep .status-form-retention-period__label .cds--text-input__field-wrapper div{display:flex;align-items:center}.edit-key-input{height:40px;display:flex;width:100%;flex-direction:row;gap:16px;align-items:flex-end}.edit-key-input input:read-only{color:var(--cds-text-disabled)}::ng-deep .horizontal-inputs{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}::ng-deep .horizontal-inputs .cds--label{width:100%;display:flex;flex-direction:column;gap:8px}::ng-deep .dropdown-color-tag .cds--tag{margin-top:-4px;margin-left:2px}\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"] }]
|
|
1475
1570
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: i1$2.CaseStatusService }, { type: i3.TranslateService }], propDecorators: { type: [{
|
|
1476
1571
|
type: Input
|
|
1477
1572
|
}], prefill: [{
|
|
@@ -1506,6 +1601,7 @@ class CaseManagementStatusesComponent {
|
|
|
1506
1601
|
this.environmentService = environmentService;
|
|
1507
1602
|
this.editPermissionsService = editPermissionsService;
|
|
1508
1603
|
this.caseManagementService = caseManagementService;
|
|
1604
|
+
this.testIds = CASE_MANAGEMENT_STATUSES_TEST_IDS;
|
|
1509
1605
|
this._reload$ = new BehaviorSubject(null);
|
|
1510
1606
|
this._params$ = getCaseManagementRouteParams(this.route);
|
|
1511
1607
|
this.caseDefinitionKey$ = this._params$.pipe(map(params => params.caseDefinitionKey));
|
|
@@ -1620,12 +1716,12 @@ class CaseManagementStatusesComponent {
|
|
|
1620
1716
|
},
|
|
1621
1717
|
]);
|
|
1622
1718
|
}
|
|
1623
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1624
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
1719
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementStatusesComponent, deps: [{ token: i1$2.CaseStatusService }, { token: i2$1.ActivatedRoute }, { token: i3$1.EnvironmentService }, { token: i3$1.EditPermissionsService }, { token: CaseManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1720
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementStatusesComponent, isStandalone: false, selector: "valtimo-case-management-statuses", viewQueries: [{ propertyName: "colorColumnTemplate", first: true, predicate: ["colorColumnTemplate"], descendants: true }, { propertyName: "retentionPeriodColumnTemplate", first: true, predicate: ["retentionPeriodColumnTemplate"], descendants: 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<valtimo-carbon-list\n *ngIf=\"{\n loading: loading$ | async,\n caseStatuses: caseStatuses$ | async,\n isDraftVersion: isDraftVersion$ | async,\n } as obs\"\n [items]=\"obs.caseStatuses\"\n [fields]=\"fields$ | async\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.loading || !(hasEditPermissions$ | async)\"\n [actionItems]=\"ACTION_ITEMS\"\n (rowClicked)=\"openEditModal($event)\"\n (itemsReordered)=\"onItemsReordered($event)\"\n>\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addStatusButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"addStatusButton\"\n [description]=\"\n obs.isDraftVersion\n ? ('caseManagement.statuses.noResults.description' | translate)\n : ('caseManagement.statuses.noResultsFinalVersion.description' | translate)\n \"\n [title]=\"'caseManagement.statuses.noResults.title' | translate\"\n ></valtimo-no-results>\n</valtimo-carbon-list>\n\n<valtimo-case-management-status-modal\n [type]=\"statusModalType$ | async\"\n [prefill]=\"prefillStatus$ | async\"\n [usedKeys]=\"usedKeys$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n (closeModalEvent)=\"closeModal($event)\"\n></valtimo-case-management-status-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.statuses.deleteText\"\n [outputOnConfirm]=\"statusToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteStatus($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #addStatusButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addButton\"\n [disabled]=\"loading$ | async\"\n (click)=\"openAddModal()\"\n >\n {{ 'caseManagement.statuses.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n</ng-template>\n\n<ng-template #colorColumnTemplate let-data=\"data\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"data?.item?.tagType\">\n {{ 'interface.tagType.' + data?.item?.tagType | translate }}\n </cds-tag>\n</ng-template>\n\n<ng-template #retentionPeriodColumnTemplate let-data=\"data\">\n @if (data?.item?.retentionPeriodInDays === 0) {\n {{ 'caseManagement.statuses.columns.deletedImmediately' | translate }}\n } @else if (data?.item?.retentionPeriodInDays === -1 ) {\n {{ '-' }}\n } @else {\n {{ data?.item?.retentionPeriodInDays }}\n }\n</ng-template>\n", styles: ["::ng-deep .cds-tag--no-margin{margin:0}.loading-spinner{margin:16px 12px 12px}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: CaseManagementStatusModalComponent, selector: "valtimo-case-management-status-modal", inputs: ["type", "prefill", "usedKeys", "caseDefinitionKey"], outputs: ["closeModalEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1625
1721
|
}
|
|
1626
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1722
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementStatusesComponent, decorators: [{
|
|
1627
1723
|
type: Component,
|
|
1628
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-statuses', changeDetection: ChangeDetectionStrategy.OnPush, 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<valtimo-carbon-list\n *ngIf=\"{\n loading: loading$ | async,\n caseStatuses: caseStatuses$ | async,\n isDraftVersion: isDraftVersion$ | async,\n } as obs\"\n [items]=\"obs.caseStatuses\"\n [fields]=\"fields$ | async\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.loading || !(hasEditPermissions$ | async)\"\n [actionItems]=\"ACTION_ITEMS\"\n (rowClicked)=\"openEditModal($event)\"\n (itemsReordered)=\"onItemsReordered($event)\"\n>\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addStatusButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"addStatusButton\"\n [description]=\"\n obs.isDraftVersion\n ? ('caseManagement.statuses.noResults.description' | translate)\n : ('caseManagement.statuses.noResultsFinalVersion.description' | translate)\n \"\n [title]=\"'caseManagement.statuses.noResults.title' | translate\"\n ></valtimo-no-results>\n</valtimo-carbon-list>\n\n<valtimo-case-management-status-modal\n [type]=\"statusModalType$ | async\"\n [prefill]=\"prefillStatus$ | async\"\n [usedKeys]=\"usedKeys$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n (closeModalEvent)=\"closeModal($event)\"\n></valtimo-case-management-status-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.statuses.deleteText\"\n [outputOnConfirm]=\"statusToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteStatus($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #addStatusButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n data-test-id=\"
|
|
1724
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-statuses', changeDetection: ChangeDetectionStrategy.OnPush, 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<valtimo-carbon-list\n *ngIf=\"{\n loading: loading$ | async,\n caseStatuses: caseStatuses$ | async,\n isDraftVersion: isDraftVersion$ | async,\n } as obs\"\n [items]=\"obs.caseStatuses\"\n [fields]=\"fields$ | async\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.loading || !(hasEditPermissions$ | async)\"\n [actionItems]=\"ACTION_ITEMS\"\n (rowClicked)=\"openEditModal($event)\"\n (itemsReordered)=\"onItemsReordered($event)\"\n>\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addStatusButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"addStatusButton\"\n [description]=\"\n obs.isDraftVersion\n ? ('caseManagement.statuses.noResults.description' | translate)\n : ('caseManagement.statuses.noResultsFinalVersion.description' | translate)\n \"\n [title]=\"'caseManagement.statuses.noResults.title' | translate\"\n ></valtimo-no-results>\n</valtimo-carbon-list>\n\n<valtimo-case-management-status-modal\n [type]=\"statusModalType$ | async\"\n [prefill]=\"prefillStatus$ | async\"\n [usedKeys]=\"usedKeys$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n (closeModalEvent)=\"closeModal($event)\"\n></valtimo-case-management-status-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.statuses.deleteText\"\n [outputOnConfirm]=\"statusToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteStatus($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #addStatusButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addButton\"\n [disabled]=\"loading$ | async\"\n (click)=\"openAddModal()\"\n >\n {{ 'caseManagement.statuses.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n</ng-template>\n\n<ng-template #colorColumnTemplate let-data=\"data\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"data?.item?.tagType\">\n {{ 'interface.tagType.' + data?.item?.tagType | translate }}\n </cds-tag>\n</ng-template>\n\n<ng-template #retentionPeriodColumnTemplate let-data=\"data\">\n @if (data?.item?.retentionPeriodInDays === 0) {\n {{ 'caseManagement.statuses.columns.deletedImmediately' | translate }}\n } @else if (data?.item?.retentionPeriodInDays === -1 ) {\n {{ '-' }}\n } @else {\n {{ data?.item?.retentionPeriodInDays }}\n }\n</ng-template>\n", styles: ["::ng-deep .cds-tag--no-margin{margin:0}.loading-spinner{margin:16px 12px 12px}\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"] }]
|
|
1629
1725
|
}], ctorParameters: () => [{ type: i1$2.CaseStatusService }, { type: i2$1.ActivatedRoute }, { type: i3$1.EnvironmentService }, { type: i3$1.EditPermissionsService }, { type: CaseManagementService }], propDecorators: { colorColumnTemplate: [{
|
|
1630
1726
|
type: ViewChild,
|
|
1631
1727
|
args: ['colorColumnTemplate']
|
|
@@ -1684,6 +1780,7 @@ class CaseManagementTagsModalComponent {
|
|
|
1684
1780
|
this.iconService = iconService;
|
|
1685
1781
|
this.translateService = translateService;
|
|
1686
1782
|
this.caseTagService = caseTagService;
|
|
1783
|
+
this.testIds = CASE_MANAGEMENT_TAGS_MODAL_TEST_IDS;
|
|
1687
1784
|
this.closeModalEvent = new EventEmitter();
|
|
1688
1785
|
this._type$ = new BehaviorSubject(undefined);
|
|
1689
1786
|
this._typeAnimationDelay$ = new BehaviorSubject(undefined);
|
|
@@ -1863,12 +1960,12 @@ class CaseManagementTagsModalComponent {
|
|
|
1863
1960
|
color: this.color.value,
|
|
1864
1961
|
};
|
|
1865
1962
|
}
|
|
1866
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1867
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
1963
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementTagsModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: i2.IconService }, { token: i3.TranslateService }, { token: i1$2.CaseTagService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1964
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementTagsModalComponent, isStandalone: false, selector: "valtimo-case-management-tags-modal", inputs: { type: "type", prefill: "prefill", usedKeys: "usedKeys", caseDefinitionKey: "caseDefinitionKey", caseDefinitionVersionTag: "caseDefinitionVersionTag" }, outputs: { closeModalEvent: "closeModalEvent" }, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n isClosed: isClosed$ | async,\n editingKey: editingKey$ | async,\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"!obs.isClosed\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"close()\">\n <h3 cdsModalHeaderHeading>\n {{ obs.isEdit ? ('caseManagement.caseTags.edit' | translate) : '' }}\n {{ obs.isAdd ? ('caseManagement.caseTags.add' | translate) : '' }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"caseTagFormGroup\" class=\"case-tag-form\">\n <cds-label>\n {{ 'caseManagement.caseTags.columns.title' | translate }}\n <input cdsText formControlName=\"title\" [attr.data-test-id]=\"testIds.titleInput\" [attr.modal-primary-focus]=\"true\" />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.caseTags.columns.key' | translate }}\n <div class=\"edit-key-input\">\n <input\n cdsText\n formControlName=\"key\"\n [attr.data-test-id]=\"testIds.keyInput\"\n [readOnly]=\"!obs.editingKey\"\n [placeholder]=\"\n obs.isAdd && !obs.editingKey\n ? ('caseManagement.caseTags.keyAutoGenerated' | translate)\n : ''\n \"\n />\n <cds-icon-button\n *ngIf=\"!obs.editingKey && obs.isAdd\"\n [attr.data-test-id]=\"testIds.editKeyButton\"\n [disabled]=\"obs.disabled\"\n (click)=\"editKeyButtonClick()\"\n kind=\"secondary\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </cds-icon-button>\n </div>\n </cds-label>\n\n <div class=\"horizontal-inputs\">\n <cds-label>\n {{ 'caseManagement.caseTags.columns.color' | translate }}\n <cds-dropdown\n id=\"status-color-dropdown\"\n [attr.data-test-id]=\"testIds.colorDropdown\"\n [appendInline]=\"false\"\n [placeholder]=\"'caseManagement.caseTags.colorPlaceholder' | translate\"\n (selected)=\"colorDropdownChange($event)\"\n >\n <cds-dropdown-list\n [items]=\"colorListItems$\"\n [listTpl]=\"colorDropdownItemTemplate\"\n ></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n </div>\n </form>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" [attr.data-test-id]=\"testIds.cancelButton\" (click)=\"close()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isAdd\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addConfirmButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"addCaseTag()\"\n >\n {{ 'interface.add' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isEdit\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.saveButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"editCaseTag()\"\n >\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n\n<ng-template #colorDropdownItemTemplate let-item=\"item\">\n <cds-tag\n *ngIf=\"item && item.content\"\n class=\"cds-tag--no-margin case-tag-margins\"\n [type]=\"item?.tagType\"\n >\n {{ 'interface.tagType.' + item?.tagType | translate }}\n </cds-tag>\n</ng-template>\n", styles: [".case-tag-form{display:flex;flex-direction:column;gap:16px}.edit-key-input{height:40px;display:flex;width:100%;flex-direction:row;gap:16px;align-items:flex-end}.edit-key-input input:read-only{color:var(--cds-text-disabled)}::ng-deep .horizontal-inputs{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}::ng-deep .horizontal-inputs .cds--label{width:100%;display:flex;flex-direction:column;gap:8px}.case-tag-margins{margin-top:-4px;margin-left:2px}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i2.IconButton, selector: "cds-icon-button, ibm-icon-button", inputs: ["buttonNgClass", "buttonAttributes", "buttonId", "kind", "size", "type", "isExpressive", "disabled", "description", "showTooltipWhenDisabled"], outputs: ["click", "focus", "blur", "tooltipClick"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1868
1965
|
}
|
|
1869
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1966
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementTagsModalComponent, decorators: [{
|
|
1870
1967
|
type: Component,
|
|
1871
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-tags-modal', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n isClosed: isClosed$ | async,\n editingKey: editingKey$ | async,\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"!obs.isClosed\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"close()\">\n <h3 cdsModalHeaderHeading>\n {{ obs.isEdit ? ('caseManagement.caseTags.edit' | translate) : '' }}\n {{ obs.isAdd ? ('caseManagement.caseTags.add' | translate) : '' }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"caseTagFormGroup\" class=\"case-tag-form\">\n <cds-label>\n {{ 'caseManagement.caseTags.columns.title' | translate }}\n <input cdsText formControlName=\"title\" data-test-id=\"
|
|
1968
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-tags-modal', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n valtimoCdsModal\n *ngIf=\"{\n isAdd: isAdd$ | async,\n isEdit: isEdit$ | async,\n isClosed: isClosed$ | async,\n editingKey: editingKey$ | async,\n disabled: disabled$ | async,\n } as obs\"\n [open]=\"!obs.isClosed\"\n size=\"sm\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"close()\">\n <h3 cdsModalHeaderHeading>\n {{ obs.isEdit ? ('caseManagement.caseTags.edit' | translate) : '' }}\n {{ obs.isAdd ? ('caseManagement.caseTags.add' | translate) : '' }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <form [formGroup]=\"caseTagFormGroup\" class=\"case-tag-form\">\n <cds-label>\n {{ 'caseManagement.caseTags.columns.title' | translate }}\n <input cdsText formControlName=\"title\" [attr.data-test-id]=\"testIds.titleInput\" [attr.modal-primary-focus]=\"true\" />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.caseTags.columns.key' | translate }}\n <div class=\"edit-key-input\">\n <input\n cdsText\n formControlName=\"key\"\n [attr.data-test-id]=\"testIds.keyInput\"\n [readOnly]=\"!obs.editingKey\"\n [placeholder]=\"\n obs.isAdd && !obs.editingKey\n ? ('caseManagement.caseTags.keyAutoGenerated' | translate)\n : ''\n \"\n />\n <cds-icon-button\n *ngIf=\"!obs.editingKey && obs.isAdd\"\n [attr.data-test-id]=\"testIds.editKeyButton\"\n [disabled]=\"obs.disabled\"\n (click)=\"editKeyButtonClick()\"\n kind=\"secondary\"\n >\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </cds-icon-button>\n </div>\n </cds-label>\n\n <div class=\"horizontal-inputs\">\n <cds-label>\n {{ 'caseManagement.caseTags.columns.color' | translate }}\n <cds-dropdown\n id=\"status-color-dropdown\"\n [attr.data-test-id]=\"testIds.colorDropdown\"\n [appendInline]=\"false\"\n [placeholder]=\"'caseManagement.caseTags.colorPlaceholder' | translate\"\n (selected)=\"colorDropdownChange($event)\"\n >\n <cds-dropdown-list\n [items]=\"colorListItems$\"\n [listTpl]=\"colorDropdownItemTemplate\"\n ></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n </div>\n </form>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" [attr.data-test-id]=\"testIds.cancelButton\" (click)=\"close()\" [disabled]=\"obs.disabled\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isAdd\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addConfirmButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"addCaseTag()\"\n >\n {{ 'interface.add' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.isEdit\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.saveButton\"\n [disabled]=\"invalid || pristine || obs.disabled\"\n (click)=\"editCaseTag()\"\n >\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n\n<ng-template #colorDropdownItemTemplate let-item=\"item\">\n <cds-tag\n *ngIf=\"item && item.content\"\n class=\"cds-tag--no-margin case-tag-margins\"\n [type]=\"item?.tagType\"\n >\n {{ 'interface.tagType.' + item?.tagType | translate }}\n </cds-tag>\n</ng-template>\n", styles: [".case-tag-form{display:flex;flex-direction:column;gap:16px}.edit-key-input{height:40px;display:flex;width:100%;flex-direction:row;gap:16px;align-items:flex-end}.edit-key-input input:read-only{color:var(--cds-text-disabled)}::ng-deep .horizontal-inputs{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}::ng-deep .horizontal-inputs .cds--label{width:100%;display:flex;flex-direction:column;gap:8px}.case-tag-margins{margin-top:-4px;margin-left:2px}\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"] }]
|
|
1872
1969
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: i3.TranslateService }, { type: i1$2.CaseTagService }], propDecorators: { type: [{
|
|
1873
1970
|
type: Input
|
|
1874
1971
|
}], prefill: [{
|
|
@@ -1904,6 +2001,7 @@ class CaseManagementTagsComponent {
|
|
|
1904
2001
|
this.route = route;
|
|
1905
2002
|
this.editPermissionsService = editPermissionsService;
|
|
1906
2003
|
this.caseManagementService = caseManagementService;
|
|
2004
|
+
this.testIds = CASE_MANAGEMENT_TAGS_TEST_IDS;
|
|
1907
2005
|
this._reload$ = new BehaviorSubject(null);
|
|
1908
2006
|
this._params$ = getCaseManagementRouteParams(this.route);
|
|
1909
2007
|
this.loading$ = new BehaviorSubject(true);
|
|
@@ -2013,12 +2111,12 @@ class CaseManagementTagsComponent {
|
|
|
2013
2111
|
},
|
|
2014
2112
|
]);
|
|
2015
2113
|
}
|
|
2016
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2017
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
2114
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementTagsComponent, deps: [{ token: i1$2.CaseTagService }, { token: i2$1.ActivatedRoute }, { token: i3$1.EditPermissionsService }, { token: CaseManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2115
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementTagsComponent, isStandalone: false, selector: "valtimo-case-management-tags", viewQueries: [{ propertyName: "colorColumnTemplate", first: true, predicate: ["colorColumnTemplate"], descendants: 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<valtimo-carbon-list\n *ngIf=\"{\n loading: loading$ | async,\n caseTags: caseTags$ | async,\n fields: fields$ | async,\n isDraftVersion: isDraftVersion$ | async,\n } as obs\"\n [items]=\"obs.caseTags\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"!(hasEditPermissions$ | async)\"\n (itemsReordered)=\"onItemsReorderedEvent($event)\"\n (rowClicked)=\"openEditModal($event)\"\n>\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addTagButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"addTagButton\"\n [description]=\"\n obs.isDraftVersion\n ? ('caseManagement.caseTags.noResults.description' | translate)\n : ('caseManagement.caseTags.noResultsFinalVersion.description' | translate)\n \"\n [title]=\"'caseManagement.caseTags.noResults.title' | translate\"\n ></valtimo-no-results>\n</valtimo-carbon-list>\n\n<valtimo-case-management-tags-modal\n [type]=\"statusModalType$ | async\"\n [prefill]=\"prefillCaseTag$ | async\"\n [usedKeys]=\"usedKeys$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [caseDefinitionVersionTag]=\"caseDefinitionVersionTag$ | async\"\n (closeModalEvent)=\"closeModal($event)\"\n></valtimo-case-management-tags-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.caseTags.deleteText\"\n [outputOnConfirm]=\"caseTagToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteCaseTag($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #addTagButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addButton\"\n [disabled]=\"loading$ | async\"\n (click)=\"openAddModal()\"\n >\n {{ 'caseManagement.caseTags.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n</ng-template>\n\n<ng-template #colorColumnTemplate let-data=\"data\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"data?.item?.tagType\">\n {{ 'interface.tagType.' + data?.item?.tagType | translate }}\n </cds-tag>\n</ng-template>\n", styles: ["::ng-deep .cds-tag--no-margin{margin:0}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: CaseManagementTagsModalComponent, selector: "valtimo-case-management-tags-modal", inputs: ["type", "prefill", "usedKeys", "caseDefinitionKey", "caseDefinitionVersionTag"], outputs: ["closeModalEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2018
2116
|
}
|
|
2019
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementTagsComponent, decorators: [{
|
|
2020
2118
|
type: Component,
|
|
2021
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-tags', changeDetection: ChangeDetectionStrategy.OnPush, 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<valtimo-carbon-list\n *ngIf=\"{\n loading: loading$ | async,\n caseTags: caseTags$ | async,\n fields: fields$ | async,\n isDraftVersion: isDraftVersion$ | async,\n } as obs\"\n [items]=\"obs.caseTags\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"!(hasEditPermissions$ | async)\"\n (itemsReordered)=\"onItemsReorderedEvent($event)\"\n (rowClicked)=\"openEditModal($event)\"\n>\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addTagButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"addTagButton\"\n [description]=\"\n obs.isDraftVersion\n ? ('caseManagement.caseTags.noResults.description' | translate)\n : ('caseManagement.caseTags.noResultsFinalVersion.description' | translate)\n \"\n [title]=\"'caseManagement.caseTags.noResults.title' | translate\"\n ></valtimo-no-results>\n</valtimo-carbon-list>\n\n<valtimo-case-management-tags-modal\n [type]=\"statusModalType$ | async\"\n [prefill]=\"prefillCaseTag$ | async\"\n [usedKeys]=\"usedKeys$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [caseDefinitionVersionTag]=\"caseDefinitionVersionTag$ | async\"\n (closeModalEvent)=\"closeModal($event)\"\n></valtimo-case-management-tags-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.caseTags.deleteText\"\n [outputOnConfirm]=\"caseTagToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteCaseTag($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #addTagButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n data-test-id=\"
|
|
2119
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-tags', changeDetection: ChangeDetectionStrategy.OnPush, 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<valtimo-carbon-list\n *ngIf=\"{\n loading: loading$ | async,\n caseTags: caseTags$ | async,\n fields: fields$ | async,\n isDraftVersion: isDraftVersion$ | async,\n } as obs\"\n [items]=\"obs.caseTags\"\n [fields]=\"obs.fields\"\n [header]=\"false\"\n [loading]=\"obs.loading\"\n [actionItems]=\"ACTION_ITEMS\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"!(hasEditPermissions$ | async)\"\n (itemsReordered)=\"onItemsReorderedEvent($event)\"\n (rowClicked)=\"openEditModal($event)\"\n>\n <ng-container carbonToolbarContent *ngTemplateOutlet=\"addTagButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"addTagButton\"\n [description]=\"\n obs.isDraftVersion\n ? ('caseManagement.caseTags.noResults.description' | translate)\n : ('caseManagement.caseTags.noResultsFinalVersion.description' | translate)\n \"\n [title]=\"'caseManagement.caseTags.noResults.title' | translate\"\n ></valtimo-no-results>\n</valtimo-carbon-list>\n\n<valtimo-case-management-tags-modal\n [type]=\"statusModalType$ | async\"\n [prefill]=\"prefillCaseTag$ | async\"\n [usedKeys]=\"usedKeys$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [caseDefinitionVersionTag]=\"caseDefinitionVersionTag$ | async\"\n (closeModalEvent)=\"closeModal($event)\"\n></valtimo-case-management-tags-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.caseTags.deleteText\"\n [outputOnConfirm]=\"caseTagToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"confirmDeleteCaseTag($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #addTagButton>\n <button\n *ngIf=\"hasEditPermissions$ | async\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.addButton\"\n [disabled]=\"loading$ | async\"\n (click)=\"openAddModal()\"\n >\n {{ 'caseManagement.caseTags.add' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n</ng-template>\n\n<ng-template #colorColumnTemplate let-data=\"data\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"data?.item?.tagType\">\n {{ 'interface.tagType.' + data?.item?.tagType | translate }}\n </cds-tag>\n</ng-template>\n", styles: ["::ng-deep .cds-tag--no-margin{margin:0}\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"] }]
|
|
2022
2120
|
}], ctorParameters: () => [{ type: i1$2.CaseTagService }, { type: i2$1.ActivatedRoute }, { type: i3$1.EditPermissionsService }, { type: CaseManagementService }], propDecorators: { colorColumnTemplate: [{
|
|
2023
2121
|
type: ViewChild,
|
|
2024
2122
|
args: ['colorColumnTemplate']
|
|
@@ -2052,10 +2150,10 @@ class CaseManagementCaseDetailComponent {
|
|
|
2052
2150
|
switchTab(tab) {
|
|
2053
2151
|
this.currentTab$.next(tab);
|
|
2054
2152
|
}
|
|
2055
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2056
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
2153
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCaseDetailComponent, deps: [{ token: i3$1.DraftVersionService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2154
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementCaseDetailComponent, isStandalone: false, selector: "ng-component", 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@if (currentTab$ | async; as currentTab) {\n <valtimo-case-management-draft-warning\n *ngIf=\"(isDraftVersion$ | async) === true && currentTab === TabEnum.STATUSES\"\n [name]=\"'caseManagement.tabs.caseDetailsTab.statuses' | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n\n <cds-tabs class=\"case-management-tabs\" type=\"contained\">\n <cds-tab\n [active]=\"currentTab === TabEnum.TABS\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.tabs' | translate\"\n (selected)=\"switchTab(TabEnum.TABS)\"\n >\n <valtimo-case-management-tabs\n *ngIf=\"currentTab === TabEnum.TABS\"\n ></valtimo-case-management-tabs>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.STATUSES\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.statuses' | translate\"\n (selected)=\"switchTab(TabEnum.STATUSES)\"\n >\n <valtimo-case-management-statuses\n *ngIf=\"currentTab === TabEnum.STATUSES\"\n ></valtimo-case-management-statuses>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.TAGS\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.tags' | translate\"\n (selected)=\"switchTab(TabEnum.TAGS)\"\n >\n <valtimo-case-management-tags\n *ngIf=\"currentTab === TabEnum.TAGS\"\n ></valtimo-case-management-tags>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.HEADER\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.header' | translate\"\n (selected)=\"switchTab(TabEnum.HEADER)\"\n >\n <valtimo-case-management-header\n *ngIf=\"currentTab === TabEnum.HEADER\"\n ></valtimo-case-management-header>\n </cds-tab>\n </cds-tabs>\n}\n", styles: [":host ::ng-deep .cds--tab-content{margin: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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i2.Tab, selector: "cds-tab, ibm-tab", inputs: ["heading", "title", "context", "active", "disabled", "tabIndex", "id", "cacheActive", "tabContent", "templateContext"], outputs: ["selected"] }, { kind: "component", type: CaseManagementDraftWarningComponent, selector: "valtimo-case-management-draft-warning", inputs: ["name"] }, { kind: "component", type: CaseManagementHeaderComponent, selector: "valtimo-case-management-header" }, { kind: "component", type: CaseManagementTabsComponent, selector: "valtimo-case-management-tabs" }, { kind: "component", type: CaseManagementStatusesComponent, selector: "valtimo-case-management-statuses" }, { kind: "component", type: CaseManagementTagsComponent, selector: "valtimo-case-management-tags" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2057
2155
|
}
|
|
2058
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCaseDetailComponent, decorators: [{
|
|
2059
2157
|
type: Component,
|
|
2060
2158
|
args: [{ standalone: false, changeDetection: ChangeDetectionStrategy.OnPush, 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@if (currentTab$ | async; as currentTab) {\n <valtimo-case-management-draft-warning\n *ngIf=\"(isDraftVersion$ | async) === true && currentTab === TabEnum.STATUSES\"\n [name]=\"'caseManagement.tabs.caseDetailsTab.statuses' | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n\n <cds-tabs class=\"case-management-tabs\" type=\"contained\">\n <cds-tab\n [active]=\"currentTab === TabEnum.TABS\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.tabs' | translate\"\n (selected)=\"switchTab(TabEnum.TABS)\"\n >\n <valtimo-case-management-tabs\n *ngIf=\"currentTab === TabEnum.TABS\"\n ></valtimo-case-management-tabs>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.STATUSES\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.statuses' | translate\"\n (selected)=\"switchTab(TabEnum.STATUSES)\"\n >\n <valtimo-case-management-statuses\n *ngIf=\"currentTab === TabEnum.STATUSES\"\n ></valtimo-case-management-statuses>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.TAGS\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.tags' | translate\"\n (selected)=\"switchTab(TabEnum.TAGS)\"\n >\n <valtimo-case-management-tags\n *ngIf=\"currentTab === TabEnum.TAGS\"\n ></valtimo-case-management-tags>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.HEADER\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.header' | translate\"\n (selected)=\"switchTab(TabEnum.HEADER)\"\n >\n <valtimo-case-management-header\n *ngIf=\"currentTab === TabEnum.HEADER\"\n ></valtimo-case-management-header>\n </cds-tab>\n </cds-tabs>\n}\n", styles: [":host ::ng-deep .cds--tab-content{margin: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"] }]
|
|
2061
2159
|
}], ctorParameters: () => [{ type: i3$1.DraftVersionService }, { type: i2$1.ActivatedRoute }] });
|
|
@@ -2505,10 +2603,10 @@ class CaseManagementSearchFieldsComponent {
|
|
|
2505
2603
|
showEditModal(searchField) {
|
|
2506
2604
|
this.searchFieldClicked(searchField, false);
|
|
2507
2605
|
}
|
|
2508
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2509
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.19", type: CaseManagementSearchFieldsComponent, isStandalone: false, selector: "valtimo-case-management-search-fields", 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<ng-container\n *ngIf=\"{\n caseDefinitionKey: caseDefinitionKey$ | async,\n disableInput: disableInput$ | async,\n downloadName: downloadName$ | async,\n downloadUrl: downloadUrl$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n jsonEditorModel: jsonEditorModel$ | async,\n searchFields: translatedSearchFields$ | async,\n showActionItems: showActionItems$ | async,\n valid: valid$ | async,\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"content; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"modal; context: {obs: obs}\"></ng-container>\n</ng-container>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"searchFieldsOverview.deleteSearchFieldConfirmation\"\n [outputOnConfirm]=\"selectedDeleteSearchField$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"onDeleteSelectedSearchFieldConfirm($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #buttons let-obs=\"obs\">\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n\n <button\n cdsButton=\"primary\"\n data-test-id=\"case-management-search-add\"\n *ngIf=\"obs.hasEditPermissions\"\n [disabled]=\"loadingSearchFields || obs.disableInput\"\n (click)=\"searchFieldClicked($event, true)\"\n >\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n\n {{ 'searchFieldsOverview.addRow' | translate }}\n </button>\n</ng-template>\n\n<ng-template #content let-obs=\"obs\">\n @if (!jsonEditorActive()) {\n <valtimo-carbon-list\n data-test-id=\"searchFieldsList\"\n [actionItems]=\"actionItems\"\n [showActionItems]=\"obs.hasEditPermissions\"\n [fields]=\"fields\"\n [header]=\"false\"\n [items]=\"obs.searchFields\"\n [loading]=\"!obs.searchFields\"\n (rowClicked)=\"searchFieldClicked($event, false)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.disableInput\"\n (itemsReordered)=\"onItemsReordered(obs.caseDefinitionKey, $event)\"\n >\n <ng-container\n carbonToolbarContent\n *ngTemplateOutlet=\"buttons; context: {obs: obs}\"\n ></ng-container>\n\n <valtimo-no-results\n [title]=\"'searchFieldsOverview.noSearchfieldsTitle' | translate\"\n [description]=\"'searchFieldsOverview.noSearchfieldsDescription' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n } @else {\n <valtimo-json-editor\n [model]=\"obs.jsonEditorModel\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"248\"\n [showEditButton]=\"obs.hasEditPermissions\"\n (saveEvent)=\"updateSearchFields(obs.caseDefinitionKey, $event)\"\n >\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n </valtimo-json-editor>\n }\n</ng-template>\n\n<ng-template #modal let-obs=\"obs\">\n <cds-modal\n valtimoCdsModal\n [title]=\"\n searchFieldActionTypeIsAdd\n ? ('searchFieldsOverview.addRow' | translate)\n : ('searchFieldsOverview.edit' | translate)\n \"\n [open]=\"modalShowing$ | async\"\n [showFooter]=\"true\"\n size=\"sm\"\n (close)=\"onModalClose()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onModalClose()\">\n <h3 cdsModalHeaderHeading>\n {{\n (searchFieldActionTypeIsAdd ? 'searchFieldsOverview.addRow' : 'searchFieldsOverview.edit')\n | translate\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"\n (showFields$ | async) && {\n searchField: selectedSearchField$ | async,\n } as searchObs\n \"\n >\n <v-input\n name=\"title\"\n dataTestId=\"case-management-search-title\"\n [title]=\"'searchFieldsOverview.title' | translate\"\n [margin]=\"true\"\n [defaultValue]=\"searchObs.searchField?.title\"\n [disabled]=\"obs.disableInput\"\n [required]=\"false\"\n [tooltip]=\"'searchFieldsOverviewTooltips.title' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </v-input>\n\n <v-input\n name=\"key\"\n dataTestId=\"case-management-search-key\"\n [title]=\"'searchFieldsOverview.key' | translate\"\n [margin]=\"true\"\n [defaultValue]=\"searchObs.searchField?.key\"\n [disabled]=\"obs.disableInput || !searchFieldActionTypeIsAdd\"\n [required]=\"true\"\n [tooltip]=\"'searchFieldsOverviewTooltips.key' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </v-input>\n\n <valtimo-value-path-selector\n name=\"path\"\n [label]=\"'searchFieldsOverview.path' | translate\"\n [tooltip]=\"'searchFieldsOverviewTooltips.path' | translate\"\n [marginXl]=\"true\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [caseDefinitionVersionTag]=\"caseDefinitionVersionTag$ | async\"\n [prefixes]=\"[ValuePathSelectorPrefix.DOC, ValuePathSelectorPrefix.CASE]\"\n [defaultValue]=\"searchObs.searchField?.path\"\n [disabled]=\"obs.disableInput\"\n ></valtimo-value-path-selector>\n\n <v-select\n *ngIf=\"dataTypeItems$ | async as dataTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"dataTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.dataType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"dataType\"\n [defaultSelectionId]=\"searchObs.searchField?.dataType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dataType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-dataTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"(showMatchTypes$ | async) && (matchTypeItems$ | async) as matchTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"matchTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.matchType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"matchType\"\n [defaultSelectionId]=\"searchObs.searchField?.matchType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.matchType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-matchTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"fieldTypeItems$ | async as fieldTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"fieldTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.fieldType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"fieldType\"\n [defaultSelectionId]=\"searchObs.searchField?.fieldType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.fieldType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-fieldTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"\n (fieldTypeIsDropdown$ | async) &&\n (dropdownDataProviderNames$ | async) as dropdownDataProviderNames\n \"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"dropdownDataProviderNames\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.dropdownDataProvider' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"false\"\n name=\"dropdownDataProvider\"\n [defaultSelectionId]=\"searchObs.searchField?.dropdownDataProvider\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dropdownDataProvider' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-dropdownDataProvider\"\n ></v-select>\n\n <valtimo-carbon-multi-input\n *ngIf=\"\n (showInputDropdownTable$ | async) &&\n (initialDropdownValues$ | async) as initialDropdownValues\n \"\n name=\"dropdownValues\"\n [title]=\"'searchFieldsOverview.dropdownListValues' | translate\"\n type=\"keyValue\"\n [disabled]=\"obs.disableInput\"\n [defaultValues]=\"initialDropdownValues\"\n [margin]=\"true\"\n [required]=\"false\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dropdownListValues' | translate\"\n (valueChange)=\"dropdownDatalistChange($event)\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </valtimo-carbon-multi-input>\n\n <v-table\n *ngIf=\"\n (showReadonlyDropdownTable$ | async) &&\n (initialDropdownValues$ | async) as initialDropdownValues\n \"\n [items]=\"initialDropdownValues\"\n [columns]=\"dropdownColumns$ | async\"\n [showEditButtons]=\"false\"\n [itemsTranslationKey]=\"'searchFieldsOverview'\"\n [showPagination]=\"false\"\n [mobileBreakpointPx]=\"200\"\n [carbonTheme]=\"CARBON_THEME\"\n ></v-table>\n </v-form>\n </section>\n\n <cds-modal-footer>\n <ng-container *ngTemplateOutlet=\"buttonsFooterModal; context: {obs: obs}\"></ng-container>\n </cds-modal-footer>\n </cds-modal>\n</ng-template>\n\n<ng-template #buttonsFooterModal let-obs=\"obs\">\n <button\n data-test-id=\"case-management-search-close\"\n cdsButton=\"secondary\"\n (click)=\"onModalClose()\"\n [disabled]=\"obs.disableInput\"\n >\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n data-test-id=\"case-management-search-save\"\n cdsButton=\"primary\"\n [disabled]=\"obs.disableInput || !obs.valid\"\n (click)=\"saveSearchField(obs.caseDefinitionKey)\"\n >\n {{ 'searchFieldsOverview.submit' | translate }}\n </button>\n</ng-template>\n\n<ng-template #viewToggle>\n <cds-tooltip [description]=\"'JSON editor'\">\n <button\n [cdsButton]=\"buttonTheme()\"\n data-test-id=\"case-management-search-fields-switch-view\"\n iconOnly=\"true\"\n (click)=\"switchView()\"\n >\n <svg cdsIcon=\"code\" size=\"16\"></svg>\n </button>\n </cds-tooltip>\n</ng-template>\n\n<ng-template #downloadButton let-obs=\"obs\">\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n data-test-id=\"case-management-search-download\"\n [disabled]=\"\n !obs.downloadUrl || !obs.downloadName || obs.searchFields?.length <= 0 || obs.disableInput\n \"\n (click)=\"onDownloadClick()\"\n >\n <svg cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: ["valtimo-list::ng-deep table{border-top:1px solid rgba(0,0,0,.125)}.case-management-search-fields__buttons{display:flex;gap:16px}.case-management-search-fields__buttons .center-link{display:flex;align-items:center}.case-management-search-fields__move-buttons{width:100%;justify-content:flex-end;display:flex;flex-direction:row;position:relative}.case-management-search-fields__move-buttons button:not(:last-child){margin-right:8px}.list-actions{width:1px}.modal-header::ng-deep{background-color:#f3f4f7}::ng-deep .tab-container{min-height:unset!important}::ng-deep .cds--tab-content{padding-top: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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i7.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "defaultSelectionIds", "disabled", "dropUp", "invalid", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "clearable", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required", "loading", "loadingText", "placeholder", "smallMargin", "carbonTheme", "appendInline", "warn", "warnText", "dataTestId"], outputs: ["selectedChange"] }, { kind: "component", type: i7.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "smallMargin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "smallLabel", "rows", "clear$", "carbonTheme", "placeholder", "dataTestId", "trim", "presetsTitle", "presetOptions"], outputs: ["valueChange"] }, { kind: "component", type: i7.FormComponent, selector: "v-form", inputs: ["className"], outputs: ["valueChange"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i7.CarbonMultiInputComponent, selector: "valtimo-carbon-multi-input", inputs: ["addRowText", "addButtonType", "addRowTranslationKey", "arbitraryAmountTitles", "arbitraryValueAmount", "defaultValues", "deleteRowText", "deleteRowTranslationKey", "disabled", "dropdownColumnTitle", "dropdownItems", "dropdownWidth", "fullWidth", "hideAddButton", "hideDeleteButton", "initialAmountOfRows", "keyColumnTitle", "margin", "maxRows", "minimumAmountOfRows", "name", "required", "title", "titleTranslationKey", "tooltip", "type", "valueColumnTitle", "valuePathSelectorCaseDefinitionKey", "valuePathSelectorPrefixes", "valuePathSelectorShowCaseDefinitionSelector", "valuePathSelectorNotation", "keyColumnFlex", "dropdownColumnFlex", "valueColumnFlex"], outputs: ["valueChange", "allValuesValidEvent"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i7.TableComponent, selector: "v-table", inputs: ["items", "columns", "loading", "showEditButtons", "showPagination", "editButtonTranslationKey", "itemsTranslationKey", "noResultsTranslationKey", "mobileBreakpointPx", "amountOfLoadingRows", "collectionSize", "page", "size"], outputs: ["editButtonClicked", "paginationSizeSet", "paginationPageSet"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "component", type: i7.ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "caseDefinitionKey", "caseDefinitionVersionTag", "buildingBlockDefinitionKey", "buildingBlockDefinitionVersionTag", "prefixes", "label", "tooltip", "required", "showCaseDefinitionSelector", "notation", "dropUp", "defaultValue", "type", "parentItem", "filterItems"], outputs: ["valueChangeEvent", "collectionSelected"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: i7.JsonEditorComponent, selector: "valtimo-json-editor", inputs: ["disabled", "model", "editorOptions", "fitPage", "fitPageSpaceAdjustment", "formatOnLoad", "heightPx", "heightStyle", "jsonSchema", "showEditButton", "widthPx"], outputs: ["changeEvent", "discardEvent", "keepEditingEvent", "saveEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2606
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementSearchFieldsComponent, deps: [{ token: i1$2.DocumentService }, { token: i2$1.ActivatedRoute }, { token: i3.TranslateService }, { token: i2.IconService }, { token: i3$1.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2607
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementSearchFieldsComponent, isStandalone: false, selector: "valtimo-case-management-search-fields", 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<ng-container\n *ngIf=\"{\n caseDefinitionKey: caseDefinitionKey$ | async,\n disableInput: disableInput$ | async,\n downloadName: downloadName$ | async,\n downloadUrl: downloadUrl$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n jsonEditorModel: jsonEditorModel$ | async,\n searchFields: translatedSearchFields$ | async,\n showActionItems: showActionItems$ | async,\n valid: valid$ | async,\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"content; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"modal; context: {obs: obs}\"></ng-container>\n</ng-container>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"searchFieldsOverview.deleteSearchFieldConfirmation\"\n [outputOnConfirm]=\"selectedDeleteSearchField$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"onDeleteSelectedSearchFieldConfirm($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #buttons let-obs=\"obs\">\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n\n <button\n cdsButton=\"primary\"\n data-test-id=\"case-management-search-add\"\n *ngIf=\"obs.hasEditPermissions\"\n [disabled]=\"loadingSearchFields || obs.disableInput\"\n (click)=\"searchFieldClicked($event, true)\"\n >\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n\n {{ 'searchFieldsOverview.addRow' | translate }}\n </button>\n</ng-template>\n\n<ng-template #content let-obs=\"obs\">\n @if (!jsonEditorActive()) {\n <valtimo-carbon-list\n data-test-id=\"searchFieldsList\"\n [actionItems]=\"actionItems\"\n [showActionItems]=\"obs.hasEditPermissions\"\n [fields]=\"fields\"\n [header]=\"false\"\n [items]=\"obs.searchFields\"\n [loading]=\"!obs.searchFields\"\n (rowClicked)=\"searchFieldClicked($event, false)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.disableInput\"\n (itemsReordered)=\"onItemsReordered(obs.caseDefinitionKey, $event)\"\n >\n <ng-container\n carbonToolbarContent\n *ngTemplateOutlet=\"buttons; context: {obs: obs}\"\n ></ng-container>\n\n <valtimo-no-results\n [title]=\"'searchFieldsOverview.noSearchfieldsTitle' | translate\"\n [description]=\"'searchFieldsOverview.noSearchfieldsDescription' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n } @else {\n <valtimo-json-editor\n [model]=\"obs.jsonEditorModel\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"248\"\n [showEditButton]=\"obs.hasEditPermissions\"\n (saveEvent)=\"updateSearchFields(obs.caseDefinitionKey, $event)\"\n >\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n </valtimo-json-editor>\n }\n</ng-template>\n\n<ng-template #modal let-obs=\"obs\">\n <cds-modal\n valtimoCdsModal\n [title]=\"\n searchFieldActionTypeIsAdd\n ? ('searchFieldsOverview.addRow' | translate)\n : ('searchFieldsOverview.edit' | translate)\n \"\n [open]=\"modalShowing$ | async\"\n [showFooter]=\"true\"\n size=\"sm\"\n (close)=\"onModalClose()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onModalClose()\">\n <h3 cdsModalHeaderHeading>\n {{\n (searchFieldActionTypeIsAdd ? 'searchFieldsOverview.addRow' : 'searchFieldsOverview.edit')\n | translate\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"\n (showFields$ | async) && {\n searchField: selectedSearchField$ | async,\n } as searchObs\n \"\n >\n <v-input\n name=\"title\"\n dataTestId=\"case-management-search-title\"\n [title]=\"'searchFieldsOverview.title' | translate\"\n [margin]=\"true\"\n [defaultValue]=\"searchObs.searchField?.title\"\n [disabled]=\"obs.disableInput\"\n [required]=\"false\"\n [tooltip]=\"'searchFieldsOverviewTooltips.title' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </v-input>\n\n <v-input\n name=\"key\"\n dataTestId=\"case-management-search-key\"\n [title]=\"'searchFieldsOverview.key' | translate\"\n [margin]=\"true\"\n [defaultValue]=\"searchObs.searchField?.key\"\n [disabled]=\"obs.disableInput || !searchFieldActionTypeIsAdd\"\n [required]=\"true\"\n [tooltip]=\"'searchFieldsOverviewTooltips.key' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </v-input>\n\n <valtimo-value-path-selector\n name=\"path\"\n [label]=\"'searchFieldsOverview.path' | translate\"\n [tooltip]=\"'searchFieldsOverviewTooltips.path' | translate\"\n [marginXl]=\"true\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [caseDefinitionVersionTag]=\"caseDefinitionVersionTag$ | async\"\n [prefixes]=\"[ValuePathSelectorPrefix.DOC, ValuePathSelectorPrefix.CASE]\"\n [defaultValue]=\"searchObs.searchField?.path\"\n [disabled]=\"obs.disableInput\"\n ></valtimo-value-path-selector>\n\n <v-select\n *ngIf=\"dataTypeItems$ | async as dataTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"dataTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.dataType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"dataType\"\n [defaultSelectionId]=\"searchObs.searchField?.dataType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dataType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-dataTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"(showMatchTypes$ | async) && (matchTypeItems$ | async) as matchTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"matchTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.matchType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"matchType\"\n [defaultSelectionId]=\"searchObs.searchField?.matchType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.matchType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-matchTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"fieldTypeItems$ | async as fieldTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"fieldTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.fieldType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"fieldType\"\n [defaultSelectionId]=\"searchObs.searchField?.fieldType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.fieldType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-fieldTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"\n (fieldTypeIsDropdown$ | async) &&\n (dropdownDataProviderNames$ | async) as dropdownDataProviderNames\n \"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"dropdownDataProviderNames\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.dropdownDataProvider' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"false\"\n name=\"dropdownDataProvider\"\n [defaultSelectionId]=\"searchObs.searchField?.dropdownDataProvider\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dropdownDataProvider' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-dropdownDataProvider\"\n ></v-select>\n\n <valtimo-carbon-multi-input\n *ngIf=\"\n (showInputDropdownTable$ | async) &&\n (initialDropdownValues$ | async) as initialDropdownValues\n \"\n name=\"dropdownValues\"\n [title]=\"'searchFieldsOverview.dropdownListValues' | translate\"\n type=\"keyValue\"\n [disabled]=\"obs.disableInput\"\n [defaultValues]=\"initialDropdownValues\"\n [margin]=\"true\"\n [required]=\"false\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dropdownListValues' | translate\"\n (valueChange)=\"dropdownDatalistChange($event)\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </valtimo-carbon-multi-input>\n\n <v-table\n *ngIf=\"\n (showReadonlyDropdownTable$ | async) &&\n (initialDropdownValues$ | async) as initialDropdownValues\n \"\n [items]=\"initialDropdownValues\"\n [columns]=\"dropdownColumns$ | async\"\n [showEditButtons]=\"false\"\n [itemsTranslationKey]=\"'searchFieldsOverview'\"\n [showPagination]=\"false\"\n [mobileBreakpointPx]=\"200\"\n [carbonTheme]=\"CARBON_THEME\"\n ></v-table>\n </v-form>\n </section>\n\n <cds-modal-footer>\n <ng-container *ngTemplateOutlet=\"buttonsFooterModal; context: {obs: obs}\"></ng-container>\n </cds-modal-footer>\n </cds-modal>\n</ng-template>\n\n<ng-template #buttonsFooterModal let-obs=\"obs\">\n <button\n data-test-id=\"case-management-search-close\"\n cdsButton=\"secondary\"\n (click)=\"onModalClose()\"\n [disabled]=\"obs.disableInput\"\n >\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n data-test-id=\"case-management-search-save\"\n cdsButton=\"primary\"\n [disabled]=\"obs.disableInput || !obs.valid\"\n (click)=\"saveSearchField(obs.caseDefinitionKey)\"\n >\n {{ 'searchFieldsOverview.submit' | translate }}\n </button>\n</ng-template>\n\n<ng-template #viewToggle>\n <cds-tooltip [description]=\"'JSON editor'\">\n <button\n [cdsButton]=\"buttonTheme()\"\n data-test-id=\"case-management-search-fields-switch-view\"\n iconOnly=\"true\"\n (click)=\"switchView()\"\n >\n <svg cdsIcon=\"code\" size=\"16\"></svg>\n </button>\n </cds-tooltip>\n</ng-template>\n\n<ng-template #downloadButton let-obs=\"obs\">\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n data-test-id=\"case-management-search-download\"\n [disabled]=\"\n !obs.downloadUrl || !obs.downloadName || obs.searchFields?.length <= 0 || obs.disableInput\n \"\n (click)=\"onDownloadClick()\"\n >\n <svg cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: ["valtimo-list::ng-deep table{border-top:1px solid rgba(0,0,0,.125)}.case-management-search-fields__buttons{display:flex;gap:16px}.case-management-search-fields__buttons .center-link{display:flex;align-items:center}.case-management-search-fields__move-buttons{width:100%;justify-content:flex-end;display:flex;flex-direction:row;position:relative}.case-management-search-fields__move-buttons button:not(:last-child){margin-right:8px}.list-actions{width:1px}.modal-header::ng-deep{background-color:#f3f4f7}::ng-deep .tab-container{min-height:unset!important}::ng-deep .cds--tab-content{padding-top: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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i7.SelectComponent, selector: "v-select", inputs: ["items", "defaultSelection", "defaultSelectionId", "defaultSelectionIds", "disabled", "dropUp", "invalid", "multiple", "margin", "widthInPx", "notFoundText", "clearAllText", "clearText", "clearable", "name", "title", "titleTranslationKey", "clearSelectionSubject$", "tooltip", "required", "loading", "loadingText", "placeholder", "smallMargin", "carbonTheme", "appendInline", "warn", "warnText", "dataTestId"], outputs: ["selectedChange"] }, { kind: "component", type: i7.InputComponent, selector: "v-input", inputs: ["name", "type", "title", "titleTranslationKey", "defaultValue", "widthPx", "fullWidth", "margin", "smallMargin", "disabled", "step", "min", "maxLength", "tooltip", "required", "hideNumberSpinBox", "smallLabel", "rows", "clear$", "carbonTheme", "placeholder", "dataTestId", "trim", "presetsTitle", "presetOptions"], outputs: ["valueChange"] }, { kind: "component", type: i7.FormComponent, selector: "v-form", inputs: ["className"], outputs: ["valueChange"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i7.CarbonMultiInputComponent, selector: "valtimo-carbon-multi-input", inputs: ["addRowText", "addButtonType", "addRowTranslationKey", "arbitraryAmountTitles", "arbitraryValueAmount", "defaultValues", "deleteRowText", "deleteRowTranslationKey", "disabled", "dropdownColumnTitle", "dropdownItems", "dropdownWidth", "fullWidth", "hideAddButton", "hideDeleteButton", "initialAmountOfRows", "keyColumnTitle", "margin", "maxRows", "minimumAmountOfRows", "name", "required", "title", "titleTranslationKey", "tooltip", "type", "valueColumnTitle", "valuePathSelectorCaseDefinitionKey", "valuePathSelectorPrefixes", "valuePathSelectorShowCaseDefinitionSelector", "valuePathSelectorNotation", "keyColumnFlex", "dropdownColumnFlex", "valueColumnFlex"], outputs: ["valueChange", "allValuesValidEvent"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i7.TableComponent, selector: "v-table", inputs: ["items", "columns", "loading", "showEditButtons", "showPagination", "editButtonTranslationKey", "itemsTranslationKey", "noResultsTranslationKey", "mobileBreakpointPx", "amountOfLoadingRows", "collectionSize", "page", "size"], outputs: ["editButtonClicked", "paginationSizeSet", "paginationPageSet"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "component", type: i7.ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "caseDefinitionKey", "caseDefinitionVersionTag", "buildingBlockDefinitionKey", "buildingBlockDefinitionVersionTag", "prefixes", "label", "tooltip", "required", "showCaseDefinitionSelector", "notation", "dropUp", "defaultValue", "type", "parentItem", "filterItems"], outputs: ["valueChangeEvent", "collectionSelected"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: i7.JsonEditorComponent, selector: "valtimo-json-editor", inputs: ["disabled", "model", "editorOptions", "fitPage", "fitPageSpaceAdjustment", "formatOnLoad", "heightPx", "heightStyle", "jsonSchema", "showEditButton", "widthPx"], outputs: ["changeEvent", "discardEvent", "keepEditingEvent", "saveEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2510
2608
|
}
|
|
2511
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2609
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementSearchFieldsComponent, decorators: [{
|
|
2512
2610
|
type: Component,
|
|
2513
2611
|
args: [{ standalone: false, selector: 'valtimo-case-management-search-fields', changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-container\n *ngIf=\"{\n caseDefinitionKey: caseDefinitionKey$ | async,\n disableInput: disableInput$ | async,\n downloadName: downloadName$ | async,\n downloadUrl: downloadUrl$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n jsonEditorModel: jsonEditorModel$ | async,\n searchFields: translatedSearchFields$ | async,\n showActionItems: showActionItems$ | async,\n valid: valid$ | async,\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"content; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"modal; context: {obs: obs}\"></ng-container>\n</ng-container>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"searchFieldsOverview.deleteSearchFieldConfirmation\"\n [outputOnConfirm]=\"selectedDeleteSearchField$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"interface.delete\"\n (confirmEvent)=\"onDeleteSelectedSearchFieldConfirm($event)\"\n></valtimo-confirmation-modal>\n\n<ng-template #buttons let-obs=\"obs\">\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n\n <button\n cdsButton=\"primary\"\n data-test-id=\"case-management-search-add\"\n *ngIf=\"obs.hasEditPermissions\"\n [disabled]=\"loadingSearchFields || obs.disableInput\"\n (click)=\"searchFieldClicked($event, true)\"\n >\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n\n {{ 'searchFieldsOverview.addRow' | translate }}\n </button>\n</ng-template>\n\n<ng-template #content let-obs=\"obs\">\n @if (!jsonEditorActive()) {\n <valtimo-carbon-list\n data-test-id=\"searchFieldsList\"\n [actionItems]=\"actionItems\"\n [showActionItems]=\"obs.hasEditPermissions\"\n [fields]=\"fields\"\n [header]=\"false\"\n [items]=\"obs.searchFields\"\n [loading]=\"!obs.searchFields\"\n (rowClicked)=\"searchFieldClicked($event, false)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.disableInput\"\n (itemsReordered)=\"onItemsReordered(obs.caseDefinitionKey, $event)\"\n >\n <ng-container\n carbonToolbarContent\n *ngTemplateOutlet=\"buttons; context: {obs: obs}\"\n ></ng-container>\n\n <valtimo-no-results\n [title]=\"'searchFieldsOverview.noSearchfieldsTitle' | translate\"\n [description]=\"'searchFieldsOverview.noSearchfieldsDescription' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n } @else {\n <valtimo-json-editor\n [model]=\"obs.jsonEditorModel\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"248\"\n [showEditButton]=\"obs.hasEditPermissions\"\n (saveEvent)=\"updateSearchFields(obs.caseDefinitionKey, $event)\"\n >\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n </valtimo-json-editor>\n }\n</ng-template>\n\n<ng-template #modal let-obs=\"obs\">\n <cds-modal\n valtimoCdsModal\n [title]=\"\n searchFieldActionTypeIsAdd\n ? ('searchFieldsOverview.addRow' | translate)\n : ('searchFieldsOverview.edit' | translate)\n \"\n [open]=\"modalShowing$ | async\"\n [showFooter]=\"true\"\n size=\"sm\"\n (close)=\"onModalClose()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onModalClose()\">\n <h3 cdsModalHeaderHeading>\n {{\n (searchFieldActionTypeIsAdd ? 'searchFieldsOverview.addRow' : 'searchFieldsOverview.edit')\n | translate\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <v-form\n (valueChange)=\"formValueChange($event)\"\n *ngIf=\"\n (showFields$ | async) && {\n searchField: selectedSearchField$ | async,\n } as searchObs\n \"\n >\n <v-input\n name=\"title\"\n dataTestId=\"case-management-search-title\"\n [title]=\"'searchFieldsOverview.title' | translate\"\n [margin]=\"true\"\n [defaultValue]=\"searchObs.searchField?.title\"\n [disabled]=\"obs.disableInput\"\n [required]=\"false\"\n [tooltip]=\"'searchFieldsOverviewTooltips.title' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </v-input>\n\n <v-input\n name=\"key\"\n dataTestId=\"case-management-search-key\"\n [title]=\"'searchFieldsOverview.key' | translate\"\n [margin]=\"true\"\n [defaultValue]=\"searchObs.searchField?.key\"\n [disabled]=\"obs.disableInput || !searchFieldActionTypeIsAdd\"\n [required]=\"true\"\n [tooltip]=\"'searchFieldsOverviewTooltips.key' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </v-input>\n\n <valtimo-value-path-selector\n name=\"path\"\n [label]=\"'searchFieldsOverview.path' | translate\"\n [tooltip]=\"'searchFieldsOverviewTooltips.path' | translate\"\n [marginXl]=\"true\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [caseDefinitionVersionTag]=\"caseDefinitionVersionTag$ | async\"\n [prefixes]=\"[ValuePathSelectorPrefix.DOC, ValuePathSelectorPrefix.CASE]\"\n [defaultValue]=\"searchObs.searchField?.path\"\n [disabled]=\"obs.disableInput\"\n ></valtimo-value-path-selector>\n\n <v-select\n *ngIf=\"dataTypeItems$ | async as dataTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"dataTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.dataType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"dataType\"\n [defaultSelectionId]=\"searchObs.searchField?.dataType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dataType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-dataTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"(showMatchTypes$ | async) && (matchTypeItems$ | async) as matchTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"matchTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.matchType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"matchType\"\n [defaultSelectionId]=\"searchObs.searchField?.matchType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.matchType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-matchTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"fieldTypeItems$ | async as fieldTypeItems\"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"fieldTypeItems\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.fieldType' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"true\"\n name=\"fieldType\"\n [defaultSelectionId]=\"searchObs.searchField?.fieldType\"\n [tooltip]=\"'searchFieldsOverviewTooltips.fieldType' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-fieldTypes\"\n ></v-select>\n\n <v-select\n *ngIf=\"\n (fieldTypeIsDropdown$ | async) &&\n (dropdownDataProviderNames$ | async) as dropdownDataProviderNames\n \"\n [appendInline]=\"true\"\n [dropUp]=\"false\"\n [items]=\"dropdownDataProviderNames\"\n [placeholder]=\"'searchFieldsOverview.searchFieldPlaceholder' | translate\"\n [title]=\"'searchFieldsOverview.dropdownDataProvider' | translate\"\n [disabled]=\"obs.disableInput\"\n [margin]=\"true\"\n [required]=\"false\"\n name=\"dropdownDataProvider\"\n [defaultSelectionId]=\"searchObs.searchField?.dropdownDataProvider\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dropdownDataProvider' | translate\"\n [carbonTheme]=\"CARBON_THEME\"\n dataTestId=\"case-management-search-dropdownDataProvider\"\n ></v-select>\n\n <valtimo-carbon-multi-input\n *ngIf=\"\n (showInputDropdownTable$ | async) &&\n (initialDropdownValues$ | async) as initialDropdownValues\n \"\n name=\"dropdownValues\"\n [title]=\"'searchFieldsOverview.dropdownListValues' | translate\"\n type=\"keyValue\"\n [disabled]=\"obs.disableInput\"\n [defaultValues]=\"initialDropdownValues\"\n [margin]=\"true\"\n [required]=\"false\"\n [tooltip]=\"'searchFieldsOverviewTooltips.dropdownListValues' | translate\"\n (valueChange)=\"dropdownDatalistChange($event)\"\n [carbonTheme]=\"CARBON_THEME\"\n >\n </valtimo-carbon-multi-input>\n\n <v-table\n *ngIf=\"\n (showReadonlyDropdownTable$ | async) &&\n (initialDropdownValues$ | async) as initialDropdownValues\n \"\n [items]=\"initialDropdownValues\"\n [columns]=\"dropdownColumns$ | async\"\n [showEditButtons]=\"false\"\n [itemsTranslationKey]=\"'searchFieldsOverview'\"\n [showPagination]=\"false\"\n [mobileBreakpointPx]=\"200\"\n [carbonTheme]=\"CARBON_THEME\"\n ></v-table>\n </v-form>\n </section>\n\n <cds-modal-footer>\n <ng-container *ngTemplateOutlet=\"buttonsFooterModal; context: {obs: obs}\"></ng-container>\n </cds-modal-footer>\n </cds-modal>\n</ng-template>\n\n<ng-template #buttonsFooterModal let-obs=\"obs\">\n <button\n data-test-id=\"case-management-search-close\"\n cdsButton=\"secondary\"\n (click)=\"onModalClose()\"\n [disabled]=\"obs.disableInput\"\n >\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n data-test-id=\"case-management-search-save\"\n cdsButton=\"primary\"\n [disabled]=\"obs.disableInput || !obs.valid\"\n (click)=\"saveSearchField(obs.caseDefinitionKey)\"\n >\n {{ 'searchFieldsOverview.submit' | translate }}\n </button>\n</ng-template>\n\n<ng-template #viewToggle>\n <cds-tooltip [description]=\"'JSON editor'\">\n <button\n [cdsButton]=\"buttonTheme()\"\n data-test-id=\"case-management-search-fields-switch-view\"\n iconOnly=\"true\"\n (click)=\"switchView()\"\n >\n <svg cdsIcon=\"code\" size=\"16\"></svg>\n </button>\n </cds-tooltip>\n</ng-template>\n\n<ng-template #downloadButton let-obs=\"obs\">\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n data-test-id=\"case-management-search-download\"\n [disabled]=\"\n !obs.downloadUrl || !obs.downloadName || obs.searchFields?.length <= 0 || obs.disableInput\n \"\n (click)=\"onDownloadClick()\"\n >\n <svg cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: ["valtimo-list::ng-deep table{border-top:1px solid rgba(0,0,0,.125)}.case-management-search-fields__buttons{display:flex;gap:16px}.case-management-search-fields__buttons .center-link{display:flex;align-items:center}.case-management-search-fields__move-buttons{width:100%;justify-content:flex-end;display:flex;flex-direction:row;position:relative}.case-management-search-fields__move-buttons button:not(:last-child){margin-right:8px}.list-actions{width:1px}.modal-header::ng-deep{background-color:#f3f4f7}::ng-deep .tab-container{min-height:unset!important}::ng-deep .cds--tab-content{padding-top: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"] }]
|
|
2514
2612
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }, { type: i3.TranslateService }, { type: i2.IconService }, { type: i3$1.EditPermissionsService }] });
|
|
@@ -2535,6 +2633,7 @@ class CaseManagementListColumnsComponent {
|
|
|
2535
2633
|
this.translateService = translateService;
|
|
2536
2634
|
this.iconService = iconService;
|
|
2537
2635
|
this.editPermissionsService = editPermissionsService;
|
|
2636
|
+
this.testIds = CASE_MANAGEMENT_LIST_COLUMNS_TEST_IDS;
|
|
2538
2637
|
this.downloadName$ = new BehaviorSubject('');
|
|
2539
2638
|
this.downloadUrl$ = new BehaviorSubject(null);
|
|
2540
2639
|
this._subscriptions = new Subscription();
|
|
@@ -2944,12 +3043,12 @@ class CaseManagementListColumnsComponent {
|
|
|
2944
3043
|
this.displayExportButton = pathMustStartWithCaseOrDocRegex.test(String(value));
|
|
2945
3044
|
});
|
|
2946
3045
|
}
|
|
2947
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2948
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.19", type: CaseManagementListColumnsComponent, isStandalone: false, selector: "valtimo-case-management-list-columns", 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<ng-container\n *ngIf=\"{\n caseListColumn: translatedCaseListColumns$ | async,\n disableInput: disableInput$ | async,\n downloadName: downloadName$ | async,\n downloadUrl: downloadUrl$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n jsonEditorModel: jsonEditorModel$ | async,\n loadingCaseListColumns: loadingCaseListColumns$ | async,\n params: params$ | async,\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"content; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"createEditModal\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"deleteModal\"></ng-container>\n</ng-container>\n\n<ng-template #content let-obs=\"obs\">\n @if (!jsonEditorActive()) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loadingCaseListColumns\"\n [items]=\"obs?.caseListColumn || []\"\n [fields]=\"fields\"\n [viewMode]=\"false\"\n [header]=\"false\"\n (rowClicked)=\"columnRowClicked($event)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.disableInput\"\n (itemsReordered)=\"onItemsReordered(obs.params.caseDefinitionKey, $event)\"\n data-test-id=\"caseListColumnsList\"\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 } @else {\n <valtimo-json-editor\n [model]=\"obs.jsonEditorModel\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"248\"\n [showEditButton]=\"obs.hasEditPermissions\"\n (saveEvent)=\"updateCaseListColumns(obs.params.caseDefinitionKey, $event)\"\n data-test-id=\"listColumnJSONEditor\"\n >\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n </valtimo-json-editor>\n }\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n\n <button\n *ngIf=\"obs.hasEditPermissions\"\n (click)=\"openModal('create')\"\n cdsButton=\"primary\"\n [disabled]=\"obs.loadingCaseListColumns || !(hasEditPermissions$ | async)\"\n data-test-id=\"caseManagementAddListColumn\"\n >\n {{ 'listColumn.addButtonText' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #noConfigWarning>\n <div class=\"pl-2 pr-2 pb-2 pt-2\">\n <cds-notification\n [notificationObj]=\"{\n type: 'info',\n title: 'listColumn.noConfigWarningTitle' | translate,\n message: 'listColumn.noConfigWarning' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #createEditModal>\n <cds-modal\n valtimoCdsModal\n *ngIf=\"{\n type: currentModalType$ | async,\n show: showModal$ | async,\n valid: valid$ | async,\n disableInput: disableInput$ | async,\n validKey: validKey$ | async,\n disableDefaultSort: disableDefaultSort$ | async,\n showEnum: showEnum$ | async,\n isYesNo: isYesNo$ | async,\n showTagAmount: showTagAmount$ | async,\n params: params$ | async,\n } as modalObs\"\n [open]=\"modalObs.show\"\n size=\"sm\"\n (close)=\"closeModal()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n modalObs.type === 'create'\n ? ('listColumn.addButtonText' | translate)\n : ('listColumn.editColumnTitle' | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"modalContent; context: {modalObs: modalObs}\"></ng-container>\n </section>\n <ng-container *ngTemplateOutlet=\"modalFooter; context: {modalObs: modalObs}\"></ng-container>\n </cds-modal>\n</ng-template>\n\n<ng-template #modalContent let-modalObs=\"modalObs\">\n <form [formGroup]=\"formGroup\" class=\"list-column-form\">\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.titleTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.titleTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"title\" data-test-id=\"listColumnTitle\" />\n </cds-label>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.type === 'edit'\"\n [invalid]=\"modalObs.validKey === false\"\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]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input\n cdsText\n formControlName=\"key\"\n [invalid]=\"modalObs.validKey === false\"\n data-test-id=\"listColumnKey\"\n />\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.path' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.pathTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-value-path-selector\n formControlName=\"path\"\n [caseDefinitionKey]=\"modalObs.params?.caseDefinitionKey\"\n [caseDefinitionVersionTag]=\"modalObs.params?.caseDefinitionVersionTag\"\n data-test-id=\"listColumnValuePathSelector\"\n ></valtimo-value-path-selector>\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.displayType' | translate }}\n <v-tooltip-icon\n [tooltip]=\"'listColumn.displayTypeTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"displayType\"\n [disabled]=\"modalObs.disableInput\"\n (selected)=\"selectedDisplayType($event)\"\n data-test-id=\"listColumnDisplayType\"\n >\n <cds-dropdown-list [items]=\"(viewTypeItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showTagAmount\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.tagAmount' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.tagAmountTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-number\n formControlName=\"tagAmount\"\n [min]=\"1\"\n [step]=\"1\"\n data-test-id=\"listColumnTagAmount\"\n ></cds-number>\n </cds-label>\n\n <cds-label *ngIf=\"showDateFormat$ | async\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.dateFormat' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.dateFormatTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"dateFormat\" data-test-id=\"listColumnDateFormat\" />\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showEnum || modalObs.isYesNo\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{\n modalObs.isYesNo\n ? ('listColumn.enumTitleOptional' | translate)\n : ('listColumn.enumTitle' | translate)\n }}\n\n <v-tooltip-icon\n [tooltip]=\"\n modalObs.isYesNo\n ? ('listColumn.enumTooltipOptional' | translate)\n : ('listColumn.enumTooltip' | translate)\n \"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-carbon-multi-input\n *ngIf=\"(showModal$ | async) || (modalShowing$ | async)\"\n type=\"keyValue\"\n (valueChange)=\"enumValueChange($event)\"\n [defaultValues]=\"defaultEnumValues$ | async\"\n [hideAddButton]=\"modalObs.isYesNo\"\n [hideDeleteButton]=\"modalObs.isYesNo\"\n [maxRows]=\"modalObs.isYesNo ? 1 : null\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n data-test-id=\"listColumnMultiInput\"\n ></valtimo-carbon-multi-input>\n </cds-label>\n\n <cds-checkbox\n formControlName=\"sortable\"\n [disabled]=\"modalObs.showTagAmount || modalObs.disableInput\"\n data-test-id=\"listColumnSortableCheckbox\"\n >{{ 'listColumn.sortable' | translate }}\n </cds-checkbox>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n >\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.defaultSortTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.defaultSortTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"defaultSort\"\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n data-test-id=\"listColumnDefaultSort\"\n >\n <cds-dropdown-list [items]=\"(sortItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"displayExportButton\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.exportField' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.exportTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-toggle\n formControlName=\"exportable\"\n data-testid=\"export-selector-toggle\"\n [onText]=\"'listColumn.sortableYes' | translate\"\n [offText]=\"'listColumn.sortableNo' | translate\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n [required]=\"false\"\n [size]=\"'sm'\"\n data-test-id=\"listColumnExportable\"\n ></cds-toggle>\n </cds-label>\n </form>\n</ng-template>\n\n<ng-template #modalFooter let-modalObs=\"modalObs\">\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container>\n <button\n cdsButton=\"secondary\"\n [attr.modal-primary-focus]=\"true\"\n (click)=\"closeModal()\"\n [disabled]=\"modalObs.disableInput\"\n data-test-id=\"listColumnCancelButton\"\n >\n {{ 'listColumn.close' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n [attr.modal-primary-focus]=\"true\"\n [disabled]=\"modalObs.valid === false\"\n (click)=\"saveCaseListColumns()\"\n [disabled]=\"\n modalObs.disableInput || modalObs.valid === false || modalObs.validKey === false\n \"\n data-test-id=\"listColumnSaveButton\"\n >\n {{ 'listColumn.save' | translate }}\n </button>\n </ng-container>\n </cds-modal-footer>\n</ng-template>\n\n<ng-template #deleteModal>\n <valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteModal$\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n (confirmEvent)=\"deleteRowConfirmation($event)\"\n confirmButtonTextTranslationKey=\"listColumn.deleteColumn\"\n titleTranslationKey=\"listColumn.deleteColumn\"\n contentTranslationKey=\"listColumn.deleteColumnConfirmation\"\n data-test-id=\"listColumnConfirmationModal\"\n ></valtimo-confirmation-modal>\n</ng-template>\n\n<ng-template #viewToggle>\n <cds-tooltip [description]=\"'JSON editor'\">\n <button\n [cdsButton]=\"buttonTheme()\"\n data-test-id=\"listColumnSwitchView\"\n iconOnly=\"true\"\n (click)=\"switchView()\"\n >\n <svg cdsIcon=\"code\" size=\"16\"></svg>\n </button>\n </cds-tooltip>\n</ng-template>\n\n<ng-template #downloadButton let-obs=\"obs\">\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n (click)=\"onDownloadClick()\"\n [disabled]=\"\n !obs.downloadUrl ||\n !obs.downloadName ||\n obs.caseListColumn?.length < 1 ||\n obs.disableInput ||\n obs.loadingCaseListColumns\n \"\n data-test-id=\"listColumnDownloadButton\"\n >\n <svg cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: ["::ng-deep .tab-container{min-height:unset!important}::ng-deep .cds--inline-notification{max-width:100%}::ng-deep .cds--label{width:100%}.label-with-tooltip{display:flex;align-items:center}.display-type-dropdown{width:300px}.list-column-form{display:flex;flex-direction:column;gap:16px;margin-bottom:3rem}.select-label{padding-bottom:.5rem;width:250px}.center-link{display:flex;align-items:center}.case-list-columns__actions{display:flex;gap:8px}.list-columns__buttons{display:flex;gap:16px;flex-direction:row;justify-content:flex-end}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i2.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "component", type: i7.TooltipIconComponent, selector: "v-tooltip-icon", inputs: ["tooltip", "disabled"] }, { kind: "component", type: i7.CarbonMultiInputComponent, selector: "valtimo-carbon-multi-input", inputs: ["addRowText", "addButtonType", "addRowTranslationKey", "arbitraryAmountTitles", "arbitraryValueAmount", "defaultValues", "deleteRowText", "deleteRowTranslationKey", "disabled", "dropdownColumnTitle", "dropdownItems", "dropdownWidth", "fullWidth", "hideAddButton", "hideDeleteButton", "initialAmountOfRows", "keyColumnTitle", "margin", "maxRows", "minimumAmountOfRows", "name", "required", "title", "titleTranslationKey", "tooltip", "type", "valueColumnTitle", "valuePathSelectorCaseDefinitionKey", "valuePathSelectorPrefixes", "valuePathSelectorShowCaseDefinitionSelector", "valuePathSelectorNotation", "keyColumnFlex", "dropdownColumnFlex", "valueColumnFlex"], outputs: ["valueChange", "allValuesValidEvent"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: i2.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "component", type: i7.ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "caseDefinitionKey", "caseDefinitionVersionTag", "buildingBlockDefinitionKey", "buildingBlockDefinitionVersionTag", "prefixes", "label", "tooltip", "required", "showCaseDefinitionSelector", "notation", "dropUp", "defaultValue", "type", "parentItem", "filterItems"], outputs: ["valueChangeEvent", "collectionSelected"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: i2.NumberComponent, selector: "cds-number, ibm-number", inputs: ["readonly", "theme", "disabled", "skeleton", "invalid", "id", "placeholder", "size", "required", "value", "min", "max", "label", "helperText", "invalidText", "step", "precision", "warn", "warnText", "ariaLabel", "decrementLabel", "incrementLabel", "fluid"], outputs: ["change"] }, { kind: "component", type: i7.JsonEditorComponent, selector: "valtimo-json-editor", inputs: ["disabled", "model", "editorOptions", "fitPage", "fitPageSpaceAdjustment", "formatOnLoad", "heightPx", "heightStyle", "jsonSchema", "showEditButton", "widthPx"], outputs: ["changeEvent", "discardEvent", "keepEditingEvent", "saveEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
3046
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementListColumnsComponent, deps: [{ token: i1$2.DocumentService }, { token: i2$1.ActivatedRoute }, { token: i3.TranslateService }, { token: i2.IconService }, { token: i3$1.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3047
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementListColumnsComponent, isStandalone: false, selector: "valtimo-case-management-list-columns", 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<ng-container\n *ngIf=\"{\n caseListColumn: translatedCaseListColumns$ | async,\n disableInput: disableInput$ | async,\n downloadName: downloadName$ | async,\n downloadUrl: downloadUrl$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n jsonEditorModel: jsonEditorModel$ | async,\n loadingCaseListColumns: loadingCaseListColumns$ | async,\n params: params$ | async,\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"content; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"createEditModal\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"deleteModal\"></ng-container>\n</ng-container>\n\n<ng-template #content let-obs=\"obs\">\n @if (!jsonEditorActive()) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loadingCaseListColumns\"\n [items]=\"obs?.caseListColumn || []\"\n [fields]=\"fields\"\n [viewMode]=\"false\"\n [header]=\"false\"\n (rowClicked)=\"columnRowClicked($event)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.disableInput\"\n (itemsReordered)=\"onItemsReordered(obs.params.caseDefinitionKey, $event)\"\n [attr.data-test-id]=\"testIds.columnsList\"\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 } @else {\n <valtimo-json-editor\n [model]=\"obs.jsonEditorModel\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"248\"\n [showEditButton]=\"obs.hasEditPermissions\"\n (saveEvent)=\"updateCaseListColumns(obs.params.caseDefinitionKey, $event)\"\n [attr.data-test-id]=\"testIds.jsonEditor\"\n >\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n </valtimo-json-editor>\n }\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n\n <button\n *ngIf=\"obs.hasEditPermissions\"\n (click)=\"openModal('create')\"\n cdsButton=\"primary\"\n [disabled]=\"obs.loadingCaseListColumns || !(hasEditPermissions$ | async)\"\n [attr.data-test-id]=\"testIds.addListColumn\"\n >\n {{ 'listColumn.addButtonText' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #noConfigWarning>\n <div class=\"pl-2 pr-2 pb-2 pt-2\">\n <cds-notification\n [notificationObj]=\"{\n type: 'info',\n title: 'listColumn.noConfigWarningTitle' | translate,\n message: 'listColumn.noConfigWarning' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #createEditModal>\n <cds-modal\n valtimoCdsModal\n *ngIf=\"{\n type: currentModalType$ | async,\n show: showModal$ | async,\n valid: valid$ | async,\n disableInput: disableInput$ | async,\n validKey: validKey$ | async,\n disableDefaultSort: disableDefaultSort$ | async,\n showEnum: showEnum$ | async,\n isYesNo: isYesNo$ | async,\n showTagAmount: showTagAmount$ | async,\n params: params$ | async,\n } as modalObs\"\n [open]=\"modalObs.show\"\n size=\"sm\"\n (close)=\"closeModal()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n modalObs.type === 'create'\n ? ('listColumn.addButtonText' | translate)\n : ('listColumn.editColumnTitle' | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"modalContent; context: {modalObs: modalObs}\"></ng-container>\n </section>\n <ng-container *ngTemplateOutlet=\"modalFooter; context: {modalObs: modalObs}\"></ng-container>\n </cds-modal>\n</ng-template>\n\n<ng-template #modalContent let-modalObs=\"modalObs\">\n <form [formGroup]=\"formGroup\" class=\"list-column-form\">\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.titleTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.titleTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"title\" [attr.data-test-id]=\"testIds.title\" />\n </cds-label>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.type === 'edit'\"\n [invalid]=\"modalObs.validKey === false\"\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]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input\n cdsText\n formControlName=\"key\"\n [invalid]=\"modalObs.validKey === false\"\n [attr.data-test-id]=\"testIds.key\"\n />\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.path' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.pathTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-value-path-selector\n formControlName=\"path\"\n [caseDefinitionKey]=\"modalObs.params?.caseDefinitionKey\"\n [caseDefinitionVersionTag]=\"modalObs.params?.caseDefinitionVersionTag\"\n [attr.data-test-id]=\"testIds.valuePathSelector\"\n ></valtimo-value-path-selector>\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.displayType' | translate }}\n <v-tooltip-icon\n [tooltip]=\"'listColumn.displayTypeTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"displayType\"\n [disabled]=\"modalObs.disableInput\"\n (selected)=\"selectedDisplayType($event)\"\n [attr.data-test-id]=\"testIds.displayType\"\n >\n <cds-dropdown-list [items]=\"(viewTypeItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showTagAmount\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.tagAmount' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.tagAmountTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-number\n formControlName=\"tagAmount\"\n [min]=\"1\"\n [step]=\"1\"\n [attr.data-test-id]=\"testIds.tagAmount\"\n ></cds-number>\n </cds-label>\n\n <cds-label *ngIf=\"showDateFormat$ | async\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.dateFormat' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.dateFormatTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"dateFormat\" [attr.data-test-id]=\"testIds.dateFormat\" />\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showEnum || modalObs.isYesNo\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{\n modalObs.isYesNo\n ? ('listColumn.enumTitleOptional' | translate)\n : ('listColumn.enumTitle' | translate)\n }}\n\n <v-tooltip-icon\n [tooltip]=\"\n modalObs.isYesNo\n ? ('listColumn.enumTooltipOptional' | translate)\n : ('listColumn.enumTooltip' | translate)\n \"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-carbon-multi-input\n *ngIf=\"(showModal$ | async) || (modalShowing$ | async)\"\n type=\"keyValue\"\n (valueChange)=\"enumValueChange($event)\"\n [defaultValues]=\"defaultEnumValues$ | async\"\n [hideAddButton]=\"modalObs.isYesNo\"\n [hideDeleteButton]=\"modalObs.isYesNo\"\n [maxRows]=\"modalObs.isYesNo ? 1 : null\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n [attr.data-test-id]=\"testIds.multiInput\"\n ></valtimo-carbon-multi-input>\n </cds-label>\n\n <cds-checkbox\n formControlName=\"sortable\"\n [disabled]=\"modalObs.showTagAmount || modalObs.disableInput\"\n [attr.data-test-id]=\"testIds.sortableCheckbox\"\n >{{ 'listColumn.sortable' | translate }}\n </cds-checkbox>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n >\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.defaultSortTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.defaultSortTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"defaultSort\"\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n [attr.data-test-id]=\"testIds.defaultSort\"\n >\n <cds-dropdown-list [items]=\"(sortItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"displayExportButton\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.exportField' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.exportTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-toggle\n formControlName=\"exportable\"\n data-testid=\"export-selector-toggle\"\n [onText]=\"'listColumn.sortableYes' | translate\"\n [offText]=\"'listColumn.sortableNo' | translate\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n [required]=\"false\"\n [size]=\"'sm'\"\n [attr.data-test-id]=\"testIds.exportable\"\n ></cds-toggle>\n </cds-label>\n </form>\n</ng-template>\n\n<ng-template #modalFooter let-modalObs=\"modalObs\">\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container>\n <button\n cdsButton=\"secondary\"\n [attr.modal-primary-focus]=\"true\"\n (click)=\"closeModal()\"\n [disabled]=\"modalObs.disableInput\"\n [attr.data-test-id]=\"testIds.cancelButton\"\n >\n {{ 'listColumn.close' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n [attr.modal-primary-focus]=\"true\"\n [disabled]=\"modalObs.valid === false\"\n (click)=\"saveCaseListColumns()\"\n [disabled]=\"\n modalObs.disableInput || modalObs.valid === false || modalObs.validKey === false\n \"\n [attr.data-test-id]=\"testIds.saveButton\"\n >\n {{ 'listColumn.save' | translate }}\n </button>\n </ng-container>\n </cds-modal-footer>\n</ng-template>\n\n<ng-template #deleteModal>\n <valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteModal$\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n (confirmEvent)=\"deleteRowConfirmation($event)\"\n confirmButtonTextTranslationKey=\"listColumn.deleteColumn\"\n titleTranslationKey=\"listColumn.deleteColumn\"\n contentTranslationKey=\"listColumn.deleteColumnConfirmation\"\n [attr.data-test-id]=\"testIds.confirmationModal\"\n ></valtimo-confirmation-modal>\n</ng-template>\n\n<ng-template #viewToggle>\n <cds-tooltip [description]=\"'JSON editor'\">\n <button\n [cdsButton]=\"buttonTheme()\"\n [attr.data-test-id]=\"testIds.switchView\"\n iconOnly=\"true\"\n (click)=\"switchView()\"\n >\n <svg cdsIcon=\"code\" size=\"16\"></svg>\n </button>\n </cds-tooltip>\n</ng-template>\n\n<ng-template #downloadButton let-obs=\"obs\">\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n (click)=\"onDownloadClick()\"\n [disabled]=\"\n !obs.downloadUrl ||\n !obs.downloadName ||\n obs.caseListColumn?.length < 1 ||\n obs.disableInput ||\n obs.loadingCaseListColumns\n \"\n [attr.data-test-id]=\"testIds.downloadButton\"\n >\n <svg cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: ["::ng-deep .tab-container{min-height:unset!important}::ng-deep .cds--inline-notification{max-width:100%}::ng-deep .cds--label{width:100%}.label-with-tooltip{display:flex;align-items:center}.display-type-dropdown{width:300px}.list-column-form{display:flex;flex-direction:column;gap:16px;margin-bottom:3rem}.select-label{padding-bottom:.5rem;width:250px}.center-link{display:flex;align-items:center}.case-list-columns__actions{display:flex;gap:8px}.list-columns__buttons{display:flex;gap:16px;flex-direction:row;justify-content:flex-end}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i2.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "component", type: i7.TooltipIconComponent, selector: "v-tooltip-icon", inputs: ["tooltip", "disabled"] }, { kind: "component", type: i7.CarbonMultiInputComponent, selector: "valtimo-carbon-multi-input", inputs: ["addRowText", "addButtonType", "addRowTranslationKey", "arbitraryAmountTitles", "arbitraryValueAmount", "defaultValues", "deleteRowText", "deleteRowTranslationKey", "disabled", "dropdownColumnTitle", "dropdownItems", "dropdownWidth", "fullWidth", "hideAddButton", "hideDeleteButton", "initialAmountOfRows", "keyColumnTitle", "margin", "maxRows", "minimumAmountOfRows", "name", "required", "title", "titleTranslationKey", "tooltip", "type", "valueColumnTitle", "valuePathSelectorCaseDefinitionKey", "valuePathSelectorPrefixes", "valuePathSelectorShowCaseDefinitionSelector", "valuePathSelectorNotation", "keyColumnFlex", "dropdownColumnFlex", "valueColumnFlex"], outputs: ["valueChange", "allValuesValidEvent"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: i2.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "component", type: i7.ValuePathSelectorComponent, selector: "valtimo-value-path-selector", inputs: ["name", "appendInline", "margin", "marginLg", "marginXl", "disabled", "caseDefinitionKey", "caseDefinitionVersionTag", "buildingBlockDefinitionKey", "buildingBlockDefinitionVersionTag", "prefixes", "label", "tooltip", "required", "showCaseDefinitionSelector", "notation", "dropUp", "defaultValue", "type", "parentItem", "filterItems"], outputs: ["valueChangeEvent", "collectionSelected"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: i2.NumberComponent, selector: "cds-number, ibm-number", inputs: ["readonly", "theme", "disabled", "skeleton", "invalid", "id", "placeholder", "size", "required", "value", "min", "max", "label", "helperText", "invalidText", "step", "precision", "warn", "warnText", "ariaLabel", "decrementLabel", "incrementLabel", "fluid"], outputs: ["change"] }, { kind: "component", type: i7.JsonEditorComponent, selector: "valtimo-json-editor", inputs: ["disabled", "model", "editorOptions", "fitPage", "fitPageSpaceAdjustment", "formatOnLoad", "heightPx", "heightStyle", "jsonSchema", "showEditButton", "widthPx"], outputs: ["changeEvent", "discardEvent", "keepEditingEvent", "saveEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
2949
3048
|
}
|
|
2950
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3049
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementListColumnsComponent, decorators: [{
|
|
2951
3050
|
type: Component,
|
|
2952
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-list-columns', 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<ng-container\n *ngIf=\"{\n caseListColumn: translatedCaseListColumns$ | async,\n disableInput: disableInput$ | async,\n downloadName: downloadName$ | async,\n downloadUrl: downloadUrl$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n jsonEditorModel: jsonEditorModel$ | async,\n loadingCaseListColumns: loadingCaseListColumns$ | async,\n params: params$ | async,\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"content; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"createEditModal\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"deleteModal\"></ng-container>\n</ng-container>\n\n<ng-template #content let-obs=\"obs\">\n @if (!jsonEditorActive()) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loadingCaseListColumns\"\n [items]=\"obs?.caseListColumn || []\"\n [fields]=\"fields\"\n [viewMode]=\"false\"\n [header]=\"false\"\n (rowClicked)=\"columnRowClicked($event)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.disableInput\"\n (itemsReordered)=\"onItemsReordered(obs.params.caseDefinitionKey, $event)\"\n data-test-id=\"caseListColumnsList\"\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 } @else {\n <valtimo-json-editor\n [model]=\"obs.jsonEditorModel\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"248\"\n [showEditButton]=\"obs.hasEditPermissions\"\n (saveEvent)=\"updateCaseListColumns(obs.params.caseDefinitionKey, $event)\"\n data-test-id=\"listColumnJSONEditor\"\n >\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n </valtimo-json-editor>\n }\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n\n <button\n *ngIf=\"obs.hasEditPermissions\"\n (click)=\"openModal('create')\"\n cdsButton=\"primary\"\n [disabled]=\"obs.loadingCaseListColumns || !(hasEditPermissions$ | async)\"\n data-test-id=\"caseManagementAddListColumn\"\n >\n {{ 'listColumn.addButtonText' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #noConfigWarning>\n <div class=\"pl-2 pr-2 pb-2 pt-2\">\n <cds-notification\n [notificationObj]=\"{\n type: 'info',\n title: 'listColumn.noConfigWarningTitle' | translate,\n message: 'listColumn.noConfigWarning' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #createEditModal>\n <cds-modal\n valtimoCdsModal\n *ngIf=\"{\n type: currentModalType$ | async,\n show: showModal$ | async,\n valid: valid$ | async,\n disableInput: disableInput$ | async,\n validKey: validKey$ | async,\n disableDefaultSort: disableDefaultSort$ | async,\n showEnum: showEnum$ | async,\n isYesNo: isYesNo$ | async,\n showTagAmount: showTagAmount$ | async,\n params: params$ | async,\n } as modalObs\"\n [open]=\"modalObs.show\"\n size=\"sm\"\n (close)=\"closeModal()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n modalObs.type === 'create'\n ? ('listColumn.addButtonText' | translate)\n : ('listColumn.editColumnTitle' | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"modalContent; context: {modalObs: modalObs}\"></ng-container>\n </section>\n <ng-container *ngTemplateOutlet=\"modalFooter; context: {modalObs: modalObs}\"></ng-container>\n </cds-modal>\n</ng-template>\n\n<ng-template #modalContent let-modalObs=\"modalObs\">\n <form [formGroup]=\"formGroup\" class=\"list-column-form\">\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.titleTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.titleTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"title\" data-test-id=\"listColumnTitle\" />\n </cds-label>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.type === 'edit'\"\n [invalid]=\"modalObs.validKey === false\"\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]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input\n cdsText\n formControlName=\"key\"\n [invalid]=\"modalObs.validKey === false\"\n data-test-id=\"listColumnKey\"\n />\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.path' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.pathTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-value-path-selector\n formControlName=\"path\"\n [caseDefinitionKey]=\"modalObs.params?.caseDefinitionKey\"\n [caseDefinitionVersionTag]=\"modalObs.params?.caseDefinitionVersionTag\"\n data-test-id=\"listColumnValuePathSelector\"\n ></valtimo-value-path-selector>\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.displayType' | translate }}\n <v-tooltip-icon\n [tooltip]=\"'listColumn.displayTypeTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"displayType\"\n [disabled]=\"modalObs.disableInput\"\n (selected)=\"selectedDisplayType($event)\"\n data-test-id=\"listColumnDisplayType\"\n >\n <cds-dropdown-list [items]=\"(viewTypeItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showTagAmount\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.tagAmount' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.tagAmountTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-number\n formControlName=\"tagAmount\"\n [min]=\"1\"\n [step]=\"1\"\n data-test-id=\"listColumnTagAmount\"\n ></cds-number>\n </cds-label>\n\n <cds-label *ngIf=\"showDateFormat$ | async\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.dateFormat' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.dateFormatTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"dateFormat\" data-test-id=\"listColumnDateFormat\" />\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showEnum || modalObs.isYesNo\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{\n modalObs.isYesNo\n ? ('listColumn.enumTitleOptional' | translate)\n : ('listColumn.enumTitle' | translate)\n }}\n\n <v-tooltip-icon\n [tooltip]=\"\n modalObs.isYesNo\n ? ('listColumn.enumTooltipOptional' | translate)\n : ('listColumn.enumTooltip' | translate)\n \"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-carbon-multi-input\n *ngIf=\"(showModal$ | async) || (modalShowing$ | async)\"\n type=\"keyValue\"\n (valueChange)=\"enumValueChange($event)\"\n [defaultValues]=\"defaultEnumValues$ | async\"\n [hideAddButton]=\"modalObs.isYesNo\"\n [hideDeleteButton]=\"modalObs.isYesNo\"\n [maxRows]=\"modalObs.isYesNo ? 1 : null\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n data-test-id=\"listColumnMultiInput\"\n ></valtimo-carbon-multi-input>\n </cds-label>\n\n <cds-checkbox\n formControlName=\"sortable\"\n [disabled]=\"modalObs.showTagAmount || modalObs.disableInput\"\n data-test-id=\"listColumnSortableCheckbox\"\n >{{ 'listColumn.sortable' | translate }}\n </cds-checkbox>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n >\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.defaultSortTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.defaultSortTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"defaultSort\"\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n data-test-id=\"listColumnDefaultSort\"\n >\n <cds-dropdown-list [items]=\"(sortItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"displayExportButton\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.exportField' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.exportTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-toggle\n formControlName=\"exportable\"\n data-testid=\"export-selector-toggle\"\n [onText]=\"'listColumn.sortableYes' | translate\"\n [offText]=\"'listColumn.sortableNo' | translate\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n [required]=\"false\"\n [size]=\"'sm'\"\n data-test-id=\"listColumnExportable\"\n ></cds-toggle>\n </cds-label>\n </form>\n</ng-template>\n\n<ng-template #modalFooter let-modalObs=\"modalObs\">\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container>\n <button\n cdsButton=\"secondary\"\n [attr.modal-primary-focus]=\"true\"\n (click)=\"closeModal()\"\n [disabled]=\"modalObs.disableInput\"\n data-test-id=\"listColumnCancelButton\"\n >\n {{ 'listColumn.close' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n [attr.modal-primary-focus]=\"true\"\n [disabled]=\"modalObs.valid === false\"\n (click)=\"saveCaseListColumns()\"\n [disabled]=\"\n modalObs.disableInput || modalObs.valid === false || modalObs.validKey === false\n \"\n data-test-id=\"listColumnSaveButton\"\n >\n {{ 'listColumn.save' | translate }}\n </button>\n </ng-container>\n </cds-modal-footer>\n</ng-template>\n\n<ng-template #deleteModal>\n <valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteModal$\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n (confirmEvent)=\"deleteRowConfirmation($event)\"\n confirmButtonTextTranslationKey=\"listColumn.deleteColumn\"\n titleTranslationKey=\"listColumn.deleteColumn\"\n contentTranslationKey=\"listColumn.deleteColumnConfirmation\"\n data-test-id=\"listColumnConfirmationModal\"\n ></valtimo-confirmation-modal>\n</ng-template>\n\n<ng-template #viewToggle>\n <cds-tooltip [description]=\"'JSON editor'\">\n <button\n [cdsButton]=\"buttonTheme()\"\n data-test-id=\"listColumnSwitchView\"\n iconOnly=\"true\"\n (click)=\"switchView()\"\n >\n <svg cdsIcon=\"code\" size=\"16\"></svg>\n </button>\n </cds-tooltip>\n</ng-template>\n\n<ng-template #downloadButton let-obs=\"obs\">\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n (click)=\"onDownloadClick()\"\n [disabled]=\"\n !obs.downloadUrl ||\n !obs.downloadName ||\n obs.caseListColumn?.length < 1 ||\n obs.disableInput ||\n obs.loadingCaseListColumns\n \"\n data-test-id=\"listColumnDownloadButton\"\n >\n <svg cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: ["::ng-deep .tab-container{min-height:unset!important}::ng-deep .cds--inline-notification{max-width:100%}::ng-deep .cds--label{width:100%}.label-with-tooltip{display:flex;align-items:center}.display-type-dropdown{width:300px}.list-column-form{display:flex;flex-direction:column;gap:16px;margin-bottom:3rem}.select-label{padding-bottom:.5rem;width:250px}.center-link{display:flex;align-items:center}.case-list-columns__actions{display:flex;gap:8px}.list-columns__buttons{display:flex;gap:16px;flex-direction:row;justify-content:flex-end}\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"] }]
|
|
3051
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-list-columns', 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<ng-container\n *ngIf=\"{\n caseListColumn: translatedCaseListColumns$ | async,\n disableInput: disableInput$ | async,\n downloadName: downloadName$ | async,\n downloadUrl: downloadUrl$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n jsonEditorModel: jsonEditorModel$ | async,\n loadingCaseListColumns: loadingCaseListColumns$ | async,\n params: params$ | async,\n } as obs\"\n>\n <ng-container *ngTemplateOutlet=\"content; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"createEditModal\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"deleteModal\"></ng-container>\n</ng-container>\n\n<ng-template #content let-obs=\"obs\">\n @if (!jsonEditorActive()) {\n <valtimo-carbon-list\n [actionItems]=\"actionItems\"\n [loading]=\"obs.loadingCaseListColumns\"\n [items]=\"obs?.caseListColumn || []\"\n [fields]=\"fields\"\n [viewMode]=\"false\"\n [header]=\"false\"\n (rowClicked)=\"columnRowClicked($event)\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"obs.disableInput\"\n (itemsReordered)=\"onItemsReordered(obs.params.caseDefinitionKey, $event)\"\n [attr.data-test-id]=\"testIds.columnsList\"\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 } @else {\n <valtimo-json-editor\n [model]=\"obs.jsonEditorModel\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"248\"\n [showEditButton]=\"obs.hasEditPermissions\"\n (saveEvent)=\"updateCaseListColumns(obs.params.caseDefinitionKey, $event)\"\n [attr.data-test-id]=\"testIds.jsonEditor\"\n >\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n </valtimo-json-editor>\n }\n</ng-template>\n\n<ng-template #buttons let-obs=\"obs\">\n <ng-container *ngTemplateOutlet=\"viewToggle\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"downloadButton; context: {obs: obs}\"></ng-container>\n\n <button\n *ngIf=\"obs.hasEditPermissions\"\n (click)=\"openModal('create')\"\n cdsButton=\"primary\"\n [disabled]=\"obs.loadingCaseListColumns || !(hasEditPermissions$ | async)\"\n [attr.data-test-id]=\"testIds.addListColumn\"\n >\n {{ 'listColumn.addButtonText' | translate }}\n <svg class=\"cds--btn__icon\" cdsIcon=\"add\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #noConfigWarning>\n <div class=\"pl-2 pr-2 pb-2 pt-2\">\n <cds-notification\n [notificationObj]=\"{\n type: 'info',\n title: 'listColumn.noConfigWarningTitle' | translate,\n message: 'listColumn.noConfigWarning' | translate,\n showClose: false,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #createEditModal>\n <cds-modal\n valtimoCdsModal\n *ngIf=\"{\n type: currentModalType$ | async,\n show: showModal$ | async,\n valid: valid$ | async,\n disableInput: disableInput$ | async,\n validKey: validKey$ | async,\n disableDefaultSort: disableDefaultSort$ | async,\n showEnum: showEnum$ | async,\n isYesNo: isYesNo$ | async,\n showTagAmount: showTagAmount$ | async,\n params: params$ | async,\n } as modalObs\"\n [open]=\"modalObs.show\"\n size=\"sm\"\n (close)=\"closeModal()\"\n >\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\" [cdsLayer]=\"1\">\n <h3 cdsModalHeaderHeading>\n {{\n modalObs.type === 'create'\n ? ('listColumn.addButtonText' | translate)\n : ('listColumn.editColumnTitle' | translate)\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"modalContent; context: {modalObs: modalObs}\"></ng-container>\n </section>\n <ng-container *ngTemplateOutlet=\"modalFooter; context: {modalObs: modalObs}\"></ng-container>\n </cds-modal>\n</ng-template>\n\n<ng-template #modalContent let-modalObs=\"modalObs\">\n <form [formGroup]=\"formGroup\" class=\"list-column-form\">\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.titleTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.titleTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"title\" [attr.data-test-id]=\"testIds.title\" />\n </cds-label>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.type === 'edit'\"\n [invalid]=\"modalObs.validKey === false\"\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]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input\n cdsText\n formControlName=\"key\"\n [invalid]=\"modalObs.validKey === false\"\n [attr.data-test-id]=\"testIds.key\"\n />\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.path' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.pathTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-value-path-selector\n formControlName=\"path\"\n [caseDefinitionKey]=\"modalObs.params?.caseDefinitionKey\"\n [caseDefinitionVersionTag]=\"modalObs.params?.caseDefinitionVersionTag\"\n [attr.data-test-id]=\"testIds.valuePathSelector\"\n ></valtimo-value-path-selector>\n </cds-label>\n\n <cds-label [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.displayType' | translate }}\n <v-tooltip-icon\n [tooltip]=\"'listColumn.displayTypeTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"displayType\"\n [disabled]=\"modalObs.disableInput\"\n (selected)=\"selectedDisplayType($event)\"\n [attr.data-test-id]=\"testIds.displayType\"\n >\n <cds-dropdown-list [items]=\"(viewTypeItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showTagAmount\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.tagAmount' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.tagAmountTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-number\n formControlName=\"tagAmount\"\n [min]=\"1\"\n [step]=\"1\"\n [attr.data-test-id]=\"testIds.tagAmount\"\n ></cds-number>\n </cds-label>\n\n <cds-label *ngIf=\"showDateFormat$ | async\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip\">\n {{ 'listColumn.dateFormat' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.dateFormatTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <input cdsText formControlName=\"dateFormat\" [attr.data-test-id]=\"testIds.dateFormat\" />\n </cds-label>\n\n <cds-label *ngIf=\"modalObs.showEnum || modalObs.isYesNo\" [disabled]=\"modalObs.disableInput\">\n <span class=\"label-with-tooltip select-label\">\n {{\n modalObs.isYesNo\n ? ('listColumn.enumTitleOptional' | translate)\n : ('listColumn.enumTitle' | translate)\n }}\n\n <v-tooltip-icon\n [tooltip]=\"\n modalObs.isYesNo\n ? ('listColumn.enumTooltipOptional' | translate)\n : ('listColumn.enumTooltip' | translate)\n \"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <valtimo-carbon-multi-input\n *ngIf=\"(showModal$ | async) || (modalShowing$ | async)\"\n type=\"keyValue\"\n (valueChange)=\"enumValueChange($event)\"\n [defaultValues]=\"defaultEnumValues$ | async\"\n [hideAddButton]=\"modalObs.isYesNo\"\n [hideDeleteButton]=\"modalObs.isYesNo\"\n [maxRows]=\"modalObs.isYesNo ? 1 : null\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n [attr.data-test-id]=\"testIds.multiInput\"\n ></valtimo-carbon-multi-input>\n </cds-label>\n\n <cds-checkbox\n formControlName=\"sortable\"\n [disabled]=\"modalObs.showTagAmount || modalObs.disableInput\"\n [attr.data-test-id]=\"testIds.sortableCheckbox\"\n >{{ 'listColumn.sortable' | translate }}\n </cds-checkbox>\n\n <cds-label\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n >\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.defaultSortTitle' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.defaultSortTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-dropdown\n formControlName=\"defaultSort\"\n [disabled]=\"modalObs.disableInput || modalObs.disableDefaultSort || modalObs.showTagAmount\"\n [attr.data-test-id]=\"testIds.defaultSort\"\n >\n <cds-dropdown-list [items]=\"(sortItems$ | async) || []\"></cds-dropdown-list>\n </cds-dropdown>\n </cds-label>\n\n <cds-label *ngIf=\"displayExportButton\">\n <span class=\"label-with-tooltip select-label\">\n {{ 'listColumn.exportField' | translate }}\n\n <v-tooltip-icon\n [tooltip]=\"'listColumn.exportTooltip' | translate\"\n [disabled]=\"modalObs.disableInput\"\n ></v-tooltip-icon>\n </span>\n\n <cds-toggle\n formControlName=\"exportable\"\n data-testid=\"export-selector-toggle\"\n [onText]=\"'listColumn.sortableYes' | translate\"\n [offText]=\"'listColumn.sortableNo' | translate\"\n [keyColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.Yes' | translate)\"\n [valueColumnTitle]=\"modalObs.isYesNo && ('viewTypeConverter.No' | translate)\"\n [required]=\"false\"\n [size]=\"'sm'\"\n [attr.data-test-id]=\"testIds.exportable\"\n ></cds-toggle>\n </cds-label>\n </form>\n</ng-template>\n\n<ng-template #modalFooter let-modalObs=\"modalObs\">\n <cds-modal-footer [cdsLayer]=\"1\">\n <ng-container>\n <button\n cdsButton=\"secondary\"\n [attr.modal-primary-focus]=\"true\"\n (click)=\"closeModal()\"\n [disabled]=\"modalObs.disableInput\"\n [attr.data-test-id]=\"testIds.cancelButton\"\n >\n {{ 'listColumn.close' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n [attr.modal-primary-focus]=\"true\"\n [disabled]=\"modalObs.valid === false\"\n (click)=\"saveCaseListColumns()\"\n [disabled]=\"\n modalObs.disableInput || modalObs.valid === false || modalObs.validKey === false\n \"\n [attr.data-test-id]=\"testIds.saveButton\"\n >\n {{ 'listColumn.save' | translate }}\n </button>\n </ng-container>\n </cds-modal-footer>\n</ng-template>\n\n<ng-template #deleteModal>\n <valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteModal$\"\n [outputOnConfirm]=\"deleteRowKey$ | async\"\n (confirmEvent)=\"deleteRowConfirmation($event)\"\n confirmButtonTextTranslationKey=\"listColumn.deleteColumn\"\n titleTranslationKey=\"listColumn.deleteColumn\"\n contentTranslationKey=\"listColumn.deleteColumnConfirmation\"\n [attr.data-test-id]=\"testIds.confirmationModal\"\n ></valtimo-confirmation-modal>\n</ng-template>\n\n<ng-template #viewToggle>\n <cds-tooltip [description]=\"'JSON editor'\">\n <button\n [cdsButton]=\"buttonTheme()\"\n [attr.data-test-id]=\"testIds.switchView\"\n iconOnly=\"true\"\n (click)=\"switchView()\"\n >\n <svg cdsIcon=\"code\" size=\"16\"></svg>\n </button>\n </cds-tooltip>\n</ng-template>\n\n<ng-template #downloadButton let-obs=\"obs\">\n <button\n cdsButton=\"ghost\"\n iconOnly=\"true\"\n (click)=\"onDownloadClick()\"\n [disabled]=\"\n !obs.downloadUrl ||\n !obs.downloadName ||\n obs.caseListColumn?.length < 1 ||\n obs.disableInput ||\n obs.loadingCaseListColumns\n \"\n [attr.data-test-id]=\"testIds.downloadButton\"\n >\n <svg cdsIcon=\"download\" size=\"16\"></svg>\n </button>\n</ng-template>\n", styles: ["::ng-deep .tab-container{min-height:unset!important}::ng-deep .cds--inline-notification{max-width:100%}::ng-deep .cds--label{width:100%}.label-with-tooltip{display:flex;align-items:center}.display-type-dropdown{width:300px}.list-column-form{display:flex;flex-direction:column;gap:16px;margin-bottom:3rem}.select-label{padding-bottom:.5rem;width:250px}.center-link{display:flex;align-items:center}.case-list-columns__actions{display:flex;gap:8px}.list-columns__buttons{display:flex;gap:16px;flex-direction:row;justify-content:flex-end}\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"] }]
|
|
2953
3052
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }, { type: i3.TranslateService }, { type: i2.IconService }, { type: i3$1.EditPermissionsService }] });
|
|
2954
3053
|
|
|
2955
3054
|
/*
|
|
@@ -2984,10 +3083,10 @@ class CaseManagementCaseListComponent {
|
|
|
2984
3083
|
switchTab(tab) {
|
|
2985
3084
|
this.currentTab$.next(tab);
|
|
2986
3085
|
}
|
|
2987
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2988
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
3086
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCaseListComponent, deps: [{ token: i3$1.DraftVersionService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3087
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementCaseListComponent, isStandalone: false, selector: "ng-component", 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@if (currentTab$ | async; as currentTab) {\n <valtimo-case-management-draft-warning\n *ngIf=\"isDraftVersion$ | async\"\n [name]=\"DRAFT_WARNING_MESSAGE[currentTab] | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n\n <cds-tabs class=\"case-management-tabs\" type=\"contained\">\n <cds-tab\n [active]=\"currentTab === TabEnum.LIST\"\n [heading]=\"'caseManagement.tabs.caseListTab.columns' | translate\"\n [id]=\"'caseManagementListColumns'\"\n (selected)=\"switchTab(TabEnum.LIST)\"\n >\n <valtimo-case-management-list-columns\n *ngIf=\"currentTab === TabEnum.LIST\"\n ></valtimo-case-management-list-columns>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.SEARCH\"\n [heading]=\"'caseManagement.tabs.caseListTab.searchFields' | translate\"\n [id]=\"'caseManagementListSearchFields'\"\n (selected)=\"switchTab(TabEnum.SEARCH)\"\n >\n <valtimo-case-management-search-fields\n *ngIf=\"currentTab === TabEnum.SEARCH\"\n ></valtimo-case-management-search-fields>\n </cds-tab>\n </cds-tabs>\n}\n", styles: [":host ::ng-deep .cds--tab-content{margin: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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i2.Tab, selector: "cds-tab, ibm-tab", inputs: ["heading", "title", "context", "active", "disabled", "tabIndex", "id", "cacheActive", "tabContent", "templateContext"], outputs: ["selected"] }, { kind: "component", type: CaseManagementDraftWarningComponent, selector: "valtimo-case-management-draft-warning", inputs: ["name"] }, { kind: "component", type: CaseManagementSearchFieldsComponent, selector: "valtimo-case-management-search-fields" }, { kind: "component", type: CaseManagementListColumnsComponent, selector: "valtimo-case-management-list-columns" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2989
3088
|
}
|
|
2990
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3089
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCaseListComponent, decorators: [{
|
|
2991
3090
|
type: Component,
|
|
2992
3091
|
args: [{ standalone: false, changeDetection: ChangeDetectionStrategy.OnPush, 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@if (currentTab$ | async; as currentTab) {\n <valtimo-case-management-draft-warning\n *ngIf=\"isDraftVersion$ | async\"\n [name]=\"DRAFT_WARNING_MESSAGE[currentTab] | translate | lowercase\"\n ></valtimo-case-management-draft-warning>\n\n <cds-tabs class=\"case-management-tabs\" type=\"contained\">\n <cds-tab\n [active]=\"currentTab === TabEnum.LIST\"\n [heading]=\"'caseManagement.tabs.caseListTab.columns' | translate\"\n [id]=\"'caseManagementListColumns'\"\n (selected)=\"switchTab(TabEnum.LIST)\"\n >\n <valtimo-case-management-list-columns\n *ngIf=\"currentTab === TabEnum.LIST\"\n ></valtimo-case-management-list-columns>\n </cds-tab>\n\n <cds-tab\n [active]=\"currentTab === TabEnum.SEARCH\"\n [heading]=\"'caseManagement.tabs.caseListTab.searchFields' | translate\"\n [id]=\"'caseManagementListSearchFields'\"\n (selected)=\"switchTab(TabEnum.SEARCH)\"\n >\n <valtimo-case-management-search-fields\n *ngIf=\"currentTab === TabEnum.SEARCH\"\n ></valtimo-case-management-search-fields>\n </cds-tab>\n </cds-tabs>\n}\n", styles: [":host ::ng-deep .cds--tab-content{margin: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"] }]
|
|
2993
3092
|
}], ctorParameters: () => [{ type: i3$1.DraftVersionService }, { type: i2$1.ActivatedRoute }] });
|
|
@@ -3084,10 +3183,10 @@ class CaseManagementCreateDraftVersionComponent {
|
|
|
3084
3183
|
caseDefinitionVersionTag: params?.caseDefinitionVersionTag,
|
|
3085
3184
|
})));
|
|
3086
3185
|
}
|
|
3087
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3088
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
3186
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCreateDraftVersionComponent, deps: [{ token: i1$4.FormBuilder }, { token: i2.IconService }, { token: i3.TranslateService }, { token: i2$1.ActivatedRoute }, { token: CaseManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3187
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementCreateDraftVersionComponent, isStandalone: false, selector: "valtimo-case-management-create-draft-version", inputs: { open: "open", caseDefinitionPayload: "caseDefinitionPayload" }, outputs: { closeModal: "closeModal" }, 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<cds-modal\n *ngIf=\"{\n versionError: versionError$ | async,\n createDraftDescription: createDraftDescription$ | async,\n } as obs\"\n valtimoCdsModal\n showFooter=\"true\"\n class=\"valtimo-definition-create\"\n [open]=\"open\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.createDefinition.modalTitle' | translate }}\n </h3>\n </cds-modal-header>\n\n <div cdsModalContent [cdsLayer]=\"1\">\n <p class=\"valtimo-definition-create__description\">{{ obs.createDraftDescription }}</p>\n\n <form [formGroup]=\"draftVersionForm\" class=\"valtimo-definition-create__content\">\n <cds-label>\n {{ 'caseManagement.createDefinition.name' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.nameTooltip' | translate\"\n >\n <svg cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"name\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.namePlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n [attr.modal-primary-focus]=\"true\"\n />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.createDefinition.key' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.keyTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"caseDefinitionKey\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.versionPlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n />\n </cds-label>\n\n <cds-label [invalid]=\"!!obs.versionError\" [invalidText]=\"obs.versionError | translate\">\n {{ 'caseManagement.createDefinition.version' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.versionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"caseDefinitionVersion\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.versionPlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n [invalid]=\"!!obs.versionError\"\n />\n </cds-label>\n\n <cds-textarea-label>\n {{ 'caseManagement.createDefinition.description' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.descriptionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <textarea\n cdsTextArea\n formControlName=\"description\"\n placeholder=\"{{ 'caseManagement.createDefinition.descriptionPlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n [rows]=\"3\"\n [cols]=\"150\"\n ></textarea>\n </cds-textarea-label>\n </form>\n </div>\n\n <cds-modal-footer>\n <button cdsButton=\"secondary\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"draftVersionForm.invalid\" (click)=\"onCloseModal(true)\">\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-definition-create__content{display:flex;flex-direction:column;gap:16px}.valtimo-definition-create__name{width:100%;display:flex;gap:8px}.valtimo-definition-create__description{margin-bottom:16px}:host ::ng-deep .cds--label{display:flex;align-items:center;gap:12px}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: i2.TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textAreaTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "fluid"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i2.TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: ["theme", "invalid", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3089
3188
|
}
|
|
3090
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3189
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCreateDraftVersionComponent, decorators: [{
|
|
3091
3190
|
type: Component,
|
|
3092
3191
|
args: [{ standalone: false, selector: 'valtimo-case-management-create-draft-version', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n *ngIf=\"{\n versionError: versionError$ | async,\n createDraftDescription: createDraftDescription$ | async,\n } as obs\"\n valtimoCdsModal\n showFooter=\"true\"\n class=\"valtimo-definition-create\"\n [open]=\"open\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.createDefinition.modalTitle' | translate }}\n </h3>\n </cds-modal-header>\n\n <div cdsModalContent [cdsLayer]=\"1\">\n <p class=\"valtimo-definition-create__description\">{{ obs.createDraftDescription }}</p>\n\n <form [formGroup]=\"draftVersionForm\" class=\"valtimo-definition-create__content\">\n <cds-label>\n {{ 'caseManagement.createDefinition.name' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.nameTooltip' | translate\"\n >\n <svg cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"name\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.namePlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n [attr.modal-primary-focus]=\"true\"\n />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.createDefinition.key' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.keyTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"caseDefinitionKey\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.versionPlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n />\n </cds-label>\n\n <cds-label [invalid]=\"!!obs.versionError\" [invalidText]=\"obs.versionError | translate\">\n {{ 'caseManagement.createDefinition.version' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.versionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"caseDefinitionVersion\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.versionPlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n [invalid]=\"!!obs.versionError\"\n />\n </cds-label>\n\n <cds-textarea-label>\n {{ 'caseManagement.createDefinition.description' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.descriptionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <textarea\n cdsTextArea\n formControlName=\"description\"\n placeholder=\"{{ 'caseManagement.createDefinition.descriptionPlaceholder' | translate }}\"\n [cdsLayer]=\"1\"\n [rows]=\"3\"\n [cols]=\"150\"\n ></textarea>\n </cds-textarea-label>\n </form>\n </div>\n\n <cds-modal-footer>\n <button cdsButton=\"secondary\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button cdsButton=\"primary\" [disabled]=\"draftVersionForm.invalid\" (click)=\"onCloseModal(true)\">\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-definition-create__content{display:flex;flex-direction:column;gap:16px}.valtimo-definition-create__name{width:100%;display:flex;gap:8px}.valtimo-definition-create__description{margin-bottom:16px}:host ::ng-deep .cds--label{display:flex;align-items:center;gap:12px}\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"] }]
|
|
3093
3192
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: i3.TranslateService }, { type: i2$1.ActivatedRoute }, { type: CaseManagementService }], propDecorators: { open: [{
|
|
@@ -3106,7 +3205,7 @@ class CaseManagementDeploymentComponent {
|
|
|
3106
3205
|
this.translateService.stream('key'),
|
|
3107
3206
|
]).pipe(switchMap(([caseDefinitionKey, caseDefinitionVersionTag]) => this.translateService.get(translationKey, { caseDefinitionKey, caseDefinitionVersionTag })));
|
|
3108
3207
|
}
|
|
3109
|
-
constructor(breadcrumbService, caseManagementService, datePipe, environmentService, iconService, location, notificationService, route, router, translateService) {
|
|
3208
|
+
constructor(breadcrumbService, caseManagementService, datePipe, environmentService, iconService, location, notificationService, route, router, sseService, translateService) {
|
|
3110
3209
|
this.breadcrumbService = breadcrumbService;
|
|
3111
3210
|
this.caseManagementService = caseManagementService;
|
|
3112
3211
|
this.datePipe = datePipe;
|
|
@@ -3116,6 +3215,7 @@ class CaseManagementDeploymentComponent {
|
|
|
3116
3215
|
this.notificationService = notificationService;
|
|
3117
3216
|
this.route = route;
|
|
3118
3217
|
this.router = router;
|
|
3218
|
+
this.sseService = sseService;
|
|
3119
3219
|
this.translateService = translateService;
|
|
3120
3220
|
this.caseDefinitionVersions = [];
|
|
3121
3221
|
this.hasConflictingVersions$ = new BehaviorSubject(false);
|
|
@@ -3123,6 +3223,8 @@ class CaseManagementDeploymentComponent {
|
|
|
3123
3223
|
this.showFinalizeDraftConfirmationModal$ = new BehaviorSubject(false);
|
|
3124
3224
|
this.showCreateDraftVersionConfirmationModal$ = new BehaviorSubject(false);
|
|
3125
3225
|
this.refreshDraftVersion$ = new BehaviorSubject(null);
|
|
3226
|
+
this._refreshFinalizationCheck$ = new BehaviorSubject(null);
|
|
3227
|
+
this._subscriptions = new Subscription();
|
|
3126
3228
|
this.params$ = this.route.params.pipe(map(({ caseDefinitionKey, caseDefinitionVersionTag }) => ({
|
|
3127
3229
|
caseDefinitionKey: caseDefinitionKey,
|
|
3128
3230
|
caseDefinitionVersionTag: caseDefinitionVersionTag,
|
|
@@ -3131,16 +3233,18 @@ class CaseManagementDeploymentComponent {
|
|
|
3131
3233
|
this.caseDefinitionVersionTag$ = this.params$.pipe(map(params => params.caseDefinitionVersionTag || ''));
|
|
3132
3234
|
this.canUpdateGlobalConfiguration$ = this.environmentService.canUpdateGlobalConfiguration();
|
|
3133
3235
|
this.finalizeDraftDescription$ = this.getDraftDescription$('caseManagement.deployment.finalizeDraftConfirmationModal.description');
|
|
3134
|
-
this.globalActiveCase$ = this.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.caseManagementService
|
|
3236
|
+
this.globalActiveCase$ = this.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.caseManagementService
|
|
3237
|
+
.getGlobalActiveCase(caseDefinitionKey)
|
|
3238
|
+
.pipe(catchError(() => of(null)))));
|
|
3135
3239
|
this.isGloballyActive$ = combineLatest([
|
|
3136
3240
|
this.globalActiveCase$,
|
|
3137
3241
|
this.caseDefinitionKey$,
|
|
3138
3242
|
this.caseDefinitionVersionTag$,
|
|
3139
3243
|
]).pipe(map(([globalActiveCase, caseDefinitionKey, caseDefinitionVersionTag]) => {
|
|
3140
|
-
return (globalActiveCase
|
|
3141
|
-
globalActiveCase
|
|
3244
|
+
return (globalActiveCase?.caseDefinitionKey === caseDefinitionKey &&
|
|
3245
|
+
globalActiveCase?.caseDefinitionVersionTag === caseDefinitionVersionTag);
|
|
3142
3246
|
}));
|
|
3143
|
-
this._caseDefinitionTitle$ = this.globalActiveCase$.pipe(map(result => result
|
|
3247
|
+
this._caseDefinitionTitle$ = this.globalActiveCase$.pipe(map(result => result?.name ?? ''));
|
|
3144
3248
|
this.caseDefinition$ = combineLatest([
|
|
3145
3249
|
this.caseDefinitionKey$,
|
|
3146
3250
|
this.caseDefinitionVersionTag$,
|
|
@@ -3184,12 +3288,17 @@ class CaseManagementDeploymentComponent {
|
|
|
3184
3288
|
}));
|
|
3185
3289
|
this._deploymentNotificationObject$ = new BehaviorSubject(null);
|
|
3186
3290
|
this.deploymentNotificationObject$ = this._deploymentNotificationObject$.asObservable();
|
|
3187
|
-
this.caseDefinitionFinalizationCheckResult$ = combineLatest([
|
|
3291
|
+
this.caseDefinitionFinalizationCheckResult$ = combineLatest([
|
|
3292
|
+
this.caseDefinitionKey$,
|
|
3293
|
+
this.caseDefinitionVersionTag$,
|
|
3294
|
+
this._refreshFinalizationCheck$,
|
|
3295
|
+
]).pipe(switchMap(([caseDefinitionKey, caseDefinitionVersionTag]) => this.caseManagementService.getCaseDefinitionFinalizationCheck(caseDefinitionKey, caseDefinitionVersionTag)), switchMap(res => this.translateService.stream('key').pipe(tap$1(() => {
|
|
3188
3296
|
switch (res.code) {
|
|
3189
3297
|
case 'OK':
|
|
3190
3298
|
this._deploymentNotificationObject$.next(null);
|
|
3191
3299
|
break;
|
|
3192
3300
|
case 'BUILDING_BLOCK_NOT_FINAL':
|
|
3301
|
+
case 'CONFIGURATION_ISSUES':
|
|
3193
3302
|
this._deploymentNotificationObject$.next({
|
|
3194
3303
|
type: 'warning',
|
|
3195
3304
|
title: this.translateService.instant('caseManagement.deployment.notFinalizableWarning.title'),
|
|
@@ -3208,6 +3317,15 @@ class CaseManagementDeploymentComponent {
|
|
|
3208
3317
|
this.caseDefinitionVersions$.pipe(take(1)).subscribe(versions => {
|
|
3209
3318
|
this.caseDefinitionVersions = versions || [];
|
|
3210
3319
|
});
|
|
3320
|
+
this._subscriptions.add(this.sseService
|
|
3321
|
+
.getSseEventObservable('CONFIGURATION_ISSUE_UPDATED')
|
|
3322
|
+
.pipe(withLatestFrom(this.caseDefinitionKey$), filter(([event, key]) => event.caseDefinitionKey === key))
|
|
3323
|
+
.subscribe(() => {
|
|
3324
|
+
this._refreshFinalizationCheck$.next(null);
|
|
3325
|
+
}));
|
|
3326
|
+
}
|
|
3327
|
+
ngOnDestroy() {
|
|
3328
|
+
this._subscriptions.unsubscribe();
|
|
3211
3329
|
}
|
|
3212
3330
|
ngAfterViewInit() {
|
|
3213
3331
|
this.initBreadcrumbs();
|
|
@@ -3331,7 +3449,7 @@ class CaseManagementDeploymentComponent {
|
|
|
3331
3449
|
this.showCreateDraftVersionConfirmationModal$.next(false);
|
|
3332
3450
|
}
|
|
3333
3451
|
initBreadcrumbs() {
|
|
3334
|
-
combineLatest([this.params$, this._caseDefinitionTitle$])
|
|
3452
|
+
this._subscriptions.add(combineLatest([this.params$, this._caseDefinitionTitle$])
|
|
3335
3453
|
.pipe(tap$1(([{ caseDefinitionKey, caseDefinitionVersionTag }, caseDefinitionTitle]) => {
|
|
3336
3454
|
const route = `/case-management/case/${caseDefinitionKey}/version/${caseDefinitionVersionTag}`;
|
|
3337
3455
|
this.breadcrumbService.setThirdBreadcrumb({
|
|
@@ -3340,7 +3458,7 @@ class CaseManagementDeploymentComponent {
|
|
|
3340
3458
|
href: route,
|
|
3341
3459
|
});
|
|
3342
3460
|
}))
|
|
3343
|
-
.subscribe();
|
|
3461
|
+
.subscribe());
|
|
3344
3462
|
}
|
|
3345
3463
|
closeCurrentNotification() {
|
|
3346
3464
|
if (this._currentNotification) {
|
|
@@ -3373,13 +3491,13 @@ class CaseManagementDeploymentComponent {
|
|
|
3373
3491
|
duration: 5000,
|
|
3374
3492
|
});
|
|
3375
3493
|
}
|
|
3376
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3377
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.19", type: CaseManagementDeploymentComponent, isStandalone: false, selector: "ng-component", viewQueries: [{ propertyName: "_createDraftMessageTemplateRef", first: true, predicate: ["createDraftMessage"], descendants: true }, { propertyName: "_finalizeDraftMessageTemplateRef", first: true, predicate: ["finalizeDraftMessage"], descendants: true }, { propertyName: "_deleteDraftMessageTemplateRef", first: true, predicate: ["deleteDraftMessage"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2026 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<ng-container\n *ngIf=\"{\n releaseVersionEntries: releaseVersionEntries$ | async,\n releaseInformationDataEntries: releaseInformationDataEntries$ | async,\n isDraftVersion: isDraftVersion$ | async,\n hasConflictingVersions: hasConflictingVersions$ | async,\n notificationContent: notificationContent$ | async,\n canUpdateGlobalConfiguration: canUpdateGlobalConfiguration$ | async,\n isGloballyActive: isGloballyActive$ | async,\n caseDefinitionFinalizationCheckResult: caseDefinitionFinalizationCheckResult$ | async,\n deploymentNotificationObject: deploymentNotificationObject$ | async,\n } as obs\"\n>\n <cds-notification\n *ngIf=\"\n obs.canUpdateGlobalConfiguration && obs.isDraftVersion && obs.deploymentNotificationObject\n \"\n class=\"deployment-warning-notification\"\n [notificationObj]=\"obs.deploymentNotificationObject\"\n ></cds-notification>\n\n <div class=\"header-buttons\">\n <button cdsButton=\"secondary\" (click)=\"goBack()\">\n {{ 'caseManagement.deployment.buttons.back' | translate }}\n <svg cdsIcon=\"return\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n @if (obs.canUpdateGlobalConfiguration) {\n @if (obs.isDraftVersion) {\n <div class=\"draft-buttons\">\n <button\n *ngIf=\"caseDefinitionVersions.length === 1 || !obs.isGloballyActive\"\n cdsButton=\"danger\"\n (click)=\"openDeleteDraftModal()\"\n >\n {{ 'caseManagement.deployment.buttons.delete' | translate }}\n <svg cdsIcon=\"trash-can\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button\n cdsButton=\"primary\"\n (click)=\"openFinalizeDraftConfirmationModal()\"\n [disabled]=\"!obs?.caseDefinitionFinalizationCheckResult?.finalizable\"\n >\n {{ 'caseManagement.deployment.buttons.finalize' | translate }}\n <svg cdsIcon=\"save\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </div>\n } @else {\n <button cdsButton=\"primary\" (click)=\"openCreateDraftVersionConfirmationModal()\">\n {{ 'caseManagement.deployment.buttons.createDraft' | translate }}\n <svg cdsIcon=\"save\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n }\n }\n </div>\n\n <div class=\"deployment-panels\">\n <ng-container\n *ngTemplateOutlet=\"\n releaseVersionPanel;\n context: {\n data: obs.releaseVersionEntries,\n showNotification: obs.hasConflictingVersions,\n notificationContent: {\n basedOnVersionTag: obs.notificationContent?.basedOnVersionTag,\n conflictingVersions: obs.notificationContent?.conflictingVersions,\n },\n }\n \"\n ></ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n releaseInformationPanel;\n context: {data: obs.releaseInformationDataEntries}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template\n #releaseVersionPanel\n let-data=\"data\"\n let-showNotification=\"showNotification\"\n let-notificationContent=\"notificationContent\"\n>\n <div class=\"release-version\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.releaseVersion.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <div *ngFor=\"let entry of data\" class=\"release-version-data\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.releaseVersion.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </div>\n\n <cds-notification\n *ngIf=\"showNotification\"\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: ('caseManagement.deployment.releaseVersion.warning.title' | translate),\n message:\n ('caseManagement.deployment.releaseVersion.warning.description'\n | translate: notificationContent),\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #releaseInformationPanel let-data=\"data\">\n <div class=\"release-information\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.releaseInformation.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <ng-container *ngFor=\"let entry of data\">\n <div class=\"release-version-data\" *ngIf=\"entry?.key && entry?.value !== undefined\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.releaseInformation.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteDraftConfirmationModal$\"\n (confirmEvent)=\"deleteDraftCaseVersion()\"\n (cancelEvent)=\"closeDeleteDraftModal()\"\n cancelButtonType=\"ghost\"\n confirmButtonType=\"danger\"\n confirmButtonTextTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.confirm\"\n cancelButtonTextTranslationKey=\"interface.cancel\"\n titleTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.title\"\n contentTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.description\"\n>\n</valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showFinalizeDraftConfirmationModal$\"\n [content]=\"finalizeDraftDescription$ | async\"\n (confirmEvent)=\"finalizeDraftCaseVersion()\"\n (cancelEvent)=\"closeFinalizeDraftModal()\"\n cancelButtonType=\"ghost\"\n confirmButtonType=\"primary\"\n confirmButtonTextTranslationKey=\"caseManagement.deployment.finalizeDraftConfirmationModal.confirm\"\n cancelButtonTextTranslationKey=\"interface.cancel\"\n titleTranslationKey=\"caseManagement.deployment.finalizeDraftConfirmationModal.title\"\n></valtimo-confirmation-modal>\n\n<valtimo-case-management-create-draft-version\n [open]=\"showCreateDraftVersionConfirmationModal$ | async\"\n [caseDefinitionPayload]=\"caseDefinitionPayload$ | async\"\n (closeModal)=\"onCloseCreateDraftVersionModal($event)\"\n></valtimo-case-management-create-draft-version>\n\n<ng-template #loadingMessage let-translationKey=\"translationKey\">\n <div>\n <span class=\"cds--inline-notification__title\">\n {{ translationKey | translate }}\n </span>\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #createDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.createDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template #finalizeDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.finalizeDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template #deleteDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.finalizeDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n", styles: [".header-buttons{display:flex;justify-content:space-between;width:100%;margin-bottom:24px}.draft-buttons{display:flex;gap:16px}.deployment-panels{display:flex;gap:16px;flex-wrap:wrap}.deployment-panels>div{flex:1 1 300px;background-color:#fff;padding:24px}.deployment-panel-title{font-weight:600;font-size:16px;line-height:24px;margin-bottom:16px}.full-width-notification{max-inline-size:100%;min-inline-size:100%}.release-version-columns{display:flex;width:100%;margin-bottom:16px;gap:16px;flex-wrap:wrap}.release-version-data{flex:1 1 300px;padding:1rem;box-sizing:border-box}.release-version-data__label{font-size:12px;margin-bottom:16px;color:var(--cds-text-secondary)}.release-version-data__value{color:var(--cds-text-primary);padding:16px;border-bottom:1px solid var(--cds-border-subtle-01);font-size:14px}::ng-deep .cds--inline-notification__title{width:100%}.deployment-warning-notification{min-width:100%;margin-bottom:16px}\n/*!\n * Copyright 2015-2026 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: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: CaseManagementCreateDraftVersionComponent, selector: "valtimo-case-management-create-draft-version", inputs: ["open", "caseDefinitionPayload"], outputs: ["closeModal"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
3494
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDeploymentComponent, deps: [{ token: i7.BreadcrumbService }, { token: CaseManagementService }, { token: i6.DatePipe }, { token: i3$1.EnvironmentService }, { token: i2.IconService }, { token: i6.Location }, { token: i3$1.GlobalNotificationService }, { token: i2$1.ActivatedRoute }, { token: i2$1.Router }, { token: i7$1.SseService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3495
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementDeploymentComponent, isStandalone: false, selector: "ng-component", viewQueries: [{ propertyName: "_createDraftMessageTemplateRef", first: true, predicate: ["createDraftMessage"], descendants: true }, { propertyName: "_finalizeDraftMessageTemplateRef", first: true, predicate: ["finalizeDraftMessage"], descendants: true }, { propertyName: "_deleteDraftMessageTemplateRef", first: true, predicate: ["deleteDraftMessage"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2026 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<ng-container\n *ngIf=\"{\n releaseVersionEntries: releaseVersionEntries$ | async,\n releaseInformationDataEntries: releaseInformationDataEntries$ | async,\n isDraftVersion: isDraftVersion$ | async,\n hasConflictingVersions: hasConflictingVersions$ | async,\n notificationContent: notificationContent$ | async,\n canUpdateGlobalConfiguration: canUpdateGlobalConfiguration$ | async,\n isGloballyActive: isGloballyActive$ | async,\n caseDefinitionFinalizationCheckResult: caseDefinitionFinalizationCheckResult$ | async,\n deploymentNotificationObject: deploymentNotificationObject$ | async,\n } as obs\"\n>\n <cds-notification\n *ngIf=\"\n obs.canUpdateGlobalConfiguration && obs.isDraftVersion && obs.deploymentNotificationObject\n \"\n class=\"deployment-warning-notification\"\n [notificationObj]=\"obs.deploymentNotificationObject\"\n ></cds-notification>\n\n <div class=\"header-buttons\">\n <button cdsButton=\"secondary\" (click)=\"goBack()\">\n {{ 'caseManagement.deployment.buttons.back' | translate }}\n <svg cdsIcon=\"return\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n @if (obs.canUpdateGlobalConfiguration) {\n @if (obs.isDraftVersion) {\n <div class=\"draft-buttons\">\n <button\n *ngIf=\"caseDefinitionVersions.length === 1 || !obs.isGloballyActive\"\n cdsButton=\"danger\"\n (click)=\"openDeleteDraftModal()\"\n >\n {{ 'caseManagement.deployment.buttons.delete' | translate }}\n <svg cdsIcon=\"trash-can\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button\n cdsButton=\"primary\"\n (click)=\"openFinalizeDraftConfirmationModal()\"\n [disabled]=\"!obs?.caseDefinitionFinalizationCheckResult?.finalizable\"\n >\n {{ 'caseManagement.deployment.buttons.finalize' | translate }}\n <svg cdsIcon=\"save\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </div>\n } @else {\n <button cdsButton=\"primary\" (click)=\"openCreateDraftVersionConfirmationModal()\">\n {{ 'caseManagement.deployment.buttons.createDraft' | translate }}\n <svg cdsIcon=\"save\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n }\n }\n </div>\n\n <div class=\"deployment-panels\">\n <ng-container\n *ngTemplateOutlet=\"\n releaseVersionPanel;\n context: {\n data: obs.releaseVersionEntries,\n showNotification: obs.hasConflictingVersions,\n notificationContent: {\n basedOnVersionTag: obs.notificationContent?.basedOnVersionTag,\n conflictingVersions: obs.notificationContent?.conflictingVersions,\n },\n }\n \"\n ></ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n releaseInformationPanel;\n context: {data: obs.releaseInformationDataEntries}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template\n #releaseVersionPanel\n let-data=\"data\"\n let-showNotification=\"showNotification\"\n let-notificationContent=\"notificationContent\"\n>\n <div class=\"release-version\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.releaseVersion.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <div *ngFor=\"let entry of data\" class=\"release-version-data\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.releaseVersion.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </div>\n\n <cds-notification\n *ngIf=\"showNotification\"\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: ('caseManagement.deployment.releaseVersion.warning.title' | translate),\n message:\n ('caseManagement.deployment.releaseVersion.warning.description'\n | translate: notificationContent),\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #releaseInformationPanel let-data=\"data\">\n <div class=\"release-information\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.releaseInformation.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <ng-container *ngFor=\"let entry of data\">\n <div class=\"release-version-data\" *ngIf=\"entry?.key && entry?.value !== undefined\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.releaseInformation.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteDraftConfirmationModal$\"\n (confirmEvent)=\"deleteDraftCaseVersion()\"\n (cancelEvent)=\"closeDeleteDraftModal()\"\n cancelButtonType=\"ghost\"\n confirmButtonType=\"danger\"\n confirmButtonTextTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.confirm\"\n cancelButtonTextTranslationKey=\"interface.cancel\"\n titleTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.title\"\n contentTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.description\"\n>\n</valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showFinalizeDraftConfirmationModal$\"\n [content]=\"finalizeDraftDescription$ | async\"\n (confirmEvent)=\"finalizeDraftCaseVersion()\"\n (cancelEvent)=\"closeFinalizeDraftModal()\"\n cancelButtonType=\"ghost\"\n confirmButtonType=\"primary\"\n confirmButtonTextTranslationKey=\"caseManagement.deployment.finalizeDraftConfirmationModal.confirm\"\n cancelButtonTextTranslationKey=\"interface.cancel\"\n titleTranslationKey=\"caseManagement.deployment.finalizeDraftConfirmationModal.title\"\n></valtimo-confirmation-modal>\n\n<valtimo-case-management-create-draft-version\n [open]=\"showCreateDraftVersionConfirmationModal$ | async\"\n [caseDefinitionPayload]=\"caseDefinitionPayload$ | async\"\n (closeModal)=\"onCloseCreateDraftVersionModal($event)\"\n></valtimo-case-management-create-draft-version>\n\n<ng-template #loadingMessage let-translationKey=\"translationKey\">\n <div>\n <span class=\"cds--inline-notification__title\">\n {{ translationKey | translate }}\n </span>\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #createDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.createDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template #finalizeDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.finalizeDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template #deleteDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.finalizeDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n", styles: [".header-buttons{display:flex;justify-content:space-between;width:100%;margin-bottom:24px}.draft-buttons{display:flex;gap:16px}.deployment-panels{display:flex;gap:16px;flex-wrap:wrap}.deployment-panels>div{flex:1 1 300px;background-color:#fff;padding:24px}.deployment-panel-title{font-weight:600;font-size:16px;line-height:24px;margin-bottom:16px}.full-width-notification{max-inline-size:100%;min-inline-size:100%}.release-version-columns{display:flex;width:100%;margin-bottom:16px;gap:16px;flex-wrap:wrap}.release-version-data{flex:1 1 300px;padding:1rem;box-sizing:border-box}.release-version-data__label{font-size:12px;margin-bottom:16px;color:var(--cds-text-secondary)}.release-version-data__value{color:var(--cds-text-primary);padding:16px;border-bottom:1px solid var(--cds-border-subtle-01);font-size:14px}::ng-deep .cds--inline-notification__title{width:100%}.deployment-warning-notification{min-width:100%;margin-bottom:16px}\n/*!\n * Copyright 2015-2026 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: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: CaseManagementCreateDraftVersionComponent, selector: "valtimo-case-management-create-draft-version", inputs: ["open", "caseDefinitionPayload"], outputs: ["closeModal"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
3378
3496
|
}
|
|
3379
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3497
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDeploymentComponent, decorators: [{
|
|
3380
3498
|
type: Component,
|
|
3381
3499
|
args: [{ standalone: false, template: "<!--\n ~ Copyright 2015-2026 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<ng-container\n *ngIf=\"{\n releaseVersionEntries: releaseVersionEntries$ | async,\n releaseInformationDataEntries: releaseInformationDataEntries$ | async,\n isDraftVersion: isDraftVersion$ | async,\n hasConflictingVersions: hasConflictingVersions$ | async,\n notificationContent: notificationContent$ | async,\n canUpdateGlobalConfiguration: canUpdateGlobalConfiguration$ | async,\n isGloballyActive: isGloballyActive$ | async,\n caseDefinitionFinalizationCheckResult: caseDefinitionFinalizationCheckResult$ | async,\n deploymentNotificationObject: deploymentNotificationObject$ | async,\n } as obs\"\n>\n <cds-notification\n *ngIf=\"\n obs.canUpdateGlobalConfiguration && obs.isDraftVersion && obs.deploymentNotificationObject\n \"\n class=\"deployment-warning-notification\"\n [notificationObj]=\"obs.deploymentNotificationObject\"\n ></cds-notification>\n\n <div class=\"header-buttons\">\n <button cdsButton=\"secondary\" (click)=\"goBack()\">\n {{ 'caseManagement.deployment.buttons.back' | translate }}\n <svg cdsIcon=\"return\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n @if (obs.canUpdateGlobalConfiguration) {\n @if (obs.isDraftVersion) {\n <div class=\"draft-buttons\">\n <button\n *ngIf=\"caseDefinitionVersions.length === 1 || !obs.isGloballyActive\"\n cdsButton=\"danger\"\n (click)=\"openDeleteDraftModal()\"\n >\n {{ 'caseManagement.deployment.buttons.delete' | translate }}\n <svg cdsIcon=\"trash-can\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button\n cdsButton=\"primary\"\n (click)=\"openFinalizeDraftConfirmationModal()\"\n [disabled]=\"!obs?.caseDefinitionFinalizationCheckResult?.finalizable\"\n >\n {{ 'caseManagement.deployment.buttons.finalize' | translate }}\n <svg cdsIcon=\"save\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </div>\n } @else {\n <button cdsButton=\"primary\" (click)=\"openCreateDraftVersionConfirmationModal()\">\n {{ 'caseManagement.deployment.buttons.createDraft' | translate }}\n <svg cdsIcon=\"save\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n }\n }\n </div>\n\n <div class=\"deployment-panels\">\n <ng-container\n *ngTemplateOutlet=\"\n releaseVersionPanel;\n context: {\n data: obs.releaseVersionEntries,\n showNotification: obs.hasConflictingVersions,\n notificationContent: {\n basedOnVersionTag: obs.notificationContent?.basedOnVersionTag,\n conflictingVersions: obs.notificationContent?.conflictingVersions,\n },\n }\n \"\n ></ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n releaseInformationPanel;\n context: {data: obs.releaseInformationDataEntries}\n \"\n ></ng-container>\n </div>\n</ng-container>\n\n<ng-template\n #releaseVersionPanel\n let-data=\"data\"\n let-showNotification=\"showNotification\"\n let-notificationContent=\"notificationContent\"\n>\n <div class=\"release-version\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.releaseVersion.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <div *ngFor=\"let entry of data\" class=\"release-version-data\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.releaseVersion.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </div>\n\n <cds-notification\n *ngIf=\"showNotification\"\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: ('caseManagement.deployment.releaseVersion.warning.title' | translate),\n message:\n ('caseManagement.deployment.releaseVersion.warning.description'\n | translate: notificationContent),\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n </div>\n</ng-template>\n\n<ng-template #releaseInformationPanel let-data=\"data\">\n <div class=\"release-information\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.releaseInformation.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <ng-container *ngFor=\"let entry of data\">\n <div class=\"release-version-data\" *ngIf=\"entry?.key && entry?.value !== undefined\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.releaseInformation.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showDeleteDraftConfirmationModal$\"\n (confirmEvent)=\"deleteDraftCaseVersion()\"\n (cancelEvent)=\"closeDeleteDraftModal()\"\n cancelButtonType=\"ghost\"\n confirmButtonType=\"danger\"\n confirmButtonTextTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.confirm\"\n cancelButtonTextTranslationKey=\"interface.cancel\"\n titleTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.title\"\n contentTranslationKey=\"caseManagement.deployment.deleteDraftConfirmationModal.description\"\n>\n</valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showFinalizeDraftConfirmationModal$\"\n [content]=\"finalizeDraftDescription$ | async\"\n (confirmEvent)=\"finalizeDraftCaseVersion()\"\n (cancelEvent)=\"closeFinalizeDraftModal()\"\n cancelButtonType=\"ghost\"\n confirmButtonType=\"primary\"\n confirmButtonTextTranslationKey=\"caseManagement.deployment.finalizeDraftConfirmationModal.confirm\"\n cancelButtonTextTranslationKey=\"interface.cancel\"\n titleTranslationKey=\"caseManagement.deployment.finalizeDraftConfirmationModal.title\"\n></valtimo-confirmation-modal>\n\n<valtimo-case-management-create-draft-version\n [open]=\"showCreateDraftVersionConfirmationModal$ | async\"\n [caseDefinitionPayload]=\"caseDefinitionPayload$ | async\"\n (closeModal)=\"onCloseCreateDraftVersionModal($event)\"\n></valtimo-case-management-create-draft-version>\n\n<ng-template #loadingMessage let-translationKey=\"translationKey\">\n <div>\n <span class=\"cds--inline-notification__title\">\n {{ translationKey | translate }}\n </span>\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #createDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.createDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template #finalizeDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.finalizeDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template #deleteDraftMessage>\n <ng-container\n *ngTemplateOutlet=\"\n loadingMessage;\n context: {\n translationKey: 'caseManagement.deployment.finalizeDraftConfirmationModal.loadingText',\n }\n \"\n >\n </ng-container>\n</ng-template>\n", styles: [".header-buttons{display:flex;justify-content:space-between;width:100%;margin-bottom:24px}.draft-buttons{display:flex;gap:16px}.deployment-panels{display:flex;gap:16px;flex-wrap:wrap}.deployment-panels>div{flex:1 1 300px;background-color:#fff;padding:24px}.deployment-panel-title{font-weight:600;font-size:16px;line-height:24px;margin-bottom:16px}.full-width-notification{max-inline-size:100%;min-inline-size:100%}.release-version-columns{display:flex;width:100%;margin-bottom:16px;gap:16px;flex-wrap:wrap}.release-version-data{flex:1 1 300px;padding:1rem;box-sizing:border-box}.release-version-data__label{font-size:12px;margin-bottom:16px;color:var(--cds-text-secondary)}.release-version-data__value{color:var(--cds-text-primary);padding:16px;border-bottom:1px solid var(--cds-border-subtle-01);font-size:14px}::ng-deep .cds--inline-notification__title{width:100%}.deployment-warning-notification{min-width:100%;margin-bottom:16px}\n/*!\n * Copyright 2015-2026 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"] }]
|
|
3382
|
-
}], ctorParameters: () => [{ type: i7.BreadcrumbService }, { type: CaseManagementService }, { type: i6.DatePipe }, { type: i3$1.EnvironmentService }, { type: i2.IconService }, { type: i6.Location }, { type: i3$1.GlobalNotificationService }, { type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: i3.TranslateService }], propDecorators: { _createDraftMessageTemplateRef: [{
|
|
3500
|
+
}], ctorParameters: () => [{ type: i7.BreadcrumbService }, { type: CaseManagementService }, { type: i6.DatePipe }, { type: i3$1.EnvironmentService }, { type: i2.IconService }, { type: i6.Location }, { type: i3$1.GlobalNotificationService }, { type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: i7$1.SseService }, { type: i3.TranslateService }], propDecorators: { _createDraftMessageTemplateRef: [{
|
|
3383
3501
|
type: ViewChild,
|
|
3384
3502
|
args: ['createDraftMessage']
|
|
3385
3503
|
}], _finalizeDraftMessageTemplateRef: [{
|
|
@@ -3494,10 +3612,10 @@ class CaseManagementSelectVersionModalComponent {
|
|
|
3494
3612
|
this.selectedVersion.emit(caseDefinitionVersionTag);
|
|
3495
3613
|
this.closeEvent.emit();
|
|
3496
3614
|
}
|
|
3497
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3498
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
3615
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementSelectVersionModalComponent, deps: [{ token: i2$1.ActivatedRoute }, { token: i2$1.Router }, { token: CaseManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3616
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementSelectVersionModalComponent, isStandalone: false, selector: "valtimo-case-management-select-version-modal", inputs: { open: "open", previousSelectedVersion: "previousSelectedVersion", caseDefinitionKey: "caseDefinitionKey", caseDefinitionTitle: "caseDefinitionTitle" }, outputs: { closeEvent: "closeEvent", selectedVersion: "selectedVersion" }, 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<cds-modal valtimoCdsModal showFooter=\"true\" [open]=\"open\" (close)=\"onCloseModal()\">\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{\n 'caseManagement.allVersionsModal.title'\n | translate: {value: (caseDefinitionTitle$ | async) ?? ''}\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent>\n <valtimo-carbon-list\n [hideToolbar]=\"true\"\n [items]=\"versionItems$ | async\"\n [fields]=\"FIELDS\"\n (rowClicked)=\"selectActiveVersion($event)\"\n [pagination]=\"pagination$ | async\"\n paginationIdentifier=\"caseManagementList\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n cdsLayer=\"1\"\n >\n <valtimo-no-results\n [title]=\"'caseManagement.allVersionsModal.noResults.description' | translate\"\n [description]=\"'caseManagement.allVersionsModal.noResults.title' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" (click)=\"onCloseModal()\">\n {{ 'caseManagement.allVersionsModal.closeButton' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: ["::ng-deep .cds--modal-footer{justify-content:flex-start!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: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
3499
3617
|
}
|
|
3500
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3618
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementSelectVersionModalComponent, decorators: [{
|
|
3501
3619
|
type: Component,
|
|
3502
3620
|
args: [{ standalone: false, selector: 'valtimo-case-management-select-version-modal', 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<cds-modal valtimoCdsModal showFooter=\"true\" [open]=\"open\" (close)=\"onCloseModal()\">\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{\n 'caseManagement.allVersionsModal.title'\n | translate: {value: (caseDefinitionTitle$ | async) ?? ''}\n }}\n </h3>\n </cds-modal-header>\n\n <section cdsModalContent>\n <valtimo-carbon-list\n [hideToolbar]=\"true\"\n [items]=\"versionItems$ | async\"\n [fields]=\"FIELDS\"\n (rowClicked)=\"selectActiveVersion($event)\"\n [pagination]=\"pagination$ | async\"\n paginationIdentifier=\"caseManagementList\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n cdsLayer=\"1\"\n >\n <valtimo-no-results\n [title]=\"'caseManagement.allVersionsModal.noResults.description' | translate\"\n [description]=\"'caseManagement.allVersionsModal.noResults.title' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" (click)=\"onCloseModal()\">\n {{ 'caseManagement.allVersionsModal.closeButton' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: ["::ng-deep .cds--modal-footer{justify-content:flex-start!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"] }]
|
|
3503
3621
|
}], ctorParameters: () => [{ type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: CaseManagementService }], propDecorators: { open: [{
|
|
@@ -3515,7 +3633,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
3515
3633
|
}] } });
|
|
3516
3634
|
|
|
3517
3635
|
/*
|
|
3518
|
-
* Copyright 2015-
|
|
3636
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
3519
3637
|
*
|
|
3520
3638
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3521
3639
|
* you may not use this file except in compliance with the License.
|
|
@@ -3533,7 +3651,7 @@ class CaseManagementDetailActionsComponent {
|
|
|
3533
3651
|
set caseDefinitionKey(value) {
|
|
3534
3652
|
this.caseDetailService.setSelectedCaseDefinitionKey(value);
|
|
3535
3653
|
}
|
|
3536
|
-
constructor(document, caseManagementService, caseDetailService, notificationService, iconService, pageHeaderService, route, router, translateService) {
|
|
3654
|
+
constructor(document, caseManagementService, caseDetailService, notificationService, iconService, pageHeaderService, route, router, translateService, configurationIssueService) {
|
|
3537
3655
|
this.document = document;
|
|
3538
3656
|
this.caseManagementService = caseManagementService;
|
|
3539
3657
|
this.caseDetailService = caseDetailService;
|
|
@@ -3543,6 +3661,8 @@ class CaseManagementDetailActionsComponent {
|
|
|
3543
3661
|
this.route = route;
|
|
3544
3662
|
this.router = router;
|
|
3545
3663
|
this.translateService = translateService;
|
|
3664
|
+
this.configurationIssueService = configurationIssueService;
|
|
3665
|
+
this.testIds = CASE_MANAGEMENT_DETAIL_ACTIONS_TEST_IDS;
|
|
3546
3666
|
this.documentDefinitionTitle = '';
|
|
3547
3667
|
this.versionSet = new EventEmitter();
|
|
3548
3668
|
this.CARBON_THEME = 'g10';
|
|
@@ -3553,19 +3673,24 @@ class CaseManagementDetailActionsComponent {
|
|
|
3553
3673
|
this.params$ = getCaseManagementRouteParams(this.route).pipe(tap(({ caseDefinitionVersionTag }) => this.selectedVersion$.next(caseDefinitionVersionTag)));
|
|
3554
3674
|
this.caseDefinitionKey$ = this.params$.pipe(map(params => params.caseDefinitionKey || ''));
|
|
3555
3675
|
this.caseDefinitionVersionTag$ = this.params$.pipe(map(params => params.caseDefinitionVersionTag || ''));
|
|
3556
|
-
this.globalActiveVersion$ = this.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.caseManagementService
|
|
3557
|
-
.getGlobalActiveCase(caseDefinitionKey)
|
|
3558
|
-
.pipe(map(result => result.caseDefinitionVersionTag))));
|
|
3676
|
+
this.globalActiveVersion$ = this.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.caseManagementService.getGlobalActiveCase(caseDefinitionKey).pipe(map(result => result.caseDefinitionVersionTag), catchError(() => of(null)))));
|
|
3559
3677
|
this.selectedVersionIsGloballyActive$ = combineLatest([
|
|
3560
3678
|
this.selectedVersion$,
|
|
3561
3679
|
this.globalActiveVersion$,
|
|
3562
3680
|
]).pipe(map(([selectedVersion, globalActiveVersion]) => selectedVersion === globalActiveVersion));
|
|
3681
|
+
this.hasUnresolvedConfigurationIssues$ = this.configurationIssueService.hasAnyIssues$;
|
|
3682
|
+
this.setActiveDisabled$ = combineLatest([
|
|
3683
|
+
this.selectedVersionIsGloballyActive$,
|
|
3684
|
+
this.hasUnresolvedConfigurationIssues$,
|
|
3685
|
+
]).pipe(map(([isActive, hasIssues]) => isActive || hasIssues));
|
|
3563
3686
|
this._caseDefinitionKey$ = this.caseDetailService.selectedCaseDefinitionKey$;
|
|
3564
3687
|
this.loadingVersion$ = new BehaviorSubject(true);
|
|
3565
3688
|
this.showGlobalVersionModal$ = new BehaviorSubject(false);
|
|
3566
3689
|
this.showGlobalVersionConfirmationModal$ = new BehaviorSubject(false);
|
|
3567
|
-
this._globalActiveCase$ = this.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.caseManagementService
|
|
3568
|
-
|
|
3690
|
+
this._globalActiveCase$ = this.caseDefinitionKey$.pipe(switchMap(caseDefinitionKey => this.caseManagementService
|
|
3691
|
+
.getGlobalActiveCase(caseDefinitionKey)
|
|
3692
|
+
.pipe(catchError(() => of(null)))));
|
|
3693
|
+
this._caseDefinitionTitle$ = this._globalActiveCase$.pipe(map(result => result?.name ?? ''));
|
|
3569
3694
|
this.selectedDocumentDefinition$ = this.caseDetailService.documentDefinition$;
|
|
3570
3695
|
this.selectedDocumentDefinitionIsReadOnly$ = this.caseDetailService.selectedDocumentDefinitionIsReadOnly$;
|
|
3571
3696
|
this.compactMode$ = this.pageHeaderService.compactMode$;
|
|
@@ -3760,16 +3885,16 @@ class CaseManagementDetailActionsComponent {
|
|
|
3760
3885
|
relativeTo: this.route,
|
|
3761
3886
|
});
|
|
3762
3887
|
}
|
|
3763
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3764
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: CaseManagementDetailActionsComponent, isStandalone: false, selector: "valtimo-case-management-detail-actions", inputs: { documentDefinitionTitle: "documentDefinitionTitle", caseDefinitionKey: "caseDefinitionKey" }, outputs: { versionSet: "versionSet" }, viewQueries: [{ propertyName: "_exportMessageTemplateRef", first: true, predicate: ["exportingMessage"], descendants: 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 class=\"case-actions\"\n *ngIf=\"{\n exporting: exporting$ | async,\n loadingVersion: loadingVersion$ | async,\n versionItems: versionSelectorItems$ | async,\n selectedDocumentDefinition: selectedDocumentDefinition$ | async,\n selectedDocumentDefinitionIsReadOnly: selectedDocumentDefinitionIsReadOnly$ | async,\n selectedVersionIsGloballyActive: selectedVersionIsGloballyActive$ | async,\n compactMode: compactMode$ | async,\n } as obs\"\n [ngClass]=\"{'--compact': obs.compactMode}\"\n>\n <div class=\"case-metadata\">\n <ng-container *ngTemplateOutlet=\"versionSelection; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"readOnly; context: {obs: obs}\"></ng-container>\n </div>\n\n <div class=\"case-buttons\">\n <ng-container *ngTemplateOutlet=\"deploymentButton; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"exportMenu; context: {obs: obs}\"></ng-container>\n </div>\n</div>\n\n<ng-template #versionSelection let-obs=\"obs\">\n <cds-dropdown\n class=\"version-selector\"\n data-test-id=\"caseVersionSelectDropdown\"\n selectionFeedback=\"fixed\"\n [displayValue]=\"versionItemTemplate\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n [appendInline]=\"false\"\n [disabled]=\"!obs?.versionItems?.length || obs?.versionItems?.length === 1\"\n [skeleton]=\"obs.loadingVersion\"\n (selected)=\"selectVersion($event)\"\n >\n <cds-dropdown-list\n [items]=\"obs?.versionItems || []\"\n [listTpl]=\"versionItemTemplate\"\n ></cds-dropdown-list>\n </cds-dropdown>\n</ng-template>\n\n<ng-template #versionItemTemplate let-item=\"item\">\n <div\n [attr.data-test-id]=\"item?.['data-test-id']\"\n *ngIf=\"item?.isAllVersionsOption; else regularVersionTemplate\"\n >\n <span>{{ item?.content }}</span>\n <svg cdsIcon=\"version\" size=\"16\"></svg>\n </div>\n\n <ng-template #regularVersionTemplate>\n <div [attr.data-test-id]=\"item?.['data-test-id']\" class=\"version-selector-dropdown-template\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"item?.tagType\" [title]=\"item?.content\">\n {{ item?.draft ? 'DRAFT: ' + item?.content : item?.content }}\n </cds-tag>\n\n <cds-tag\n *ngIf=\"item?.active\"\n data-test-id=\"globally-active-case-version\"\n class=\"cds-tag--no-margin\"\n type=\"high-contrast\"\n >\n {{ 'caseManagement.globallyActive' | translate }}\n </cds-tag>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #deploymentButton let-obs=\"obs\">\n <button\n cdsButton=\"secondary\"\n data-test-id=\"caseVersionManagementButton\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n (click)=\"redirectToDeployment()\"\n >\n {{ 'caseManagement.deployment.title' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"deploy\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #exportMenu let-obs=\"obs\">\n <cds-overflow-menu\n valtimoCdsOverflowButton\n [width]=\"250\"\n [customTrigger]=\"customTrigger\"\n [offset]=\"{y: 48, x: 37}\"\n class=\"overflow-button\"\n >\n <cds-overflow-menu-option\n data-test-id=\"caseExportButton\"\n [id]=\"'exportDocumentDefinition'\"\n [disabled]=\"obs.exporting || obs.loadingVersion\"\n (selected)=\"export()\"\n >{{ 'caseManagement.export' | translate: {value: documentDefinitionTitle} }}\n </cds-overflow-menu-option>\n\n <cds-overflow-menu-option\n data-test-id=\"caseSetActiveVersionButton\"\n [id]=\"'setGlobalActiveVersion'\"\n [disabled]=\"obs.selectedVersionIsGloballyActive\"\n (selected)=\"openGlobalActiveVersionModal()\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </cds-overflow-menu-option>\n </cds-overflow-menu>\n</ng-template>\n\n<ng-template #customTrigger>\n <button\n cdsButton=\"tertiary\"\n data-test-id=\"caseMoreButton\"\n [size]=\"(compactMode$ | async) ? 'sm' : 'md'\"\n >\n {{ 'caseManagement.more' | translate }}\n\n <svg\n class=\"cds--btn__icon case-management-overflow-icon\"\n cdsIcon=\"overflow-menu--vertical\"\n size=\"16\"\n ></svg>\n </button>\n</ng-template>\n\n<ng-template #exportingMessage>\n <div class=\"exporting-message\">\n <span class=\"cds--inline-notification__title\">{{\n 'caseManagement.preparingDownload' | translate\n }}</span>\n\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #readOnly let-obs=\"obs\">\n <cds-tag *ngIf=\"obs.selectedDocumentDefinitionIsReadOnly\" type=\"blue\">{{\n 'caseManagement.readonly' | translate\n }}</cds-tag>\n</ng-template>\n\n<valtimo-case-management-select-version-modal\n [open]=\"showAllVersionsModal$ | async\"\n [caseDefinitionTitle]=\"_caseDefinitionTitle$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [previousSelectedVersion]=\"selectedVersion$ | async\"\n (closeEvent)=\"closeAllVersionsModal()\"\n (selectedVersion)=\"selectVersionFromModal($event)\"\n></valtimo-case-management-select-version-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.cancel\"\n confirmButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.continue\"\n titleTranslationKey=\"caseManagement.globalActiveVersionModal.title\"\n contentTranslationKey=\"caseManagement.globalActiveVersionModal.description\"\n (cancelEvent)=\"closeGlobalVersionCaseModal()\"\n (confirmEvent)=\"openGlobalCaseVersionConfirmationModal()\"\n>\n <cds-notification\n *ngIf=\"isOlderVersionSelected$ | async\"\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'caseManagement.globalActiveVersionModal.warningTitle' | translate,\n message: 'caseManagement.globalActiveVersionModal.warningMessage' | translate,\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n</valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionConfirmationModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.cancel\"\n confirmButtonType=\"danger\"\n confirmButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.confirm\"\n contentTranslationKey=\"caseManagement.confirmationGlobalVersionModal.description\"\n titleTranslationKey=\"caseManagement.confirmationGlobalVersionModal.title\"\n (cancelEvent)=\"closeGlobalCaseConfirmationModal()\"\n (confirmEvent)=\"setGlobalActiveCaseVersion()\"\n></valtimo-confirmation-modal>\n", styles: [".case-actions{display:flex;width:100%;justify-content:space-between;align-items:flex-end}.case-actions.--compact{align-items:center}.case-actions ::ng-deep .version-selection{width:160px}.case-actions ::ng-deep .version-selection .cds--list-box__selection{display:none}.exporting-message{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px}.case-metadata{display:flex;gap:24px;align-items:flex-end}.case-buttons{display:flex;align-items:center;gap:16px}::ng-deep .version-selector{margin-bottom:0;width:300px}::ng-deep .version-selector-dropdown-template{display:flex}::ng-deep .version-selector-dropdown-template .cds--tag{margin:0 8px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:24px;max-width:100%}::ng-deep .cds--list-box__field{display:flex;justify-content:space-between}::ng-deep .cds--list-box__menu-item__option{display:flex;justify-content:space-between;padding-inline-end:0}::ng-deep .cds--list-box__menu-item__option>div{margin-top:-4px}.full-width-notification{max-inline-size:100%;min-inline-size:100%}.case-management-overflow-icon{fill:var(--vcds-color-60)!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.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i2.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i2.OverflowMenu, selector: "cds-overflow-menu, ibm-overflow-menu", inputs: ["buttonLabel", "description", "flip", "placement", "open", "customTrigger", "offset", "wrapperClass", "triggerClass"], outputs: ["openChange"] }, { kind: "component", type: i2.OverflowMenuOption, selector: "cds-overflow-menu-option, ibm-overflow-menu-option", inputs: ["divider", "type", "disabled", "href", "target", "innerClass"], outputs: ["selected"] }, { kind: "directive", type: i7.ValtimoCdsOverflowButtonDirective, selector: "[valtimoCdsOverflowButton]", inputs: ["width"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: CaseManagementSelectVersionModalComponent, selector: "valtimo-case-management-select-version-modal", inputs: ["open", "previousSelectedVersion", "caseDefinitionKey", "caseDefinitionTitle"], outputs: ["closeEvent", "selectedVersion"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3888
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDetailActionsComponent, deps: [{ token: DOCUMENT }, { token: CaseManagementService }, { token: CaseDetailService }, { token: i3$1.GlobalNotificationService }, { token: i2.IconService }, { token: i7.PageHeaderService }, { token: i2$1.ActivatedRoute }, { token: i2$1.Router }, { token: i3.TranslateService }, { token: i3$1.ConfigurationIssueService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3889
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementDetailActionsComponent, isStandalone: false, selector: "valtimo-case-management-detail-actions", inputs: { documentDefinitionTitle: "documentDefinitionTitle", caseDefinitionKey: "caseDefinitionKey" }, outputs: { versionSet: "versionSet" }, viewQueries: [{ propertyName: "_exportMessageTemplateRef", first: true, predicate: ["exportingMessage"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2026 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 class=\"case-actions\"\n *ngIf=\"{\n exporting: exporting$ | async,\n loadingVersion: loadingVersion$ | async,\n versionItems: versionSelectorItems$ | async,\n selectedDocumentDefinition: selectedDocumentDefinition$ | async,\n selectedDocumentDefinitionIsReadOnly: selectedDocumentDefinitionIsReadOnly$ | async,\n selectedVersionIsGloballyActive: selectedVersionIsGloballyActive$ | async,\n setActiveDisabled: setActiveDisabled$ | async,\n hasUnresolvedConfigurationIssues: hasUnresolvedConfigurationIssues$ | async,\n compactMode: compactMode$ | async,\n } as obs\"\n [ngClass]=\"{'--compact': obs.compactMode}\"\n>\n <div class=\"case-metadata\">\n <ng-container *ngTemplateOutlet=\"versionSelection; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"readOnly; context: {obs: obs}\"></ng-container>\n </div>\n\n <div class=\"case-buttons\">\n <ng-container *ngTemplateOutlet=\"deploymentButton; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"exportMenu; context: {obs: obs}\"></ng-container>\n </div>\n\n\n</div>\n\n<ng-template #versionSelection let-obs=\"obs\">\n <cds-dropdown\n class=\"version-selector\"\n [attr.data-test-id]=\"testIds.versionSelectDropdown\"\n selectionFeedback=\"fixed\"\n [displayValue]=\"versionItemTemplate\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n [appendInline]=\"false\"\n [disabled]=\"!obs?.versionItems?.length || obs?.versionItems?.length === 1\"\n [skeleton]=\"obs.loadingVersion\"\n (selected)=\"selectVersion($event)\"\n >\n <cds-dropdown-list\n [items]=\"obs?.versionItems || []\"\n [listTpl]=\"versionItemTemplate\"\n ></cds-dropdown-list>\n </cds-dropdown>\n</ng-template>\n\n<ng-template #versionItemTemplate let-item=\"item\">\n <div\n [attr.data-test-id]=\"item?.['data-test-id']\"\n *ngIf=\"item?.isAllVersionsOption; else regularVersionTemplate\"\n >\n <span>{{ item?.content }}</span>\n <svg cdsIcon=\"version\" size=\"16\"></svg>\n </div>\n\n <ng-template #regularVersionTemplate>\n <div [attr.data-test-id]=\"item?.['data-test-id']\" class=\"version-selector-dropdown-template\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"item?.tagType\" [title]=\"item?.content\">\n {{ item?.draft ? 'DRAFT: ' + item?.content : item?.content }}\n </cds-tag>\n\n <cds-tag\n *ngIf=\"item?.active\"\n [attr.data-test-id]=\"testIds.globallyActiveCaseVersion\"\n class=\"cds-tag--no-margin\"\n type=\"high-contrast\"\n >\n {{ 'caseManagement.globallyActive' | translate }}\n </cds-tag>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #deploymentButton let-obs=\"obs\">\n <button\n cdsButton=\"secondary\"\n [attr.data-test-id]=\"testIds.versionManagementButton\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n (click)=\"redirectToDeployment()\"\n >\n {{ 'caseManagement.deployment.title' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"deploy\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #exportMenu let-obs=\"obs\">\n <cds-overflow-menu\n valtimoCdsOverflowButton\n [width]=\"250\"\n [customTrigger]=\"customTrigger\"\n [offset]=\"{y: 48, x: 37}\"\n class=\"overflow-button\"\n >\n <cds-overflow-menu-option\n [attr.data-test-id]=\"testIds.exportButton\"\n [id]=\"'exportDocumentDefinition'\"\n [disabled]=\"obs.exporting || obs.loadingVersion\"\n (selected)=\"export()\"\n >{{ 'caseManagement.export' | translate: {value: documentDefinitionTitle} }}\n </cds-overflow-menu-option>\n\n <span\n *ngIf=\"obs.hasUnresolvedConfigurationIssues && !obs.selectedVersionIsGloballyActive; else setActiveDefault\"\n >\n <cds-tooltip\n [description]=\"'caseManagement.setGlobalActiveVersionConfigurationIssuesWarning' | translate\"\n [align]=\"'bottom'\"\n >\n <cds-overflow-menu-option\n [attr.data-test-id]=\"testIds.setActiveVersionButton\"\n [id]=\"'setGlobalActiveVersion'\"\n [disabled]=\"true\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </cds-overflow-menu-option>\n </cds-tooltip>\n </span>\n\n <ng-template #setActiveDefault>\n <cds-overflow-menu-option\n data-test-id=\"caseSetActiveVersionButton\"\n [id]=\"'setGlobalActiveVersion'\"\n [disabled]=\"obs.selectedVersionIsGloballyActive\"\n (selected)=\"openGlobalActiveVersionModal()\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </cds-overflow-menu-option>\n </ng-template>\n </cds-overflow-menu>\n</ng-template>\n\n<ng-template #customTrigger>\n <button\n cdsButton=\"tertiary\"\n [attr.data-test-id]=\"testIds.moreButton\"\n [size]=\"(compactMode$ | async) ? 'sm' : 'md'\"\n >\n {{ 'caseManagement.more' | translate }}\n\n <svg\n class=\"cds--btn__icon case-management-overflow-icon\"\n cdsIcon=\"overflow-menu--vertical\"\n size=\"16\"\n ></svg>\n </button>\n</ng-template>\n\n<ng-template #exportingMessage>\n <div class=\"exporting-message\">\n <span class=\"cds--inline-notification__title\">{{\n 'caseManagement.preparingDownload' | translate\n }}</span>\n\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #readOnly let-obs=\"obs\">\n <cds-tag *ngIf=\"obs.selectedDocumentDefinitionIsReadOnly\" type=\"blue\">{{\n 'caseManagement.readonly' | translate\n }}</cds-tag>\n</ng-template>\n\n<valtimo-case-management-select-version-modal\n [open]=\"showAllVersionsModal$ | async\"\n [caseDefinitionTitle]=\"_caseDefinitionTitle$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [previousSelectedVersion]=\"selectedVersion$ | async\"\n (closeEvent)=\"closeAllVersionsModal()\"\n (selectedVersion)=\"selectVersionFromModal($event)\"\n></valtimo-case-management-select-version-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.cancel\"\n confirmButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.continue\"\n titleTranslationKey=\"caseManagement.globalActiveVersionModal.title\"\n contentTranslationKey=\"caseManagement.globalActiveVersionModal.description\"\n (cancelEvent)=\"closeGlobalVersionCaseModal()\"\n (confirmEvent)=\"openGlobalCaseVersionConfirmationModal()\"\n>\n <cds-notification\n *ngIf=\"isOlderVersionSelected$ | async\"\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'caseManagement.globalActiveVersionModal.warningTitle' | translate,\n message: 'caseManagement.globalActiveVersionModal.warningMessage' | translate,\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n</valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionConfirmationModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.cancel\"\n confirmButtonType=\"danger\"\n confirmButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.confirm\"\n contentTranslationKey=\"caseManagement.confirmationGlobalVersionModal.description\"\n titleTranslationKey=\"caseManagement.confirmationGlobalVersionModal.title\"\n (cancelEvent)=\"closeGlobalCaseConfirmationModal()\"\n (confirmEvent)=\"setGlobalActiveCaseVersion()\"\n></valtimo-confirmation-modal>\n", styles: [".case-actions{display:flex;width:100%;justify-content:space-between;align-items:flex-end}.case-actions.--compact{align-items:center}.case-actions ::ng-deep .version-selection{width:160px}.case-actions ::ng-deep .version-selection .cds--list-box__selection{display:none}.exporting-message{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px}.case-metadata{display:flex;gap:24px;align-items:flex-end}.case-buttons{display:flex;align-items:center;gap:16px}::ng-deep .version-selector{margin-bottom:0;width:300px}::ng-deep .version-selector-dropdown-template{display:flex}::ng-deep .version-selector-dropdown-template .cds--tag{margin:0 8px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:24px;max-width:100%}::ng-deep .cds--list-box__field{display:flex;justify-content:space-between}::ng-deep .cds--list-box__menu-item__option{display:flex;justify-content:space-between;padding-inline-end:0}::ng-deep .cds--list-box__menu-item__option>div{margin-top:-4px}.full-width-notification{max-inline-size:100%;min-inline-size:100%}.case-management-overflow-icon{fill:var(--vcds-color-60)!important}\n/*!\n * Copyright 2015-2026 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.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "component", type: i2.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "component", type: i7.ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: ["titleTranslationKey", "title", "content", "contentTranslationKey", "confirmButtonText", "confirmButtonTextTranslationKey", "confirmButtonType", "showOptionalButton", "optionalButtonText", "optionalButtonTextTranslationKey", "optionalButtonType", "cancelButtonText", "cancelButtonTextTranslationKey", "cancelButtonType", "showModalSubject$", "outputOnConfirm", "outputOnOptional", "spacerAfterCancelButton"], outputs: ["confirmEvent", "optionalEvent", "cancelEvent"] }, { kind: "component", type: i2.OverflowMenu, selector: "cds-overflow-menu, ibm-overflow-menu", inputs: ["buttonLabel", "description", "flip", "placement", "open", "customTrigger", "offset", "wrapperClass", "triggerClass"], outputs: ["openChange"] }, { kind: "component", type: i2.OverflowMenuOption, selector: "cds-overflow-menu-option, ibm-overflow-menu-option", inputs: ["divider", "type", "disabled", "href", "target", "innerClass"], outputs: ["selected"] }, { kind: "directive", type: i7.ValtimoCdsOverflowButtonDirective, selector: "[valtimoCdsOverflowButton]", inputs: ["width"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "component", type: CaseManagementSelectVersionModalComponent, selector: "valtimo-case-management-select-version-modal", inputs: ["open", "previousSelectedVersion", "caseDefinitionKey", "caseDefinitionTitle"], outputs: ["closeEvent", "selectedVersion"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3765
3890
|
}
|
|
3766
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3891
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDetailActionsComponent, decorators: [{
|
|
3767
3892
|
type: Component,
|
|
3768
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-detail-actions', changeDetection: ChangeDetectionStrategy.OnPush, 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 class=\"case-actions\"\n *ngIf=\"{\n exporting: exporting$ | async,\n loadingVersion: loadingVersion$ | async,\n versionItems: versionSelectorItems$ | async,\n selectedDocumentDefinition: selectedDocumentDefinition$ | async,\n selectedDocumentDefinitionIsReadOnly: selectedDocumentDefinitionIsReadOnly$ | async,\n selectedVersionIsGloballyActive: selectedVersionIsGloballyActive$ | async,\n compactMode: compactMode$ | async,\n } as obs\"\n [ngClass]=\"{'--compact': obs.compactMode}\"\n>\n <div class=\"case-metadata\">\n <ng-container *ngTemplateOutlet=\"versionSelection; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"readOnly; context: {obs: obs}\"></ng-container>\n </div>\n\n <div class=\"case-buttons\">\n <ng-container *ngTemplateOutlet=\"deploymentButton; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"exportMenu; context: {obs: obs}\"></ng-container>\n </div>\n</div>\n\n<ng-template #versionSelection let-obs=\"obs\">\n <cds-dropdown\n class=\"version-selector\"\n data-test-id=\"caseVersionSelectDropdown\"\n selectionFeedback=\"fixed\"\n [displayValue]=\"versionItemTemplate\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n [appendInline]=\"false\"\n [disabled]=\"!obs?.versionItems?.length || obs?.versionItems?.length === 1\"\n [skeleton]=\"obs.loadingVersion\"\n (selected)=\"selectVersion($event)\"\n >\n <cds-dropdown-list\n [items]=\"obs?.versionItems || []\"\n [listTpl]=\"versionItemTemplate\"\n ></cds-dropdown-list>\n </cds-dropdown>\n</ng-template>\n\n<ng-template #versionItemTemplate let-item=\"item\">\n <div\n [attr.data-test-id]=\"item?.['data-test-id']\"\n *ngIf=\"item?.isAllVersionsOption; else regularVersionTemplate\"\n >\n <span>{{ item?.content }}</span>\n <svg cdsIcon=\"version\" size=\"16\"></svg>\n </div>\n\n <ng-template #regularVersionTemplate>\n <div [attr.data-test-id]=\"item?.['data-test-id']\" class=\"version-selector-dropdown-template\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"item?.tagType\" [title]=\"item?.content\">\n {{ item?.draft ? 'DRAFT: ' + item?.content : item?.content }}\n </cds-tag>\n\n <cds-tag\n *ngIf=\"item?.active\"\n data-test-id=\"globally-active-case-version\"\n class=\"cds-tag--no-margin\"\n type=\"high-contrast\"\n >\n {{ 'caseManagement.globallyActive' | translate }}\n </cds-tag>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #deploymentButton let-obs=\"obs\">\n <button\n cdsButton=\"secondary\"\n data-test-id=\"caseVersionManagementButton\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n (click)=\"redirectToDeployment()\"\n >\n {{ 'caseManagement.deployment.title' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"deploy\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #exportMenu let-obs=\"obs\">\n <cds-overflow-menu\n valtimoCdsOverflowButton\n [width]=\"250\"\n [customTrigger]=\"customTrigger\"\n [offset]=\"{y: 48, x: 37}\"\n class=\"overflow-button\"\n >\n <cds-overflow-menu-option\n data-test-id=\"caseExportButton\"\n [id]=\"'exportDocumentDefinition'\"\n [disabled]=\"obs.exporting || obs.loadingVersion\"\n (selected)=\"export()\"\n >{{ 'caseManagement.export' | translate: {value: documentDefinitionTitle} }}\n </cds-overflow-menu-option>\n\n <cds-overflow-menu-option\n data-test-id=\"caseSetActiveVersionButton\"\n [id]=\"'setGlobalActiveVersion'\"\n [disabled]=\"obs.selectedVersionIsGloballyActive\"\n (selected)=\"openGlobalActiveVersionModal()\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </cds-overflow-menu-option>\n </cds-overflow-menu>\n</ng-template>\n\n<ng-template #customTrigger>\n <button\n cdsButton=\"tertiary\"\n data-test-id=\"caseMoreButton\"\n [size]=\"(compactMode$ | async) ? 'sm' : 'md'\"\n >\n {{ 'caseManagement.more' | translate }}\n\n <svg\n class=\"cds--btn__icon case-management-overflow-icon\"\n cdsIcon=\"overflow-menu--vertical\"\n size=\"16\"\n ></svg>\n </button>\n</ng-template>\n\n<ng-template #exportingMessage>\n <div class=\"exporting-message\">\n <span class=\"cds--inline-notification__title\">{{\n 'caseManagement.preparingDownload' | translate\n }}</span>\n\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #readOnly let-obs=\"obs\">\n <cds-tag *ngIf=\"obs.selectedDocumentDefinitionIsReadOnly\" type=\"blue\">{{\n 'caseManagement.readonly' | translate\n }}</cds-tag>\n</ng-template>\n\n<valtimo-case-management-select-version-modal\n [open]=\"showAllVersionsModal$ | async\"\n [caseDefinitionTitle]=\"_caseDefinitionTitle$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [previousSelectedVersion]=\"selectedVersion$ | async\"\n (closeEvent)=\"closeAllVersionsModal()\"\n (selectedVersion)=\"selectVersionFromModal($event)\"\n></valtimo-case-management-select-version-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.cancel\"\n confirmButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.continue\"\n titleTranslationKey=\"caseManagement.globalActiveVersionModal.title\"\n contentTranslationKey=\"caseManagement.globalActiveVersionModal.description\"\n (cancelEvent)=\"closeGlobalVersionCaseModal()\"\n (confirmEvent)=\"openGlobalCaseVersionConfirmationModal()\"\n>\n <cds-notification\n *ngIf=\"isOlderVersionSelected$ | async\"\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'caseManagement.globalActiveVersionModal.warningTitle' | translate,\n message: 'caseManagement.globalActiveVersionModal.warningMessage' | translate,\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n</valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionConfirmationModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.cancel\"\n confirmButtonType=\"danger\"\n confirmButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.confirm\"\n contentTranslationKey=\"caseManagement.confirmationGlobalVersionModal.description\"\n titleTranslationKey=\"caseManagement.confirmationGlobalVersionModal.title\"\n (cancelEvent)=\"closeGlobalCaseConfirmationModal()\"\n (confirmEvent)=\"setGlobalActiveCaseVersion()\"\n></valtimo-confirmation-modal>\n", styles: [".case-actions{display:flex;width:100%;justify-content:space-between;align-items:flex-end}.case-actions.--compact{align-items:center}.case-actions ::ng-deep .version-selection{width:160px}.case-actions ::ng-deep .version-selection .cds--list-box__selection{display:none}.exporting-message{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px}.case-metadata{display:flex;gap:24px;align-items:flex-end}.case-buttons{display:flex;align-items:center;gap:16px}::ng-deep .version-selector{margin-bottom:0;width:300px}::ng-deep .version-selector-dropdown-template{display:flex}::ng-deep .version-selector-dropdown-template .cds--tag{margin:0 8px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:24px;max-width:100%}::ng-deep .cds--list-box__field{display:flex;justify-content:space-between}::ng-deep .cds--list-box__menu-item__option{display:flex;justify-content:space-between;padding-inline-end:0}::ng-deep .cds--list-box__menu-item__option>div{margin-top:-4px}.full-width-notification{max-inline-size:100%;min-inline-size:100%}.case-management-overflow-icon{fill:var(--vcds-color-60)!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"] }]
|
|
3893
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-detail-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!--\n ~ Copyright 2015-2026 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 class=\"case-actions\"\n *ngIf=\"{\n exporting: exporting$ | async,\n loadingVersion: loadingVersion$ | async,\n versionItems: versionSelectorItems$ | async,\n selectedDocumentDefinition: selectedDocumentDefinition$ | async,\n selectedDocumentDefinitionIsReadOnly: selectedDocumentDefinitionIsReadOnly$ | async,\n selectedVersionIsGloballyActive: selectedVersionIsGloballyActive$ | async,\n setActiveDisabled: setActiveDisabled$ | async,\n hasUnresolvedConfigurationIssues: hasUnresolvedConfigurationIssues$ | async,\n compactMode: compactMode$ | async,\n } as obs\"\n [ngClass]=\"{'--compact': obs.compactMode}\"\n>\n <div class=\"case-metadata\">\n <ng-container *ngTemplateOutlet=\"versionSelection; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"readOnly; context: {obs: obs}\"></ng-container>\n </div>\n\n <div class=\"case-buttons\">\n <ng-container *ngTemplateOutlet=\"deploymentButton; context: {obs: obs}\"></ng-container>\n\n <ng-container *ngTemplateOutlet=\"exportMenu; context: {obs: obs}\"></ng-container>\n </div>\n\n\n</div>\n\n<ng-template #versionSelection let-obs=\"obs\">\n <cds-dropdown\n class=\"version-selector\"\n [attr.data-test-id]=\"testIds.versionSelectDropdown\"\n selectionFeedback=\"fixed\"\n [displayValue]=\"versionItemTemplate\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n [appendInline]=\"false\"\n [disabled]=\"!obs?.versionItems?.length || obs?.versionItems?.length === 1\"\n [skeleton]=\"obs.loadingVersion\"\n (selected)=\"selectVersion($event)\"\n >\n <cds-dropdown-list\n [items]=\"obs?.versionItems || []\"\n [listTpl]=\"versionItemTemplate\"\n ></cds-dropdown-list>\n </cds-dropdown>\n</ng-template>\n\n<ng-template #versionItemTemplate let-item=\"item\">\n <div\n [attr.data-test-id]=\"item?.['data-test-id']\"\n *ngIf=\"item?.isAllVersionsOption; else regularVersionTemplate\"\n >\n <span>{{ item?.content }}</span>\n <svg cdsIcon=\"version\" size=\"16\"></svg>\n </div>\n\n <ng-template #regularVersionTemplate>\n <div [attr.data-test-id]=\"item?.['data-test-id']\" class=\"version-selector-dropdown-template\">\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"item?.tagType\" [title]=\"item?.content\">\n {{ item?.draft ? 'DRAFT: ' + item?.content : item?.content }}\n </cds-tag>\n\n <cds-tag\n *ngIf=\"item?.active\"\n [attr.data-test-id]=\"testIds.globallyActiveCaseVersion\"\n class=\"cds-tag--no-margin\"\n type=\"high-contrast\"\n >\n {{ 'caseManagement.globallyActive' | translate }}\n </cds-tag>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #deploymentButton let-obs=\"obs\">\n <button\n cdsButton=\"secondary\"\n [attr.data-test-id]=\"testIds.versionManagementButton\"\n [size]=\"obs.compactMode ? 'sm' : 'md'\"\n (click)=\"redirectToDeployment()\"\n >\n {{ 'caseManagement.deployment.title' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"deploy\" size=\"16\"></svg>\n </button>\n</ng-template>\n\n<ng-template #exportMenu let-obs=\"obs\">\n <cds-overflow-menu\n valtimoCdsOverflowButton\n [width]=\"250\"\n [customTrigger]=\"customTrigger\"\n [offset]=\"{y: 48, x: 37}\"\n class=\"overflow-button\"\n >\n <cds-overflow-menu-option\n [attr.data-test-id]=\"testIds.exportButton\"\n [id]=\"'exportDocumentDefinition'\"\n [disabled]=\"obs.exporting || obs.loadingVersion\"\n (selected)=\"export()\"\n >{{ 'caseManagement.export' | translate: {value: documentDefinitionTitle} }}\n </cds-overflow-menu-option>\n\n <span\n *ngIf=\"obs.hasUnresolvedConfigurationIssues && !obs.selectedVersionIsGloballyActive; else setActiveDefault\"\n >\n <cds-tooltip\n [description]=\"'caseManagement.setGlobalActiveVersionConfigurationIssuesWarning' | translate\"\n [align]=\"'bottom'\"\n >\n <cds-overflow-menu-option\n [attr.data-test-id]=\"testIds.setActiveVersionButton\"\n [id]=\"'setGlobalActiveVersion'\"\n [disabled]=\"true\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </cds-overflow-menu-option>\n </cds-tooltip>\n </span>\n\n <ng-template #setActiveDefault>\n <cds-overflow-menu-option\n data-test-id=\"caseSetActiveVersionButton\"\n [id]=\"'setGlobalActiveVersion'\"\n [disabled]=\"obs.selectedVersionIsGloballyActive\"\n (selected)=\"openGlobalActiveVersionModal()\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </cds-overflow-menu-option>\n </ng-template>\n </cds-overflow-menu>\n</ng-template>\n\n<ng-template #customTrigger>\n <button\n cdsButton=\"tertiary\"\n [attr.data-test-id]=\"testIds.moreButton\"\n [size]=\"(compactMode$ | async) ? 'sm' : 'md'\"\n >\n {{ 'caseManagement.more' | translate }}\n\n <svg\n class=\"cds--btn__icon case-management-overflow-icon\"\n cdsIcon=\"overflow-menu--vertical\"\n size=\"16\"\n ></svg>\n </button>\n</ng-template>\n\n<ng-template #exportingMessage>\n <div class=\"exporting-message\">\n <span class=\"cds--inline-notification__title\">{{\n 'caseManagement.preparingDownload' | translate\n }}</span>\n\n <cds-loading size=\"sm\"></cds-loading>\n </div>\n</ng-template>\n\n<ng-template #readOnly let-obs=\"obs\">\n <cds-tag *ngIf=\"obs.selectedDocumentDefinitionIsReadOnly\" type=\"blue\">{{\n 'caseManagement.readonly' | translate\n }}</cds-tag>\n</ng-template>\n\n<valtimo-case-management-select-version-modal\n [open]=\"showAllVersionsModal$ | async\"\n [caseDefinitionTitle]=\"_caseDefinitionTitle$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n [previousSelectedVersion]=\"selectedVersion$ | async\"\n (closeEvent)=\"closeAllVersionsModal()\"\n (selectedVersion)=\"selectVersionFromModal($event)\"\n></valtimo-case-management-select-version-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.cancel\"\n confirmButtonTextTranslationKey=\"caseManagement.globalActiveVersionModal.continue\"\n titleTranslationKey=\"caseManagement.globalActiveVersionModal.title\"\n contentTranslationKey=\"caseManagement.globalActiveVersionModal.description\"\n (cancelEvent)=\"closeGlobalVersionCaseModal()\"\n (confirmEvent)=\"openGlobalCaseVersionConfirmationModal()\"\n>\n <cds-notification\n *ngIf=\"isOlderVersionSelected$ | async\"\n class=\"full-width-notification\"\n [notificationObj]=\"{\n type: 'warning',\n title: 'caseManagement.globalActiveVersionModal.warningTitle' | translate,\n message: 'caseManagement.globalActiveVersionModal.warningMessage' | translate,\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n</valtimo-confirmation-modal>\n\n<valtimo-confirmation-modal\n [showModalSubject$]=\"showGlobalVersionConfirmationModal$\"\n cancelButtonType=\"ghost\"\n cancelButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.cancel\"\n confirmButtonType=\"danger\"\n confirmButtonTextTranslationKey=\"caseManagement.confirmationGlobalVersionModal.confirm\"\n contentTranslationKey=\"caseManagement.confirmationGlobalVersionModal.description\"\n titleTranslationKey=\"caseManagement.confirmationGlobalVersionModal.title\"\n (cancelEvent)=\"closeGlobalCaseConfirmationModal()\"\n (confirmEvent)=\"setGlobalActiveCaseVersion()\"\n></valtimo-confirmation-modal>\n", styles: [".case-actions{display:flex;width:100%;justify-content:space-between;align-items:flex-end}.case-actions.--compact{align-items:center}.case-actions ::ng-deep .version-selection{width:160px}.case-actions ::ng-deep .version-selection .cds--list-box__selection{display:none}.exporting-message{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px}.case-metadata{display:flex;gap:24px;align-items:flex-end}.case-buttons{display:flex;align-items:center;gap:16px}::ng-deep .version-selector{margin-bottom:0;width:300px}::ng-deep .version-selector-dropdown-template{display:flex}::ng-deep .version-selector-dropdown-template .cds--tag{margin:0 8px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:24px;max-width:100%}::ng-deep .cds--list-box__field{display:flex;justify-content:space-between}::ng-deep .cds--list-box__menu-item__option{display:flex;justify-content:space-between;padding-inline-end:0}::ng-deep .cds--list-box__menu-item__option>div{margin-top:-4px}.full-width-notification{max-inline-size:100%;min-inline-size:100%}.case-management-overflow-icon{fill:var(--vcds-color-60)!important}\n/*!\n * Copyright 2015-2026 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"] }]
|
|
3769
3894
|
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
3770
3895
|
type: Inject,
|
|
3771
3896
|
args: [DOCUMENT]
|
|
3772
|
-
}] }, { type: CaseManagementService }, { type: CaseDetailService }, { type: i3$1.GlobalNotificationService }, { type: i2.IconService }, { type: i7.PageHeaderService }, { type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: i3.TranslateService }], propDecorators: { _exportMessageTemplateRef: [{
|
|
3897
|
+
}] }, { type: CaseManagementService }, { type: CaseDetailService }, { type: i3$1.GlobalNotificationService }, { type: i2.IconService }, { type: i7.PageHeaderService }, { type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: i3.TranslateService }, { type: i3$1.ConfigurationIssueService }], propDecorators: { _exportMessageTemplateRef: [{
|
|
3773
3898
|
type: ViewChild,
|
|
3774
3899
|
args: ['exportingMessage']
|
|
3775
3900
|
}], documentDefinitionTitle: [{
|
|
@@ -3781,7 +3906,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
3781
3906
|
}] } });
|
|
3782
3907
|
|
|
3783
3908
|
/*
|
|
3784
|
-
* Copyright 2015-
|
|
3909
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
3785
3910
|
*
|
|
3786
3911
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
3787
3912
|
* you may not use this file except in compliance with the License.
|
|
@@ -3796,13 +3921,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
3796
3921
|
* limitations under the License.
|
|
3797
3922
|
*/
|
|
3798
3923
|
class CaseManagementDetailComponent {
|
|
3799
|
-
constructor(route, caseDetailService, configService, pageTitleService, router, tabService) {
|
|
3924
|
+
constructor(route, caseDetailService, caseManagementService, configService, configurationIssueService, pageTitleService, router, sseService, tabService) {
|
|
3800
3925
|
this.route = route;
|
|
3801
3926
|
this.caseDetailService = caseDetailService;
|
|
3927
|
+
this.caseManagementService = caseManagementService;
|
|
3802
3928
|
this.configService = configService;
|
|
3929
|
+
this.configurationIssueService = configurationIssueService;
|
|
3803
3930
|
this.pageTitleService = pageTitleService;
|
|
3804
3931
|
this.router = router;
|
|
3932
|
+
this.sseService = sseService;
|
|
3805
3933
|
this.tabService = tabService;
|
|
3934
|
+
this.testIds = CASE_MANAGEMENT_DETAIL_TEST_IDS;
|
|
3806
3935
|
this.params$ = getCaseManagementRouteParams(this.route);
|
|
3807
3936
|
this.caseDefinitionKey$ = this.params$.pipe(map(params => params?.caseDefinitionKey ?? ''));
|
|
3808
3937
|
this.currentTab$ = this.router.events.pipe(filter(event => event instanceof NavigationEnd), map(event => {
|
|
@@ -3814,6 +3943,12 @@ class CaseManagementDetailComponent {
|
|
|
3814
3943
|
this.documentDefinitionTitle$ = this.pageTitleService.customPageTitle$;
|
|
3815
3944
|
this.TabEnum = TabEnum;
|
|
3816
3945
|
this._subscriptions = new Subscription();
|
|
3946
|
+
this._refreshConfigurationIssues$ = new BehaviorSubject(null);
|
|
3947
|
+
this.configurationIssues$ = combineLatest([
|
|
3948
|
+
this.caseDetailService.selectedCaseDefinitionKey$,
|
|
3949
|
+
this.caseDetailService.selectedCaseDefinitionVersionTag$,
|
|
3950
|
+
this._refreshConfigurationIssues$,
|
|
3951
|
+
]).pipe(switchMap(([key, version]) => this.caseManagementService.getConfigurationIssues(key, version)), map(issues => issues.filter(issue => !issue.resolved)), shareReplay(1));
|
|
3817
3952
|
const featureToggles = this.configService.config.featureToggles;
|
|
3818
3953
|
this.caseListColumn = featureToggles?.caseListColumn ?? true;
|
|
3819
3954
|
this.tabManagementEnabled = featureToggles?.enableTabManagement ?? true;
|
|
@@ -3825,6 +3960,8 @@ class CaseManagementDetailComponent {
|
|
|
3825
3960
|
this.pageTitleService.setCustomPageTitle(documentDefinition.schema.title);
|
|
3826
3961
|
}));
|
|
3827
3962
|
this.openActiveVersionSubscription();
|
|
3963
|
+
this.openConfigurationIssueSseSubscription();
|
|
3964
|
+
this.openConfigurationIssueSubscription();
|
|
3828
3965
|
this.pageTitleService.disableReset();
|
|
3829
3966
|
this.openParamsSubscription();
|
|
3830
3967
|
}
|
|
@@ -3832,6 +3969,7 @@ class CaseManagementDetailComponent {
|
|
|
3832
3969
|
this.tabService.currentTab = TabEnum.GENERAL;
|
|
3833
3970
|
this._subscriptions.unsubscribe();
|
|
3834
3971
|
this.pageTitleService.enableReset();
|
|
3972
|
+
this.configurationIssueService.setUnresolvedIssueTypes([]);
|
|
3835
3973
|
}
|
|
3836
3974
|
navigateToTab(tab) {
|
|
3837
3975
|
if (!this._params)
|
|
@@ -3862,6 +4000,19 @@ class CaseManagementDetailComponent {
|
|
|
3862
4000
|
this._activeVersion = versionTag;
|
|
3863
4001
|
}));
|
|
3864
4002
|
}
|
|
4003
|
+
openConfigurationIssueSubscription() {
|
|
4004
|
+
this._subscriptions.add(this.configurationIssues$.subscribe(issues => this.configurationIssueService.setUnresolvedIssueTypes(issues.map(issue => issue.issueType))));
|
|
4005
|
+
}
|
|
4006
|
+
openConfigurationIssueSseSubscription() {
|
|
4007
|
+
this._subscriptions.add(combineLatest([
|
|
4008
|
+
this.caseDetailService.selectedCaseDefinitionKey$,
|
|
4009
|
+
this.sseService.getSseEventObservable('CONFIGURATION_ISSUE_UPDATED'),
|
|
4010
|
+
])
|
|
4011
|
+
.pipe(filter(([key, event]) => event.caseDefinitionKey === key))
|
|
4012
|
+
.subscribe(() => {
|
|
4013
|
+
this._refreshConfigurationIssues$.next(null);
|
|
4014
|
+
}));
|
|
4015
|
+
}
|
|
3865
4016
|
openParamsSubscription() {
|
|
3866
4017
|
this._subscriptions.add(this.params$.subscribe(params => {
|
|
3867
4018
|
this.caseDetailService.setSelectedCaseDefinitionKey(params?.caseDefinitionKey ?? '');
|
|
@@ -3873,13 +4024,13 @@ class CaseManagementDetailComponent {
|
|
|
3873
4024
|
//TODO: Fix pending changes with new routing
|
|
3874
4025
|
// this._documentDefinitionTab?.onCanDeactivate();
|
|
3875
4026
|
}
|
|
3876
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3877
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
4027
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDetailComponent, deps: [{ token: i2$1.ActivatedRoute }, { token: CaseDetailService }, { token: CaseManagementService }, { token: i3$1.ConfigService }, { token: i3$1.ConfigurationIssueService }, { token: i7.PageTitleService }, { token: i2$1.Router }, { token: i7$1.SseService }, { token: TabService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4028
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementDetailComponent, isStandalone: false, selector: "ng-component", providers: [CaseDetailService], viewQueries: [{ propertyName: "_tabs", predicate: Tab, descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2026 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 currentTab: currentTab$ | async,\n injectedTabs: injectedCaseManagementTabs$ | async,\n } as obs\"\n class=\"case-management-detail-container\"\n>\n @if (configurationIssues$ | async; as issues) {\n @if (issues.length > 0) {\n <cds-notification\n class=\"environment-config-warning\"\n [notificationObj]=\"{\n type: 'warning',\n title: ('caseManagement.environmentConfig.bannerTitle' | translate),\n message: ('caseManagement.environmentConfig.bannerMessage' | translate),\n showClose: false,\n lowContrast: true\n }\"\n (click)=\"navigateToTab('zgw')\"\n ></cds-notification>\n }\n }\n\n <cds-tabs class=\"case-management-tabs\" type=\"inline\" [attr.data-test-id]=\"testIds.tabs\">\n <cds-tab\n class=\"no-padding-left-right main-content\"\n [id]=\"TabEnum.GENERAL\"\n [active]=\"obs.currentTab === TabEnum.GENERAL\"\n [heading]=\"'caseManagement.tabs.general' | translate\"\n (selected)=\"navigateToTab(TabEnum.GENERAL)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right main-content\"\n [id]=\"TabEnum.PROCESSES\"\n [active]=\"obs.currentTab === TabEnum.PROCESSES\"\n [heading]=\"'caseManagement.tabs.processes' | translate\"\n (selected)=\"navigateToTab(TabEnum.PROCESSES)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right main-content\"\n [id]=\"TabEnum.DECISIONS\"\n [active]=\"obs.currentTab === TabEnum.DECISIONS\"\n [heading]=\"'caseManagement.tabs.decision' | translate\"\n (selected)=\"navigateToTab(TabEnum.DECISIONS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.DOCUMENT\"\n [active]=\"obs.currentTab === TabEnum.DOCUMENT\"\n [heading]=\"'caseManagement.tabs.document' | translate\"\n (selected)=\"navigateToTab(TabEnum.DOCUMENT)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.FORMS\"\n [active]=\"obs.currentTab === TabEnum.FORMS\"\n [heading]=\"'caseManagement.tabs.forms' | translate\"\n (selected)=\"navigateToTab(TabEnum.FORMS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.FORM_FLOWS\"\n [active]=\"obs.currentTab === TabEnum.FORM_FLOWS\"\n [heading]=\"'caseManagement.tabs.formFlows' | translate\"\n (selected)=\"navigateToTab(TabEnum.FORM_FLOWS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.TASKS\"\n [active]=\"obs.currentTab === TabEnum.TASKS\"\n [heading]=\"'caseManagement.tabs.tasks' | translate\"\n (selected)=\"navigateToTab(TabEnum.TASKS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"main-content no-padding-left-right no-padding-bottom\"\n [id]=\"TabEnum.CASE_LIST\"\n [active]=\"obs.currentTab === TabEnum.CASE_LIST\"\n [heading]=\"'caseManagement.tabs.caseListTab.title' | translate\"\n (selected)=\"navigateToTab(TabEnum.CASE_LIST)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"main-content no-padding-left-right no-padding-bottom\"\n [id]=\"TabEnum.CASE_DETAILS\"\n [active]=\"obs.currentTab === TabEnum.CASE_DETAILS\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.title' | translate\"\n (selected)=\"navigateToTab(TabEnum.CASE_DETAILS)\"\n >\n </cds-tab>\n\n @for (injectedTab of obs.injectedTabs; track injectedTab.translationKey) {\n @if (injectedTab.enabled$ | async) {\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [active]=\"obs.currentTab === (injectedTab.tabRoute ?? injectedTab.translationKey)\"\n [heading]=\"injectedTab.translationKey | translate\"\n (selected)=\"navigateToTab(injectedTab.tabRoute ?? injectedTab.translationKey)\"\n >\n </cds-tab>\n }\n }\n </cds-tabs>\n\n <div class=\"case-management-detail-container__content\">\n <router-outlet></router-outlet>\n </div>\n</div>\n\n<ng-container renderInPageHeader [fullWidth]=\"true\">\n <ng-template>\n <valtimo-case-management-detail-actions\n [documentDefinitionTitle]=\"documentDefinitionTitle$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n (versionSet)=\"onVersionSet($event)\"\n ></valtimo-case-management-detail-actions>\n </ng-template>\n</ng-container>\n", styles: ["::ng-deep .case-management-tabs .cds--tab-content{background-color:var(--cds-layer);padding:0!important;margin-top:24px}::ng-deep .case-management-tabs .cds--tab-content:focus{outline:none}::ng-deep .case-management-tabs .no-padding-left-right .cds--tab-content{padding-left:0;padding-right:0}::ng-deep .case-management-tabs .no-padding-top-bottom .cds--tab-content{padding-top:0;padding-bottom:0}::ng-deep .case-management-tabs .no-padding-bottom .cds--tab-content{padding-bottom:0}.tab-container{min-height:300px}.case-management-detail-container{display:flex;flex-direction:column;width:100%}.environment-config-warning{max-width:100%;margin-bottom:16px;cursor:pointer}\n/*!\n * Copyright 2015-2026 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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i7.RenderInPageHeaderDirective, selector: "[renderInPageHeader]", inputs: ["fullWidth"] }, { kind: "component", type: i2.Tabs, selector: "cds-tabs, ibm-tabs", inputs: ["position", "cacheActive", "followFocus", "isNavigation", "ariaLabel", "ariaLabelledby", "type", "theme", "skeleton"] }, { kind: "component", type: i2.Tab, selector: "cds-tab, ibm-tab", inputs: ["heading", "title", "context", "active", "disabled", "tabIndex", "id", "cacheActive", "tabContent", "templateContext"], outputs: ["selected"] }, { kind: "component", type: CaseManagementDetailActionsComponent, selector: "valtimo-case-management-detail-actions", inputs: ["documentDefinitionTitle", "caseDefinitionKey"], outputs: ["versionSet"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3878
4029
|
}
|
|
3879
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4030
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDetailComponent, decorators: [{
|
|
3880
4031
|
type: Component,
|
|
3881
|
-
args: [{ standalone: false, providers: [CaseDetailService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<!--\n ~ Copyright 2015-
|
|
3882
|
-
}], ctorParameters: () => [{ type: i2$1.ActivatedRoute }, { type: CaseDetailService }, { type: i3$1.ConfigService }, { type: i7.PageTitleService }, { type: i2$1.Router }, { type: TabService }], propDecorators: { _tabs: [{
|
|
4032
|
+
args: [{ standalone: false, providers: [CaseDetailService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<!--\n ~ Copyright 2015-2026 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 currentTab: currentTab$ | async,\n injectedTabs: injectedCaseManagementTabs$ | async,\n } as obs\"\n class=\"case-management-detail-container\"\n>\n @if (configurationIssues$ | async; as issues) {\n @if (issues.length > 0) {\n <cds-notification\n class=\"environment-config-warning\"\n [notificationObj]=\"{\n type: 'warning',\n title: ('caseManagement.environmentConfig.bannerTitle' | translate),\n message: ('caseManagement.environmentConfig.bannerMessage' | translate),\n showClose: false,\n lowContrast: true\n }\"\n (click)=\"navigateToTab('zgw')\"\n ></cds-notification>\n }\n }\n\n <cds-tabs class=\"case-management-tabs\" type=\"inline\" [attr.data-test-id]=\"testIds.tabs\">\n <cds-tab\n class=\"no-padding-left-right main-content\"\n [id]=\"TabEnum.GENERAL\"\n [active]=\"obs.currentTab === TabEnum.GENERAL\"\n [heading]=\"'caseManagement.tabs.general' | translate\"\n (selected)=\"navigateToTab(TabEnum.GENERAL)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right main-content\"\n [id]=\"TabEnum.PROCESSES\"\n [active]=\"obs.currentTab === TabEnum.PROCESSES\"\n [heading]=\"'caseManagement.tabs.processes' | translate\"\n (selected)=\"navigateToTab(TabEnum.PROCESSES)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right main-content\"\n [id]=\"TabEnum.DECISIONS\"\n [active]=\"obs.currentTab === TabEnum.DECISIONS\"\n [heading]=\"'caseManagement.tabs.decision' | translate\"\n (selected)=\"navigateToTab(TabEnum.DECISIONS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.DOCUMENT\"\n [active]=\"obs.currentTab === TabEnum.DOCUMENT\"\n [heading]=\"'caseManagement.tabs.document' | translate\"\n (selected)=\"navigateToTab(TabEnum.DOCUMENT)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.FORMS\"\n [active]=\"obs.currentTab === TabEnum.FORMS\"\n [heading]=\"'caseManagement.tabs.forms' | translate\"\n (selected)=\"navigateToTab(TabEnum.FORMS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.FORM_FLOWS\"\n [active]=\"obs.currentTab === TabEnum.FORM_FLOWS\"\n [heading]=\"'caseManagement.tabs.formFlows' | translate\"\n (selected)=\"navigateToTab(TabEnum.FORM_FLOWS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [id]=\"TabEnum.TASKS\"\n [active]=\"obs.currentTab === TabEnum.TASKS\"\n [heading]=\"'caseManagement.tabs.tasks' | translate\"\n (selected)=\"navigateToTab(TabEnum.TASKS)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"main-content no-padding-left-right no-padding-bottom\"\n [id]=\"TabEnum.CASE_LIST\"\n [active]=\"obs.currentTab === TabEnum.CASE_LIST\"\n [heading]=\"'caseManagement.tabs.caseListTab.title' | translate\"\n (selected)=\"navigateToTab(TabEnum.CASE_LIST)\"\n >\n </cds-tab>\n\n <cds-tab\n class=\"main-content no-padding-left-right no-padding-bottom\"\n [id]=\"TabEnum.CASE_DETAILS\"\n [active]=\"obs.currentTab === TabEnum.CASE_DETAILS\"\n [heading]=\"'caseManagement.tabs.caseDetailsTab.title' | translate\"\n (selected)=\"navigateToTab(TabEnum.CASE_DETAILS)\"\n >\n </cds-tab>\n\n @for (injectedTab of obs.injectedTabs; track injectedTab.translationKey) {\n @if (injectedTab.enabled$ | async) {\n <cds-tab\n class=\"no-padding-left-right no-padding-top-bottom\"\n [active]=\"obs.currentTab === (injectedTab.tabRoute ?? injectedTab.translationKey)\"\n [heading]=\"injectedTab.translationKey | translate\"\n (selected)=\"navigateToTab(injectedTab.tabRoute ?? injectedTab.translationKey)\"\n >\n </cds-tab>\n }\n }\n </cds-tabs>\n\n <div class=\"case-management-detail-container__content\">\n <router-outlet></router-outlet>\n </div>\n</div>\n\n<ng-container renderInPageHeader [fullWidth]=\"true\">\n <ng-template>\n <valtimo-case-management-detail-actions\n [documentDefinitionTitle]=\"documentDefinitionTitle$ | async\"\n [caseDefinitionKey]=\"caseDefinitionKey$ | async\"\n (versionSet)=\"onVersionSet($event)\"\n ></valtimo-case-management-detail-actions>\n </ng-template>\n</ng-container>\n", styles: ["::ng-deep .case-management-tabs .cds--tab-content{background-color:var(--cds-layer);padding:0!important;margin-top:24px}::ng-deep .case-management-tabs .cds--tab-content:focus{outline:none}::ng-deep .case-management-tabs .no-padding-left-right .cds--tab-content{padding-left:0;padding-right:0}::ng-deep .case-management-tabs .no-padding-top-bottom .cds--tab-content{padding-top:0;padding-bottom:0}::ng-deep .case-management-tabs .no-padding-bottom .cds--tab-content{padding-bottom:0}.tab-container{min-height:300px}.case-management-detail-container{display:flex;flex-direction:column;width:100%}.environment-config-warning{max-width:100%;margin-bottom:16px;cursor:pointer}\n/*!\n * Copyright 2015-2026 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"] }]
|
|
4033
|
+
}], ctorParameters: () => [{ type: i2$1.ActivatedRoute }, { type: CaseDetailService }, { type: CaseManagementService }, { type: i3$1.ConfigService }, { type: i3$1.ConfigurationIssueService }, { type: i7.PageTitleService }, { type: i2$1.Router }, { type: i7$1.SseService }, { type: TabService }], propDecorators: { _tabs: [{
|
|
3883
4034
|
type: ViewChildren,
|
|
3884
4035
|
args: [Tab]
|
|
3885
4036
|
}] } });
|
|
@@ -3961,10 +4112,10 @@ class CaseManagementDocumentDefinitionComponent {
|
|
|
3961
4112
|
onChangeEvent() {
|
|
3962
4113
|
this._pendingChanges$.next(true);
|
|
3963
4114
|
}
|
|
3964
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3965
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDocumentDefinitionComponent, deps: [{ token: i1$2.DocumentService }, { token: CaseDetailService }, { token: i2.IconService }, { token: i7.PageHeaderService }, { token: i2$1.ActivatedRoute }, { token: i3$1.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementDocumentDefinitionComponent, isStandalone: false, selector: "ng-component", inputs: { caseDefinitionKey: "caseDefinitionKey" }, outputs: { cancelRedirect: "cancelRedirect", confirmRedirect: "confirmRedirect", pendingChangesUpdate: "pendingChangesUpdate" }, viewQueries: [{ propertyName: "cancelModal", first: true, predicate: ["cancelModal"], descendants: 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<valtimo-json-editor\n [model]=\"documentDefinitionModel$ | async\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"128\"\n [showEditButton]=\"hasEditPermissions$ | async\"\n (changeEvent)=\"onChangeEvent()\"\n (discardEvent)=\"onDiscardEvent()\"\n (keepEditingEvent)=\"onKeepEditingEvent()\"\n (saveEvent)=\"onSaveEvent($event)\"\n>\n <button\n cdsButton=\"ghost\"\n [disabled]=\"\n (loadingDocumentDefinition$ | async) || (selectedDocumentDefinition$ | async) === null\n \"\n (click)=\"downloadDefinition()\"\n >\n {{ 'interface.download' | translate }}\n\n <svg cdsIcon=\"download\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n</valtimo-json-editor>\n\n<a id=\"downloadAnchorElement\" style=\"display: none\"></a>\n\n<ng-template #loading>\n <div class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-template>\n", styles: [".loading-container{display:flex;width:100%;justify-content:center;padding-top:16px;padding-bottom:16px}:host ::ng-deep .cds--toolbar-content{width:100%;background:var(--cds-layer-01)}\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: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Loading, selector: "cds-loading, ibm-loading", inputs: ["title", "isActive", "size", "overlay"] }, { kind: "component", type: i7.JsonEditorComponent, selector: "valtimo-json-editor", inputs: ["disabled", "model", "editorOptions", "fitPage", "fitPageSpaceAdjustment", "formatOnLoad", "heightPx", "heightStyle", "jsonSchema", "showEditButton", "widthPx"], outputs: ["changeEvent", "discardEvent", "keepEditingEvent", "saveEvent"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3966
4117
|
}
|
|
3967
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementDocumentDefinitionComponent, decorators: [{
|
|
3968
4119
|
type: Component,
|
|
3969
4120
|
args: [{ standalone: false, changeDetection: ChangeDetectionStrategy.OnPush, 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<valtimo-json-editor\n [model]=\"documentDefinitionModel$ | async\"\n [fitPage]=\"true\"\n [fitPageSpaceAdjustment]=\"128\"\n [showEditButton]=\"hasEditPermissions$ | async\"\n (changeEvent)=\"onChangeEvent()\"\n (discardEvent)=\"onDiscardEvent()\"\n (keepEditingEvent)=\"onKeepEditingEvent()\"\n (saveEvent)=\"onSaveEvent($event)\"\n>\n <button\n cdsButton=\"ghost\"\n [disabled]=\"\n (loadingDocumentDefinition$ | async) || (selectedDocumentDefinition$ | async) === null\n \"\n (click)=\"downloadDefinition()\"\n >\n {{ 'interface.download' | translate }}\n\n <svg cdsIcon=\"download\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n</valtimo-json-editor>\n\n<a id=\"downloadAnchorElement\" style=\"display: none\"></a>\n\n<ng-template #loading>\n <div class=\"loading-container\">\n <cds-loading></cds-loading>\n </div>\n</ng-template>\n", styles: [".loading-container{display:flex;width:100%;justify-content:center;padding-top:16px;padding-bottom:16px}:host ::ng-deep .cds--toolbar-content{width:100%;background:var(--cds-layer-01)}\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"] }]
|
|
3970
4121
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: CaseDetailService }, { type: i2.IconService }, { type: i7.PageHeaderService }, { type: i2$1.ActivatedRoute }, { type: i3$1.EditPermissionsService }], propDecorators: { cancelModal: [{
|
|
@@ -4000,6 +4151,7 @@ class CaseManagementCaseHandlerComponent {
|
|
|
4000
4151
|
this.documentService = documentService;
|
|
4001
4152
|
this.iconService = iconService;
|
|
4002
4153
|
this.route = route;
|
|
4154
|
+
this.testIds = CASE_MANAGEMENT_CASE_HANDLER_TEST_IDS;
|
|
4003
4155
|
this.disabled$ = new BehaviorSubject(false);
|
|
4004
4156
|
this.loading$ = new BehaviorSubject(true);
|
|
4005
4157
|
this.params$ = getCaseManagementRouteParams(this.route).pipe(map((params) => ({
|
|
@@ -4041,12 +4193,12 @@ class CaseManagementCaseHandlerComponent {
|
|
|
4041
4193
|
autoAssignTasks: !currentSettings.autoAssignTasks,
|
|
4042
4194
|
}, caseDefinitionKey, caseDefinitionVersionTag);
|
|
4043
4195
|
}
|
|
4044
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4045
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4196
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCaseHandlerComponent, deps: [{ token: i1$2.DocumentService }, { token: i2.IconService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4197
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementCaseHandlerComponent, isStandalone: false, selector: "valtimo-case-management-case-handler", inputs: { isReadOnly: "isReadOnly" }, 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 currentValue: currentValue$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n caseDefinitionVersionTag: caseDefinitionVersionTag$ | async,\n loading: loading$ | async,\n disabled: disabled$ | async,\n } as obs\"\n class=\"case-handler-process\"\n [cdsLayer]=\"0\"\n>\n <p class=\"case-handler-process__title\">\n {{ 'caseManagement.tabs.generalTab.caseHandler.title' | translate }}\n </p>\n\n <div class=\"case-handler-process__toggles\">\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [checked]=\"obs?.currentValue?.canHaveAssignee\"\n [disabled]=\"obs.disabled || isReadOnly\"\n (checkedChange)=\"\n toggleAssignee(obs?.currentValue, obs.caseDefinitionKey, obs.caseDefinitionVersionTag)\n \"\n [label]=\"'caseManagement.tabs.generalTab.caseHandler.canHaveHandler' | translate\"\n [onText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.onText' | translate\"\n [offText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.offText' | translate\"\n [attr.data-test-id]=\"testIds.canHaveHandler\"\n ></cds-toggle>\n\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"\n 'caseManagement.tabs.generalTab.caseHandler.disabledAutoAssignTooltip' | translate\n \"\n [align]=\"'top'\"\n >\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [checked]=\"obs?.currentValue?.autoAssignTasks\"\n [disabled]=\"!obs?.currentValue?.canHaveAssignee || isReadOnly\"\n (checkedChange)=\"\n toggleTaskAssignment(\n obs?.currentValue,\n obs?.caseDefinitionKey,\n obs.caseDefinitionVersionTag\n )\n \"\n [label]=\"'caseManagement.toggleAutoAssignTasks.checkboxDescription' | translate\"\n [onText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.onText' | translate\"\n [offText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.offText' | translate\"\n [attr.data-test-id]=\"testIds.automaticallyAssign\"\n ></cds-toggle>\n </cds-tooltip>\n </div>\n</div>\n", styles: [".case-handler-process{background-color:var(--cds-layer);padding:24px}.case-handler-process__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.case-handler-process__toggles{display:flex;flex-direction:column;gap:8px}.case-handler-process__helper-text{font-size:12px;color:var(--cds-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 0}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "directive", type: i7.ReadOnlyDirective, selector: "[valtimoReadOnly]", inputs: ["isReadOnly"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
4046
4198
|
}
|
|
4047
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4199
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCaseHandlerComponent, decorators: [{
|
|
4048
4200
|
type: Component,
|
|
4049
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-case-handler', 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 currentValue: currentValue$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n caseDefinitionVersionTag: caseDefinitionVersionTag$ | async,\n loading: loading$ | async,\n disabled: disabled$ | async,\n } as obs\"\n class=\"case-handler-process\"\n [cdsLayer]=\"0\"\n>\n <p class=\"case-handler-process__title\">\n {{ 'caseManagement.tabs.generalTab.caseHandler.title' | translate }}\n </p>\n\n <div class=\"case-handler-process__toggles\">\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [checked]=\"obs?.currentValue?.canHaveAssignee\"\n [disabled]=\"obs.disabled || isReadOnly\"\n (checkedChange)=\"\n toggleAssignee(obs?.currentValue, obs.caseDefinitionKey, obs.caseDefinitionVersionTag)\n \"\n [label]=\"'caseManagement.tabs.generalTab.caseHandler.canHaveHandler' | translate\"\n [onText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.onText' | translate\"\n [offText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.offText' | translate\"\n data-test-id=\"
|
|
4201
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-case-handler', 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 currentValue: currentValue$ | async,\n caseDefinitionKey: caseDefinitionKey$ | async,\n caseDefinitionVersionTag: caseDefinitionVersionTag$ | async,\n loading: loading$ | async,\n disabled: disabled$ | async,\n } as obs\"\n class=\"case-handler-process\"\n [cdsLayer]=\"0\"\n>\n <p class=\"case-handler-process__title\">\n {{ 'caseManagement.tabs.generalTab.caseHandler.title' | translate }}\n </p>\n\n <div class=\"case-handler-process__toggles\">\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [checked]=\"obs?.currentValue?.canHaveAssignee\"\n [disabled]=\"obs.disabled || isReadOnly\"\n (checkedChange)=\"\n toggleAssignee(obs?.currentValue, obs.caseDefinitionKey, obs.caseDefinitionVersionTag)\n \"\n [label]=\"'caseManagement.tabs.generalTab.caseHandler.canHaveHandler' | translate\"\n [onText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.onText' | translate\"\n [offText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.offText' | translate\"\n [attr.data-test-id]=\"testIds.canHaveHandler\"\n ></cds-toggle>\n\n <cds-tooltip\n [isOpen]=\"false\"\n [description]=\"\n 'caseManagement.tabs.generalTab.caseHandler.disabledAutoAssignTooltip' | translate\n \"\n [align]=\"'top'\"\n >\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [checked]=\"obs?.currentValue?.autoAssignTasks\"\n [disabled]=\"!obs?.currentValue?.canHaveAssignee || isReadOnly\"\n (checkedChange)=\"\n toggleTaskAssignment(\n obs?.currentValue,\n obs?.caseDefinitionKey,\n obs.caseDefinitionVersionTag\n )\n \"\n [label]=\"'caseManagement.toggleAutoAssignTasks.checkboxDescription' | translate\"\n [onText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.onText' | translate\"\n [offText]=\"'caseManagement.tabs.generalTab.caseHandler.toggle.offText' | translate\"\n [attr.data-test-id]=\"testIds.automaticallyAssign\"\n ></cds-toggle>\n </cds-tooltip>\n </div>\n</div>\n", styles: [".case-handler-process{background-color:var(--cds-layer);padding:24px}.case-handler-process__title{font-size:16px;line-height:24px;font-weight:600;margin-bottom:16px}.case-handler-process__toggles{display:flex;flex-direction:column;gap:8px}.case-handler-process__helper-text{font-size:12px;color:var(--cds-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 0}\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"] }]
|
|
4050
4202
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2.IconService }, { type: i2$1.ActivatedRoute }], propDecorators: { isReadOnly: [{
|
|
4051
4203
|
type: Input
|
|
4052
4204
|
}] } });
|
|
@@ -4088,6 +4240,7 @@ class CaseManagementExternalStartFormComponent {
|
|
|
4088
4240
|
this.translateService = translateService;
|
|
4089
4241
|
this.logger = logger;
|
|
4090
4242
|
this.globalNotificationService = globalNotificationService;
|
|
4243
|
+
this.testIds = CASE_MANAGEMENT_EXTERNAL_START_FORM_TEST_IDS;
|
|
4091
4244
|
this._URL_PATTERN = new RegExp('^(?:https?:\\/\\/)?(?:localhost|[\\w]+(?:-[\\w]+)*(?:\\.[\\w]+(?:-[\\w]+)*)+)(:\\d+)?(\\/\\S*)?$');
|
|
4092
4245
|
this.form = this.fb.group({
|
|
4093
4246
|
hasExternalForm: [false],
|
|
@@ -4175,12 +4328,12 @@ class CaseManagementExternalStartFormComponent {
|
|
|
4175
4328
|
},
|
|
4176
4329
|
});
|
|
4177
4330
|
}
|
|
4178
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4179
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4331
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementExternalStartFormComponent, deps: [{ token: i2$1.ActivatedRoute }, { token: i1$2.DocumentService }, { token: i1$4.FormBuilder }, { token: i3.TranslateService }, { token: i5.NGXLogger }, { token: i3$1.GlobalNotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4332
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementExternalStartFormComponent, isStandalone: false, selector: "valtimo-case-management-external-start-form", inputs: { isReadOnly: "isReadOnly" }, 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<cds-tile\n class=\"external-case-form-container\"\n *ngIf=\"{params: params$ | async, caseSettings: caseSettings$ | async} as obs\"\n>\n <h4 class=\"external-case-form-container__title\">\n {{ 'caseManagement.externalStartForm.title' | translate }}\n </h4>\n\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" [cdsLayer]=\"1\">\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [disabled]=\"isReadOnly\"\n formControlName=\"hasExternalForm\"\n label=\"{{ 'caseManagement.externalStartForm.enabledToggle' | translate }}\"\n onText=\"{{ 'caseManagement.externalStartForm.enabledToggleOn' | translate }}\"\n offText=\"{{ 'caseManagement.externalStartForm.enabledToggleOff' | translate }}\"\n [attr.data-test-id]=\"testIds.hasExternalForm\"\n ></cds-toggle>\n\n <cds-label>\n {{ 'caseManagement.externalStartForm.externalUrl' | translate }}\n\n <input\n cdsText\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n type=\"text\"\n formControlName=\"externalFormUrl\"\n [attr.data-test-id]=\"testIds.externalFormUrl\"\n [placeholder]=\"\n isReadOnly ? '-' : ('caseManagement.externalStartForm.externalUrlPlaceholder' | translate)\n \"\n maxlength=\"512\"\n />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.externalStartForm.description' | translate }}\n\n <input\n cdsText\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n type=\"text\"\n formControlName=\"description\"\n [attr.data-test-id]=\"testIds.externalFormDescription\"\n [placeholder]=\"\n isReadOnly ? '-' : ('caseManagement.externalStartForm.descriptionPlaceholder' | translate)\n \"\n maxlength=\"512\"\n />\n </cds-label>\n\n <button\n *ngIf=\"!isReadOnly\"\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"!form.valid || isReadOnly\"\n [attr.data-test-id]=\"testIds.externalFormSave\"\n >\n {{ 'caseManagement.externalStartForm.apply' | translate }}\n </button>\n </form>\n</cds-tile>\n", styles: [":host{display:flex;padding:24px;margin-bottom:16px;background:var(--cds-layer)}.external-case-form-container,.external-case-form-container form{display:flex;flex-direction:column;gap:16px;width:100%}.external-case-form-container__title,.external-case-form-container form__title{font-size:16px;line-height:24px;font-weight:600}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.Toggle, selector: "cds-toggle, ibm-toggle", inputs: ["offText", "onText", "label", "size", "hideLabel", "ariaLabel", "skeleton"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "directive", type: i7.ReadOnlyDirective, selector: "[valtimoReadOnly]", inputs: ["isReadOnly"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
4180
4333
|
}
|
|
4181
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4334
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementExternalStartFormComponent, decorators: [{
|
|
4182
4335
|
type: Component,
|
|
4183
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-external-start-form', 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<cds-tile\n class=\"external-case-form-container\"\n *ngIf=\"{params: params$ | async, caseSettings: caseSettings$ | async} as obs\"\n>\n <h4 class=\"external-case-form-container__title\">\n {{ 'caseManagement.externalStartForm.title' | translate }}\n </h4>\n\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" [cdsLayer]=\"1\">\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [disabled]=\"isReadOnly\"\n formControlName=\"hasExternalForm\"\n label=\"{{ 'caseManagement.externalStartForm.enabledToggle' | translate }}\"\n onText=\"{{ 'caseManagement.externalStartForm.enabledToggleOn' | translate }}\"\n offText=\"{{ 'caseManagement.externalStartForm.enabledToggleOff' | translate }}\"\n data-test-id=\"
|
|
4336
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-external-start-form', 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<cds-tile\n class=\"external-case-form-container\"\n *ngIf=\"{params: params$ | async, caseSettings: caseSettings$ | async} as obs\"\n>\n <h4 class=\"external-case-form-container__title\">\n {{ 'caseManagement.externalStartForm.title' | translate }}\n </h4>\n\n <form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" [cdsLayer]=\"1\">\n <cds-toggle\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n [disabled]=\"isReadOnly\"\n formControlName=\"hasExternalForm\"\n label=\"{{ 'caseManagement.externalStartForm.enabledToggle' | translate }}\"\n onText=\"{{ 'caseManagement.externalStartForm.enabledToggleOn' | translate }}\"\n offText=\"{{ 'caseManagement.externalStartForm.enabledToggleOff' | translate }}\"\n [attr.data-test-id]=\"testIds.hasExternalForm\"\n ></cds-toggle>\n\n <cds-label>\n {{ 'caseManagement.externalStartForm.externalUrl' | translate }}\n\n <input\n cdsText\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n type=\"text\"\n formControlName=\"externalFormUrl\"\n [attr.data-test-id]=\"testIds.externalFormUrl\"\n [placeholder]=\"\n isReadOnly ? '-' : ('caseManagement.externalStartForm.externalUrlPlaceholder' | translate)\n \"\n maxlength=\"512\"\n />\n </cds-label>\n\n <cds-label>\n {{ 'caseManagement.externalStartForm.description' | translate }}\n\n <input\n cdsText\n valtimoReadOnly\n [isReadOnly]=\"isReadOnly\"\n type=\"text\"\n formControlName=\"description\"\n [attr.data-test-id]=\"testIds.externalFormDescription\"\n [placeholder]=\"\n isReadOnly ? '-' : ('caseManagement.externalStartForm.descriptionPlaceholder' | translate)\n \"\n maxlength=\"512\"\n />\n </cds-label>\n\n <button\n *ngIf=\"!isReadOnly\"\n cdsButton=\"primary\"\n type=\"submit\"\n [disabled]=\"!form.valid || isReadOnly\"\n [attr.data-test-id]=\"testIds.externalFormSave\"\n >\n {{ 'caseManagement.externalStartForm.apply' | translate }}\n </button>\n </form>\n</cds-tile>\n", styles: [":host{display:flex;padding:24px;margin-bottom:16px;background:var(--cds-layer)}.external-case-form-container,.external-case-form-container form{display:flex;flex-direction:column;gap:16px;width:100%}.external-case-form-container__title,.external-case-form-container form__title{font-size:16px;line-height:24px;font-weight:600}\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"] }]
|
|
4184
4337
|
}], ctorParameters: () => [{ type: i2$1.ActivatedRoute }, { type: i1$2.DocumentService }, { type: i1$4.FormBuilder }, { type: i3.TranslateService }, { type: i5.NGXLogger }, { type: i3$1.GlobalNotificationService }], propDecorators: { isReadOnly: [{
|
|
4185
4338
|
type: Input
|
|
4186
4339
|
}] } });
|
|
@@ -4234,10 +4387,10 @@ class CaseManagementGeneralComponent {
|
|
|
4234
4387
|
});
|
|
4235
4388
|
this.cdr.detectChanges();
|
|
4236
4389
|
}
|
|
4237
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4238
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
4390
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementGeneralComponent, deps: [{ token: i1$2.DocumentService }, { token: i2$1.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: CaseManagementService }, { token: CASE_CONFIGURATION_EXTENSIONS_TOKEN, optional: true }, { token: i3$1.EditPermissionsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4391
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementGeneralComponent, isStandalone: false, selector: "valtimo-case-management-general", viewQueries: [{ propertyName: "_extensions", first: true, predicate: ["extensions"], descendants: true, read: ViewContainerRef }], 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<ng-container\n *ngIf=\"{\n isReadOnly: isReadOnly$ | async,\n } as obs\"\n>\n @if (obs.isReadOnly) {\n <cds-notification\n class=\"read-only-notification\"\n [notificationObj]=\"{\n type: 'info',\n title: 'caseManagement.tabs.generalTab.readOnlyNotification.title' | translate,\n message: 'caseManagement.tabs.generalTab.readOnlyNotification.message' | translate,\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n }\n\n <div class=\"case-management-general-tab\" muuri [columnMinWidth]=\"350\">\n <ng-template #extensions></ng-template>\n\n <valtimo-muuri-item>\n <valtimo-case-management-case-handler\n muuriItem\n [isReadOnly]=\"obs.isReadOnly\"\n *ngIf=\"documentDefinition$ | async\"\n ></valtimo-case-management-case-handler>\n </valtimo-muuri-item>\n\n <valtimo-muuri-item>\n <valtimo-case-management-external-start-form [isReadOnly]=\"obs.isReadOnly\">\n </valtimo-case-management-external-start-form>\n </valtimo-muuri-item>\n </div>\n</ng-container>\n", styles: [".read-only-notification{margin-bottom:16px;max-inline-size:100%;min-inline-size:100%}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i7.MuuriDirective, selector: "[muuri]", inputs: ["columnMinWidth"] }, { kind: "component", type: i7.MuuriItemComponent, selector: "valtimo-muuri-item" }, { kind: "component", type: CaseManagementCaseHandlerComponent, selector: "valtimo-case-management-case-handler", inputs: ["isReadOnly"] }, { kind: "component", type: CaseManagementExternalStartFormComponent, selector: "valtimo-case-management-external-start-form", inputs: ["isReadOnly"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
4239
4392
|
}
|
|
4240
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4393
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementGeneralComponent, decorators: [{
|
|
4241
4394
|
type: Component,
|
|
4242
4395
|
args: [{ standalone: false, selector: 'valtimo-case-management-general', 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<ng-container\n *ngIf=\"{\n isReadOnly: isReadOnly$ | async,\n } as obs\"\n>\n @if (obs.isReadOnly) {\n <cds-notification\n class=\"read-only-notification\"\n [notificationObj]=\"{\n type: 'info',\n title: 'caseManagement.tabs.generalTab.readOnlyNotification.title' | translate,\n message: 'caseManagement.tabs.generalTab.readOnlyNotification.message' | translate,\n showClose: false,\n lowContrast: true,\n }\"\n >\n </cds-notification>\n }\n\n <div class=\"case-management-general-tab\" muuri [columnMinWidth]=\"350\">\n <ng-template #extensions></ng-template>\n\n <valtimo-muuri-item>\n <valtimo-case-management-case-handler\n muuriItem\n [isReadOnly]=\"obs.isReadOnly\"\n *ngIf=\"documentDefinition$ | async\"\n ></valtimo-case-management-case-handler>\n </valtimo-muuri-item>\n\n <valtimo-muuri-item>\n <valtimo-case-management-external-start-form [isReadOnly]=\"obs.isReadOnly\">\n </valtimo-case-management-external-start-form>\n </valtimo-muuri-item>\n </div>\n</ng-container>\n", styles: [".read-only-notification{margin-bottom:16px;max-inline-size:100%;min-inline-size:100%}\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"] }]
|
|
4243
4396
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: CaseManagementService }, { type: undefined, decorators: [{
|
|
@@ -4323,10 +4476,10 @@ class CaseManagementWidgetTabEditModalComponent {
|
|
|
4323
4476
|
enable() {
|
|
4324
4477
|
this.disabled$.next(false);
|
|
4325
4478
|
}
|
|
4326
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4327
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4479
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementWidgetTabEditModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: TabManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4480
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementWidgetTabEditModalComponent, isStandalone: true, selector: "valtimo-case-management-widget-tab-edit-modal", inputs: { showModal$: "showModal$", tabItem: "tabItem" }, outputs: { saveEvent: "saveEvent" }, 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<cds-modal\n *ngIf=\"{disabled: disabled$ | async} as obs\"\n valtimoCdsModal\n [open]=\"open$ | async\"\n showFooter=\"true\"\n title=\"{{ 'widgetTabManagement.tab.editWidgetTab' | translate }}\"\n class=\"edit-widget-tab-modal\"\n (close)=\"closeModal()\"\n>\n <cds-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\">\n <h3 cdsModalHeaderHeading>{{ 'widgetTabManagement.tab.editWidgetTab' | translate }}</h3>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngTemplateOutlet=\"editWidgetTabFormTemplate;context:{obs: obs}\"></ng-container>\n </section>\n\n <cds-modal-footer>\n <ng-container *ngTemplateOutlet=\"editWidgetTabButtons;context:{obs: obs}\"></ng-container>\n </cds-modal-footer>\n</cds-modal>\n\n<ng-template #editWidgetTabFormTemplate let-obs=\"obs\">\n <form *ngIf=\"editWidgetTabForm\" [formGroup]=\"editWidgetTabForm\" class=\"widget-tab-modal__form\">\n <cds-label [disabled]=\"obs.disabled\" [invalid]=\"widgetTabName.dirty && widgetTabName.invalid\">\n {{ 'widgetTabManagement.tab.form.tabName' | translate }}\n\n <input\n cdsText\n [disabled]=\"obs.disabled\"\n [invalid]=\"widgetTabName.dirty && widgetTabName.invalid\"\n formControlName=\"name\"\n [attr.modal-primary-focus]=\"true\"\n />\n </cds-label>\n </form>\n</ng-template>\n\n<ng-template #editWidgetTabButtons let-obs=\"obs\">\n <button cdsButton=\"secondary\" [disabled]=\"obs.disabled\" (click)=\"closeModal()\">\n {{ 'widgetTabManagement.tab.cancel' | translate }}\n </button>\n\n <button\n cdsButton=\"primary\"\n [disabled]=\"editWidgetTabForm.invalid || obs.disabled\"\n (click)=\"saveWidgetTab()\"\n >\n {{ 'widgetTabManagement.tab.save' | translate }}\n </button>\n</ng-template>\n", styles: [".edit-widget-tab-modal .form__row{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end}\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: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ModalModule }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "directive", type: ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: InputModule }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
4328
4481
|
}
|
|
4329
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4482
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementWidgetTabEditModalComponent, decorators: [{
|
|
4330
4483
|
type: Component,
|
|
4331
4484
|
args: [{ selector: 'valtimo-case-management-widget-tab-edit-modal', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
4332
4485
|
CommonModule,
|
|
@@ -4453,15 +4606,15 @@ class CaseManagementWidgetTabComponent extends ManagementWidgetDetailsComponent
|
|
|
4453
4606
|
});
|
|
4454
4607
|
});
|
|
4455
4608
|
}
|
|
4456
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4457
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4609
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementWidgetTabComponent, deps: [{ token: i1$1.WidgetWizardService }, { token: i7.BreadcrumbService }, { token: i2.IconService }, { token: i7.PageTitleService }, { token: i2$1.ActivatedRoute }, { token: TabManagementService }, { token: WIDGET_MANAGEMENT_SERVICE }, { token: i3.TranslateService }, { token: i7.PageHeaderService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4610
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementWidgetTabComponent, isStandalone: true, selector: "ng-component", providers: [
|
|
4458
4611
|
{
|
|
4459
4612
|
provide: WIDGET_MANAGEMENT_SERVICE,
|
|
4460
4613
|
useClass: CaseWidgetManagementApiService,
|
|
4461
4614
|
},
|
|
4462
4615
|
], usesInheritance: 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<valtimo-widget-management\n [availableWidgetTypes]=\"AVAILABLE_WIDGET_TYPES\"\n [params]=\"params$ | async\"\n></valtimo-widget-management>\n\n<valtimo-case-management-widget-tab-edit-modal\n [tabItem]=\"currentWidgetTabItem$ | async\"\n [showModal$]=\"showEditWidgetTabModal$\"\n (saveEvent)=\"refreshWidgetTab()\"\n>\n</valtimo-case-management-widget-tab-edit-modal>\n\n<ng-container renderInPageHeader>\n <ng-template>\n <button\n cdsButton=\"tertiary\"\n [size]=\"(compactMode$ | async) ? 'sm' : 'md'\"\n (click)=\"editWidgetTab()\"\n >\n {{ 'widgetTabManagement.tab.editButton' | translate }}\n\n <svg class=\"cds--btn__icon\" cdsIcon=\"edit\" size=\"16\"></svg>\n </button>\n </ng-template>\n</ng-container>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "component", type: CaseManagementWidgetTabEditModalComponent, selector: "valtimo-case-management-widget-tab-edit-modal", inputs: ["showModal$", "tabItem"], outputs: ["saveEvent"] }, { kind: "directive", type: RenderInPageHeaderDirective, selector: "[renderInPageHeader]", inputs: ["fullWidth"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "ngmodule", type: IconModule }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "ngmodule", type: TabsModule }, { kind: "component", type: WidgetManagementComponent, selector: "valtimo-widget-management", inputs: ["params", "availableWidgetTypes", "disableDuplicate", "enableWidgetDivider", "singleWidget", "disableJsonEditor", "defaultWidth", "widgetWizardSteps"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4463
4616
|
}
|
|
4464
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4617
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementWidgetTabComponent, decorators: [{
|
|
4465
4618
|
type: Component,
|
|
4466
4619
|
args: [{ standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
4467
4620
|
CommonModule,
|
|
@@ -4536,10 +4689,10 @@ const STEPS = [
|
|
|
4536
4689
|
* limitations under the License.
|
|
4537
4690
|
*/
|
|
4538
4691
|
class CaseManagementUploadStepComponent {
|
|
4539
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4540
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4692
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementUploadStepComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4693
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementUploadStepComponent, isStandalone: false, selector: "valtimo-case-management-upload-step", inputs: { illustration: "illustration", message: "message", title: "title" }, 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 class=\"valtimo-upload-step__content\">\n <div class=\"valtimo-upload-step__title\">{{ title }}</div>\n\n <div class=\"valtimo-upload-step__message\">{{ message }}</div>\n</div>\n\n<img [src]=\"illustration\" alt=\"{{ illustration }}\" class=\"valtimo-upload-step__illustration\" />\n", styles: [":host{display:flex;justify-content:space-around;align-items:center;gap:32px;height:100%}:host label{color:unset}.valtimo-upload-step__content{display:flex;flex-direction:column;gap:16px}.valtimo-upload-step__title{font-weight:600;font-size:16px}.valtimo-upload-step__message{font-size:16px;line-height:28px}.valtimo-upload-step__illustration{max-width:200px}\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"] }); }
|
|
4541
4694
|
}
|
|
4542
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4695
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementUploadStepComponent, decorators: [{
|
|
4543
4696
|
type: Component,
|
|
4544
4697
|
args: [{ standalone: false, selector: 'valtimo-case-management-upload-step', 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 class=\"valtimo-upload-step__content\">\n <div class=\"valtimo-upload-step__title\">{{ title }}</div>\n\n <div class=\"valtimo-upload-step__message\">{{ message }}</div>\n</div>\n\n<img [src]=\"illustration\" alt=\"{{ illustration }}\" class=\"valtimo-upload-step__illustration\" />\n", styles: [":host{display:flex;justify-content:space-around;align-items:center;gap:32px;height:100%}:host label{color:unset}.valtimo-upload-step__content{display:flex;flex-direction:column;gap:16px}.valtimo-upload-step__title{font-weight:600;font-size:16px}.valtimo-upload-step__message{font-size:16px;line-height:28px}.valtimo-upload-step__illustration{max-width:200px}\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"] }]
|
|
4545
4698
|
}], propDecorators: { illustration: [{
|
|
@@ -4574,6 +4727,7 @@ class CaseManagementUploadComponent {
|
|
|
4574
4727
|
this.translateService = translateService;
|
|
4575
4728
|
this.open = false;
|
|
4576
4729
|
this.closeModal = new EventEmitter();
|
|
4730
|
+
this.testIds = CASE_MANAGEMENT_UPLOAD_TEST_IDS;
|
|
4577
4731
|
this.acceptedFiles = ['.json', '.zip'];
|
|
4578
4732
|
this._disabled$ = new BehaviorSubject(true);
|
|
4579
4733
|
this.UPLOAD_STEP = UPLOAD_STEP;
|
|
@@ -4744,12 +4898,12 @@ class CaseManagementUploadComponent {
|
|
|
4744
4898
|
this.$warningChecked.set(false);
|
|
4745
4899
|
}, CARBON_CONSTANTS.modalAnimationMs);
|
|
4746
4900
|
}
|
|
4747
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4748
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: CaseManagementUploadComponent, isStandalone: false, selector: "valtimo-case-management-upload", inputs: { open: "open" }, outputs: { closeModal: "closeModal" }, 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<cds-modal\n *ngIf=\"{\n activeStep: activeStep$ | async,\n backButtonEnabled: backButtonEnabled$ | async,\n isStepAfterUpload: isStepAfterUpload$ | async,\n nextButtonDisabled: nextButtonDisabled$ | async,\n notificationObj: notificationObj$ | async,\n showCheckboxError: showCheckboxError$ | async,\n showCloseButton: showCloseButton$ | async,\n uploadStatus: uploadStatus$ | async,\n } as obs\"\n valtimoCdsModal\n [open]=\"open\"\n showFooter=\"true\"\n class=\"valtimo-definition-uploader\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header\n [showCloseButton]=\"obs.showCloseButton\"\n (closeSelect)=\"onCloseModal(obs.isStepAfterUpload && obs.uploadStatus !== UPLOAD_STATUS.ERROR)\"\n >\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.importDefinition.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section\n [ngSwitch]=\"obs.activeStep\"\n [cdsLayer]=\"1\"\n cdsModalContent\n class=\"valtimo-definition-uploader__content\"\n >\n <ng-template ngSwitchDefault>\n <valtimo-case-management-upload-step\n [message]=\"\n 'caseManagement.importDefinition.steps.' + obs.activeStep + '.message' | translate\n \"\n [title]=\"'caseManagement.importDefinition.steps.' + obs.activeStep + '.title' | translate\"\n [illustration]=\"'valtimo-layout/img/' + obs.activeStep + '.svg'\"\n >\n </valtimo-case-management-upload-step>\n </ng-template>\n\n <form *ngSwitchCase=\"UPLOAD_STEP.FILE_SELECT\" [formGroup]=\"form\">\n <cds-file-uploader\n [accept]=\"acceptedFiles\"\n [buttonText]=\"'caseManagement.importDefinition.upload.buttonText' | translate\"\n [description]=\"'caseManagement.importDefinition.upload.description' | translate\"\n [multiple]=\"false\"\n [title]=\"'caseManagement.importDefinition.upload.title' | translate\"\n buttonType=\"primary\"\n formControlName=\"file\"\n data-test-id=\"caseFileUploader\"\n class=\"valtimo-definition-uploader__file-uploader\"\n >\n </cds-file-uploader>\n\n <cds-inline-notification [notificationObj]=\"obs.notificationObj\"></cds-inline-notification>\n\n <div class=\"valtimo-uploader__checkbox\">\n <cds-checkbox\n [class.valtimo-definition-uploader__checkbox--invalid]=\"obs.showCheckboxError\"\n (checkedChange)=\"onCheckedChange($event)\"\n >\n {{ 'caseManagement.importDefinition.checkbox.message' | translate }}\n </cds-checkbox>\n\n <div *ngIf=\"obs.showCheckboxError\" class=\"valtimo-definition-uploader__error\">\n <svg cdsIcon=\"warning--filled\" size=\"16\"></svg>\n\n {{ 'caseManagement.importDefinition.checkbox.error' | translate }}\n </div>\n </div>\n </form>\n\n <cds-progress-bar\n *ngSwitchCase=\"UPLOAD_STEP.FILE_UPLOAD\"\n class=\"valtimo-definition-uploader__progress-bar\"\n [label]=\"'caseManagement.importDefinition.progressBar.label' | translate\"\n [status]=\"obs.uploadStatus\"\n [helperText]=\"'caseManagement.importDefinition.progressBar.' + obs.uploadStatus | translate\"\n ></cds-progress-bar>\n </section>\n\n <cds-modal-footer\n class=\"valtimo-definition-uploader__footer\"\n [class.valtimo-definition-uploader__footer--double]=\"obs.activeStep === UPLOAD_STEP.PLUGINS\"\n >\n <button\n *ngIf=\"obs.uploadStatus !== UPLOAD_STATUS.ERROR && obs.activeStep !== UPLOAD_STEP.FILE_UPLOAD\"\n class=\"valtimo-definition-uploader__cancel\"\n cdsButton=\"ghost\"\n (click)=\"onCloseModal(obs.isStepAfterUpload)\"\n >\n {{ (obs.isStepAfterUpload ? 'interface.skip' : 'interface.cancel') | translate }}\n </button>\n\n <div class=\"valtimo-definition-uploader__actions\">\n <button\n *ngIf=\"obs.backButtonEnabled\"\n cdsButton=\"secondary\"\n data-test-id=\"uploadWizardCancelButton\"\n (click)=\"onBackClick(obs.activeStep)\"\n >\n {{ 'interface.back' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.uploadStatus !== UPLOAD_STATUS.ERROR && obs.activeStep !== UPLOAD_STEP.DASHBOARD\"\n cdsButton=\"primary\"\n data-test-id=\"uploadWizardNextButton\"\n [disabled]=\"obs.nextButtonDisabled\"\n (click)=\"onNextClick(obs.activeStep)\"\n >\n {{\n (obs.activeStep === UPLOAD_STEP.FILE_SELECT\n ? 'caseManagement.importDefinition.startUpload'\n : 'interface.next'\n ) | translate\n }}\n </button>\n\n <button\n *ngIf=\"obs.uploadStatus === UPLOAD_STATUS.ERROR || obs.activeStep === UPLOAD_STEP.DASHBOARD\"\n class=\"valtimo-definition-uploader__cancel\"\n data-test-id=\"uploadWizardFinishButton\"\n cdsButton=\"primary\"\n (click)=\"onCloseModal(true)\"\n >\n {{ 'interface.finish' | translate }}\n </button>\n </div>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-definition-uploader__content,.valtimo-definition-uploader__content form{display:flex;flex-direction:column;gap:16px}.valtimo-definition-uploader__footer ::ng-deep .cds--modal-footer{justify-content:unset!important;display:grid!important;grid-template-columns:1fr 1fr 2fr!important;grid-template-areas:\"cancel . actions\"!important}.valtimo-definition-uploader__footer--double ::ng-deep .cds--modal-footer{grid-template-columns:1fr 1fr!important;grid-template-areas:\"cancel actions\"!important}.valtimo-definition-uploader__progress-bar{height:100%;display:flex;flex-direction:column;justify-content:center}.valtimo-definition-uploader__error{display:flex;align-items:center;gap:10px;color:#da1e28;fill:#da1e28;font-size:12px}.valtimo-definition-uploader__cancel{grid-area:cancel;width:100%}.valtimo-definition-uploader__actions{grid-area:actions;display:flex}.valtimo-definition-uploader__actions button{flex:unset;width:100%}.valtimo-definition-uploader__file-uploader ::ng-deep cds-file{max-width:unset}.valtimo-definition-uploader__checkbox{display:flex;flex-direction:column;gap:8px}.valtimo-definition-uploader__checkbox--invalid ::ng-deep label:before{border-color:#da1e28;margin-inline:0}.valtimo-definition-uploader ::ng-deep .cds--modal-container{height:550px}.valtimo-definition-uploader ::ng-deep .cds--checkbox-label-text{color:#000}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i6.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.FileUploader, selector: "cds-file-uploader, ibm-file-uploader", inputs: ["buttonText", "buttonType", "title", "description", "accept", "multiple", "skeleton", "size", "fileItemSize", "drop", "dropText", "fileUploaderId", "files", "disabled"], outputs: ["filesChange"] }, { kind: "component", type: i2.ProgressBar, selector: "cds-progress-bar, ibm-progress-bar", inputs: ["value", "id", "label", "helperText", "max", "type", "status", "size"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: CaseManagementUploadStepComponent, selector: "valtimo-case-management-upload-step", inputs: ["illustration", "message", "title"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4901
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementUploadComponent, deps: [{ token: i1$2.DocumentService }, { token: CaseManagementService }, { token: i1$4.FormBuilder }, { token: i2.IconService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4902
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementUploadComponent, isStandalone: false, selector: "valtimo-case-management-upload", inputs: { open: "open" }, outputs: { closeModal: "closeModal" }, 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<cds-modal\n *ngIf=\"{\n activeStep: activeStep$ | async,\n backButtonEnabled: backButtonEnabled$ | async,\n isStepAfterUpload: isStepAfterUpload$ | async,\n nextButtonDisabled: nextButtonDisabled$ | async,\n notificationObj: notificationObj$ | async,\n showCheckboxError: showCheckboxError$ | async,\n showCloseButton: showCloseButton$ | async,\n uploadStatus: uploadStatus$ | async,\n } as obs\"\n valtimoCdsModal\n [open]=\"open\"\n showFooter=\"true\"\n class=\"valtimo-definition-uploader\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header\n [showCloseButton]=\"obs.showCloseButton\"\n (closeSelect)=\"onCloseModal(obs.isStepAfterUpload && obs.uploadStatus !== UPLOAD_STATUS.ERROR)\"\n >\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.importDefinition.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section\n [ngSwitch]=\"obs.activeStep\"\n [cdsLayer]=\"1\"\n cdsModalContent\n class=\"valtimo-definition-uploader__content\"\n >\n <ng-template ngSwitchDefault>\n <valtimo-case-management-upload-step\n [message]=\"\n 'caseManagement.importDefinition.steps.' + obs.activeStep + '.message' | translate\n \"\n [title]=\"'caseManagement.importDefinition.steps.' + obs.activeStep + '.title' | translate\"\n [illustration]=\"'valtimo-layout/img/' + obs.activeStep + '.svg'\"\n >\n </valtimo-case-management-upload-step>\n </ng-template>\n\n <form *ngSwitchCase=\"UPLOAD_STEP.FILE_SELECT\" [formGroup]=\"form\">\n <cds-file-uploader\n [accept]=\"acceptedFiles\"\n [buttonText]=\"'caseManagement.importDefinition.upload.buttonText' | translate\"\n [description]=\"'caseManagement.importDefinition.upload.description' | translate\"\n [multiple]=\"false\"\n [title]=\"'caseManagement.importDefinition.upload.title' | translate\"\n buttonType=\"primary\"\n formControlName=\"file\"\n [attr.data-test-id]=\"testIds.fileUploader\"\n class=\"valtimo-definition-uploader__file-uploader\"\n >\n </cds-file-uploader>\n\n <cds-inline-notification\n data-test-id=\"uploadWarningNotification\"\n [notificationObj]=\"obs.notificationObj\"\n ></cds-inline-notification>\n\n <div class=\"valtimo-uploader__checkbox\">\n <cds-checkbox\n data-test-id=\"uploadWarningCheckbox\"\n [attr.data-test-id]=\"testIds.uploadWarningCheckbox\"\n [class.valtimo-definition-uploader__checkbox--invalid]=\"obs.showCheckboxError\"\n (checkedChange)=\"onCheckedChange($event)\"\n >\n {{ 'caseManagement.importDefinition.checkbox.message' | translate }}\n </cds-checkbox>\n\n <div *ngIf=\"obs.showCheckboxError\" class=\"valtimo-definition-uploader__error\">\n <svg cdsIcon=\"warning--filled\" size=\"16\"></svg>\n\n {{ 'caseManagement.importDefinition.checkbox.error' | translate }}\n </div>\n </div>\n </form>\n\n <cds-progress-bar\n *ngSwitchCase=\"UPLOAD_STEP.FILE_UPLOAD\"\n class=\"valtimo-definition-uploader__progress-bar\"\n [label]=\"'caseManagement.importDefinition.progressBar.label' | translate\"\n [status]=\"obs.uploadStatus\"\n [helperText]=\"'caseManagement.importDefinition.progressBar.' + obs.uploadStatus | translate\"\n ></cds-progress-bar>\n </section>\n\n <cds-modal-footer\n class=\"valtimo-definition-uploader__footer\"\n [class.valtimo-definition-uploader__footer--double]=\"obs.activeStep === UPLOAD_STEP.PLUGINS\"\n >\n <button\n *ngIf=\"obs.uploadStatus !== UPLOAD_STATUS.ERROR && obs.activeStep !== UPLOAD_STEP.FILE_UPLOAD\"\n class=\"valtimo-definition-uploader__cancel\"\n cdsButton=\"ghost\"\n (click)=\"onCloseModal(obs.isStepAfterUpload)\"\n >\n {{ (obs.isStepAfterUpload ? 'interface.skip' : 'interface.cancel') | translate }}\n </button>\n\n <div class=\"valtimo-definition-uploader__actions\">\n <button\n *ngIf=\"obs.backButtonEnabled\"\n cdsButton=\"secondary\"\n [attr.data-test-id]=\"testIds.cancelButton\"\n (click)=\"onBackClick(obs.activeStep)\"\n >\n {{ 'interface.back' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.uploadStatus !== UPLOAD_STATUS.ERROR && obs.activeStep !== UPLOAD_STEP.DASHBOARD\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.nextButton\"\n [disabled]=\"obs.nextButtonDisabled\"\n (click)=\"onNextClick(obs.activeStep)\"\n >\n {{\n (obs.activeStep === UPLOAD_STEP.FILE_SELECT\n ? 'caseManagement.importDefinition.startUpload'\n : 'interface.next'\n ) | translate\n }}\n </button>\n\n <button\n *ngIf=\"obs.uploadStatus === UPLOAD_STATUS.ERROR || obs.activeStep === UPLOAD_STEP.DASHBOARD\"\n class=\"valtimo-definition-uploader__cancel\"\n [attr.data-test-id]=\"testIds.finishButton\"\n cdsButton=\"primary\"\n (click)=\"onCloseModal(true)\"\n >\n {{ 'interface.finish' | translate }}\n </button>\n </div>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-definition-uploader__content,.valtimo-definition-uploader__content form{display:flex;flex-direction:column;gap:16px}.valtimo-definition-uploader__footer ::ng-deep .cds--modal-footer{justify-content:unset!important;display:grid!important;grid-template-columns:1fr 1fr 2fr!important;grid-template-areas:\"cancel . actions\"!important}.valtimo-definition-uploader__footer--double ::ng-deep .cds--modal-footer{grid-template-columns:1fr 1fr!important;grid-template-areas:\"cancel actions\"!important}.valtimo-definition-uploader__progress-bar{height:100%;display:flex;flex-direction:column;justify-content:center}.valtimo-definition-uploader__error{display:flex;align-items:center;gap:10px;color:#da1e28;fill:#da1e28;font-size:12px}.valtimo-definition-uploader__cancel{grid-area:cancel;width:100%}.valtimo-definition-uploader__actions{grid-area:actions;display:flex}.valtimo-definition-uploader__actions button{flex:unset;width:100%}.valtimo-definition-uploader__file-uploader ::ng-deep cds-file{max-width:unset}.valtimo-definition-uploader__checkbox{display:flex;flex-direction:column;gap:8px}.valtimo-definition-uploader__checkbox--invalid ::ng-deep label:before{border-color:#da1e28;margin-inline:0}.valtimo-definition-uploader ::ng-deep .cds--modal-container{height:550px}.valtimo-definition-uploader ::ng-deep .cds--checkbox-label-text{color:#000}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i6.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.FileUploader, selector: "cds-file-uploader, ibm-file-uploader", inputs: ["buttonText", "buttonType", "title", "description", "accept", "multiple", "skeleton", "size", "fileItemSize", "drop", "dropText", "fileUploaderId", "files", "disabled"], outputs: ["filesChange"] }, { kind: "component", type: i2.ProgressBar, selector: "cds-progress-bar, ibm-progress-bar", inputs: ["value", "id", "label", "helperText", "max", "type", "status", "size"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "component", type: CaseManagementUploadStepComponent, selector: "valtimo-case-management-upload-step", inputs: ["illustration", "message", "title"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4749
4903
|
}
|
|
4750
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4904
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementUploadComponent, decorators: [{
|
|
4751
4905
|
type: Component,
|
|
4752
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-upload', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n *ngIf=\"{\n activeStep: activeStep$ | async,\n backButtonEnabled: backButtonEnabled$ | async,\n isStepAfterUpload: isStepAfterUpload$ | async,\n nextButtonDisabled: nextButtonDisabled$ | async,\n notificationObj: notificationObj$ | async,\n showCheckboxError: showCheckboxError$ | async,\n showCloseButton: showCloseButton$ | async,\n uploadStatus: uploadStatus$ | async,\n } as obs\"\n valtimoCdsModal\n [open]=\"open\"\n showFooter=\"true\"\n class=\"valtimo-definition-uploader\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header\n [showCloseButton]=\"obs.showCloseButton\"\n (closeSelect)=\"onCloseModal(obs.isStepAfterUpload && obs.uploadStatus !== UPLOAD_STATUS.ERROR)\"\n >\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.importDefinition.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section\n [ngSwitch]=\"obs.activeStep\"\n [cdsLayer]=\"1\"\n cdsModalContent\n class=\"valtimo-definition-uploader__content\"\n >\n <ng-template ngSwitchDefault>\n <valtimo-case-management-upload-step\n [message]=\"\n 'caseManagement.importDefinition.steps.' + obs.activeStep + '.message' | translate\n \"\n [title]=\"'caseManagement.importDefinition.steps.' + obs.activeStep + '.title' | translate\"\n [illustration]=\"'valtimo-layout/img/' + obs.activeStep + '.svg'\"\n >\n </valtimo-case-management-upload-step>\n </ng-template>\n\n <form *ngSwitchCase=\"UPLOAD_STEP.FILE_SELECT\" [formGroup]=\"form\">\n <cds-file-uploader\n [accept]=\"acceptedFiles\"\n [buttonText]=\"'caseManagement.importDefinition.upload.buttonText' | translate\"\n [description]=\"'caseManagement.importDefinition.upload.description' | translate\"\n [multiple]=\"false\"\n [title]=\"'caseManagement.importDefinition.upload.title' | translate\"\n buttonType=\"primary\"\n formControlName=\"file\"\n data-test-id=\"
|
|
4906
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-upload', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n *ngIf=\"{\n activeStep: activeStep$ | async,\n backButtonEnabled: backButtonEnabled$ | async,\n isStepAfterUpload: isStepAfterUpload$ | async,\n nextButtonDisabled: nextButtonDisabled$ | async,\n notificationObj: notificationObj$ | async,\n showCheckboxError: showCheckboxError$ | async,\n showCloseButton: showCloseButton$ | async,\n uploadStatus: uploadStatus$ | async,\n } as obs\"\n valtimoCdsModal\n [open]=\"open\"\n showFooter=\"true\"\n class=\"valtimo-definition-uploader\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header\n [showCloseButton]=\"obs.showCloseButton\"\n (closeSelect)=\"onCloseModal(obs.isStepAfterUpload && obs.uploadStatus !== UPLOAD_STATUS.ERROR)\"\n >\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.importDefinition.title' | translate }}\n </h3>\n </cds-modal-header>\n\n <section\n [ngSwitch]=\"obs.activeStep\"\n [cdsLayer]=\"1\"\n cdsModalContent\n class=\"valtimo-definition-uploader__content\"\n >\n <ng-template ngSwitchDefault>\n <valtimo-case-management-upload-step\n [message]=\"\n 'caseManagement.importDefinition.steps.' + obs.activeStep + '.message' | translate\n \"\n [title]=\"'caseManagement.importDefinition.steps.' + obs.activeStep + '.title' | translate\"\n [illustration]=\"'valtimo-layout/img/' + obs.activeStep + '.svg'\"\n >\n </valtimo-case-management-upload-step>\n </ng-template>\n\n <form *ngSwitchCase=\"UPLOAD_STEP.FILE_SELECT\" [formGroup]=\"form\">\n <cds-file-uploader\n [accept]=\"acceptedFiles\"\n [buttonText]=\"'caseManagement.importDefinition.upload.buttonText' | translate\"\n [description]=\"'caseManagement.importDefinition.upload.description' | translate\"\n [multiple]=\"false\"\n [title]=\"'caseManagement.importDefinition.upload.title' | translate\"\n buttonType=\"primary\"\n formControlName=\"file\"\n [attr.data-test-id]=\"testIds.fileUploader\"\n class=\"valtimo-definition-uploader__file-uploader\"\n >\n </cds-file-uploader>\n\n <cds-inline-notification\n data-test-id=\"uploadWarningNotification\"\n [notificationObj]=\"obs.notificationObj\"\n ></cds-inline-notification>\n\n <div class=\"valtimo-uploader__checkbox\">\n <cds-checkbox\n data-test-id=\"uploadWarningCheckbox\"\n [attr.data-test-id]=\"testIds.uploadWarningCheckbox\"\n [class.valtimo-definition-uploader__checkbox--invalid]=\"obs.showCheckboxError\"\n (checkedChange)=\"onCheckedChange($event)\"\n >\n {{ 'caseManagement.importDefinition.checkbox.message' | translate }}\n </cds-checkbox>\n\n <div *ngIf=\"obs.showCheckboxError\" class=\"valtimo-definition-uploader__error\">\n <svg cdsIcon=\"warning--filled\" size=\"16\"></svg>\n\n {{ 'caseManagement.importDefinition.checkbox.error' | translate }}\n </div>\n </div>\n </form>\n\n <cds-progress-bar\n *ngSwitchCase=\"UPLOAD_STEP.FILE_UPLOAD\"\n class=\"valtimo-definition-uploader__progress-bar\"\n [label]=\"'caseManagement.importDefinition.progressBar.label' | translate\"\n [status]=\"obs.uploadStatus\"\n [helperText]=\"'caseManagement.importDefinition.progressBar.' + obs.uploadStatus | translate\"\n ></cds-progress-bar>\n </section>\n\n <cds-modal-footer\n class=\"valtimo-definition-uploader__footer\"\n [class.valtimo-definition-uploader__footer--double]=\"obs.activeStep === UPLOAD_STEP.PLUGINS\"\n >\n <button\n *ngIf=\"obs.uploadStatus !== UPLOAD_STATUS.ERROR && obs.activeStep !== UPLOAD_STEP.FILE_UPLOAD\"\n class=\"valtimo-definition-uploader__cancel\"\n cdsButton=\"ghost\"\n (click)=\"onCloseModal(obs.isStepAfterUpload)\"\n >\n {{ (obs.isStepAfterUpload ? 'interface.skip' : 'interface.cancel') | translate }}\n </button>\n\n <div class=\"valtimo-definition-uploader__actions\">\n <button\n *ngIf=\"obs.backButtonEnabled\"\n cdsButton=\"secondary\"\n [attr.data-test-id]=\"testIds.cancelButton\"\n (click)=\"onBackClick(obs.activeStep)\"\n >\n {{ 'interface.back' | translate }}\n </button>\n\n <button\n *ngIf=\"obs.uploadStatus !== UPLOAD_STATUS.ERROR && obs.activeStep !== UPLOAD_STEP.DASHBOARD\"\n cdsButton=\"primary\"\n [attr.data-test-id]=\"testIds.nextButton\"\n [disabled]=\"obs.nextButtonDisabled\"\n (click)=\"onNextClick(obs.activeStep)\"\n >\n {{\n (obs.activeStep === UPLOAD_STEP.FILE_SELECT\n ? 'caseManagement.importDefinition.startUpload'\n : 'interface.next'\n ) | translate\n }}\n </button>\n\n <button\n *ngIf=\"obs.uploadStatus === UPLOAD_STATUS.ERROR || obs.activeStep === UPLOAD_STEP.DASHBOARD\"\n class=\"valtimo-definition-uploader__cancel\"\n [attr.data-test-id]=\"testIds.finishButton\"\n cdsButton=\"primary\"\n (click)=\"onCloseModal(true)\"\n >\n {{ 'interface.finish' | translate }}\n </button>\n </div>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-definition-uploader__content,.valtimo-definition-uploader__content form{display:flex;flex-direction:column;gap:16px}.valtimo-definition-uploader__footer ::ng-deep .cds--modal-footer{justify-content:unset!important;display:grid!important;grid-template-columns:1fr 1fr 2fr!important;grid-template-areas:\"cancel . actions\"!important}.valtimo-definition-uploader__footer--double ::ng-deep .cds--modal-footer{grid-template-columns:1fr 1fr!important;grid-template-areas:\"cancel actions\"!important}.valtimo-definition-uploader__progress-bar{height:100%;display:flex;flex-direction:column;justify-content:center}.valtimo-definition-uploader__error{display:flex;align-items:center;gap:10px;color:#da1e28;fill:#da1e28;font-size:12px}.valtimo-definition-uploader__cancel{grid-area:cancel;width:100%}.valtimo-definition-uploader__actions{grid-area:actions;display:flex}.valtimo-definition-uploader__actions button{flex:unset;width:100%}.valtimo-definition-uploader__file-uploader ::ng-deep cds-file{max-width:unset}.valtimo-definition-uploader__checkbox{display:flex;flex-direction:column;gap:8px}.valtimo-definition-uploader__checkbox--invalid ::ng-deep label:before{border-color:#da1e28;margin-inline:0}.valtimo-definition-uploader ::ng-deep .cds--modal-container{height:550px}.valtimo-definition-uploader ::ng-deep .cds--checkbox-label-text{color:#000}\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"] }]
|
|
4753
4907
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: CaseManagementService }, { type: i1$4.FormBuilder }, { type: i2.IconService }, { type: i3.TranslateService }], propDecorators: { open: [{
|
|
4754
4908
|
type: Input
|
|
4755
4909
|
}], closeModal: [{
|
|
@@ -4778,6 +4932,7 @@ class CaseManagementCreateComponent {
|
|
|
4778
4932
|
this.iconService = iconService;
|
|
4779
4933
|
this.open = false;
|
|
4780
4934
|
this.closeModal = new EventEmitter();
|
|
4935
|
+
this.testIds = CASE_MANAGEMENT_CREATE_TEST_IDS;
|
|
4781
4936
|
this.formGroup = this.fb.group({
|
|
4782
4937
|
name: this.fb.control('', Validators.required),
|
|
4783
4938
|
caseDefinitionKey: this.fb.control({ value: '', disabled: true }, [
|
|
@@ -4857,12 +5012,12 @@ class CaseManagementCreateComponent {
|
|
|
4857
5012
|
this.editDisabled$.next(true);
|
|
4858
5013
|
}, CARBON_CONSTANTS.modalAnimationMs);
|
|
4859
5014
|
}
|
|
4860
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4861
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
5015
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCreateComponent, deps: [{ token: i1$2.DocumentService }, { token: i1$4.FormBuilder }, { token: i2.IconService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5016
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementCreateComponent, isStandalone: false, selector: "valtimo-case-management-create", inputs: { open: "open" }, outputs: { closeModal: "closeModal" }, 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<cds-modal\n *ngIf=\"{\n editDisabled: editDisabled$ | async,\n idError: idError$ | async,\n versionError: versionError$ | async,\n editActive: editActive$ | async,\n } as obs\"\n [open]=\"open\"\n showFooter=\"true\"\n valtimoCdsModal\n class=\"valtimo-definition-create\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.createDefinition.modalTitle' | translate }}\n </h3>\n </cds-modal-header>\n\n <form\n [formGroup]=\"formGroup\"\n cdsModalContent\n [cdsLayer]=\"1\"\n class=\"valtimo-definition-create__content\"\n >\n <cds-label>\n {{ 'caseManagement.createDefinition.name' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.nameTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"name\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.namePlaceholder' | translate }}\"\n [attr.modal-primary-focus]=\"true\"\n [attr.data-test-id]=\"testIds.nameInput\"\n (focusout)=\"onFocusOut()\"\n />\n </cds-label>\n\n <cds-label [invalid]=\"!!obs.idError\" [invalidText]=\"obs.idError | translate\">\n {{ 'caseManagement.createDefinition.key' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.keyTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <div class=\"valtimo-definition-create__name\">\n <input\n cdsText\n [attr.data-test-id]=\"testIds.keyInput\"\n formControlName=\"caseDefinitionKey\"\n [invalid]=\"!!obs.idError\"\n [placeholder]=\"'caseManagement.createDefinition.keyPlaceholder' | translate\"\n [attr.modal-primary-focus]=\"true\"\n />\n\n <button\n *ngIf=\"!obs.editActive\"\n cdsButton=\"secondary\"\n [attr.data-test-id]=\"testIds.keyEditButton\"\n [disabled]=\"obs.editDisabled\"\n [iconOnly]=\"true\"\n size=\"md\"\n (click)=\"enableEdit()\"\n >\n <svg cdsIcon=\"edit\" size=\"16\"></svg>\n </button>\n </div>\n </cds-label>\n\n <cds-label [invalid]=\"!!obs.versionError\" [invalidText]=\"obs.versionError | translate\">\n {{ 'caseManagement.createDefinition.version' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.versionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"caseDefinitionVersion\"\n [attr.data-test-id]=\"testIds.versionInput\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.versionPlaceholder' | translate }}\"\n [invalid]=\"!!obs.versionError\"\n [attr.modal-primary-focus]=\"true\"\n (focusout)=\"onFocusOut()\"\n />\n </cds-label>\n\n <cds-textarea-label>\n {{ 'caseManagement.createDefinition.description' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.descriptionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <textarea\n cdsTextArea\n formControlName=\"description\"\n [attr.data-test-id]=\"testIds.descriptionInput\"\n placeholder=\"{{ 'caseManagement.createDefinition.descriptionPlaceholder' | translate }}\"\n [rows]=\"3\"\n [cols]=\"150\"\n [attr.modal-primary-focus]=\"true\"\n (focusout)=\"onFocusOut()\"\n ></textarea>\n </cds-textarea-label>\n </form>\n\n <cds-modal-footer>\n <button [attr.data-test-id]=\"testIds.closeButton\" cdsButton=\"secondary\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n [attr.data-test-id]=\"testIds.saveButton\"\n cdsButton=\"primary\"\n [disabled]=\"formGroup.invalid\"\n (click)=\"onCloseModal(true)\"\n >\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-definition-create__content{display:flex;flex-direction:column;gap:16px}.valtimo-definition-create__name{width:100%;display:flex;gap:8px}:host ::ng-deep .cds--label{display:flex;align-items:center;gap:12px}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i2.Modal, selector: "cds-modal, ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "cds-modal-header, ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "cds-modal-footer, ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[cdsModalContent], [ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[cdsModalHeaderHeading], [ibmModalHeaderHeading]" }, { kind: "component", type: i2.Label, selector: "cds-label, ibm-label", inputs: ["labelInputID", "disabled", "skeleton", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel"] }, { kind: "component", type: i2.TextareaLabelComponent, selector: "cds-textarea-label, ibm-textarea-label", inputs: ["labelInputID", "disabled", "skeleton", "labelTemplate", "textAreaTemplate", "helperText", "invalidText", "invalid", "warn", "warnText", "ariaLabel", "fluid"] }, { kind: "directive", type: i2.TextInput, selector: "[cdsText], [ibmText]", inputs: ["theme", "size", "invalid", "warn", "skeleton"] }, { kind: "directive", type: i2.TextArea, selector: "[cdsTextArea], [ibmTextArea]", inputs: ["theme", "invalid", "skeleton"] }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7.ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "component", type: i2.Tooltip, selector: "cds-tooltip, ibm-tooltip", inputs: ["id", "enterDelayMs", "leaveDelayMs", "disabled", "description", "templateContext"] }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4862
5017
|
}
|
|
4863
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5018
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementCreateComponent, decorators: [{
|
|
4864
5019
|
type: Component,
|
|
4865
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-create', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n *ngIf=\"{\n editDisabled: editDisabled$ | async,\n idError: idError$ | async,\n versionError: versionError$ | async,\n editActive: editActive$ | async,\n } as obs\"\n [open]=\"open\"\n showFooter=\"true\"\n valtimoCdsModal\n class=\"valtimo-definition-create\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.createDefinition.modalTitle' | translate }}\n </h3>\n </cds-modal-header>\n\n <form\n [formGroup]=\"formGroup\"\n cdsModalContent\n [cdsLayer]=\"1\"\n class=\"valtimo-definition-create__content\"\n >\n <cds-label>\n {{ 'caseManagement.createDefinition.name' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.nameTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"name\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.namePlaceholder' | translate }}\"\n [attr.modal-primary-focus]=\"true\"\n data-test-id=\"
|
|
5020
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-create', changeDetection: ChangeDetectionStrategy.OnPush, 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<cds-modal\n *ngIf=\"{\n editDisabled: editDisabled$ | async,\n idError: idError$ | async,\n versionError: versionError$ | async,\n editActive: editActive$ | async,\n } as obs\"\n [open]=\"open\"\n showFooter=\"true\"\n valtimoCdsModal\n class=\"valtimo-definition-create\"\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>\n {{ 'caseManagement.createDefinition.modalTitle' | translate }}\n </h3>\n </cds-modal-header>\n\n <form\n [formGroup]=\"formGroup\"\n cdsModalContent\n [cdsLayer]=\"1\"\n class=\"valtimo-definition-create__content\"\n >\n <cds-label>\n {{ 'caseManagement.createDefinition.name' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.nameTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"name\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.namePlaceholder' | translate }}\"\n [attr.modal-primary-focus]=\"true\"\n [attr.data-test-id]=\"testIds.nameInput\"\n (focusout)=\"onFocusOut()\"\n />\n </cds-label>\n\n <cds-label [invalid]=\"!!obs.idError\" [invalidText]=\"obs.idError | translate\">\n {{ 'caseManagement.createDefinition.key' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.keyTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <div class=\"valtimo-definition-create__name\">\n <input\n cdsText\n [attr.data-test-id]=\"testIds.keyInput\"\n formControlName=\"caseDefinitionKey\"\n [invalid]=\"!!obs.idError\"\n [placeholder]=\"'caseManagement.createDefinition.keyPlaceholder' | translate\"\n [attr.modal-primary-focus]=\"true\"\n />\n\n <button\n *ngIf=\"!obs.editActive\"\n cdsButton=\"secondary\"\n [attr.data-test-id]=\"testIds.keyEditButton\"\n [disabled]=\"obs.editDisabled\"\n [iconOnly]=\"true\"\n size=\"md\"\n (click)=\"enableEdit()\"\n >\n <svg cdsIcon=\"edit\" size=\"16\"></svg>\n </button>\n </div>\n </cds-label>\n\n <cds-label [invalid]=\"!!obs.versionError\" [invalidText]=\"obs.versionError | translate\">\n {{ 'caseManagement.createDefinition.version' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.versionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <input\n formControlName=\"caseDefinitionVersion\"\n [attr.data-test-id]=\"testIds.versionInput\"\n cdsText\n placeholder=\"{{ 'caseManagement.createDefinition.versionPlaceholder' | translate }}\"\n [invalid]=\"!!obs.versionError\"\n [attr.modal-primary-focus]=\"true\"\n (focusout)=\"onFocusOut()\"\n />\n </cds-label>\n\n <cds-textarea-label>\n {{ 'caseManagement.createDefinition.description' | translate }}\n\n <cds-tooltip\n [caret]=\"true\"\n [description]=\"'caseManagement.createDefinition.descriptionTooltip' | translate\"\n >\n <svg class=\"tooltip-trigger\" cdsIcon=\"information\" size=\"16\"></svg>\n </cds-tooltip>\n\n <textarea\n cdsTextArea\n formControlName=\"description\"\n [attr.data-test-id]=\"testIds.descriptionInput\"\n placeholder=\"{{ 'caseManagement.createDefinition.descriptionPlaceholder' | translate }}\"\n [rows]=\"3\"\n [cols]=\"150\"\n [attr.modal-primary-focus]=\"true\"\n (focusout)=\"onFocusOut()\"\n ></textarea>\n </cds-textarea-label>\n </form>\n\n <cds-modal-footer>\n <button [attr.data-test-id]=\"testIds.closeButton\" cdsButton=\"secondary\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <button\n [attr.data-test-id]=\"testIds.saveButton\"\n cdsButton=\"primary\"\n [disabled]=\"formGroup.invalid\"\n (click)=\"onCloseModal(true)\"\n >\n {{ 'interface.save' | translate }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".valtimo-definition-create__content{display:flex;flex-direction:column;gap:16px}.valtimo-definition-create__name{width:100%;display:flex;gap:8px}:host ::ng-deep .cds--label{display:flex;align-items:center;gap:12px}\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"] }]
|
|
4866
5021
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i1$4.FormBuilder }, { type: i2.IconService }], propDecorators: { open: [{
|
|
4867
5022
|
type: Input
|
|
4868
5023
|
}], closeModal: [{
|
|
@@ -4870,7 +5025,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
4870
5025
|
}] } });
|
|
4871
5026
|
|
|
4872
5027
|
/*
|
|
4873
|
-
* Copyright 2015-
|
|
5028
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
4874
5029
|
*
|
|
4875
5030
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4876
5031
|
* you may not use this file except in compliance with the License.
|
|
@@ -4893,6 +5048,7 @@ class CaseManagementListComponent {
|
|
|
4893
5048
|
this.route = route;
|
|
4894
5049
|
this.router = router;
|
|
4895
5050
|
this.environmentService = environmentService;
|
|
5051
|
+
this.testIds = CASE_MANAGEMENT_LIST_TEST_IDS;
|
|
4896
5052
|
this._refresh$ = new BehaviorSubject(null);
|
|
4897
5053
|
this.pagination$ = new BehaviorSubject(null);
|
|
4898
5054
|
this.canUpdateGlobalConfiguration$ = this.environmentService.canUpdateGlobalConfiguration();
|
|
@@ -4902,7 +5058,6 @@ class CaseManagementListComponent {
|
|
|
4902
5058
|
this._refresh$,
|
|
4903
5059
|
]).pipe(switchMap(([params, canUpdate]) => this.caseManagementService.getCaseDefinitions({
|
|
4904
5060
|
...params,
|
|
4905
|
-
active: true,
|
|
4906
5061
|
final: canUpdate ? '' : true,
|
|
4907
5062
|
})), map((page) => {
|
|
4908
5063
|
this.pagination$.next({
|
|
@@ -4917,16 +5072,25 @@ class CaseManagementListComponent {
|
|
|
4917
5072
|
page: 1,
|
|
4918
5073
|
size: 10,
|
|
4919
5074
|
};
|
|
4920
|
-
this.
|
|
4921
|
-
{ key: 'name', label: 'caseManagement.listColumns.name' },
|
|
4922
|
-
{ key: 'caseDefinitionKey', label: 'caseManagement.listColumns.key' },
|
|
4923
|
-
{ key: 'caseDefinitionVersionTag', label: 'caseManagement.listColumns.version' },
|
|
4924
|
-
];
|
|
5075
|
+
this.fields$ = new BehaviorSubject([]);
|
|
4925
5076
|
this.showCreateModal$ = new BehaviorSubject(false);
|
|
4926
5077
|
this.showUploadModal$ = new BehaviorSubject(false);
|
|
4927
5078
|
this._paginationInitialized = false;
|
|
4928
5079
|
this.iconService.registerAll([Search20, TrashCan20, Upload16]);
|
|
4929
5080
|
}
|
|
5081
|
+
ngAfterViewInit() {
|
|
5082
|
+
this.fields$.next([
|
|
5083
|
+
{ key: 'name', label: 'caseManagement.listColumns.name' },
|
|
5084
|
+
{ key: 'caseDefinitionKey', label: 'caseManagement.listColumns.key' },
|
|
5085
|
+
{ key: 'caseDefinitionVersionTag', label: 'caseManagement.listColumns.version' },
|
|
5086
|
+
{
|
|
5087
|
+
key: 'status',
|
|
5088
|
+
label: 'caseManagement.listColumns.status',
|
|
5089
|
+
viewType: ViewType.TEMPLATE,
|
|
5090
|
+
template: this.statusColumnTemplate,
|
|
5091
|
+
},
|
|
5092
|
+
]);
|
|
5093
|
+
}
|
|
4930
5094
|
onCloseUploadModal(definitionUploaded) {
|
|
4931
5095
|
this.showUploadModal$.next(false);
|
|
4932
5096
|
if (!definitionUploaded) {
|
|
@@ -4986,13 +5150,16 @@ class CaseManagementListComponent {
|
|
|
4986
5150
|
showCreateModal() {
|
|
4987
5151
|
this.showCreateModal$.next(true);
|
|
4988
5152
|
}
|
|
4989
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4990
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
5153
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementListComponent, deps: [{ token: CaseManagementService }, { token: i2.IconService }, { token: i7.MenuService }, { token: i2$1.ActivatedRoute }, { token: i2$1.Router }, { token: i3$1.EnvironmentService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5154
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: CaseManagementListComponent, isStandalone: false, selector: "valtimo-case-management-list", viewQueries: [{ propertyName: "statusColumnTemplate", first: true, predicate: ["statusColumnTemplate"], descendants: true }], ngImport: i0, template: "<!--\n ~ Copyright 2015-2026 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 [items]=\"caseListItems$ | async\"\n [fields]=\"fields$ | async\"\n (rowClicked)=\"redirectToDetails($event)\"\n [pagination]=\"pagination$ | async\"\n paginationIdentifier=\"caseManagementList\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n>\n <ng-container carbonToolbarContent [ngTemplateOutlet]=\"importCaseDefinitionButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"importCaseDefinitionButton\"\n [description]=\"'caseManagement.noResults.description' | translate\"\n [title]=\"'caseManagement.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<valtimo-case-management-upload\n [open]=\"showUploadModal$ | async\"\n (closeModal)=\"onCloseUploadModal($event)\"\n></valtimo-case-management-upload>\n\n<valtimo-case-management-create\n [open]=\"showCreateModal$ | async\"\n (closeModal)=\"onCloseCreateModal($event)\"\n></valtimo-case-management-create>\n\n<ng-template #statusColumnTemplate let-data=\"data\">\n @if (!data?.item?.active) {\n <cds-tag type=\"purple\" class=\"cds-tag--no-margin\">\n {{ 'caseManagement.inactive' | translate }}\n </cds-tag>\n }\n @if (data?.item?.hasConfigurationIssues) {\n <cds-tag type=\"red\" class=\"cds-tag--no-margin\">\n {{ 'caseManagement.needsConfiguration' | translate }}\n </cds-tag>\n }\n</ng-template>\n\n<ng-template #importCaseDefinitionButton>\n <div class=\"valtimo-case-management-list__actions\">\n <button [attr.data-test-id]=\"testIds.uploadButton\" cdsButton=\"ghost\" (click)=\"showUploadModal()\">\n {{ 'Upload' | translate }}\n\n <svg cdsIcon=\"upload\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button\n *ngIf=\"canUpdateGlobalConfiguration$ | async\"\n [attr.data-test-id]=\"testIds.createButton\"\n cdsButton=\"primary\"\n (click)=\"showCreateModal()\"\n >\n {{ 'interface.create' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </div>\n</ng-template>\n", styles: [".valtimo-case-management-list__actions{display:flex}\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.Button, selector: "[cdsButton], [ibmButton]", inputs: ["ibmButton", "cdsButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }, { kind: "component", type: i7.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: i7.CarbonNoResultsComponent, selector: "valtimo-no-results", inputs: ["action", "description", "illustration", "title", "smallPadding", "collapseVertically", "alwaysRenderVertically"] }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: CaseManagementUploadComponent, selector: "valtimo-case-management-upload", inputs: ["open"], outputs: ["closeModal"] }, { kind: "component", type: CaseManagementCreateComponent, selector: "valtimo-case-management-create", inputs: ["open"], outputs: ["closeModal"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
4991
5155
|
}
|
|
4992
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementListComponent, decorators: [{
|
|
4993
5157
|
type: Component,
|
|
4994
|
-
args: [{ standalone: false, selector: 'valtimo-case-management-list', template: "<!--\n ~ Copyright 2015-
|
|
4995
|
-
}], ctorParameters: () => [{ type: CaseManagementService }, { type: i2.IconService }, { type: i7.MenuService }, { type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: i3$1.EnvironmentService }]
|
|
5158
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-list', template: "<!--\n ~ Copyright 2015-2026 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 [items]=\"caseListItems$ | async\"\n [fields]=\"fields$ | async\"\n (rowClicked)=\"redirectToDetails($event)\"\n [pagination]=\"pagination$ | async\"\n paginationIdentifier=\"caseManagementList\"\n (paginationClicked)=\"paginationClicked($event)\"\n (paginationSet)=\"paginationSet($event)\"\n>\n <ng-container carbonToolbarContent [ngTemplateOutlet]=\"importCaseDefinitionButton\"></ng-container>\n\n <valtimo-no-results\n [action]=\"importCaseDefinitionButton\"\n [description]=\"'caseManagement.noResults.description' | translate\"\n [title]=\"'caseManagement.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<valtimo-case-management-upload\n [open]=\"showUploadModal$ | async\"\n (closeModal)=\"onCloseUploadModal($event)\"\n></valtimo-case-management-upload>\n\n<valtimo-case-management-create\n [open]=\"showCreateModal$ | async\"\n (closeModal)=\"onCloseCreateModal($event)\"\n></valtimo-case-management-create>\n\n<ng-template #statusColumnTemplate let-data=\"data\">\n @if (!data?.item?.active) {\n <cds-tag type=\"purple\" class=\"cds-tag--no-margin\">\n {{ 'caseManagement.inactive' | translate }}\n </cds-tag>\n }\n @if (data?.item?.hasConfigurationIssues) {\n <cds-tag type=\"red\" class=\"cds-tag--no-margin\">\n {{ 'caseManagement.needsConfiguration' | translate }}\n </cds-tag>\n }\n</ng-template>\n\n<ng-template #importCaseDefinitionButton>\n <div class=\"valtimo-case-management-list__actions\">\n <button [attr.data-test-id]=\"testIds.uploadButton\" cdsButton=\"ghost\" (click)=\"showUploadModal()\">\n {{ 'Upload' | translate }}\n\n <svg cdsIcon=\"upload\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n\n <button\n *ngIf=\"canUpdateGlobalConfiguration$ | async\"\n [attr.data-test-id]=\"testIds.createButton\"\n cdsButton=\"primary\"\n (click)=\"showCreateModal()\"\n >\n {{ 'interface.create' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </div>\n</ng-template>\n", styles: [".valtimo-case-management-list__actions{display:flex}\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"] }]
|
|
5159
|
+
}], ctorParameters: () => [{ type: CaseManagementService }, { type: i2.IconService }, { type: i7.MenuService }, { type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: i3$1.EnvironmentService }], propDecorators: { statusColumnTemplate: [{
|
|
5160
|
+
type: ViewChild,
|
|
5161
|
+
args: ['statusColumnTemplate']
|
|
5162
|
+
}] } });
|
|
4996
5163
|
|
|
4997
5164
|
/*
|
|
4998
5165
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
@@ -5140,11 +5307,11 @@ class CaseManagementRoutingModule {
|
|
|
5140
5307
|
component: tabConfig.component,
|
|
5141
5308
|
})));
|
|
5142
5309
|
}
|
|
5143
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5144
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
|
5145
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.
|
|
5310
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementRoutingModule, deps: [{ token: CASE_MANAGEMENT_TAB_TOKEN, optional: true }, { token: i2$1.Router }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
5311
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementRoutingModule, imports: [i2$1.RouterModule], exports: [RouterModule] }); }
|
|
5312
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] }); }
|
|
5146
5313
|
}
|
|
5147
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5314
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementRoutingModule, decorators: [{
|
|
5148
5315
|
type: NgModule,
|
|
5149
5316
|
args: [{ imports: [RouterModule.forChild(routes)], exports: [RouterModule], declarations: [] }]
|
|
5150
5317
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
@@ -5215,10 +5382,10 @@ class CaseManagementAssigneeComponent {
|
|
|
5215
5382
|
autoAssignTasks: !currentSettings.autoAssignTasks,
|
|
5216
5383
|
}, caseDefinitionKey, caseDefinitionVersionTag);
|
|
5217
5384
|
}
|
|
5218
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5219
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
5385
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementAssigneeComponent, deps: [{ token: i1$2.DocumentService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5386
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementAssigneeComponent, isStandalone: false, selector: "valtimo-case-management-assignee", 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<h2 class=\"mb-4\">{{ 'caseManagement.toggleAssignee.title' | translate }}</h2>\n\n<ng-container\n *ngIf=\"{\n currentValue: currentValue$ | async,\n loading: loading$ | async,\n disabled: disabled$ | async,\n params: params$ | async,\n } as obs\"\n>\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <label\n class=\"custom-control custom-checkbox custom-control-inline pl-6 mr-5\"\n placement=\"bottom\"\n >\n <input\n [checked]=\"obs?.currentValue?.canHaveAssignee\"\n class=\"custom-control-input\"\n type=\"checkbox\"\n [disabled]=\"obs.disabled\"\n (click)=\"toggleAssignee(obs?.currentValue, obs.params?.caseDefinitionKey)\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'caseManagement.toggleAssignee.checkboxDescription' | translate\n }}</span>\n </label>\n </ng-container>\n <ng-container *ngIf=\"obs?.currentValue?.canHaveAssignee\">\n <label\n class=\"custom-control custom-checkbox custom-control-inline pl-6 mr-5\"\n placement=\"bottom\"\n >\n <input\n [checked]=\"obs?.currentValue?.autoAssignTasks\"\n class=\"custom-control-input\"\n type=\"checkbox\"\n [disabled]=\"obs.disabled\"\n (click)=\"toggleTaskAssignment(obs?.currentValue, obs.params?.caseDefinitionKey)\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'caseManagement.toggleAutoAssignTasks.checkboxDescription' | translate\n }}</span>\n </label>\n </ng-container>\n</ng-container>\n\n<ng-template #loading>\n <valtimo-spinner></valtimo-spinner>\n</ng-template>\n", styles: ["/*!\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.SpinnerComponent, selector: "valtimo-spinner", inputs: ["useBootstrapSpinner", "name", "type", "size", "color", "bdColor", "fullScreen", "noMarginTop"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
5220
5387
|
}
|
|
5221
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5388
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementAssigneeComponent, decorators: [{
|
|
5222
5389
|
type: Component,
|
|
5223
5390
|
args: [{ standalone: false, selector: 'valtimo-case-management-assignee', 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<h2 class=\"mb-4\">{{ 'caseManagement.toggleAssignee.title' | translate }}</h2>\n\n<ng-container\n *ngIf=\"{\n currentValue: currentValue$ | async,\n loading: loading$ | async,\n disabled: disabled$ | async,\n params: params$ | async,\n } as obs\"\n>\n <ng-container *ngIf=\"obs.loading === false; else loading\">\n <label\n class=\"custom-control custom-checkbox custom-control-inline pl-6 mr-5\"\n placement=\"bottom\"\n >\n <input\n [checked]=\"obs?.currentValue?.canHaveAssignee\"\n class=\"custom-control-input\"\n type=\"checkbox\"\n [disabled]=\"obs.disabled\"\n (click)=\"toggleAssignee(obs?.currentValue, obs.params?.caseDefinitionKey)\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'caseManagement.toggleAssignee.checkboxDescription' | translate\n }}</span>\n </label>\n </ng-container>\n <ng-container *ngIf=\"obs?.currentValue?.canHaveAssignee\">\n <label\n class=\"custom-control custom-checkbox custom-control-inline pl-6 mr-5\"\n placement=\"bottom\"\n >\n <input\n [checked]=\"obs?.currentValue?.autoAssignTasks\"\n class=\"custom-control-input\"\n type=\"checkbox\"\n [disabled]=\"obs.disabled\"\n (click)=\"toggleTaskAssignment(obs?.currentValue, obs.params?.caseDefinitionKey)\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'caseManagement.toggleAutoAssignTasks.checkboxDescription' | translate\n }}</span>\n </label>\n </ng-container>\n</ng-container>\n\n<ng-template #loading>\n <valtimo-spinner></valtimo-spinner>\n</ng-template>\n", styles: ["/*!\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"] }]
|
|
5224
5391
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }] });
|
|
@@ -5318,10 +5485,10 @@ class CaseManagementConnectModalComponent {
|
|
|
5318
5485
|
},
|
|
5319
5486
|
});
|
|
5320
5487
|
}
|
|
5321
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5322
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
5488
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementConnectModalComponent, deps: [{ token: i1$2.DocumentService }, { token: CaseDetailService }, { token: i3$1.GlobalNotificationService }, { token: i4.ProcessService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5489
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CaseManagementConnectModalComponent, isStandalone: false, selector: "valtimo-case-management-connect-modal", outputs: { reloadProcessDocumentDefinitions: "reloadProcessDocumentDefinitions" }, viewQueries: [{ propertyName: "_modal", first: true, predicate: ["caseConnectModal"], descendants: 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<valtimo-modal\n #caseConnectModal\n elementId=\"caseConnectModal\"\n [title]=\"documentDefinition ? documentDefinition.schema.title : 'Document definition'\"\n subtitle=\"Connect document definition to process definition\"\n showFooter=\"true\"\n>\n <div body *ngIf=\"documentDefinition\">\n <p>\n {{ 'Select process definition for document definition' | translate }}\n <strong>{{ documentDefinition.id.name }} *</strong>\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <select class=\"form-control\" [(ngModel)]=\"newDocumentProcessDefinition\">\n <option [ngValue]=\"null\">{{ 'caseManagement.selectProcessDef' | translate }}</option>\n <option\n *ngFor=\"let processDefinition of processDefinitions\"\n [disabled]=\"processDocumentDefinitionExists[processDefinition.key]\"\n [ngValue]=\"processDefinition\"\n >\n {{ processDefinition.name }} ({{ processDefinition.key }})\n </option>\n </select>\n </div>\n <p>\n {{ 'Select options for the selected process' | translate }}\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <label\n class=\"custom-control custom-checkbox custom-control-inline pl-6 mb-0\"\n placement=\"bottom\"\n ngbTooltip=\"{{ 'processCaseConnection.processCreatesCaseTooltip' | translate }}\"\n >\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [(ngModel)]=\"newDocumentProcessDefinitionInit\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'processCaseConnection.processCreatesCase' | translate\n }}</span>\n </label>\n <label\n class=\"custom-control custom-checkbox custom-control-inline ml-2 pl-6 mb-0\"\n placement=\"bottom\"\n ngbTooltip=\"{{ 'processCaseConnection.startableWithinCaseTooltip' | translate }}\"\n >\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [(ngModel)]=\"newDocumentProcessDefinitionStartableByUser\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'processCaseConnection.startableWithinCase' | translate\n }}</span>\n </label>\n </div>\n </div>\n <div footer>\n <button\n (click)=\"submit()\"\n class=\"btn btn-primary\"\n data-dismiss=\"modal\"\n [disabled]=\"!newDocumentProcessDefinition\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</valtimo-modal>\n", styles: ["/*!\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: i1$4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$4.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.ModalComponent, selector: "valtimo-modal", inputs: ["elementId", "title", "subtitle", "templateBelowSubtitle", "showFooter"] }, { kind: "directive", type: i9.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "triggers", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
5323
5490
|
}
|
|
5324
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5491
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementConnectModalComponent, decorators: [{
|
|
5325
5492
|
type: Component,
|
|
5326
5493
|
args: [{ standalone: false, selector: 'valtimo-case-management-connect-modal', 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<valtimo-modal\n #caseConnectModal\n elementId=\"caseConnectModal\"\n [title]=\"documentDefinition ? documentDefinition.schema.title : 'Document definition'\"\n subtitle=\"Connect document definition to process definition\"\n showFooter=\"true\"\n>\n <div body *ngIf=\"documentDefinition\">\n <p>\n {{ 'Select process definition for document definition' | translate }}\n <strong>{{ documentDefinition.id.name }} *</strong>\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <select class=\"form-control\" [(ngModel)]=\"newDocumentProcessDefinition\">\n <option [ngValue]=\"null\">{{ 'caseManagement.selectProcessDef' | translate }}</option>\n <option\n *ngFor=\"let processDefinition of processDefinitions\"\n [disabled]=\"processDocumentDefinitionExists[processDefinition.key]\"\n [ngValue]=\"processDefinition\"\n >\n {{ processDefinition.name }} ({{ processDefinition.key }})\n </option>\n </select>\n </div>\n <p>\n {{ 'Select options for the selected process' | translate }}\n </p>\n <div class=\"input-group mb-3 align-items-center\">\n <label\n class=\"custom-control custom-checkbox custom-control-inline pl-6 mb-0\"\n placement=\"bottom\"\n ngbTooltip=\"{{ 'processCaseConnection.processCreatesCaseTooltip' | translate }}\"\n >\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [(ngModel)]=\"newDocumentProcessDefinitionInit\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'processCaseConnection.processCreatesCase' | translate\n }}</span>\n </label>\n <label\n class=\"custom-control custom-checkbox custom-control-inline ml-2 pl-6 mb-0\"\n placement=\"bottom\"\n ngbTooltip=\"{{ 'processCaseConnection.startableWithinCaseTooltip' | translate }}\"\n >\n <input\n class=\"custom-control-input\"\n type=\"checkbox\"\n [(ngModel)]=\"newDocumentProcessDefinitionStartableByUser\"\n /><span class=\"custom-control-label custom-control-color\">{{\n 'processCaseConnection.startableWithinCase' | translate\n }}</span>\n </label>\n </div>\n </div>\n <div footer>\n <button\n (click)=\"submit()\"\n class=\"btn btn-primary\"\n data-dismiss=\"modal\"\n [disabled]=\"!newDocumentProcessDefinition\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</valtimo-modal>\n", styles: ["/*!\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"] }]
|
|
5327
5494
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: CaseDetailService }, { type: i3$1.GlobalNotificationService }, { type: i4.ProcessService }, { type: i3.TranslateService }], propDecorators: { _modal: [{
|
|
@@ -5347,8 +5514,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
5347
5514
|
* limitations under the License.
|
|
5348
5515
|
*/
|
|
5349
5516
|
class CaseManagementModule {
|
|
5350
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5351
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
|
5517
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
5518
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementModule, declarations: [CaseManagementListComponent,
|
|
5352
5519
|
CaseManagementConnectModalComponent,
|
|
5353
5520
|
CaseManagementSelectVersionModalComponent,
|
|
5354
5521
|
CaseManagementUploadComponent,
|
|
@@ -5429,7 +5596,7 @@ class CaseManagementModule {
|
|
|
5429
5596
|
CaseManagementDraftWarningComponent,
|
|
5430
5597
|
JsonEditorComponent,
|
|
5431
5598
|
CaseManagementHeaderComponent] }); }
|
|
5432
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.
|
|
5599
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementModule, providers: [TabManagementService], imports: [CommonModule,
|
|
5433
5600
|
WidgetModule,
|
|
5434
5601
|
DropzoneModule,
|
|
5435
5602
|
CaseManagementRoutingModule,
|
|
@@ -5480,7 +5647,7 @@ class CaseManagementModule {
|
|
|
5480
5647
|
JsonEditorComponent,
|
|
5481
5648
|
CaseManagementHeaderComponent] }); }
|
|
5482
5649
|
}
|
|
5483
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5650
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CaseManagementModule, decorators: [{
|
|
5484
5651
|
type: NgModule,
|
|
5485
5652
|
args: [{
|
|
5486
5653
|
declarations: [
|
|
@@ -5596,5 +5763,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
5596
5763
|
* Generated bundle index. Do not edit.
|
|
5597
5764
|
*/
|
|
5598
5765
|
|
|
5599
|
-
export { CaseDefinition, CaseDetailService, CaseListItem, CaseManagementDraftWarningComponent, CaseManagementListComponent, CaseManagementModule, CaseManagementService, CaseWidgetManagementApiService, DraftVersion, ReleaseInformationData, ReleaseVersionData, TabEnum, TabManagementService, TabService };
|
|
5766
|
+
export { CASE_MANAGEMENT_CASE_HANDLER_TEST_IDS, CASE_MANAGEMENT_CREATE_TEST_IDS, CASE_MANAGEMENT_DETAIL_ACTIONS_TEST_IDS, CASE_MANAGEMENT_DETAIL_TEST_IDS, CASE_MANAGEMENT_EXTERNAL_START_FORM_TEST_IDS, CASE_MANAGEMENT_LIST_COLUMNS_TEST_IDS, CASE_MANAGEMENT_LIST_TEST_IDS, CASE_MANAGEMENT_STATUSES_TEST_IDS, CASE_MANAGEMENT_STATUS_MODAL_TEST_IDS, CASE_MANAGEMENT_TAGS_MODAL_TEST_IDS, CASE_MANAGEMENT_TAGS_TEST_IDS, CASE_MANAGEMENT_UPLOAD_TEST_IDS, CaseDefinition, CaseDetailService, CaseListItem, CaseManagementDraftWarningComponent, CaseManagementListComponent, CaseManagementModule, CaseManagementService, CaseWidgetManagementApiService, DraftVersion, ReleaseInformationData, ReleaseVersionData, TabEnum, TabManagementService, TabService };
|
|
5600
5767
|
//# sourceMappingURL=valtimo-case-management.mjs.map
|