@valtimo/case-management 13.22.0 → 13.24.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 +1064 -257
- package/fesm2022/valtimo-case-management.mjs.map +1 -1
- package/lib/case-management-routing.module.d.ts.map +1 -1
- package/lib/case-management.module.d.ts +3 -2
- package/lib/case-management.module.d.ts.map +1 -1
- package/lib/components/case-management-deployment/case-management-deployment.component.d.ts +4 -0
- package/lib/components/case-management-deployment/case-management-deployment.component.d.ts.map +1 -1
- package/lib/components/case-management-detail/tabs/case-management-actions/case-management-actions-modal/case-management-actions-modal.component.d.ts +54 -0
- package/lib/components/case-management-detail/tabs/case-management-actions/case-management-actions-modal/case-management-actions-modal.component.d.ts.map +1 -0
- package/lib/components/case-management-detail/tabs/case-management-actions/case-management-actions.component.d.ts +55 -0
- package/lib/components/case-management-detail/tabs/case-management-actions/case-management-actions.component.d.ts.map +1 -0
- package/lib/components/case-management-upload/case-management-upload.component.d.ts +17 -20
- package/lib/components/case-management-upload/case-management-upload.component.d.ts.map +1 -1
- package/lib/components/case-management-upload/case-management-upload.constants.d.ts +8 -1
- package/lib/components/case-management-upload/case-management-upload.constants.d.ts.map +1 -1
- package/lib/constants/case-management.test-ids.d.ts +3 -2
- package/lib/constants/case-management.test-ids.d.ts.map +1 -1
- package/lib/models/case-deployment.model.d.ts +9 -0
- package/lib/models/case-deployment.model.d.ts.map +1 -1
- package/lib/models/case-management-actions-modal.model.d.ts +13 -0
- package/lib/models/case-management-actions-modal.model.d.ts.map +1 -0
- package/lib/models/index.d.ts +2 -0
- package/lib/models/index.d.ts.map +1 -1
- package/lib/models/startable-item.model.d.ts +39 -0
- package/lib/models/startable-item.model.d.ts.map +1 -0
- package/lib/models/tab.model.d.ts +1 -0
- package/lib/models/tab.model.d.ts.map +1 -1
- package/lib/services/case-management.service.d.ts +3 -2
- package/lib/services/case-management.service.d.ts.map +1 -1
- package/lib/services/index.d.ts +2 -0
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/startable-item-api.service.d.ts +21 -0
- package/lib/services/startable-item-api.service.d.ts.map +1 -0
- package/lib/services/startable-item-management.service.d.ts +45 -0
- package/lib/services/startable-item-management.service.d.ts.map +1 -0
- package/package.json +3 -3
|
@@ -9,12 +9,12 @@ import { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';
|
|
|
9
9
|
import * as i3 from '@ngx-translate/core';
|
|
10
10
|
import { TranslateModule } from '@ngx-translate/core';
|
|
11
11
|
import * as i7 from '@valtimo/components';
|
|
12
|
-
import { ViewType, CARBON_CONSTANTS, ValuePathSelectorPrefix, MuuriItemComponent, ValtimoCdsModalDirective, RenderInPageHeaderDirective, WidgetModule, DropzoneModule, ModalModule as ModalModule$1, MultiselectDropdownModule, ParagraphModule, SelectModule, SpinnerModule, InputModule as InputModule$1, FormModule, TooltipIconModule, CarbonMultiInputModule,
|
|
12
|
+
import { runAfterCarbonModalClosed, ViewType, CARBON_CONSTANTS, ValuePathSelectorPrefix, MuuriItemComponent, ValtimoCdsModalDirective, RenderInPageHeaderDirective, TooltipModule, CarbonListModule, ConfirmationModalModule, WidgetModule, DropzoneModule, ModalModule as ModalModule$1, MultiselectDropdownModule, ParagraphModule, SelectModule, SpinnerModule, InputModule as InputModule$1, FormModule, TooltipIconModule, CarbonMultiInputModule, TableModule, OverflowMenuComponent, OverflowMenuOptionComponent, EditorModule, ValuePathSelectorComponent, EllipsisPipe, MuuriDirectiveModule, ReadOnlyDirective, JsonEditorComponent, AutoKeyInputComponent } from '@valtimo/components';
|
|
13
13
|
import { FormManagementComponent, FormManagementEditComponent } from '@valtimo/form-management';
|
|
14
14
|
import * as i3$1 from '@valtimo/shared';
|
|
15
15
|
import { BaseApiService, InterceptorSkip, getCaseManagementRouteParams, CASE_MANAGEMENT_TAB_TOKEN, InterceptorSkipHeader, TagColor, getDisplayTypeParametersView, CASE_CONFIGURATION_EXTENSIONS_TOKEN, ROLE_ADMIN, ConfigModule } from '@valtimo/shared';
|
|
16
16
|
import * as i2 from 'carbon-components-angular';
|
|
17
|
-
import { NotificationModule, Tab, ModalModule, InputModule, ButtonModule, IconModule, TabsModule,
|
|
17
|
+
import { NotificationModule, Tab, ModalModule, InputModule, ButtonModule, IconModule, TabsModule, LayerModule, ComboBoxModule, ProgressIndicatorModule, LoadingModule, TagModule, DropdownModule, CheckboxModule, LinkModule, DialogModule, FileUploaderModule, ProgressBarModule, ToggleModule, TooltipModule as TooltipModule$1, NumberModule } from 'carbon-components-angular';
|
|
18
18
|
import * as i2$1 from '@angular/router';
|
|
19
19
|
import { NavigationEnd, RouterModule } from '@angular/router';
|
|
20
20
|
import { DecisionListComponent, DecisionModelerComponent } from '@valtimo/decision';
|
|
@@ -22,27 +22,28 @@ 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, shareReplay, finalize } from 'rxjs';
|
|
25
|
+
import { BehaviorSubject, combineLatest, map, filter, switchMap, catchError, of, Subscription, distinctUntilChanged, Subject, startWith, tap, take as take$1, delay, shareReplay, finalize, EMPTY, debounceTime } 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';
|
|
29
|
-
import { HttpHeaders } from '@angular/common/http';
|
|
29
|
+
import { HttpHeaders, HttpParams } from '@angular/common/http';
|
|
30
30
|
import { isEqual } from 'lodash';
|
|
31
|
-
import { Code16, Development16, TableBuilt16, WatsonHealthPageScroll16, ArrowDown16, ArrowUp16, Edit16, Information16, Return16, TrashCan16, Save16, Version16, Deploy16,
|
|
31
|
+
import { Code16, Development16, TableBuilt16, WatsonHealthPageScroll16, ArrowDown16, ArrowUp16, Edit16, Information16, Return16, TrashCan16, Save16, Version16, Deploy16, FlowModeler20, BlockStorageAlt20, Search20, TrashCan20, Upload16 } from '@carbon/icons';
|
|
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,
|
|
35
|
+
import { take, tap as tap$1, switchMap as switchMap$1, catchError as catchError$1, map as map$1, filter as filter$1, withLatestFrom } from 'rxjs/operators';
|
|
36
36
|
import * as i1$3 from '@valtimo/form';
|
|
37
|
+
import * as i2$2 from 'ngx-logger';
|
|
37
38
|
import { v4 } from 'uuid';
|
|
38
39
|
import * as semver from 'semver';
|
|
39
40
|
import { valid, lt } from 'semver';
|
|
40
41
|
import * as i7$1 from '@valtimo/sse';
|
|
41
|
-
import * as i5 from 'ngx-logger';
|
|
42
42
|
import moment from 'moment/moment';
|
|
43
|
+
import * as i4 from '@valtimo/process-link';
|
|
44
|
+
import { ensureDocPrefix, ProcessLinkModule, ProcessLinkStateService, ProcessLinkStepService, ProcessLinkButtonService } from '@valtimo/process-link';
|
|
43
45
|
import moment$1 from 'moment';
|
|
44
|
-
import
|
|
45
|
-
import * as i4 from '@valtimo/process';
|
|
46
|
+
import * as i4$1 from '@valtimo/process';
|
|
46
47
|
|
|
47
48
|
/*
|
|
48
49
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
@@ -97,6 +98,7 @@ var TabEnum;
|
|
|
97
98
|
TabEnum["DOCUMENT"] = "document";
|
|
98
99
|
TabEnum["CASE"] = "case";
|
|
99
100
|
TabEnum["PROCESSES"] = "processes";
|
|
101
|
+
TabEnum["ACTIONS"] = "actions";
|
|
100
102
|
TabEnum["SEARCH"] = "search";
|
|
101
103
|
TabEnum["LIST"] = "list";
|
|
102
104
|
TabEnum["TABS"] = "tabs";
|
|
@@ -153,6 +155,43 @@ class ReleaseInformationData {
|
|
|
153
155
|
class DraftVersion {
|
|
154
156
|
}
|
|
155
157
|
|
|
158
|
+
/*
|
|
159
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
160
|
+
*
|
|
161
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
162
|
+
* you may not use this file except in compliance with the License.
|
|
163
|
+
* You may obtain a copy of the License at
|
|
164
|
+
*
|
|
165
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
166
|
+
*
|
|
167
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
168
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
169
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
170
|
+
* See the License for the specific language governing permissions and
|
|
171
|
+
* limitations under the License.
|
|
172
|
+
*/
|
|
173
|
+
var StartableItemType;
|
|
174
|
+
(function (StartableItemType) {
|
|
175
|
+
StartableItemType["PROCESS"] = "PROCESS";
|
|
176
|
+
StartableItemType["BUILDING_BLOCK"] = "BUILDING_BLOCK";
|
|
177
|
+
})(StartableItemType || (StartableItemType = {}));
|
|
178
|
+
|
|
179
|
+
/*
|
|
180
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
181
|
+
*
|
|
182
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
183
|
+
* you may not use this file except in compliance with the License.
|
|
184
|
+
* You may obtain a copy of the License at
|
|
185
|
+
*
|
|
186
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
187
|
+
*
|
|
188
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
189
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
190
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
191
|
+
* See the License for the specific language governing permissions and
|
|
192
|
+
* limitations under the License.
|
|
193
|
+
*/
|
|
194
|
+
|
|
156
195
|
/*
|
|
157
196
|
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
158
197
|
*
|
|
@@ -202,10 +241,10 @@ class CaseManagementDraftWarningComponent {
|
|
|
202
241
|
showClose: false,
|
|
203
242
|
})));
|
|
204
243
|
}
|
|
205
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
206
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
244
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementDraftWarningComponent, deps: [{ token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
245
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
207
246
|
}
|
|
208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
247
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementDraftWarningComponent, decorators: [{
|
|
209
248
|
type: Component,
|
|
210
249
|
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"] }]
|
|
211
250
|
}], ctorParameters: () => [{ type: i3.TranslateService }], propDecorators: { name: [{
|
|
@@ -266,10 +305,10 @@ class CaseHeaderWidgetManagementService extends BaseApiService {
|
|
|
266
305
|
createWidget(widget) {
|
|
267
306
|
return this.paramsRequired$.pipe(switchMap(({ caseDefinitionKey, caseDefinitionVersionTag }) => this.httpClient.post(this.getApiUrl(`management/v1/case-definition/${encodeURIComponent(caseDefinitionKey)}/version/${encodeURIComponent(caseDefinitionVersionTag)}/header-widget`), widget)));
|
|
268
307
|
}
|
|
269
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
270
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
308
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseHeaderWidgetManagementService, deps: [{ token: i1.HttpClient }, { token: i3$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
309
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseHeaderWidgetManagementService }); }
|
|
271
310
|
}
|
|
272
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
311
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseHeaderWidgetManagementService, decorators: [{
|
|
273
312
|
type: Injectable
|
|
274
313
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i3$1.ConfigService }] });
|
|
275
314
|
|
|
@@ -313,15 +352,15 @@ class CaseManagementHeaderComponent extends ManagementWidgetDetailsComponent {
|
|
|
313
352
|
ngOnDestroy() {
|
|
314
353
|
this._subscriptions.unsubscribe();
|
|
315
354
|
}
|
|
316
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
317
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
355
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementHeaderComponent, deps: [{ token: i1$1.WidgetWizardService }, { token: WIDGET_MANAGEMENT_SERVICE }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
356
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: CaseManagementHeaderComponent, isStandalone: true, selector: "valtimo-case-management-header", providers: [
|
|
318
357
|
{
|
|
319
358
|
provide: WIDGET_MANAGEMENT_SERVICE,
|
|
320
359
|
useClass: CaseHeaderWidgetManagementService,
|
|
321
360
|
},
|
|
322
361
|
], 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 }); }
|
|
323
362
|
}
|
|
324
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
363
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementHeaderComponent, decorators: [{
|
|
325
364
|
type: Component,
|
|
326
365
|
args: [{ standalone: true, selector: 'valtimo-case-management-header', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, WidgetManagementComponent], providers: [
|
|
327
366
|
{
|
|
@@ -421,10 +460,10 @@ class CaseDetailService {
|
|
|
421
460
|
}))
|
|
422
461
|
.subscribe());
|
|
423
462
|
}
|
|
424
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
425
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
463
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseDetailService, deps: [{ token: i1$2.DocumentService }, { token: i7.PageTitleService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
464
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseDetailService }); }
|
|
426
465
|
}
|
|
427
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
466
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseDetailService, decorators: [{
|
|
428
467
|
type: Injectable
|
|
429
468
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i7.PageTitleService }] });
|
|
430
469
|
|
|
@@ -496,10 +535,10 @@ class TabManagementService {
|
|
|
496
535
|
}
|
|
497
536
|
return tab;
|
|
498
537
|
}
|
|
499
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
500
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
538
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TabManagementService, deps: [{ token: i3$1.ConfigService }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
539
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TabManagementService }); }
|
|
501
540
|
}
|
|
502
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
541
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TabManagementService, decorators: [{
|
|
503
542
|
type: Injectable
|
|
504
543
|
}], ctorParameters: () => [{ type: i3$1.ConfigService }, { type: i1.HttpClient }] });
|
|
505
544
|
|
|
@@ -592,10 +631,10 @@ class TabService {
|
|
|
592
631
|
: [caseManagementTabConfig];
|
|
593
632
|
this._injectedCaseManagementTabs$.next(tabs.map(tab => ({ ...tab, enabled$: tab.enabled$ ?? of(true) })));
|
|
594
633
|
}
|
|
595
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
596
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
634
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
635
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TabService, providedIn: 'root' }); }
|
|
597
636
|
}
|
|
598
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
637
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TabService, decorators: [{
|
|
599
638
|
type: Injectable,
|
|
600
639
|
args: [{
|
|
601
640
|
providedIn: 'root',
|
|
@@ -648,10 +687,10 @@ class CaseWidgetManagementApiService {
|
|
|
648
687
|
updateWidgets(widgets) {
|
|
649
688
|
return this.params$.pipe(switchMap((params) => this.http.post(`${this.valtimoEndpointBase}/${params.caseDefinitionKey}/version/${params.caseDefinitionVersionTag}/widget-tab/${params.key}`, { ...params, widgets })));
|
|
650
689
|
}
|
|
651
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
652
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
690
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseWidgetManagementApiService, deps: [{ token: i1.HttpClient }, { token: i3$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
691
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseWidgetManagementApiService, providedIn: 'root' }); }
|
|
653
692
|
}
|
|
654
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
693
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseWidgetManagementApiService, decorators: [{
|
|
655
694
|
type: Injectable,
|
|
656
695
|
args: [{
|
|
657
696
|
providedIn: 'root',
|
|
@@ -717,10 +756,16 @@ class CaseManagementService extends BaseApiService {
|
|
|
717
756
|
headers: new HttpHeaders().set(InterceptorSkip, '403'),
|
|
718
757
|
});
|
|
719
758
|
}
|
|
720
|
-
|
|
721
|
-
return this.httpClient
|
|
722
|
-
|
|
723
|
-
|
|
759
|
+
previewImport(file) {
|
|
760
|
+
return this.httpClient.post(this.getApiUrl('management/v1/case/import/preview'), file, { headers: new HttpHeaders().set(InterceptorSkip, '400') });
|
|
761
|
+
}
|
|
762
|
+
importDocumentDefinitionZip(file, key, name) {
|
|
763
|
+
let params = new HttpParams();
|
|
764
|
+
if (key)
|
|
765
|
+
params = params.set('key', key);
|
|
766
|
+
if (name)
|
|
767
|
+
params = params.set('name', name);
|
|
768
|
+
return this.httpClient.post(this.getApiUrl('management/v1/case/import'), file, { params });
|
|
724
769
|
}
|
|
725
770
|
exportDocumentDefinition(caseDefinitionKey, caseDefinitionVersionTag = '0') {
|
|
726
771
|
return this.httpClient.get(this.getApiUrl(`management/v1/case/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/export`), { observe: 'response', responseType: 'blob', headers: InterceptorSkipHeader });
|
|
@@ -731,16 +776,189 @@ class CaseManagementService extends BaseApiService {
|
|
|
731
776
|
getCaseDefinitionFinalizationCheck(caseDefinitionKey, caseDefinitionVersionTag) {
|
|
732
777
|
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${caseDefinitionKey}/version/${caseDefinitionVersionTag}/finalizable`));
|
|
733
778
|
}
|
|
734
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
735
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
779
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementService, deps: [{ token: i1.HttpClient }, { token: i3$1.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
780
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementService, providedIn: 'root' }); }
|
|
736
781
|
}
|
|
737
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
782
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementService, decorators: [{
|
|
738
783
|
type: Injectable,
|
|
739
784
|
args: [{
|
|
740
785
|
providedIn: 'root',
|
|
741
786
|
}]
|
|
742
787
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i3$1.ConfigService }] });
|
|
743
788
|
|
|
789
|
+
class StartableItemApiService extends BaseApiService {
|
|
790
|
+
constructor(configService, httpClient) {
|
|
791
|
+
super(httpClient, configService);
|
|
792
|
+
this.configService = configService;
|
|
793
|
+
this.httpClient = httpClient;
|
|
794
|
+
}
|
|
795
|
+
getCaseDefinitionUrl(params) {
|
|
796
|
+
return this.getApiUrl(`management/v1/case-definition/${params.caseDefinitionKey}/version/${params.caseDefinitionVersionTag}/startable-item`);
|
|
797
|
+
}
|
|
798
|
+
getItems(params) {
|
|
799
|
+
return this.httpClient.get(this.getCaseDefinitionUrl(params));
|
|
800
|
+
}
|
|
801
|
+
createItem(params, request) {
|
|
802
|
+
return this.httpClient.post(this.getCaseDefinitionUrl(params), request);
|
|
803
|
+
}
|
|
804
|
+
deleteItem(params, itemKey, versionTag) {
|
|
805
|
+
const versionSegment = versionTag ? `/version/${versionTag}` : '';
|
|
806
|
+
return this.httpClient.delete(`${this.getCaseDefinitionUrl(params)}/${itemKey}${versionSegment}`);
|
|
807
|
+
}
|
|
808
|
+
updateItem(params, itemKey, versionTag, request) {
|
|
809
|
+
const versionSegment = versionTag ? `/version/${versionTag}` : '';
|
|
810
|
+
return this.httpClient.put(`${this.getCaseDefinitionUrl(params)}/${itemKey}${versionSegment}`, request);
|
|
811
|
+
}
|
|
812
|
+
updateOrder(params, request) {
|
|
813
|
+
return this.httpClient.put(`${this.getCaseDefinitionUrl(params)}/order`, request);
|
|
814
|
+
}
|
|
815
|
+
getItemProperties(params, itemKey, versionTag, type) {
|
|
816
|
+
const versionSegment = versionTag ? `/version/${versionTag}` : '';
|
|
817
|
+
return this.httpClient.get(`${this.getCaseDefinitionUrl(params)}/${itemKey}${versionSegment}/properties`, { params: { type } });
|
|
818
|
+
}
|
|
819
|
+
getLinkedProcessDefinitions(params) {
|
|
820
|
+
return this.httpClient.get(this.getApiUrl(`management/v1/case-definition/${params.caseDefinitionKey}/version/${params.caseDefinitionVersionTag}/process-definition`));
|
|
821
|
+
}
|
|
822
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartableItemApiService, deps: [{ token: i3$1.ConfigService }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
823
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartableItemApiService, providedIn: 'root' }); }
|
|
824
|
+
}
|
|
825
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartableItemApiService, decorators: [{
|
|
826
|
+
type: Injectable,
|
|
827
|
+
args: [{
|
|
828
|
+
providedIn: 'root',
|
|
829
|
+
}]
|
|
830
|
+
}], ctorParameters: () => [{ type: i3$1.ConfigService }, { type: i1.HttpClient }] });
|
|
831
|
+
|
|
832
|
+
/*
|
|
833
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
834
|
+
*
|
|
835
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
836
|
+
* you may not use this file except in compliance with the License.
|
|
837
|
+
* You may obtain a copy of the License at
|
|
838
|
+
*
|
|
839
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
840
|
+
*
|
|
841
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
842
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
843
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
844
|
+
* See the License for the specific language governing permissions and
|
|
845
|
+
* limitations under the License.
|
|
846
|
+
*/
|
|
847
|
+
class StartableItemManagementService {
|
|
848
|
+
constructor(startableItemApiService, logger) {
|
|
849
|
+
this.startableItemApiService = startableItemApiService;
|
|
850
|
+
this.logger = logger;
|
|
851
|
+
this._params$ = new BehaviorSubject(null);
|
|
852
|
+
this._items$ = new BehaviorSubject([]);
|
|
853
|
+
this.items$ = this._items$.asObservable();
|
|
854
|
+
this._loading$ = new BehaviorSubject(false);
|
|
855
|
+
this.loading$ = this._loading$.asObservable();
|
|
856
|
+
this._showModal$ = new BehaviorSubject(false);
|
|
857
|
+
this.showModal$ = this._showModal$.asObservable();
|
|
858
|
+
this._editingItem$ = new BehaviorSubject(null);
|
|
859
|
+
this.editingItem$ = this._editingItem$.asObservable();
|
|
860
|
+
this._showDeleteModal$ = new BehaviorSubject(false);
|
|
861
|
+
this.showDeleteModal$ = this._showDeleteModal$.asObservable();
|
|
862
|
+
this._itemToDelete$ = new BehaviorSubject(null);
|
|
863
|
+
this.itemToDelete$ = this._itemToDelete$.asObservable();
|
|
864
|
+
this._reorderComplete$ = new Subject();
|
|
865
|
+
this.reorderComplete$ = this._reorderComplete$.asObservable();
|
|
866
|
+
this.usedProcessDefinitionIds$ = this._items$.pipe(map$1(items => items
|
|
867
|
+
.filter(item => item.type === StartableItemType.PROCESS && !!item.processDefinitionId)
|
|
868
|
+
.map(item => item.processDefinitionId)));
|
|
869
|
+
this.usedBuildingBlockKeys$ = this._items$.pipe(map$1(items => items.filter(item => item.type === StartableItemType.BUILDING_BLOCK).map(item => item.key)));
|
|
870
|
+
this.linkedProcessDefinitions$ = this._params$.pipe(filter$1((params) => params !== null), switchMap$1(params => this.startableItemApiService.getLinkedProcessDefinitions(params)));
|
|
871
|
+
}
|
|
872
|
+
setParams(params) {
|
|
873
|
+
this._params$.next(params);
|
|
874
|
+
}
|
|
875
|
+
getParams() {
|
|
876
|
+
const params = this._params$.value;
|
|
877
|
+
if (!params) {
|
|
878
|
+
this.logger.error('Params not initialized. Call setParams() first.');
|
|
879
|
+
}
|
|
880
|
+
return params;
|
|
881
|
+
}
|
|
882
|
+
loadItems() {
|
|
883
|
+
this._loading$.next(true);
|
|
884
|
+
this.startableItemApiService
|
|
885
|
+
.getItems(this.getParams())
|
|
886
|
+
.pipe(take(1))
|
|
887
|
+
.subscribe({
|
|
888
|
+
next: (items) => {
|
|
889
|
+
this._items$.next(items);
|
|
890
|
+
this._loading$.next(false);
|
|
891
|
+
},
|
|
892
|
+
error: error => {
|
|
893
|
+
console.error(error);
|
|
894
|
+
this._loading$.next(false);
|
|
895
|
+
},
|
|
896
|
+
});
|
|
897
|
+
}
|
|
898
|
+
showCreateModal() {
|
|
899
|
+
this._editingItem$.next(null);
|
|
900
|
+
this._showModal$.next(true);
|
|
901
|
+
}
|
|
902
|
+
showEditModal(item) {
|
|
903
|
+
this._editingItem$.next(item);
|
|
904
|
+
this._showModal$.next(true);
|
|
905
|
+
}
|
|
906
|
+
hideModal() {
|
|
907
|
+
this._showModal$.next(false);
|
|
908
|
+
runAfterCarbonModalClosed(() => this._editingItem$.next(null));
|
|
909
|
+
}
|
|
910
|
+
showDeleteConfirmation(item) {
|
|
911
|
+
this._itemToDelete$.next(item);
|
|
912
|
+
this._showDeleteModal$.next(true);
|
|
913
|
+
}
|
|
914
|
+
hideDeleteModal() {
|
|
915
|
+
this._showDeleteModal$.next(false);
|
|
916
|
+
this._itemToDelete$.next(null);
|
|
917
|
+
}
|
|
918
|
+
createItem(request) {
|
|
919
|
+
return this.startableItemApiService.createItem(this.getParams(), request);
|
|
920
|
+
}
|
|
921
|
+
updateItem(key, versionTag, request) {
|
|
922
|
+
return this.startableItemApiService.updateItem(this.getParams(), key, versionTag, request);
|
|
923
|
+
}
|
|
924
|
+
getItemProperties(itemKey, versionTag, type) {
|
|
925
|
+
return this.startableItemApiService.getItemProperties(this.getParams(), itemKey, versionTag, type);
|
|
926
|
+
}
|
|
927
|
+
deleteItem(item) {
|
|
928
|
+
return this.startableItemApiService.deleteItem(this.getParams(), item.key, item.versionTag);
|
|
929
|
+
}
|
|
930
|
+
updateOrder(items) {
|
|
931
|
+
this._items$.next(items);
|
|
932
|
+
const request = {
|
|
933
|
+
items: items.map((item, index) => ({
|
|
934
|
+
key: item.key,
|
|
935
|
+
type: item.type,
|
|
936
|
+
versionTag: item.versionTag,
|
|
937
|
+
sortOrder: index,
|
|
938
|
+
})),
|
|
939
|
+
};
|
|
940
|
+
this.startableItemApiService
|
|
941
|
+
.updateOrder(this.getParams(), request)
|
|
942
|
+
.pipe(take(1), catchError$1(() => {
|
|
943
|
+
this.loadItems();
|
|
944
|
+
return of([]);
|
|
945
|
+
}))
|
|
946
|
+
.subscribe({
|
|
947
|
+
next: (updatedItems) => {
|
|
948
|
+
if (updatedItems.length) {
|
|
949
|
+
this._items$.next(updatedItems);
|
|
950
|
+
}
|
|
951
|
+
this._reorderComplete$.next();
|
|
952
|
+
},
|
|
953
|
+
});
|
|
954
|
+
}
|
|
955
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartableItemManagementService, deps: [{ token: StartableItemApiService }, { token: i2$2.NGXLogger }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
956
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartableItemManagementService }); }
|
|
957
|
+
}
|
|
958
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StartableItemManagementService, decorators: [{
|
|
959
|
+
type: Injectable
|
|
960
|
+
}], ctorParameters: () => [{ type: StartableItemApiService }, { type: i2$2.NGXLogger }] });
|
|
961
|
+
|
|
744
962
|
/*
|
|
745
963
|
* Copyright 2015-2025 Ritense BV, the Netherlands.
|
|
746
964
|
*
|
|
@@ -856,10 +1074,10 @@ class TabFormComponent {
|
|
|
856
1074
|
selected: this.form?.get('contentKey')?.value === tabItem.contentKey,
|
|
857
1075
|
}));
|
|
858
1076
|
}
|
|
859
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
860
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
1077
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TabFormComponent, deps: [{ token: i3$1.ConfigService }, { token: TabService }, { token: i1$4.FormGroupDirective }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1078
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
861
1079
|
}
|
|
862
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1080
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TabFormComponent, decorators: [{
|
|
863
1081
|
type: Component,
|
|
864
1082
|
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"] }]
|
|
865
1083
|
}], ctorParameters: () => [{ type: i3$1.ConfigService }, { type: TabService }, { type: i1$4.FormGroupDirective }, { type: i2$1.ActivatedRoute }], propDecorators: { tabType: [{
|
|
@@ -961,10 +1179,10 @@ class CaseManagementAddTabModalComponent {
|
|
|
961
1179
|
? null
|
|
962
1180
|
: { uniqueKey: { value: control.value } };
|
|
963
1181
|
}
|
|
964
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
965
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
1182
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
1183
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
966
1184
|
}
|
|
967
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1185
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementAddTabModalComponent, decorators: [{
|
|
968
1186
|
type: Component,
|
|
969
1187
|
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"] }]
|
|
970
1188
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: TabService }, { type: i3$1.ConfigService }, { type: i2$1.ActivatedRoute }], propDecorators: { params: [{
|
|
@@ -1024,10 +1242,10 @@ class CaseManagementEditTabModalComponent {
|
|
|
1024
1242
|
}
|
|
1025
1243
|
this.closeModalEvent.emit({ ...this.tab, name, contentKey, showTasks });
|
|
1026
1244
|
}
|
|
1027
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1028
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
1245
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementEditTabModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: TabService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1246
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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" }] }); }
|
|
1029
1247
|
}
|
|
1030
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementEditTabModalComponent, decorators: [{
|
|
1031
1249
|
type: Component,
|
|
1032
1250
|
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" }]
|
|
1033
1251
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: TabService }], propDecorators: { open: [{
|
|
@@ -1192,10 +1410,10 @@ class CaseManagementTabsComponent {
|
|
|
1192
1410
|
},
|
|
1193
1411
|
]);
|
|
1194
1412
|
}
|
|
1195
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1196
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
1413
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
1414
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
1197
1415
|
}
|
|
1198
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1416
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementTabsComponent, decorators: [{
|
|
1199
1417
|
type: Component,
|
|
1200
1418
|
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" }]
|
|
1201
1419
|
}], 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: [{
|
|
@@ -1209,6 +1427,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1209
1427
|
args: ['moveButtonsTemplate']
|
|
1210
1428
|
}] } });
|
|
1211
1429
|
|
|
1430
|
+
/*
|
|
1431
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
1432
|
+
*
|
|
1433
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
1434
|
+
* you may not use this file except in compliance with the License.
|
|
1435
|
+
* You may obtain a copy of the License at
|
|
1436
|
+
*
|
|
1437
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
1438
|
+
*
|
|
1439
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1440
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
1441
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1442
|
+
* See the License for the specific language governing permissions and
|
|
1443
|
+
* limitations under the License.
|
|
1444
|
+
*/
|
|
1212
1445
|
const CASE_MANAGEMENT_LIST_TEST_IDS = {
|
|
1213
1446
|
uploadButton: 'caseManagementUploadButton',
|
|
1214
1447
|
createButton: 'caseManagementCreateButton',
|
|
@@ -1218,11 +1451,12 @@ const CASE_MANAGEMENT_DETAIL_TEST_IDS = {
|
|
|
1218
1451
|
};
|
|
1219
1452
|
const CASE_MANAGEMENT_UPLOAD_TEST_IDS = {
|
|
1220
1453
|
fileUploader: 'caseFileUploader',
|
|
1221
|
-
uploadWarningNotification: 'uploadWarningNotification',
|
|
1222
|
-
uploadWarningCheckbox: 'uploadWarningCheckbox',
|
|
1223
1454
|
cancelButton: 'uploadWizardCancelButton',
|
|
1224
1455
|
nextButton: 'uploadWizardNextButton',
|
|
1225
1456
|
finishButton: 'uploadWizardFinishButton',
|
|
1457
|
+
nameInput: 'importConfigureNameInput',
|
|
1458
|
+
versionTag: 'importConfigureVersionTag',
|
|
1459
|
+
overrideCheckbox: 'importConfigureOverrideCheckbox',
|
|
1226
1460
|
};
|
|
1227
1461
|
const CASE_MANAGEMENT_DETAIL_ACTIONS_TEST_IDS = {
|
|
1228
1462
|
versionSelectDropdown: 'caseVersionSelectDropdown',
|
|
@@ -1561,10 +1795,10 @@ class CaseManagementStatusModalComponent {
|
|
|
1561
1795
|
color: this.color.value,
|
|
1562
1796
|
};
|
|
1563
1797
|
}
|
|
1564
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
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 }); }
|
|
1798
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementStatusModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: i2.IconService }, { token: i1$2.CaseStatusService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1799
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
1566
1800
|
}
|
|
1567
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1801
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementStatusModalComponent, decorators: [{
|
|
1568
1802
|
type: Component,
|
|
1569
1803
|
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"] }]
|
|
1570
1804
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: i1$2.CaseStatusService }, { type: i3.TranslateService }], propDecorators: { type: [{
|
|
@@ -1716,10 +1950,10 @@ class CaseManagementStatusesComponent {
|
|
|
1716
1950
|
},
|
|
1717
1951
|
]);
|
|
1718
1952
|
}
|
|
1719
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1720
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
1953
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
1954
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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 }); }
|
|
1721
1955
|
}
|
|
1722
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
1956
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementStatusesComponent, decorators: [{
|
|
1723
1957
|
type: Component,
|
|
1724
1958
|
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"] }]
|
|
1725
1959
|
}], ctorParameters: () => [{ type: i1$2.CaseStatusService }, { type: i2$1.ActivatedRoute }, { type: i3$1.EnvironmentService }, { type: i3$1.EditPermissionsService }, { type: CaseManagementService }], propDecorators: { colorColumnTemplate: [{
|
|
@@ -1960,10 +2194,10 @@ class CaseManagementTagsModalComponent {
|
|
|
1960
2194
|
color: this.color.value,
|
|
1961
2195
|
};
|
|
1962
2196
|
}
|
|
1963
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
1964
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
2197
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementTagsModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: i2.IconService }, { token: i3.TranslateService }, { token: i1$2.CaseTagService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2198
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
1965
2199
|
}
|
|
1966
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2200
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementTagsModalComponent, decorators: [{
|
|
1967
2201
|
type: Component,
|
|
1968
2202
|
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"] }]
|
|
1969
2203
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: i3.TranslateService }, { type: i1$2.CaseTagService }], propDecorators: { type: [{
|
|
@@ -2111,10 +2345,10 @@ class CaseManagementTagsComponent {
|
|
|
2111
2345
|
},
|
|
2112
2346
|
]);
|
|
2113
2347
|
}
|
|
2114
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2115
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
2348
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementTagsComponent, deps: [{ token: i1$2.CaseTagService }, { token: i2$1.ActivatedRoute }, { token: i3$1.EditPermissionsService }, { token: CaseManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2349
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
2116
2350
|
}
|
|
2117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2351
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementTagsComponent, decorators: [{
|
|
2118
2352
|
type: Component,
|
|
2119
2353
|
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"] }]
|
|
2120
2354
|
}], ctorParameters: () => [{ type: i1$2.CaseTagService }, { type: i2$1.ActivatedRoute }, { type: i3$1.EditPermissionsService }, { type: CaseManagementService }], propDecorators: { colorColumnTemplate: [{
|
|
@@ -2150,10 +2384,10 @@ class CaseManagementCaseDetailComponent {
|
|
|
2150
2384
|
switchTab(tab) {
|
|
2151
2385
|
this.currentTab$.next(tab);
|
|
2152
2386
|
}
|
|
2153
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
2154
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
2387
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCaseDetailComponent, deps: [{ token: i3$1.DraftVersionService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2388
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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 }); }
|
|
2155
2389
|
}
|
|
2156
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2390
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCaseDetailComponent, decorators: [{
|
|
2157
2391
|
type: Component,
|
|
2158
2392
|
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"] }]
|
|
2159
2393
|
}], ctorParameters: () => [{ type: i3$1.DraftVersionService }, { type: i2$1.ActivatedRoute }] });
|
|
@@ -2603,10 +2837,10 @@ class CaseManagementSearchFieldsComponent {
|
|
|
2603
2837
|
showEditModal(searchField) {
|
|
2604
2838
|
this.searchFieldClicked(searchField, false);
|
|
2605
2839
|
}
|
|
2606
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
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 }); }
|
|
2840
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
2841
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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 }); }
|
|
2608
2842
|
}
|
|
2609
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
2843
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementSearchFieldsComponent, decorators: [{
|
|
2610
2844
|
type: Component,
|
|
2611
2845
|
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"] }]
|
|
2612
2846
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }, { type: i3.TranslateService }, { type: i2.IconService }, { type: i3$1.EditPermissionsService }] });
|
|
@@ -3043,10 +3277,10 @@ class CaseManagementListColumnsComponent {
|
|
|
3043
3277
|
this.displayExportButton = pathMustStartWithCaseOrDocRegex.test(String(value));
|
|
3044
3278
|
});
|
|
3045
3279
|
}
|
|
3046
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
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" }] }); }
|
|
3280
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
3281
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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" }] }); }
|
|
3048
3282
|
}
|
|
3049
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3283
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementListColumnsComponent, decorators: [{
|
|
3050
3284
|
type: Component,
|
|
3051
3285
|
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"] }]
|
|
3052
3286
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }, { type: i3.TranslateService }, { type: i2.IconService }, { type: i3$1.EditPermissionsService }] });
|
|
@@ -3083,10 +3317,10 @@ class CaseManagementCaseListComponent {
|
|
|
3083
3317
|
switchTab(tab) {
|
|
3084
3318
|
this.currentTab$.next(tab);
|
|
3085
3319
|
}
|
|
3086
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3087
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
3320
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCaseListComponent, deps: [{ token: i3$1.DraftVersionService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3321
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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 }); }
|
|
3088
3322
|
}
|
|
3089
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3323
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCaseListComponent, decorators: [{
|
|
3090
3324
|
type: Component,
|
|
3091
3325
|
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"] }]
|
|
3092
3326
|
}], ctorParameters: () => [{ type: i3$1.DraftVersionService }, { type: i2$1.ActivatedRoute }] });
|
|
@@ -3183,10 +3417,10 @@ class CaseManagementCreateDraftVersionComponent {
|
|
|
3183
3417
|
caseDefinitionVersionTag: params?.caseDefinitionVersionTag,
|
|
3184
3418
|
})));
|
|
3185
3419
|
}
|
|
3186
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3187
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
3420
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
3421
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
3188
3422
|
}
|
|
3189
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3423
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCreateDraftVersionComponent, decorators: [{
|
|
3190
3424
|
type: Component,
|
|
3191
3425
|
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"] }]
|
|
3192
3426
|
}], ctorParameters: () => [{ type: i1$4.FormBuilder }, { type: i2.IconService }, { type: i3.TranslateService }, { type: i2$1.ActivatedRoute }, { type: CaseManagementService }], propDecorators: { open: [{
|
|
@@ -3278,6 +3512,16 @@ class CaseManagementDeploymentComponent {
|
|
|
3278
3512
|
};
|
|
3279
3513
|
return Object.entries(releaseVersionData).map(([key, value]) => ({ key, value }));
|
|
3280
3514
|
}));
|
|
3515
|
+
this.importOriginEntries$ = this.caseDefinition$.pipe(map(caseDefinition => {
|
|
3516
|
+
const entries = [];
|
|
3517
|
+
if (caseDefinition.originalName)
|
|
3518
|
+
entries.push({ key: 'originalName', value: caseDefinition.originalName });
|
|
3519
|
+
if (caseDefinition.originalKey)
|
|
3520
|
+
entries.push({ key: 'originalKey', value: caseDefinition.originalKey });
|
|
3521
|
+
if (caseDefinition.originalVersionTag)
|
|
3522
|
+
entries.push({ key: 'originalVersionTag', value: caseDefinition.originalVersionTag });
|
|
3523
|
+
return entries;
|
|
3524
|
+
}));
|
|
3281
3525
|
this.releaseInformationDataEntries$ = this.caseDefinition$.pipe(map(caseDefinition => {
|
|
3282
3526
|
const releaseInformationData = {
|
|
3283
3527
|
createdBy: caseDefinition.createdBy ?? '-',
|
|
@@ -3293,20 +3537,17 @@ class CaseManagementDeploymentComponent {
|
|
|
3293
3537
|
this.caseDefinitionVersionTag$,
|
|
3294
3538
|
this._refreshFinalizationCheck$,
|
|
3295
3539
|
]).pipe(switchMap(([caseDefinitionKey, caseDefinitionVersionTag]) => this.caseManagementService.getCaseDefinitionFinalizationCheck(caseDefinitionKey, caseDefinitionVersionTag)), switchMap(res => this.translateService.stream('key').pipe(tap$1(() => {
|
|
3296
|
-
|
|
3297
|
-
|
|
3298
|
-
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
this.
|
|
3303
|
-
|
|
3304
|
-
|
|
3305
|
-
|
|
3306
|
-
|
|
3307
|
-
lowContrast: true,
|
|
3308
|
-
});
|
|
3309
|
-
break;
|
|
3540
|
+
if (res.finalizable) {
|
|
3541
|
+
this._deploymentNotificationObject$.next(null);
|
|
3542
|
+
}
|
|
3543
|
+
else {
|
|
3544
|
+
this._deploymentNotificationObject$.next({
|
|
3545
|
+
type: 'warning',
|
|
3546
|
+
title: this.translateService.instant('caseManagement.deployment.notFinalizableWarning.title'),
|
|
3547
|
+
message: this.translateService.instant(`caseManagement.deployment.notFinalizableWarning.${res.code}`),
|
|
3548
|
+
showClose: false,
|
|
3549
|
+
lowContrast: true,
|
|
3550
|
+
});
|
|
3310
3551
|
}
|
|
3311
3552
|
}), map(() => res))));
|
|
3312
3553
|
this.iconService.register(Return16);
|
|
@@ -3491,12 +3732,12 @@ class CaseManagementDeploymentComponent {
|
|
|
3491
3732
|
duration: 5000,
|
|
3492
3733
|
});
|
|
3493
3734
|
}
|
|
3494
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
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" }] }); }
|
|
3735
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
3736
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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 importOriginEntries: importOriginEntries$ | 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\n <div class=\"import-origin\" *ngIf=\"obs.importOriginEntries?.length > 0\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.importOrigin.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <div *ngFor=\"let entry of obs.importOriginEntries\" class=\"release-version-data\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.importOrigin.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </div>\n </div>\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" }] }); }
|
|
3496
3737
|
}
|
|
3497
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3738
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementDeploymentComponent, decorators: [{
|
|
3498
3739
|
type: Component,
|
|
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"] }]
|
|
3740
|
+
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 importOriginEntries: importOriginEntries$ | 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\n <div class=\"import-origin\" *ngIf=\"obs.importOriginEntries?.length > 0\">\n <p class=\"deployment-panel-title\">\n {{ 'caseManagement.deployment.importOrigin.title' | translate }}\n </p>\n\n <div class=\"release-version-columns\">\n <div *ngFor=\"let entry of obs.importOriginEntries\" class=\"release-version-data\">\n <label class=\"release-version-data__label\">\n {{ 'caseManagement.deployment.importOrigin.fields.' + entry.key | translate }}\n </label>\n <div class=\"release-version-data__value\">\n {{ entry.value }}\n </div>\n </div>\n </div>\n </div>\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"] }]
|
|
3500
3741
|
}], 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: [{
|
|
3501
3742
|
type: ViewChild,
|
|
3502
3743
|
args: ['createDraftMessage']
|
|
@@ -3612,10 +3853,10 @@ class CaseManagementSelectVersionModalComponent {
|
|
|
3612
3853
|
this.selectedVersion.emit(caseDefinitionVersionTag);
|
|
3613
3854
|
this.closeEvent.emit();
|
|
3614
3855
|
}
|
|
3615
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
3616
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
3856
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementSelectVersionModalComponent, deps: [{ token: i2$1.ActivatedRoute }, { token: i2$1.Router }, { token: CaseManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3857
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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" }] }); }
|
|
3617
3858
|
}
|
|
3618
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
3859
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementSelectVersionModalComponent, decorators: [{
|
|
3619
3860
|
type: Component,
|
|
3620
3861
|
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"] }]
|
|
3621
3862
|
}], ctorParameters: () => [{ type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: CaseManagementService }], propDecorators: { open: [{
|
|
@@ -3885,12 +4126,12 @@ class CaseManagementDetailActionsComponent {
|
|
|
3885
4126
|
relativeTo: this.route,
|
|
3886
4127
|
});
|
|
3887
4128
|
}
|
|
3888
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
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 }); }
|
|
4129
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
4130
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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</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 <v-overflow-menu [menuWidth]=\"250\" placement=\"bottom-end\" class=\"overflow-button\">\n <button\n overflowTrigger\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\n <v-overflow-menu-option\n [attr.data-test-id]=\"testIds.exportButton\"\n optionId=\"exportDocumentDefinition\"\n [disabled]=\"obs.exporting || obs.loadingVersion\"\n (selected)=\"export()\"\n >{{ 'caseManagement.export' | translate: {value: documentDefinitionTitle} }}\n </v-overflow-menu-option>\n\n <v-overflow-menu-option\n [attr.data-test-id]=\"testIds.setActiveVersionButton\"\n optionId=\"setGlobalActiveVersion\"\n [disabled]=\"obs.setActiveDisabled\"\n (selected)=\"openGlobalActiveVersionModal()\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </v-overflow-menu-option>\n </v-overflow-menu>\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: i7.OverflowMenuComponent, selector: "v-overflow-menu", inputs: ["open", "placement", "menuWidth", "offsetX", "offsetY", "closeOnSelect", "useHostAsReference", "portalToBody"], outputs: ["openChange"] }, { kind: "component", type: i7.OverflowMenuOptionComponent, selector: "v-overflow-menu-option", inputs: ["disabled", "type", "testId", "optionId"], outputs: ["selected"] }, { 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 }); }
|
|
3890
4131
|
}
|
|
3891
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementDetailActionsComponent, decorators: [{
|
|
3892
4133
|
type: Component,
|
|
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"] }]
|
|
4134
|
+
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</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 <v-overflow-menu [menuWidth]=\"250\" placement=\"bottom-end\" class=\"overflow-button\">\n <button\n overflowTrigger\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\n <v-overflow-menu-option\n [attr.data-test-id]=\"testIds.exportButton\"\n optionId=\"exportDocumentDefinition\"\n [disabled]=\"obs.exporting || obs.loadingVersion\"\n (selected)=\"export()\"\n >{{ 'caseManagement.export' | translate: {value: documentDefinitionTitle} }}\n </v-overflow-menu-option>\n\n <v-overflow-menu-option\n [attr.data-test-id]=\"testIds.setActiveVersionButton\"\n optionId=\"setGlobalActiveVersion\"\n [disabled]=\"obs.setActiveDisabled\"\n (selected)=\"openGlobalActiveVersionModal()\"\n >{{ 'caseManagement.setGlobalActiveVersion' | translate }}\n </v-overflow-menu-option>\n </v-overflow-menu>\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"] }]
|
|
3894
4135
|
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
3895
4136
|
type: Inject,
|
|
3896
4137
|
args: [DOCUMENT]
|
|
@@ -4024,12 +4265,12 @@ class CaseManagementDetailComponent {
|
|
|
4024
4265
|
//TODO: Fix pending changes with new routing
|
|
4025
4266
|
// this._documentDefinitionTab?.onCanDeactivate();
|
|
4026
4267
|
}
|
|
4027
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4028
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
4268
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
4269
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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.ACTIONS\"\n [active]=\"obs.currentTab === TabEnum.ACTIONS\"\n [heading]=\"'caseManagement.tabs.actions' | translate\"\n (selected)=\"navigateToTab(TabEnum.ACTIONS)\"\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 }); }
|
|
4029
4270
|
}
|
|
4030
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4271
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementDetailComponent, decorators: [{
|
|
4031
4272
|
type: Component,
|
|
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"] }]
|
|
4273
|
+
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.ACTIONS\"\n [active]=\"obs.currentTab === TabEnum.ACTIONS\"\n [heading]=\"'caseManagement.tabs.actions' | translate\"\n (selected)=\"navigateToTab(TabEnum.ACTIONS)\"\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
4274
|
}], 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: [{
|
|
4034
4275
|
type: ViewChildren,
|
|
4035
4276
|
args: [Tab]
|
|
@@ -4112,10 +4353,10 @@ class CaseManagementDocumentDefinitionComponent {
|
|
|
4112
4353
|
onChangeEvent() {
|
|
4113
4354
|
this._pendingChanges$.next(true);
|
|
4114
4355
|
}
|
|
4115
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4116
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4356
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
4357
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
4117
4358
|
}
|
|
4118
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4359
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementDocumentDefinitionComponent, decorators: [{
|
|
4119
4360
|
type: Component,
|
|
4120
4361
|
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"] }]
|
|
4121
4362
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: CaseDetailService }, { type: i2.IconService }, { type: i7.PageHeaderService }, { type: i2$1.ActivatedRoute }, { type: i3$1.EditPermissionsService }], propDecorators: { cancelModal: [{
|
|
@@ -4193,10 +4434,10 @@ class CaseManagementCaseHandlerComponent {
|
|
|
4193
4434
|
autoAssignTasks: !currentSettings.autoAssignTasks,
|
|
4194
4435
|
}, caseDefinitionKey, caseDefinitionVersionTag);
|
|
4195
4436
|
}
|
|
4196
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4197
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4437
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCaseHandlerComponent, deps: [{ token: i1$2.DocumentService }, { token: i2.IconService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4438
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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" }] }); }
|
|
4198
4439
|
}
|
|
4199
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4440
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCaseHandlerComponent, decorators: [{
|
|
4200
4441
|
type: Component,
|
|
4201
4442
|
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"] }]
|
|
4202
4443
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2.IconService }, { type: i2$1.ActivatedRoute }], propDecorators: { isReadOnly: [{
|
|
@@ -4328,13 +4569,13 @@ class CaseManagementExternalStartFormComponent {
|
|
|
4328
4569
|
},
|
|
4329
4570
|
});
|
|
4330
4571
|
}
|
|
4331
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4332
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4572
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementExternalStartFormComponent, deps: [{ token: i2$1.ActivatedRoute }, { token: i1$2.DocumentService }, { token: i1$4.FormBuilder }, { token: i3.TranslateService }, { token: i2$2.NGXLogger }, { token: i3$1.GlobalNotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4573
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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" }] }); }
|
|
4333
4574
|
}
|
|
4334
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4575
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementExternalStartFormComponent, decorators: [{
|
|
4335
4576
|
type: Component,
|
|
4336
4577
|
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"] }]
|
|
4337
|
-
}], ctorParameters: () => [{ type: i2$1.ActivatedRoute }, { type: i1$2.DocumentService }, { type: i1$4.FormBuilder }, { type: i3.TranslateService }, { type:
|
|
4578
|
+
}], ctorParameters: () => [{ type: i2$1.ActivatedRoute }, { type: i1$2.DocumentService }, { type: i1$4.FormBuilder }, { type: i3.TranslateService }, { type: i2$2.NGXLogger }, { type: i3$1.GlobalNotificationService }], propDecorators: { isReadOnly: [{
|
|
4338
4579
|
type: Input
|
|
4339
4580
|
}] } });
|
|
4340
4581
|
|
|
@@ -4387,10 +4628,10 @@ class CaseManagementGeneralComponent {
|
|
|
4387
4628
|
});
|
|
4388
4629
|
this.cdr.detectChanges();
|
|
4389
4630
|
}
|
|
4390
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4391
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
4631
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
4632
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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" }] }); }
|
|
4392
4633
|
}
|
|
4393
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4634
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementGeneralComponent, decorators: [{
|
|
4394
4635
|
type: Component,
|
|
4395
4636
|
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"] }]
|
|
4396
4637
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: CaseManagementService }, { type: undefined, decorators: [{
|
|
@@ -4476,10 +4717,10 @@ class CaseManagementWidgetTabEditModalComponent {
|
|
|
4476
4717
|
enable() {
|
|
4477
4718
|
this.disabled$.next(false);
|
|
4478
4719
|
}
|
|
4479
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4480
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4720
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementWidgetTabEditModalComponent, deps: [{ token: i1$4.FormBuilder }, { token: TabManagementService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4721
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
4481
4722
|
}
|
|
4482
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4723
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementWidgetTabEditModalComponent, decorators: [{
|
|
4483
4724
|
type: Component,
|
|
4484
4725
|
args: [{ selector: 'valtimo-case-management-widget-tab-edit-modal', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
4485
4726
|
CommonModule,
|
|
@@ -4606,15 +4847,15 @@ class CaseManagementWidgetTabComponent extends ManagementWidgetDetailsComponent
|
|
|
4606
4847
|
});
|
|
4607
4848
|
});
|
|
4608
4849
|
}
|
|
4609
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4610
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
4850
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
4851
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: CaseManagementWidgetTabComponent, isStandalone: true, selector: "ng-component", providers: [
|
|
4611
4852
|
{
|
|
4612
4853
|
provide: WIDGET_MANAGEMENT_SERVICE,
|
|
4613
4854
|
useClass: CaseWidgetManagementApiService,
|
|
4614
4855
|
},
|
|
4615
4856
|
], 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 }); }
|
|
4616
4857
|
}
|
|
4617
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
4858
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementWidgetTabComponent, decorators: [{
|
|
4618
4859
|
type: Component,
|
|
4619
4860
|
args: [{ standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
4620
4861
|
CommonModule,
|
|
@@ -4637,7 +4878,525 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
4637
4878
|
}] }, { type: i3.TranslateService }, { type: i7.PageHeaderService }] });
|
|
4638
4879
|
|
|
4639
4880
|
/*
|
|
4640
|
-
* Copyright 2015-
|
|
4881
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
4882
|
+
*
|
|
4883
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4884
|
+
* you may not use this file except in compliance with the License.
|
|
4885
|
+
* You may obtain a copy of the License at
|
|
4886
|
+
*
|
|
4887
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
4888
|
+
*
|
|
4889
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
4890
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
4891
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
4892
|
+
* See the License for the specific language governing permissions and
|
|
4893
|
+
* limitations under the License.
|
|
4894
|
+
*/
|
|
4895
|
+
class CaseManagementActionsModalComponent {
|
|
4896
|
+
get selectedItemControl() {
|
|
4897
|
+
return this.formGroup.get('selectedItem');
|
|
4898
|
+
}
|
|
4899
|
+
constructor(stateService, buildingBlockApiService, fb, translateService, iconService) {
|
|
4900
|
+
this.stateService = stateService;
|
|
4901
|
+
this.buildingBlockApiService = buildingBlockApiService;
|
|
4902
|
+
this.fb = fb;
|
|
4903
|
+
this.translateService = translateService;
|
|
4904
|
+
this.iconService = iconService;
|
|
4905
|
+
this.configureBuildingBlockEvent = new EventEmitter();
|
|
4906
|
+
this.showModal$ = this.stateService.showModal$;
|
|
4907
|
+
this.editingItem$ = this.stateService.editingItem$;
|
|
4908
|
+
this.$step = signal('selectType');
|
|
4909
|
+
this.$selectedType = signal(null);
|
|
4910
|
+
this.$saving = signal(false);
|
|
4911
|
+
this.$loading = signal(false);
|
|
4912
|
+
this.$processItemsEmpty = signal(false);
|
|
4913
|
+
this.$buildingBlockItemsEmpty = signal(false);
|
|
4914
|
+
this.StartableItemType = StartableItemType;
|
|
4915
|
+
this.formGroup = this.fb.group({
|
|
4916
|
+
selectedItem: this.fb.control(null, Validators.required),
|
|
4917
|
+
});
|
|
4918
|
+
this.availableProcessItems$ = combineLatest([
|
|
4919
|
+
this.stateService.linkedProcessDefinitions$.pipe(catchError(() => of([]))),
|
|
4920
|
+
this.stateService.usedProcessDefinitionIds$,
|
|
4921
|
+
this.stateService.editingItem$,
|
|
4922
|
+
]).pipe(map(([definitions, usedIds, editingItem]) => definitions
|
|
4923
|
+
.filter((def) => !usedIds.includes(def.processDefinition.id) ||
|
|
4924
|
+
(editingItem?.type === StartableItemType.PROCESS &&
|
|
4925
|
+
editingItem?.processDefinitionId === def.processDefinition.id))
|
|
4926
|
+
.map((def) => ({
|
|
4927
|
+
content: def.processDefinition.name || def.processDefinition.key,
|
|
4928
|
+
key: def.processDefinition.key,
|
|
4929
|
+
id: def.processDefinition.id,
|
|
4930
|
+
selected: editingItem?.processDefinitionId === def.processDefinition.id,
|
|
4931
|
+
}))
|
|
4932
|
+
.sort((a, b) => a.content.localeCompare(b.content))));
|
|
4933
|
+
this.availableBuildingBlockItems$ = combineLatest([
|
|
4934
|
+
this.buildingBlockApiService
|
|
4935
|
+
.getBuildingBlockDefinitions({ includeArtwork: false })
|
|
4936
|
+
.pipe(catchError(() => of([]))),
|
|
4937
|
+
this.stateService.usedBuildingBlockKeys$,
|
|
4938
|
+
this.stateService.editingItem$,
|
|
4939
|
+
]).pipe(map(([definitions, usedKeys, editingItem]) => definitions
|
|
4940
|
+
.filter((def) => !usedKeys.includes(def.key) ||
|
|
4941
|
+
(editingItem?.type === StartableItemType.BUILDING_BLOCK &&
|
|
4942
|
+
editingItem?.key === def.key))
|
|
4943
|
+
.map((def) => ({
|
|
4944
|
+
content: def.name || def.key,
|
|
4945
|
+
key: def.key,
|
|
4946
|
+
id: def.key,
|
|
4947
|
+
selected: editingItem?.key === def.key,
|
|
4948
|
+
versionTag: def.versionTag,
|
|
4949
|
+
}))
|
|
4950
|
+
.sort((a, b) => a.content.localeCompare(b.content))));
|
|
4951
|
+
this._buildingBlockItems = [];
|
|
4952
|
+
this._editingItem = null;
|
|
4953
|
+
this._subscriptions = new Subscription();
|
|
4954
|
+
this.iconService.registerAll([FlowModeler20, BlockStorageAlt20]);
|
|
4955
|
+
this._subscriptions.add(this.availableProcessItems$.subscribe(items => {
|
|
4956
|
+
this.$processItemsEmpty.set(items.length === 0);
|
|
4957
|
+
}));
|
|
4958
|
+
this._subscriptions.add(this.availableBuildingBlockItems$.subscribe(items => {
|
|
4959
|
+
this._buildingBlockItems = items;
|
|
4960
|
+
this.$buildingBlockItemsEmpty.set(items.length === 0);
|
|
4961
|
+
}));
|
|
4962
|
+
this._subscriptions.add(this.stateService.editingItem$.subscribe(item => {
|
|
4963
|
+
this._editingItem = item;
|
|
4964
|
+
if (item) {
|
|
4965
|
+
this.$selectedType.set(item.type);
|
|
4966
|
+
this.$step.set('selectItem');
|
|
4967
|
+
if (item.type === StartableItemType.PROCESS) {
|
|
4968
|
+
this.formGroup.patchValue({ selectedItem: item.processDefinitionId });
|
|
4969
|
+
}
|
|
4970
|
+
else {
|
|
4971
|
+
this.formGroup.patchValue({ selectedItem: item.key });
|
|
4972
|
+
}
|
|
4973
|
+
}
|
|
4974
|
+
}));
|
|
4975
|
+
}
|
|
4976
|
+
ngOnDestroy() {
|
|
4977
|
+
this._subscriptions.unsubscribe();
|
|
4978
|
+
}
|
|
4979
|
+
get isEditMode() {
|
|
4980
|
+
return this._editingItem !== null;
|
|
4981
|
+
}
|
|
4982
|
+
get isBuildingBlockEdit() {
|
|
4983
|
+
return (this.isEditMode && this._editingItem?.type === StartableItemType.BUILDING_BLOCK);
|
|
4984
|
+
}
|
|
4985
|
+
get modalTitle() {
|
|
4986
|
+
if (this.isEditMode) {
|
|
4987
|
+
return this._editingItem?.type === StartableItemType.PROCESS
|
|
4988
|
+
? this.translateService.instant('caseManagement.actions.modal.editProcessTitle')
|
|
4989
|
+
: this.translateService.instant('caseManagement.actions.modal.editBuildingBlockTitle');
|
|
4990
|
+
}
|
|
4991
|
+
if (this.$step() === 'selectType') {
|
|
4992
|
+
return this.translateService.instant('caseManagement.actions.modal.addTitle');
|
|
4993
|
+
}
|
|
4994
|
+
return this.$selectedType() === StartableItemType.PROCESS
|
|
4995
|
+
? this.translateService.instant('caseManagement.actions.modal.addProcessTitle')
|
|
4996
|
+
: this.translateService.instant('caseManagement.actions.modal.addBuildingBlockTitle');
|
|
4997
|
+
}
|
|
4998
|
+
get modalDescription() {
|
|
4999
|
+
if (this.$step() === 'selectType') {
|
|
5000
|
+
return this.translateService.instant('caseManagement.actions.modal.addDescription');
|
|
5001
|
+
}
|
|
5002
|
+
return this.$selectedType() === StartableItemType.PROCESS
|
|
5003
|
+
? this.translateService.instant('caseManagement.actions.modal.selectProcessDescription')
|
|
5004
|
+
: this.translateService.instant('caseManagement.actions.modal.selectBuildingBlockDescription');
|
|
5005
|
+
}
|
|
5006
|
+
get primaryButtonLabel() {
|
|
5007
|
+
if (this.$step() === 'selectType')
|
|
5008
|
+
return '';
|
|
5009
|
+
if (this.$selectedType() === StartableItemType.BUILDING_BLOCK) {
|
|
5010
|
+
return this.translateService.instant('caseManagement.actions.modal.next');
|
|
5011
|
+
}
|
|
5012
|
+
if (this.isEditMode) {
|
|
5013
|
+
return this.translateService.instant('caseManagement.actions.modal.save');
|
|
5014
|
+
}
|
|
5015
|
+
return this.translateService.instant('caseManagement.actions.modal.add');
|
|
5016
|
+
}
|
|
5017
|
+
onSelectType(type) {
|
|
5018
|
+
this.$selectedType.set(type);
|
|
5019
|
+
this.$step.set('selectItem');
|
|
5020
|
+
this.formGroup.reset();
|
|
5021
|
+
}
|
|
5022
|
+
onComboBoxSelected(event) {
|
|
5023
|
+
if (event?.id) {
|
|
5024
|
+
this.formGroup.patchValue({ selectedItem: event.id });
|
|
5025
|
+
}
|
|
5026
|
+
else {
|
|
5027
|
+
this.formGroup.patchValue({ selectedItem: null });
|
|
5028
|
+
}
|
|
5029
|
+
}
|
|
5030
|
+
onSubmit() {
|
|
5031
|
+
if (this.formGroup.invalid || this.$saving())
|
|
5032
|
+
return;
|
|
5033
|
+
const selectedId = this.selectedItemControl.value;
|
|
5034
|
+
if (!selectedId)
|
|
5035
|
+
return;
|
|
5036
|
+
if (this.$selectedType() === StartableItemType.BUILDING_BLOCK) {
|
|
5037
|
+
this.configureBuildingBlockEvent.emit({
|
|
5038
|
+
buildingBlockDefinitionKey: selectedId,
|
|
5039
|
+
buildingBlockDefinitionVersionTag: this.getSelectedBuildingBlockVersionTag(selectedId),
|
|
5040
|
+
});
|
|
5041
|
+
this.onCloseModal();
|
|
5042
|
+
return;
|
|
5043
|
+
}
|
|
5044
|
+
this.$saving.set(true);
|
|
5045
|
+
if (this.isEditMode) {
|
|
5046
|
+
this.handleEdit();
|
|
5047
|
+
}
|
|
5048
|
+
else {
|
|
5049
|
+
this.handleCreate();
|
|
5050
|
+
}
|
|
5051
|
+
}
|
|
5052
|
+
onCloseModal() {
|
|
5053
|
+
this.stateService.hideModal();
|
|
5054
|
+
this.resetState();
|
|
5055
|
+
}
|
|
5056
|
+
onBack() {
|
|
5057
|
+
if (this.$step() === 'selectItem' && !this.isEditMode) {
|
|
5058
|
+
this.$step.set('selectType');
|
|
5059
|
+
this.$selectedType.set(null);
|
|
5060
|
+
this.formGroup.reset();
|
|
5061
|
+
}
|
|
5062
|
+
}
|
|
5063
|
+
handleCreate() {
|
|
5064
|
+
const selectedId = this.selectedItemControl.value;
|
|
5065
|
+
if (!selectedId)
|
|
5066
|
+
return;
|
|
5067
|
+
const request = this.$selectedType() === StartableItemType.PROCESS
|
|
5068
|
+
? { type: StartableItemType.PROCESS, properties: { processDefinitionId: selectedId } }
|
|
5069
|
+
: {
|
|
5070
|
+
type: StartableItemType.BUILDING_BLOCK,
|
|
5071
|
+
properties: {
|
|
5072
|
+
buildingBlockDefinitionKey: selectedId,
|
|
5073
|
+
buildingBlockDefinitionVersionTag: this.getSelectedBuildingBlockVersionTag(selectedId),
|
|
5074
|
+
},
|
|
5075
|
+
};
|
|
5076
|
+
this.stateService
|
|
5077
|
+
.createItem(request)
|
|
5078
|
+
.pipe(catchError(() => of(null)))
|
|
5079
|
+
.subscribe(result => {
|
|
5080
|
+
this.$saving.set(false);
|
|
5081
|
+
if (result) {
|
|
5082
|
+
this.stateService.hideModal();
|
|
5083
|
+
this.resetState();
|
|
5084
|
+
this.stateService.loadItems();
|
|
5085
|
+
}
|
|
5086
|
+
});
|
|
5087
|
+
}
|
|
5088
|
+
handleEdit() {
|
|
5089
|
+
if (!this._editingItem)
|
|
5090
|
+
return;
|
|
5091
|
+
const selectedId = this.selectedItemControl.value;
|
|
5092
|
+
if (!selectedId)
|
|
5093
|
+
return;
|
|
5094
|
+
const request = this._editingItem.type === StartableItemType.PROCESS
|
|
5095
|
+
? {
|
|
5096
|
+
type: StartableItemType.PROCESS,
|
|
5097
|
+
properties: { processDefinitionId: selectedId },
|
|
5098
|
+
}
|
|
5099
|
+
: {
|
|
5100
|
+
type: StartableItemType.BUILDING_BLOCK,
|
|
5101
|
+
properties: {
|
|
5102
|
+
buildingBlockDefinitionKey: selectedId,
|
|
5103
|
+
buildingBlockDefinitionVersionTag: this.getSelectedBuildingBlockVersionTag(selectedId),
|
|
5104
|
+
},
|
|
5105
|
+
};
|
|
5106
|
+
this.stateService
|
|
5107
|
+
.updateItem(this._editingItem.key, this._editingItem.versionTag, request)
|
|
5108
|
+
.pipe(catchError(() => {
|
|
5109
|
+
this.$saving.set(false);
|
|
5110
|
+
this.stateService.loadItems();
|
|
5111
|
+
return EMPTY;
|
|
5112
|
+
}))
|
|
5113
|
+
.subscribe(() => {
|
|
5114
|
+
this.$saving.set(false);
|
|
5115
|
+
this.stateService.hideModal();
|
|
5116
|
+
this.resetState();
|
|
5117
|
+
this.stateService.loadItems();
|
|
5118
|
+
});
|
|
5119
|
+
}
|
|
5120
|
+
getSelectedBuildingBlockVersionTag(key) {
|
|
5121
|
+
return this._buildingBlockItems.find(item => item.key === key)?.versionTag ?? '';
|
|
5122
|
+
}
|
|
5123
|
+
resetState() {
|
|
5124
|
+
runAfterCarbonModalClosed(() => {
|
|
5125
|
+
this.$step.set('selectType');
|
|
5126
|
+
this.$selectedType.set(null);
|
|
5127
|
+
this.$saving.set(false);
|
|
5128
|
+
this.formGroup.reset();
|
|
5129
|
+
this._editingItem = null;
|
|
5130
|
+
});
|
|
5131
|
+
}
|
|
5132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementActionsModalComponent, deps: [{ token: StartableItemManagementService }, { token: i4.ProcessLinkBuildingBlockApiService }, { token: i1$4.FormBuilder }, { token: i3.TranslateService }, { token: i2.IconService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5133
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: CaseManagementActionsModalComponent, isStandalone: true, selector: "valtimo-case-management-actions-modal", outputs: { configureBuildingBlockEvent: "configureBuildingBlockEvent" }, 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<cds-modal\n *ngIf=\"{showModal: showModal$ | async, editingItem: editingItem$ | async} as obs\"\n [open]=\"obs.showModal\"\n showFooter=\"true\"\n valtimoCdsModal\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>{{ modalTitle }}</h3>\n\n <p cdsModalHeaderDescription>{{ modalDescription }}</p>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngIf=\"$step() === 'selectType'\">\n <div class=\"action-type-tiles\">\n <button\n class=\"action-type-tile\"\n [disabled]=\"$processItemsEmpty()\"\n [vTooltip]=\"'caseManagement.actions.modal.noProcessesAvailable' | translate\"\n [tooltipDisabled]=\"!$processItemsEmpty()\"\n (click)=\"onSelectType(StartableItemType.PROCESS)\"\n >\n <span class=\"action-type-tile__label\">\n {{ 'caseManagement.actions.type.PROCESS' | translate }}\n </span>\n <svg cdsIcon=\"flow--modeler\" size=\"20\" class=\"action-type-tile__icon\"></svg>\n </button>\n\n <button\n class=\"action-type-tile\"\n [disabled]=\"$buildingBlockItemsEmpty()\"\n [vTooltip]=\"'caseManagement.actions.modal.noBuildingBlocksAvailable' | translate\"\n [tooltipDisabled]=\"!$buildingBlockItemsEmpty()\"\n (click)=\"onSelectType(StartableItemType.BUILDING_BLOCK)\"\n >\n <span class=\"action-type-tile__label\">\n {{ 'caseManagement.actions.type.BUILDING_BLOCK' | translate }}\n </span>\n <svg cdsIcon=\"block-storage--alt\" size=\"20\" class=\"action-type-tile__icon\"></svg>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"$step() === 'selectItem'\">\n <form [formGroup]=\"formGroup\">\n <ng-container *ngIf=\"$selectedType() === StartableItemType.PROCESS\">\n <cds-combo-box\n [items]=\"(availableProcessItems$ | async) || []\"\n [label]=\"'caseManagement.actions.modal.selectProcess' | translate\"\n [placeholder]=\"'caseManagement.actions.modal.filterPlaceholder' | translate\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n (selected)=\"onComboBoxSelected($event)\"\n >\n <cds-dropdown-list></cds-dropdown-list>\n </cds-combo-box>\n </ng-container>\n\n <ng-container *ngIf=\"$selectedType() === StartableItemType.BUILDING_BLOCK\">\n <cds-combo-box\n [items]=\"(availableBuildingBlockItems$ | async) || []\"\n [label]=\"'caseManagement.actions.modal.selectBuildingBlock' | translate\"\n [placeholder]=\"'caseManagement.actions.modal.filterPlaceholder' | translate\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n (selected)=\"onComboBoxSelected($event)\"\n >\n <cds-dropdown-list></cds-dropdown-list>\n </cds-combo-box>\n </ng-container>\n </form>\n </ng-container>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <div class=\"footer-spacer\"></div>\n\n <button\n *ngIf=\"$step() === 'selectItem' && !isEditMode\"\n cdsButton=\"secondary\"\n (click)=\"onBack()\"\n >\n {{ 'caseManagement.actions.modal.back' | translate }}\n </button>\n\n <button\n *ngIf=\"$step() === 'selectItem'\"\n cdsButton=\"primary\"\n [disabled]=\"formGroup.invalid || $saving()\"\n (click)=\"onSubmit()\"\n >\n {{ primaryButtonLabel }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".action-type-tiles{display:flex;gap:1px}.action-type-tile{display:flex;flex:1 1 0;min-width:0;flex-direction:row;justify-content:space-between;align-items:center;padding:var(--cds-spacing-05, 1rem);background-color:var(--cds-background-inverse, #393939);color:var(--cds-text-inverse, #fff);border:none;cursor:pointer;transition:background-color .15s ease}.action-type-tile:hover:not(:disabled){background-color:var(--cds-background-inverse-hover, #474747)}.action-type-tile:disabled{opacity:.5;cursor:not-allowed}.action-type-tile__icon{fill:currentColor}.action-type-tile__label{font-size:var(--cds-body-compact-01-font-size, .875rem);font-weight:400}.footer-spacer{flex:1}:host ::ng-deep cds-modal-footer .cds--modal-footer{display:flex;align-items:center}\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: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: "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: LayerModule }, { kind: "directive", type: i2.LayerDirective, selector: "[cdsLayer], [ibmLayer]", inputs: ["ibmLayer", "cdsLayer"], exportAs: ["layer"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { 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: "ngmodule", type: ComboBoxModule }, { 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.DropdownList, selector: "cds-dropdown-list, ibm-dropdown-list", inputs: ["ariaLabel", "items", "listTpl", "type", "showTitles"], outputs: ["select", "scroll", "blurIntent"] }, { kind: "directive", type: ValtimoCdsModalDirective, selector: "[valtimoCdsModal]", inputs: ["minContentHeight"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i7.TooltipDirective, selector: "[vTooltip]", inputs: ["vTooltip", "onBottom", "tooltipDisabled"] }, { kind: "ngmodule", type: ProgressIndicatorModule }, { kind: "ngmodule", type: LoadingModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5134
|
+
}
|
|
5135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementActionsModalComponent, decorators: [{
|
|
5136
|
+
type: Component,
|
|
5137
|
+
args: [{ standalone: true, selector: 'valtimo-case-management-actions-modal', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
5138
|
+
CommonModule,
|
|
5139
|
+
TranslateModule,
|
|
5140
|
+
ModalModule,
|
|
5141
|
+
ButtonModule,
|
|
5142
|
+
IconModule,
|
|
5143
|
+
LayerModule,
|
|
5144
|
+
ReactiveFormsModule,
|
|
5145
|
+
ComboBoxModule,
|
|
5146
|
+
ValtimoCdsModalDirective,
|
|
5147
|
+
TooltipModule,
|
|
5148
|
+
ProgressIndicatorModule,
|
|
5149
|
+
LoadingModule,
|
|
5150
|
+
], 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<cds-modal\n *ngIf=\"{showModal: showModal$ | async, editingItem: editingItem$ | async} as obs\"\n [open]=\"obs.showModal\"\n showFooter=\"true\"\n valtimoCdsModal\n (close)=\"onCloseModal()\"\n>\n <cds-modal-header showCloseButton=\"true\" (closeSelect)=\"onCloseModal()\">\n <h3 cdsModalHeaderHeading>{{ modalTitle }}</h3>\n\n <p cdsModalHeaderDescription>{{ modalDescription }}</p>\n </cds-modal-header>\n\n <section cdsModalContent [cdsLayer]=\"1\">\n <ng-container *ngIf=\"$step() === 'selectType'\">\n <div class=\"action-type-tiles\">\n <button\n class=\"action-type-tile\"\n [disabled]=\"$processItemsEmpty()\"\n [vTooltip]=\"'caseManagement.actions.modal.noProcessesAvailable' | translate\"\n [tooltipDisabled]=\"!$processItemsEmpty()\"\n (click)=\"onSelectType(StartableItemType.PROCESS)\"\n >\n <span class=\"action-type-tile__label\">\n {{ 'caseManagement.actions.type.PROCESS' | translate }}\n </span>\n <svg cdsIcon=\"flow--modeler\" size=\"20\" class=\"action-type-tile__icon\"></svg>\n </button>\n\n <button\n class=\"action-type-tile\"\n [disabled]=\"$buildingBlockItemsEmpty()\"\n [vTooltip]=\"'caseManagement.actions.modal.noBuildingBlocksAvailable' | translate\"\n [tooltipDisabled]=\"!$buildingBlockItemsEmpty()\"\n (click)=\"onSelectType(StartableItemType.BUILDING_BLOCK)\"\n >\n <span class=\"action-type-tile__label\">\n {{ 'caseManagement.actions.type.BUILDING_BLOCK' | translate }}\n </span>\n <svg cdsIcon=\"block-storage--alt\" size=\"20\" class=\"action-type-tile__icon\"></svg>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"$step() === 'selectItem'\">\n <form [formGroup]=\"formGroup\">\n <ng-container *ngIf=\"$selectedType() === StartableItemType.PROCESS\">\n <cds-combo-box\n [items]=\"(availableProcessItems$ | async) || []\"\n [label]=\"'caseManagement.actions.modal.selectProcess' | translate\"\n [placeholder]=\"'caseManagement.actions.modal.filterPlaceholder' | translate\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n (selected)=\"onComboBoxSelected($event)\"\n >\n <cds-dropdown-list></cds-dropdown-list>\n </cds-combo-box>\n </ng-container>\n\n <ng-container *ngIf=\"$selectedType() === StartableItemType.BUILDING_BLOCK\">\n <cds-combo-box\n [items]=\"(availableBuildingBlockItems$ | async) || []\"\n [label]=\"'caseManagement.actions.modal.selectBuildingBlock' | translate\"\n [placeholder]=\"'caseManagement.actions.modal.filterPlaceholder' | translate\"\n [appendInline]=\"false\"\n [dropUp]=\"false\"\n (selected)=\"onComboBoxSelected($event)\"\n >\n <cds-dropdown-list></cds-dropdown-list>\n </cds-combo-box>\n </ng-container>\n </form>\n </ng-container>\n </section>\n\n <cds-modal-footer>\n <button cdsButton=\"ghost\" (click)=\"onCloseModal()\">\n {{ 'interface.cancel' | translate }}\n </button>\n\n <div class=\"footer-spacer\"></div>\n\n <button\n *ngIf=\"$step() === 'selectItem' && !isEditMode\"\n cdsButton=\"secondary\"\n (click)=\"onBack()\"\n >\n {{ 'caseManagement.actions.modal.back' | translate }}\n </button>\n\n <button\n *ngIf=\"$step() === 'selectItem'\"\n cdsButton=\"primary\"\n [disabled]=\"formGroup.invalid || $saving()\"\n (click)=\"onSubmit()\"\n >\n {{ primaryButtonLabel }}\n </button>\n </cds-modal-footer>\n</cds-modal>\n", styles: [".action-type-tiles{display:flex;gap:1px}.action-type-tile{display:flex;flex:1 1 0;min-width:0;flex-direction:row;justify-content:space-between;align-items:center;padding:var(--cds-spacing-05, 1rem);background-color:var(--cds-background-inverse, #393939);color:var(--cds-text-inverse, #fff);border:none;cursor:pointer;transition:background-color .15s ease}.action-type-tile:hover:not(:disabled){background-color:var(--cds-background-inverse-hover, #474747)}.action-type-tile:disabled{opacity:.5;cursor:not-allowed}.action-type-tile__icon{fill:currentColor}.action-type-tile__label{font-size:var(--cds-body-compact-01-font-size, .875rem);font-weight:400}.footer-spacer{flex:1}:host ::ng-deep cds-modal-footer .cds--modal-footer{display:flex;align-items:center}\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"] }]
|
|
5151
|
+
}], ctorParameters: () => [{ type: StartableItemManagementService }, { type: i4.ProcessLinkBuildingBlockApiService }, { type: i1$4.FormBuilder }, { type: i3.TranslateService }, { type: i2.IconService }], propDecorators: { configureBuildingBlockEvent: [{
|
|
5152
|
+
type: Output
|
|
5153
|
+
}] } });
|
|
5154
|
+
|
|
5155
|
+
/*
|
|
5156
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
5157
|
+
*
|
|
5158
|
+
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5159
|
+
* you may not use this file except in compliance with the License.
|
|
5160
|
+
* You may obtain a copy of the License at
|
|
5161
|
+
*
|
|
5162
|
+
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
|
|
5163
|
+
*
|
|
5164
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
5165
|
+
* distributed under the License is distributed on an "AS IS" basis,
|
|
5166
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
5167
|
+
* See the License for the specific language governing permissions and
|
|
5168
|
+
* limitations under the License.
|
|
5169
|
+
*/
|
|
5170
|
+
class CaseManagementActionsComponent {
|
|
5171
|
+
constructor(cd, route, startableItemManagementService, editPermissionsService, processLinkStateService, processLinkStepService, buildingBlockStateService) {
|
|
5172
|
+
this.cd = cd;
|
|
5173
|
+
this.route = route;
|
|
5174
|
+
this.startableItemManagementService = startableItemManagementService;
|
|
5175
|
+
this.editPermissionsService = editPermissionsService;
|
|
5176
|
+
this.processLinkStateService = processLinkStateService;
|
|
5177
|
+
this.processLinkStepService = processLinkStepService;
|
|
5178
|
+
this.buildingBlockStateService = buildingBlockStateService;
|
|
5179
|
+
this.StartableItemType = StartableItemType;
|
|
5180
|
+
this.caseManagementRouteParams$ = getCaseManagementRouteParams(this.route).pipe(tap(params => {
|
|
5181
|
+
this.startableItemManagementService.setParams(params);
|
|
5182
|
+
this.startableItemManagementService.loadItems();
|
|
5183
|
+
}), shareReplay(1));
|
|
5184
|
+
this.fields$ = new BehaviorSubject([]);
|
|
5185
|
+
this.loading$ = this.startableItemManagementService.loading$;
|
|
5186
|
+
this.dragAndDropDisabled = signal(false);
|
|
5187
|
+
this.items$ = this.startableItemManagementService.items$;
|
|
5188
|
+
this.hasEditPermissions$ = this.caseManagementRouteParams$.pipe(switchMap(params => this.editPermissionsService.hasEditPermissions(params?.caseDefinitionKey, params?.caseDefinitionVersionTag)));
|
|
5189
|
+
this.showDeleteModal$ = this.startableItemManagementService.showDeleteModal$;
|
|
5190
|
+
this.itemToDelete$ = this.startableItemManagementService.itemToDelete$;
|
|
5191
|
+
this.ACTION_ITEMS = [
|
|
5192
|
+
{
|
|
5193
|
+
label: 'interface.edit',
|
|
5194
|
+
callback: this.onEditItem.bind(this),
|
|
5195
|
+
},
|
|
5196
|
+
{
|
|
5197
|
+
label: 'interface.delete',
|
|
5198
|
+
callback: this.onDeleteItem.bind(this),
|
|
5199
|
+
type: 'danger',
|
|
5200
|
+
},
|
|
5201
|
+
];
|
|
5202
|
+
this._subscriptions = new Subscription();
|
|
5203
|
+
this.subscribeToProcessLinkEvents();
|
|
5204
|
+
this._subscriptions.add(this.startableItemManagementService.reorderComplete$.subscribe(() => {
|
|
5205
|
+
this.dragAndDropDisabled.set(false);
|
|
5206
|
+
}));
|
|
5207
|
+
}
|
|
5208
|
+
ngAfterViewInit() {
|
|
5209
|
+
this.cd.detectChanges();
|
|
5210
|
+
this.setFields();
|
|
5211
|
+
}
|
|
5212
|
+
ngOnDestroy() {
|
|
5213
|
+
this._subscriptions.unsubscribe();
|
|
5214
|
+
}
|
|
5215
|
+
onRowClicked(item) {
|
|
5216
|
+
this.hasEditPermissions$
|
|
5217
|
+
.pipe(filter$1(hasPermission => hasPermission), take(1))
|
|
5218
|
+
.subscribe(() => {
|
|
5219
|
+
this.onEditItem(item);
|
|
5220
|
+
});
|
|
5221
|
+
}
|
|
5222
|
+
onAddItemClick() {
|
|
5223
|
+
this.startableItemManagementService.showCreateModal();
|
|
5224
|
+
}
|
|
5225
|
+
onItemsReorderedEvent(reorderedItems) {
|
|
5226
|
+
if (!reorderedItems)
|
|
5227
|
+
return;
|
|
5228
|
+
this.dragAndDropDisabled.set(true);
|
|
5229
|
+
this.startableItemManagementService.updateOrder(reorderedItems);
|
|
5230
|
+
}
|
|
5231
|
+
onDeleteConfirm(item) {
|
|
5232
|
+
this.startableItemManagementService
|
|
5233
|
+
.deleteItem(item)
|
|
5234
|
+
.pipe(take(1), catchError$1(() => of(null)))
|
|
5235
|
+
.subscribe(() => {
|
|
5236
|
+
this.startableItemManagementService.hideDeleteModal();
|
|
5237
|
+
this.startableItemManagementService.loadItems();
|
|
5238
|
+
});
|
|
5239
|
+
}
|
|
5240
|
+
onConfigureBuildingBlock(request) {
|
|
5241
|
+
this.openProcessLinkModalForBuildingBlock(request.buildingBlockDefinitionKey, request.buildingBlockDefinitionVersionTag);
|
|
5242
|
+
}
|
|
5243
|
+
onEditItem(item) {
|
|
5244
|
+
if (item.type === StartableItemType.BUILDING_BLOCK) {
|
|
5245
|
+
this.openProcessLinkModalForBuildingBlockEdit(item);
|
|
5246
|
+
}
|
|
5247
|
+
else {
|
|
5248
|
+
this.startableItemManagementService.showEditModal(item);
|
|
5249
|
+
}
|
|
5250
|
+
}
|
|
5251
|
+
onDeleteItem(item) {
|
|
5252
|
+
this.startableItemManagementService.showDeleteConfirmation(item);
|
|
5253
|
+
}
|
|
5254
|
+
openProcessLinkModalForBuildingBlock(key, versionTag) {
|
|
5255
|
+
this.processLinkStepService.setSkipBuildingBlockSelectionStep(true);
|
|
5256
|
+
this.processLinkStateService.setModalParams({
|
|
5257
|
+
element: { id: 'ad-hoc', type: 'bpmn:CallActivity', name: key, activityListenerType: 'callActivity' },
|
|
5258
|
+
processDefinitionKey: '',
|
|
5259
|
+
processDefinitionId: '',
|
|
5260
|
+
});
|
|
5261
|
+
this.processLinkStateService.setElementName(key);
|
|
5262
|
+
this.buildingBlockStateService.setDefinitionKey(key, versionTag);
|
|
5263
|
+
// Set the process link type without triggering default step navigation
|
|
5264
|
+
this.processLinkStepService.setHasOneProcessLinkType(true);
|
|
5265
|
+
this.processLinkStateService.selectProcessLinkType('building-block', true);
|
|
5266
|
+
// Override: skip directly to the configureBuildingBlockPlugins step
|
|
5267
|
+
// since the building block is already selected in the actions modal
|
|
5268
|
+
this.processLinkStepService.setConfigureBuildingBlockPluginsStep(key);
|
|
5269
|
+
this.processLinkStateService.showModal();
|
|
5270
|
+
}
|
|
5271
|
+
openProcessLinkModalForBuildingBlockEdit(item) {
|
|
5272
|
+
this.processLinkStepService.setSkipBuildingBlockSelectionStep(true);
|
|
5273
|
+
this.startableItemManagementService
|
|
5274
|
+
.getItemProperties(item.key, item.versionTag, StartableItemType.BUILDING_BLOCK)
|
|
5275
|
+
.pipe(take(1))
|
|
5276
|
+
.subscribe(properties => {
|
|
5277
|
+
this.processLinkStateService.setModalParams({
|
|
5278
|
+
element: { id: 'ad-hoc', type: 'bpmn:CallActivity', name: item.name || item.key, activityListenerType: 'callActivity' },
|
|
5279
|
+
processDefinitionKey: '',
|
|
5280
|
+
processDefinitionId: '',
|
|
5281
|
+
});
|
|
5282
|
+
this.processLinkStateService.setElementName(item.name || item.key);
|
|
5283
|
+
this.processLinkStateService.selectProcessLink({
|
|
5284
|
+
id: `${item.key}:${item.versionTag}`,
|
|
5285
|
+
processDefinitionId: '',
|
|
5286
|
+
activityId: 'ad-hoc',
|
|
5287
|
+
activityType: 'callActivity',
|
|
5288
|
+
processLinkType: 'building-block',
|
|
5289
|
+
buildingBlockDefinitionKey: item.key,
|
|
5290
|
+
buildingBlockDefinitionVersionTag: item.versionTag ?? '',
|
|
5291
|
+
inputMappings: properties?.inputMappings ?? [],
|
|
5292
|
+
outputMappings: properties?.outputMappings ?? [],
|
|
5293
|
+
pluginConfigurationMappings: properties?.pluginConfigurationMappings ?? {},
|
|
5294
|
+
});
|
|
5295
|
+
this.processLinkStateService.showModal();
|
|
5296
|
+
});
|
|
5297
|
+
}
|
|
5298
|
+
subscribeToProcessLinkEvents() {
|
|
5299
|
+
this._subscriptions.add(this.processLinkStateService.processLinkCreateEvents$.subscribe(event => {
|
|
5300
|
+
this.processLinkStateService.stopSaving();
|
|
5301
|
+
this.processLinkStateService.closeModal();
|
|
5302
|
+
this.saveBuildingBlockStartableItem(event);
|
|
5303
|
+
}));
|
|
5304
|
+
this._subscriptions.add(this.processLinkStateService.processLinkUpdateEvents$.subscribe(event => {
|
|
5305
|
+
this.processLinkStateService.stopSaving();
|
|
5306
|
+
this.processLinkStateService.closeModal();
|
|
5307
|
+
this.updateBuildingBlockStartableItem(event);
|
|
5308
|
+
}));
|
|
5309
|
+
}
|
|
5310
|
+
saveBuildingBlockStartableItem(event) {
|
|
5311
|
+
const request = {
|
|
5312
|
+
type: StartableItemType.BUILDING_BLOCK,
|
|
5313
|
+
properties: {
|
|
5314
|
+
buildingBlockDefinitionKey: event.buildingBlockDefinitionKey,
|
|
5315
|
+
buildingBlockDefinitionVersionTag: event.buildingBlockDefinitionVersionTag,
|
|
5316
|
+
inputMappings: this.normalizeMappingsForSave(event.inputMappings || [], 'input'),
|
|
5317
|
+
outputMappings: this.normalizeMappingsForSave(event.outputMappings || [], 'output'),
|
|
5318
|
+
pluginConfigurationMappings: event.pluginConfigurationMappings || {},
|
|
5319
|
+
},
|
|
5320
|
+
};
|
|
5321
|
+
this.startableItemManagementService
|
|
5322
|
+
.createItem(request)
|
|
5323
|
+
.pipe(catchError$1(() => of(null)))
|
|
5324
|
+
.subscribe(() => {
|
|
5325
|
+
this.startableItemManagementService.loadItems();
|
|
5326
|
+
});
|
|
5327
|
+
}
|
|
5328
|
+
updateBuildingBlockStartableItem(event) {
|
|
5329
|
+
const key = event.buildingBlockDefinitionKey;
|
|
5330
|
+
const versionTag = event.buildingBlockDefinitionVersionTag;
|
|
5331
|
+
const request = {
|
|
5332
|
+
type: StartableItemType.BUILDING_BLOCK,
|
|
5333
|
+
properties: {
|
|
5334
|
+
buildingBlockDefinitionKey: key,
|
|
5335
|
+
buildingBlockDefinitionVersionTag: versionTag,
|
|
5336
|
+
inputMappings: this.normalizeMappingsForSave(event.inputMappings || [], 'input'),
|
|
5337
|
+
outputMappings: this.normalizeMappingsForSave(event.outputMappings || [], 'output'),
|
|
5338
|
+
pluginConfigurationMappings: event.pluginConfigurationMappings || {},
|
|
5339
|
+
},
|
|
5340
|
+
};
|
|
5341
|
+
this.startableItemManagementService
|
|
5342
|
+
.updateItem(key, versionTag, request)
|
|
5343
|
+
.pipe(catchError$1(() => of(null)))
|
|
5344
|
+
.subscribe(() => {
|
|
5345
|
+
this.startableItemManagementService.loadItems();
|
|
5346
|
+
});
|
|
5347
|
+
}
|
|
5348
|
+
/**
|
|
5349
|
+
* Ensures building block field references have the `doc:/` prefix for the backend value resolver.
|
|
5350
|
+
* For input mappings, the target is a building block field (needs prefix).
|
|
5351
|
+
* For output mappings, the source is a building block field (needs prefix).
|
|
5352
|
+
*/
|
|
5353
|
+
normalizeMappingsForSave(mappings, direction) {
|
|
5354
|
+
return mappings.map(mapping => {
|
|
5355
|
+
if (direction === 'input') {
|
|
5356
|
+
return { ...mapping, target: ensureDocPrefix(mapping.target) };
|
|
5357
|
+
}
|
|
5358
|
+
return { ...mapping, source: ensureDocPrefix(mapping.source) };
|
|
5359
|
+
});
|
|
5360
|
+
}
|
|
5361
|
+
setFields() {
|
|
5362
|
+
this.fields$.next([
|
|
5363
|
+
{
|
|
5364
|
+
key: 'name',
|
|
5365
|
+
label: 'caseManagement.actions.columns.name',
|
|
5366
|
+
viewType: ViewType.TEXT,
|
|
5367
|
+
},
|
|
5368
|
+
{
|
|
5369
|
+
viewType: ViewType.TEMPLATE,
|
|
5370
|
+
template: this.typeColumnTemplate,
|
|
5371
|
+
key: '',
|
|
5372
|
+
label: 'caseManagement.actions.columns.type',
|
|
5373
|
+
},
|
|
5374
|
+
]);
|
|
5375
|
+
}
|
|
5376
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementActionsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i2$1.ActivatedRoute }, { token: StartableItemManagementService }, { token: i3$1.EditPermissionsService }, { token: i4.ProcessLinkStateService }, { token: i4.ProcessLinkStepService }, { token: i4.BuildingBlockStateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5377
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: CaseManagementActionsComponent, isStandalone: true, selector: "valtimo-case-management-actions", providers: [StartableItemManagementService, ProcessLinkStateService, ProcessLinkStepService, ProcessLinkButtonService], viewQueries: [{ propertyName: "typeColumnTemplate", first: true, predicate: ["typeColumn"], 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<ng-container\n *ngIf=\"{\n routeParams: caseManagementRouteParams$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n } as obs\"\n>\n <cds-inline-notification\n [notificationObj]=\"{\n type: 'info',\n title: '',\n message: ('caseManagement.actions.infoNotification.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n\n <valtimo-carbon-list\n *ngIf=\"{fields: fields$ | async, loading: loading$ | async, items: items$ | async} as listObs\"\n [items]=\"listObs.items\"\n [fields]=\"listObs.fields\"\n [header]=\"false\"\n [loading]=\"listObs.loading\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"dragAndDropDisabled() || !obs.hasEditPermissions\"\n [actionItems]=\"ACTION_ITEMS\"\n [showActionItems]=\"obs.hasEditPermissions\"\n (rowClicked)=\"onRowClicked($event)\"\n (itemsReordered)=\"onItemsReorderedEvent($event)\"\n >\n <ng-container carbonToolbarContent>\n <ng-container [ngTemplateOutlet]=\"addItemButton\"></ng-container>\n </ng-container>\n\n <valtimo-no-results\n [action]=\"addItemButton\"\n [description]=\"'caseManagement.actions.noResultsDescription' | translate\"\n [title]=\"'caseManagement.actions.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #typeColumn let-data=\"data\">\n <cds-tag\n class=\"cds-tag--no-margin\"\n [type]=\"data.item.type === StartableItemType.PROCESS ? 'blue' : 'purple'\"\n >\n {{ 'caseManagement.actions.type.' + data.item.type | translate }}\n </cds-tag>\n </ng-template>\n\n <ng-template #addItemButton>\n <button\n *ngIf=\"obs.hasEditPermissions\"\n cdsButton=\"primary\"\n (click)=\"onAddItemClick()\"\n >\n {{ 'caseManagement.actions.addItem' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n</ng-container>\n\n<valtimo-case-management-actions-modal\n (configureBuildingBlockEvent)=\"onConfigureBuildingBlock($event)\"\n></valtimo-case-management-actions-modal>\n\n<valtimo-process-link-modal></valtimo-process-link-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.actions.deleteModal.content\"\n [outputOnConfirm]=\"itemToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"caseManagement.actions.deleteModal.title\"\n (confirmEvent)=\"onDeleteConfirm($event)\"\n></valtimo-confirmation-modal>\n", styles: [":host ::ng-deep cds-inline-notification{max-inline-size:unset;margin-bottom:16px}:host ::ng-deep .cds-tag--no-margin{margin:0}\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: "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: CarbonListModule }, { 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: "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: NotificationModule }, { kind: "component", type: i2.Notification, selector: "cds-notification, cds-inline-notification, ibm-notification, ibm-inline-notification", inputs: ["notificationObj"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i2.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { kind: "component", type: CaseManagementActionsModalComponent, selector: "valtimo-case-management-actions-modal", outputs: ["configureBuildingBlockEvent"] }, { kind: "ngmodule", type: ConfirmationModalModule }, { 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: "ngmodule", type: ProcessLinkModule }, { kind: "component", type: i4.ProcessLinkModalComponent, selector: "valtimo-process-link-modal" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5378
|
+
}
|
|
5379
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementActionsComponent, decorators: [{
|
|
5380
|
+
type: Component,
|
|
5381
|
+
args: [{ standalone: true, selector: 'valtimo-case-management-actions', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
5382
|
+
CommonModule,
|
|
5383
|
+
TranslateModule,
|
|
5384
|
+
CarbonListModule,
|
|
5385
|
+
ButtonModule,
|
|
5386
|
+
IconModule,
|
|
5387
|
+
NotificationModule,
|
|
5388
|
+
TagModule,
|
|
5389
|
+
CaseManagementActionsModalComponent,
|
|
5390
|
+
ConfirmationModalModule,
|
|
5391
|
+
ProcessLinkModule,
|
|
5392
|
+
], providers: [StartableItemManagementService, ProcessLinkStateService, ProcessLinkStepService, ProcessLinkButtonService], 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<ng-container\n *ngIf=\"{\n routeParams: caseManagementRouteParams$ | async,\n hasEditPermissions: hasEditPermissions$ | async,\n } as obs\"\n>\n <cds-inline-notification\n [notificationObj]=\"{\n type: 'info',\n title: '',\n message: ('caseManagement.actions.infoNotification.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n\n <valtimo-carbon-list\n *ngIf=\"{fields: fields$ | async, loading: loading$ | async, items: items$ | async} as listObs\"\n [items]=\"listObs.items\"\n [fields]=\"listObs.fields\"\n [header]=\"false\"\n [loading]=\"listObs.loading\"\n [dragAndDrop]=\"true\"\n [dragAndDropDisabled]=\"dragAndDropDisabled() || !obs.hasEditPermissions\"\n [actionItems]=\"ACTION_ITEMS\"\n [showActionItems]=\"obs.hasEditPermissions\"\n (rowClicked)=\"onRowClicked($event)\"\n (itemsReordered)=\"onItemsReorderedEvent($event)\"\n >\n <ng-container carbonToolbarContent>\n <ng-container [ngTemplateOutlet]=\"addItemButton\"></ng-container>\n </ng-container>\n\n <valtimo-no-results\n [action]=\"addItemButton\"\n [description]=\"'caseManagement.actions.noResultsDescription' | translate\"\n [title]=\"'caseManagement.actions.noResults' | translate\"\n ></valtimo-no-results>\n </valtimo-carbon-list>\n\n <ng-template #typeColumn let-data=\"data\">\n <cds-tag\n class=\"cds-tag--no-margin\"\n [type]=\"data.item.type === StartableItemType.PROCESS ? 'blue' : 'purple'\"\n >\n {{ 'caseManagement.actions.type.' + data.item.type | translate }}\n </cds-tag>\n </ng-template>\n\n <ng-template #addItemButton>\n <button\n *ngIf=\"obs.hasEditPermissions\"\n cdsButton=\"primary\"\n (click)=\"onAddItemClick()\"\n >\n {{ 'caseManagement.actions.addItem' | translate }}\n\n <svg cdsIcon=\"add\" size=\"16\" class=\"cds--btn__icon\"></svg>\n </button>\n </ng-template>\n</ng-container>\n\n<valtimo-case-management-actions-modal\n (configureBuildingBlockEvent)=\"onConfigureBuildingBlock($event)\"\n></valtimo-case-management-actions-modal>\n\n<valtimo-process-link-modal></valtimo-process-link-modal>\n\n<valtimo-confirmation-modal\n confirmButtonTextTranslationKey=\"interface.delete\"\n confirmButtonType=\"danger\"\n contentTranslationKey=\"caseManagement.actions.deleteModal.content\"\n [outputOnConfirm]=\"itemToDelete$ | async\"\n [showModalSubject$]=\"showDeleteModal$\"\n titleTranslationKey=\"caseManagement.actions.deleteModal.title\"\n (confirmEvent)=\"onDeleteConfirm($event)\"\n></valtimo-confirmation-modal>\n", styles: [":host ::ng-deep cds-inline-notification{max-inline-size:unset;margin-bottom:16px}:host ::ng-deep .cds-tag--no-margin{margin:0}\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"] }]
|
|
5393
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i2$1.ActivatedRoute }, { type: StartableItemManagementService }, { type: i3$1.EditPermissionsService }, { type: i4.ProcessLinkStateService }, { type: i4.ProcessLinkStepService }, { type: i4.BuildingBlockStateService }], propDecorators: { typeColumnTemplate: [{
|
|
5394
|
+
type: ViewChild,
|
|
5395
|
+
args: ['typeColumn']
|
|
5396
|
+
}] } });
|
|
5397
|
+
|
|
5398
|
+
/*
|
|
5399
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
4641
5400
|
*
|
|
4642
5401
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4643
5402
|
* you may not use this file except in compliance with the License.
|
|
@@ -4660,14 +5419,23 @@ var UPLOAD_STATUS;
|
|
|
4660
5419
|
var UPLOAD_STEP;
|
|
4661
5420
|
(function (UPLOAD_STEP) {
|
|
4662
5421
|
UPLOAD_STEP["ACCESS_CONTROL"] = "accessControl";
|
|
5422
|
+
UPLOAD_STEP["CONFIGURE"] = "configure";
|
|
4663
5423
|
UPLOAD_STEP["DASHBOARD"] = "dashboard";
|
|
4664
5424
|
UPLOAD_STEP["FILE_SELECT"] = "fileSelect";
|
|
4665
5425
|
UPLOAD_STEP["FILE_UPLOAD"] = "fileUpload";
|
|
4666
5426
|
UPLOAD_STEP["PLUGINS"] = "plugins";
|
|
4667
5427
|
})(UPLOAD_STEP || (UPLOAD_STEP = {}));
|
|
5428
|
+
var IMPORT_WARNING;
|
|
5429
|
+
(function (IMPORT_WARNING) {
|
|
5430
|
+
IMPORT_WARNING["NONE"] = "none";
|
|
5431
|
+
IMPORT_WARNING["NEW_VERSION"] = "newVersion";
|
|
5432
|
+
IMPORT_WARNING["EXISTING_DRAFT"] = "existingDraft";
|
|
5433
|
+
IMPORT_WARNING["EXISTING_FINAL"] = "existingFinal";
|
|
5434
|
+
})(IMPORT_WARNING || (IMPORT_WARNING = {}));
|
|
4668
5435
|
const STEPS = [
|
|
4669
5436
|
UPLOAD_STEP.PLUGINS,
|
|
4670
5437
|
UPLOAD_STEP.FILE_SELECT,
|
|
5438
|
+
UPLOAD_STEP.CONFIGURE,
|
|
4671
5439
|
UPLOAD_STEP.FILE_UPLOAD,
|
|
4672
5440
|
UPLOAD_STEP.ACCESS_CONTROL,
|
|
4673
5441
|
UPLOAD_STEP.DASHBOARD,
|
|
@@ -4689,10 +5457,10 @@ const STEPS = [
|
|
|
4689
5457
|
* limitations under the License.
|
|
4690
5458
|
*/
|
|
4691
5459
|
class CaseManagementUploadStepComponent {
|
|
4692
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
4693
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
5460
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementUploadStepComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5461
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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"] }); }
|
|
4694
5462
|
}
|
|
4695
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5463
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementUploadStepComponent, decorators: [{
|
|
4696
5464
|
type: Component,
|
|
4697
5465
|
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"] }]
|
|
4698
5466
|
}], propDecorators: { illustration: [{
|
|
@@ -4704,7 +5472,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
4704
5472
|
}] } });
|
|
4705
5473
|
|
|
4706
5474
|
/*
|
|
4707
|
-
* Copyright 2015-
|
|
5475
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
4708
5476
|
*
|
|
4709
5477
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
4710
5478
|
* you may not use this file except in compliance with the License.
|
|
@@ -4719,50 +5487,63 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
4719
5487
|
* limitations under the License.
|
|
4720
5488
|
*/
|
|
4721
5489
|
class CaseManagementUploadComponent {
|
|
4722
|
-
|
|
4723
|
-
this.
|
|
5490
|
+
get nameControl() {
|
|
5491
|
+
return this.configureForm.get('name');
|
|
5492
|
+
}
|
|
5493
|
+
constructor(caseManagementService, fb, translateService) {
|
|
4724
5494
|
this.caseManagementService = caseManagementService;
|
|
4725
5495
|
this.fb = fb;
|
|
4726
|
-
this.iconService = iconService;
|
|
4727
5496
|
this.translateService = translateService;
|
|
4728
5497
|
this.open = false;
|
|
4729
5498
|
this.closeModal = new EventEmitter();
|
|
4730
5499
|
this.testIds = CASE_MANAGEMENT_UPLOAD_TEST_IDS;
|
|
4731
|
-
this.acceptedFiles = ['.
|
|
4732
|
-
this._disabled$ = new BehaviorSubject(true);
|
|
5500
|
+
this.acceptedFiles = ['.zip'];
|
|
4733
5501
|
this.UPLOAD_STEP = UPLOAD_STEP;
|
|
4734
5502
|
this.UPLOAD_STATUS = UPLOAD_STATUS;
|
|
5503
|
+
this.IMPORT_WARNING = IMPORT_WARNING;
|
|
5504
|
+
this._disabled$ = new BehaviorSubject(true);
|
|
4735
5505
|
this.activeStep$ = new BehaviorSubject(UPLOAD_STEP.PLUGINS);
|
|
4736
|
-
this.
|
|
4737
|
-
this.
|
|
4738
|
-
this.
|
|
4739
|
-
this
|
|
5506
|
+
this.uploadStatus$ = new BehaviorSubject(UPLOAD_STATUS.ACTIVE);
|
|
5507
|
+
this.preview$ = new BehaviorSubject(null);
|
|
5508
|
+
this.importWarning$ = new BehaviorSubject(IMPORT_WARNING.NONE);
|
|
5509
|
+
this.overrideConfirmed$ = new BehaviorSubject(false);
|
|
5510
|
+
this.backButtonEnabled$ = this.activeStep$.pipe(map((activeStep) => [
|
|
5511
|
+
UPLOAD_STEP.FILE_SELECT,
|
|
5512
|
+
UPLOAD_STEP.CONFIGURE,
|
|
5513
|
+
UPLOAD_STEP.ACCESS_CONTROL,
|
|
5514
|
+
UPLOAD_STEP.DASHBOARD,
|
|
5515
|
+
].includes(activeStep)));
|
|
5516
|
+
this.isStepAfterUpload$ = this.activeStep$.pipe(map((activeStep) => ![UPLOAD_STEP.PLUGINS, UPLOAD_STEP.FILE_SELECT, UPLOAD_STEP.CONFIGURE].includes(activeStep)));
|
|
5517
|
+
this.showCloseButton$ = this.activeStep$.pipe(map((activeStep) => [
|
|
5518
|
+
UPLOAD_STEP.PLUGINS,
|
|
5519
|
+
UPLOAD_STEP.FILE_SELECT,
|
|
5520
|
+
UPLOAD_STEP.CONFIGURE,
|
|
5521
|
+
UPLOAD_STEP.FILE_UPLOAD,
|
|
5522
|
+
].includes(activeStep)));
|
|
4740
5523
|
this.nextButtonDisabled$ = combineLatest([
|
|
4741
5524
|
this.activeStep$,
|
|
4742
5525
|
this._disabled$,
|
|
4743
|
-
|
|
4744
|
-
|
|
4745
|
-
|
|
4746
|
-
|
|
5526
|
+
this.importWarning$,
|
|
5527
|
+
this.overrideConfirmed$,
|
|
5528
|
+
]).pipe(map(([activeStep, disabled, warning, overrideConfirmed]) => {
|
|
5529
|
+
if (activeStep === UPLOAD_STEP.CONFIGURE) {
|
|
5530
|
+
if (warning === IMPORT_WARNING.EXISTING_FINAL)
|
|
5531
|
+
return true;
|
|
5532
|
+
if (warning === IMPORT_WARNING.EXISTING_DRAFT && !overrideConfirmed)
|
|
5533
|
+
return true;
|
|
5534
|
+
return this.configureForm.invalid;
|
|
5535
|
+
}
|
|
5536
|
+
return activeStep !== UPLOAD_STEP.PLUGINS && disabled;
|
|
4747
5537
|
}));
|
|
4748
|
-
this.notificationObj$ = combineLatest([
|
|
4749
|
-
this.translateService.stream('interface.warning'),
|
|
4750
|
-
this.translateService.stream('caseManagement.importDefinition.overwriteWarning'),
|
|
4751
|
-
]).pipe(map(([title, message]) => ({
|
|
4752
|
-
type: 'warning',
|
|
4753
|
-
title,
|
|
4754
|
-
message,
|
|
4755
|
-
showClose: false,
|
|
4756
|
-
lowContrast: true,
|
|
4757
|
-
})));
|
|
4758
|
-
this.showCheckboxError$ = new BehaviorSubject(false);
|
|
4759
|
-
this.uploadStatus$ = new BehaviorSubject(UPLOAD_STATUS.ACTIVE);
|
|
4760
5538
|
this.form = this.fb.group({
|
|
4761
5539
|
file: this.fb.control(new Set(), [Validators.required]),
|
|
4762
5540
|
});
|
|
4763
|
-
this.
|
|
5541
|
+
this.configureForm = this.fb.group({
|
|
5542
|
+
name: this.fb.control('', Validators.required),
|
|
5543
|
+
caseDefinitionKey: this.fb.control('', Validators.required),
|
|
5544
|
+
});
|
|
5545
|
+
this._importFile$ = new BehaviorSubject(null);
|
|
4764
5546
|
this._subscriptions = new Subscription();
|
|
4765
|
-
this.iconService.register(WarningFilled16);
|
|
4766
5547
|
}
|
|
4767
5548
|
ngOnInit() {
|
|
4768
5549
|
const control = this.form.get('file');
|
|
@@ -4773,16 +5554,19 @@ class CaseManagementUploadComponent {
|
|
|
4773
5554
|
const [fileItem] = fileSet;
|
|
4774
5555
|
if (!fileItem) {
|
|
4775
5556
|
this._disabled$.next(true);
|
|
4776
|
-
this.
|
|
4777
|
-
|
|
4778
|
-
|
|
4779
|
-
}
|
|
4780
|
-
if (fileItem.file.type === 'application/json') {
|
|
4781
|
-
this.setJsonFile(fileItem);
|
|
5557
|
+
if (this.activeStep$.value === UPLOAD_STEP.FILE_SELECT) {
|
|
5558
|
+
this.preview$.next(null);
|
|
5559
|
+
}
|
|
4782
5560
|
return;
|
|
4783
5561
|
}
|
|
4784
5562
|
this.setZipFile(fileItem);
|
|
4785
5563
|
}));
|
|
5564
|
+
this._subscriptions.add(this.configureForm
|
|
5565
|
+
.get('caseDefinitionKey')
|
|
5566
|
+
.valueChanges.pipe(debounceTime(400), distinctUntilChanged())
|
|
5567
|
+
.subscribe((key) => {
|
|
5568
|
+
this.checkExistingVersions(key);
|
|
5569
|
+
}));
|
|
4786
5570
|
}
|
|
4787
5571
|
ngOnDestroy() {
|
|
4788
5572
|
this._subscriptions.unsubscribe();
|
|
@@ -4804,60 +5588,88 @@ class CaseManagementUploadComponent {
|
|
|
4804
5588
|
if (nextIndex === STEPS.length) {
|
|
4805
5589
|
return;
|
|
4806
5590
|
}
|
|
4807
|
-
if (activeStep === UPLOAD_STEP.FILE_SELECT && !this.$warningChecked()) {
|
|
4808
|
-
this.showCheckboxError$.next(true);
|
|
4809
|
-
return;
|
|
4810
|
-
}
|
|
4811
5591
|
this.activeStep$.next(STEPS[nextIndex]);
|
|
4812
5592
|
if (STEPS[nextIndex] !== UPLOAD_STEP.FILE_UPLOAD) {
|
|
4813
5593
|
return;
|
|
4814
5594
|
}
|
|
4815
5595
|
this.uploadDefinition();
|
|
4816
5596
|
}
|
|
4817
|
-
|
|
4818
|
-
this.$warningChecked.set(checked);
|
|
4819
|
-
if (!checked) {
|
|
4820
|
-
return;
|
|
4821
|
-
}
|
|
4822
|
-
this.showCheckboxError$.next(false);
|
|
4823
|
-
}
|
|
4824
|
-
setJsonFile(fileItem) {
|
|
5597
|
+
setZipFile(fileItem) {
|
|
4825
5598
|
const file = fileItem?.file;
|
|
4826
5599
|
if (!file) {
|
|
4827
|
-
this.
|
|
5600
|
+
this._importFile$.next(null);
|
|
5601
|
+
this.preview$.next(null);
|
|
4828
5602
|
return;
|
|
4829
5603
|
}
|
|
4830
|
-
const
|
|
4831
|
-
|
|
4832
|
-
|
|
4833
|
-
|
|
5604
|
+
const blob = new Blob([file], { type: file.type });
|
|
5605
|
+
const fd = new FormData();
|
|
5606
|
+
fd.append('file', blob, file.name);
|
|
5607
|
+
this._importFile$.next(fd);
|
|
5608
|
+
this.caseManagementService
|
|
5609
|
+
.previewImport(fd)
|
|
5610
|
+
.pipe(take$1(1))
|
|
5611
|
+
.subscribe({
|
|
5612
|
+
next: preview => {
|
|
5613
|
+
this.preview$.next(preview);
|
|
5614
|
+
this.configureForm.patchValue({
|
|
5615
|
+
name: preview.name,
|
|
5616
|
+
caseDefinitionKey: preview.key,
|
|
5617
|
+
});
|
|
4834
5618
|
this._disabled$.next(false);
|
|
4835
|
-
this.
|
|
4836
|
-
|
|
4837
|
-
|
|
4838
|
-
|
|
4839
|
-
|
|
4840
|
-
|
|
4841
|
-
|
|
5619
|
+
this.checkExistingVersions(preview.key);
|
|
5620
|
+
},
|
|
5621
|
+
error: () => {
|
|
5622
|
+
this._disabled$.next(true);
|
|
5623
|
+
fileItem.invalid = true;
|
|
5624
|
+
fileItem.invalidTitle = this.translateService.instant('caseManagement.importDefinition.invalidZipError.title');
|
|
5625
|
+
fileItem.invalidText = this.translateService.instant('caseManagement.importDefinition.invalidZipError.text');
|
|
5626
|
+
},
|
|
5627
|
+
});
|
|
4842
5628
|
}
|
|
4843
|
-
|
|
4844
|
-
|
|
4845
|
-
|
|
4846
|
-
this._importFile$.next('');
|
|
5629
|
+
checkExistingVersions(key) {
|
|
5630
|
+
if (!key) {
|
|
5631
|
+
this.importWarning$.next(IMPORT_WARNING.NONE);
|
|
4847
5632
|
return;
|
|
4848
5633
|
}
|
|
4849
|
-
|
|
4850
|
-
|
|
4851
|
-
|
|
4852
|
-
|
|
4853
|
-
|
|
5634
|
+
this.caseManagementService
|
|
5635
|
+
.getCaseDefinitionVersions(key)
|
|
5636
|
+
.pipe(take$1(1))
|
|
5637
|
+
.subscribe({
|
|
5638
|
+
next: versions => this.determineWarning(versions),
|
|
5639
|
+
error: () => this.importWarning$.next(IMPORT_WARNING.NONE),
|
|
5640
|
+
});
|
|
5641
|
+
}
|
|
5642
|
+
determineWarning(versions) {
|
|
5643
|
+
const preview = this.preview$.value;
|
|
5644
|
+
if (!preview || versions.length === 0) {
|
|
5645
|
+
this.importWarning$.next(IMPORT_WARNING.NONE);
|
|
5646
|
+
return;
|
|
5647
|
+
}
|
|
5648
|
+
const matchingVersion = versions.find(v => v.versionTag === preview.versionTag);
|
|
5649
|
+
if (!matchingVersion) {
|
|
5650
|
+
this.importWarning$.next(IMPORT_WARNING.NEW_VERSION);
|
|
5651
|
+
return;
|
|
5652
|
+
}
|
|
5653
|
+
if (matchingVersion.final) {
|
|
5654
|
+
this.importWarning$.next(IMPORT_WARNING.EXISTING_FINAL);
|
|
5655
|
+
return;
|
|
5656
|
+
}
|
|
5657
|
+
this.importWarning$.next(IMPORT_WARNING.EXISTING_DRAFT);
|
|
5658
|
+
this.overrideConfirmed$.next(false);
|
|
4854
5659
|
}
|
|
4855
5660
|
uploadDefinition() {
|
|
4856
5661
|
this._disabled$.next(true);
|
|
4857
|
-
this._importFile
|
|
4858
|
-
|
|
4859
|
-
|
|
4860
|
-
|
|
5662
|
+
const file = this._importFile$.value;
|
|
5663
|
+
if (!file)
|
|
5664
|
+
return;
|
|
5665
|
+
const { name, caseDefinitionKey } = this.configureForm.getRawValue();
|
|
5666
|
+
const preview = this.preview$.value;
|
|
5667
|
+
const keyChanged = caseDefinitionKey !== preview?.key;
|
|
5668
|
+
const nameChanged = name !== preview?.name;
|
|
5669
|
+
const hasOverrides = keyChanged || nameChanged;
|
|
5670
|
+
this.caseManagementService
|
|
5671
|
+
.importDocumentDefinitionZip(file, hasOverrides ? caseDefinitionKey : undefined, hasOverrides ? name : undefined)
|
|
5672
|
+
.pipe(take$1(1))
|
|
4861
5673
|
.subscribe({
|
|
4862
5674
|
next: () => {
|
|
4863
5675
|
this._disabled$.next(false);
|
|
@@ -4869,42 +5681,26 @@ class CaseManagementUploadComponent {
|
|
|
4869
5681
|
},
|
|
4870
5682
|
});
|
|
4871
5683
|
}
|
|
4872
|
-
clearJsonString() {
|
|
4873
|
-
this._importFile$.next('');
|
|
4874
|
-
}
|
|
4875
|
-
stringIsValidJson(string) {
|
|
4876
|
-
try {
|
|
4877
|
-
JSON.parse(string);
|
|
4878
|
-
}
|
|
4879
|
-
catch (e) {
|
|
4880
|
-
return false;
|
|
4881
|
-
}
|
|
4882
|
-
return true;
|
|
4883
|
-
}
|
|
4884
|
-
setErrorState(fileItem) {
|
|
4885
|
-
this._disabled$.next(true);
|
|
4886
|
-
fileItem.invalid = true;
|
|
4887
|
-
fileItem.invalidTitle = this.translateService.instant('caseManagement.importDefinition.invalidJsonError.title');
|
|
4888
|
-
fileItem.invalidText = this.translateService.instant('caseManagement.importDefinition.invalidJsonError.text');
|
|
4889
|
-
}
|
|
4890
5684
|
resetModal() {
|
|
4891
5685
|
setTimeout(() => {
|
|
4892
5686
|
this.activeStep$.next(UPLOAD_STEP.PLUGINS);
|
|
4893
5687
|
this.uploadStatus$.next(UPLOAD_STATUS.ACTIVE);
|
|
4894
|
-
this.showCheckboxError$.next(false);
|
|
4895
5688
|
this.form.reset({ file: new Set() });
|
|
4896
|
-
this.
|
|
5689
|
+
this.configureForm.reset();
|
|
5690
|
+
this._importFile$.next(null);
|
|
4897
5691
|
this._disabled$.next(true);
|
|
4898
|
-
this
|
|
5692
|
+
this.preview$.next(null);
|
|
5693
|
+
this.importWarning$.next(IMPORT_WARNING.NONE);
|
|
5694
|
+
this.overrideConfirmed$.next(false);
|
|
4899
5695
|
}, CARBON_CONSTANTS.modalAnimationMs);
|
|
4900
5696
|
}
|
|
4901
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
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 }); }
|
|
5697
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementUploadComponent, deps: [{ token: CaseManagementService }, { token: i1$4.FormBuilder }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5698
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: CaseManagementUploadComponent, isStandalone: false, selector: "valtimo-case-management-upload", inputs: { open: "open" }, outputs: { closeModal: "closeModal" }, 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<cds-modal\n *ngIf=\"{\n activeStep: activeStep$ | async,\n backButtonEnabled: backButtonEnabled$ | async,\n isStepAfterUpload: isStepAfterUpload$ | async,\n nextButtonDisabled: nextButtonDisabled$ | async,\n showCloseButton: showCloseButton$ | async,\n uploadStatus: uploadStatus$ | async,\n preview: preview$ | async,\n importWarning: importWarning$ | 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 </form>\n\n <form\n *ngSwitchCase=\"UPLOAD_STEP.CONFIGURE\"\n [formGroup]=\"configureForm\"\n class=\"valtimo-definition-uploader__configure\"\n >\n <cds-label>\n {{ 'caseManagement.createDefinition.name' | translate }}\n <input\n formControlName=\"name\"\n cdsText\n [attr.data-test-id]=\"testIds.nameInput\"\n />\n </cds-label>\n\n <valtimo-auto-key-input\n [mode]=\"'add'\"\n [sourceText]=\"nameControl.value\"\n formControlName=\"caseDefinitionKey\"\n labelTranslationKey=\"caseManagement.createDefinition.key\"\n >\n </valtimo-auto-key-input>\n\n <div class=\"valtimo-definition-uploader__version-label\">\n <label class=\"cds--label\">\n {{ 'caseManagement.createDefinition.version' | translate }}\n </label>\n <div\n class=\"valtimo-definition-uploader__version-field\"\n [attr.data-test-id]=\"testIds.versionTag\"\n >\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"obs.preview?.isFinal ? 'green' : 'red'\">\n {{\n (obs.preview?.isFinal\n ? 'caseManagement.importDefinition.configure.finalTag'\n : 'caseManagement.importDefinition.configure.draftTag'\n ) | translate\n }}\n </cds-tag>\n <span>{{ obs.preview?.versionTag }}</span>\n </div>\n </div>\n\n <ng-container [ngSwitch]=\"obs.importWarning\">\n <cds-inline-notification\n *ngSwitchCase=\"IMPORT_WARNING.NEW_VERSION\"\n [notificationObj]=\"{\n type: 'info',\n title: ('caseManagement.importDefinition.configure.newVersionWarning.title' | translate),\n message: ('caseManagement.importDefinition.configure.newVersionWarning.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n\n <ng-container *ngSwitchCase=\"IMPORT_WARNING.EXISTING_DRAFT\">\n <cds-inline-notification\n [notificationObj]=\"{\n type: 'warning',\n title: ('caseManagement.importDefinition.configure.existingDraftWarning.title' | translate),\n message: ('caseManagement.importDefinition.configure.existingDraftWarning.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n <cds-checkbox\n [attr.data-test-id]=\"testIds.overrideCheckbox\"\n (checkedChange)=\"overrideConfirmed$.next($event)\"\n >\n {{\n 'caseManagement.importDefinition.configure.overrideConfirm' | translate\n }}\n </cds-checkbox>\n </ng-container>\n\n <cds-inline-notification\n *ngSwitchCase=\"IMPORT_WARNING.EXISTING_FINAL\"\n [notificationObj]=\"{\n type: 'error',\n title: ('caseManagement.importDefinition.configure.existingFinalWarning.title' | translate),\n message: ('caseManagement.importDefinition.configure.existingFinalWarning.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n </ng-container>\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.CONFIGURE\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__configure{display:flex;flex-direction:column;gap:16px}.valtimo-definition-uploader__version-field{width:100%;display:flex;gap:8px;align-items:center;height:2.5rem;padding:0 1rem;background-color:var(--cds-layer-01);border-bottom:1px solid var(--cds-border-strong)}.valtimo-definition-uploader__version-field span{color:var(--cds-text-primary);font-size:.875rem;line-height:1.125rem;font-weight:400;letter-spacing:.16px}.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-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: 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.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.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.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.Tag, selector: "cds-tag, ibm-tag", inputs: ["type", "size", "class", "skeleton"] }, { 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: i7.AutoKeyInputComponent, selector: "valtimo-auto-key-input", inputs: ["labelTranslationKey", "placeholderTranslationKey", "mode", "usedKeys", "sourceText"] }, { 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 }); }
|
|
4903
5699
|
}
|
|
4904
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5700
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementUploadComponent, decorators: [{
|
|
4905
5701
|
type: Component,
|
|
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"] }]
|
|
4907
|
-
}], ctorParameters: () => [{ type:
|
|
5702
|
+
args: [{ standalone: false, selector: 'valtimo-case-management-upload', 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<cds-modal\n *ngIf=\"{\n activeStep: activeStep$ | async,\n backButtonEnabled: backButtonEnabled$ | async,\n isStepAfterUpload: isStepAfterUpload$ | async,\n nextButtonDisabled: nextButtonDisabled$ | async,\n showCloseButton: showCloseButton$ | async,\n uploadStatus: uploadStatus$ | async,\n preview: preview$ | async,\n importWarning: importWarning$ | 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 </form>\n\n <form\n *ngSwitchCase=\"UPLOAD_STEP.CONFIGURE\"\n [formGroup]=\"configureForm\"\n class=\"valtimo-definition-uploader__configure\"\n >\n <cds-label>\n {{ 'caseManagement.createDefinition.name' | translate }}\n <input\n formControlName=\"name\"\n cdsText\n [attr.data-test-id]=\"testIds.nameInput\"\n />\n </cds-label>\n\n <valtimo-auto-key-input\n [mode]=\"'add'\"\n [sourceText]=\"nameControl.value\"\n formControlName=\"caseDefinitionKey\"\n labelTranslationKey=\"caseManagement.createDefinition.key\"\n >\n </valtimo-auto-key-input>\n\n <div class=\"valtimo-definition-uploader__version-label\">\n <label class=\"cds--label\">\n {{ 'caseManagement.createDefinition.version' | translate }}\n </label>\n <div\n class=\"valtimo-definition-uploader__version-field\"\n [attr.data-test-id]=\"testIds.versionTag\"\n >\n <cds-tag class=\"cds-tag--no-margin\" [type]=\"obs.preview?.isFinal ? 'green' : 'red'\">\n {{\n (obs.preview?.isFinal\n ? 'caseManagement.importDefinition.configure.finalTag'\n : 'caseManagement.importDefinition.configure.draftTag'\n ) | translate\n }}\n </cds-tag>\n <span>{{ obs.preview?.versionTag }}</span>\n </div>\n </div>\n\n <ng-container [ngSwitch]=\"obs.importWarning\">\n <cds-inline-notification\n *ngSwitchCase=\"IMPORT_WARNING.NEW_VERSION\"\n [notificationObj]=\"{\n type: 'info',\n title: ('caseManagement.importDefinition.configure.newVersionWarning.title' | translate),\n message: ('caseManagement.importDefinition.configure.newVersionWarning.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n\n <ng-container *ngSwitchCase=\"IMPORT_WARNING.EXISTING_DRAFT\">\n <cds-inline-notification\n [notificationObj]=\"{\n type: 'warning',\n title: ('caseManagement.importDefinition.configure.existingDraftWarning.title' | translate),\n message: ('caseManagement.importDefinition.configure.existingDraftWarning.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n <cds-checkbox\n [attr.data-test-id]=\"testIds.overrideCheckbox\"\n (checkedChange)=\"overrideConfirmed$.next($event)\"\n >\n {{\n 'caseManagement.importDefinition.configure.overrideConfirm' | translate\n }}\n </cds-checkbox>\n </ng-container>\n\n <cds-inline-notification\n *ngSwitchCase=\"IMPORT_WARNING.EXISTING_FINAL\"\n [notificationObj]=\"{\n type: 'error',\n title: ('caseManagement.importDefinition.configure.existingFinalWarning.title' | translate),\n message: ('caseManagement.importDefinition.configure.existingFinalWarning.message' | translate),\n showClose: false,\n lowContrast: true\n }\"\n ></cds-inline-notification>\n </ng-container>\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.CONFIGURE\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__configure{display:flex;flex-direction:column;gap:16px}.valtimo-definition-uploader__version-field{width:100%;display:flex;gap:8px;align-items:center;height:2.5rem;padding:0 1rem;background-color:var(--cds-layer-01);border-bottom:1px solid var(--cds-border-strong)}.valtimo-definition-uploader__version-field span{color:var(--cds-text-primary);font-size:.875rem;line-height:1.125rem;font-weight:400;letter-spacing:.16px}.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-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"] }]
|
|
5703
|
+
}], ctorParameters: () => [{ type: CaseManagementService }, { type: i1$4.FormBuilder }, { type: i3.TranslateService }], propDecorators: { open: [{
|
|
4908
5704
|
type: Input
|
|
4909
5705
|
}], closeModal: [{
|
|
4910
5706
|
type: Output
|
|
@@ -5012,10 +5808,10 @@ class CaseManagementCreateComponent {
|
|
|
5012
5808
|
this.editDisabled$.next(true);
|
|
5013
5809
|
}, CARBON_CONSTANTS.modalAnimationMs);
|
|
5014
5810
|
}
|
|
5015
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5016
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
5811
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCreateComponent, deps: [{ token: i1$2.DocumentService }, { token: i1$4.FormBuilder }, { token: i2.IconService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5812
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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 }); }
|
|
5017
5813
|
}
|
|
5018
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5814
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementCreateComponent, decorators: [{
|
|
5019
5815
|
type: Component,
|
|
5020
5816
|
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"] }]
|
|
5021
5817
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i1$4.FormBuilder }, { type: i2.IconService }], propDecorators: { open: [{
|
|
@@ -5150,10 +5946,10 @@ class CaseManagementListComponent {
|
|
|
5150
5946
|
showCreateModal() {
|
|
5151
5947
|
this.showCreateModal$.next(true);
|
|
5152
5948
|
}
|
|
5153
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5154
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
5949
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", 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 }); }
|
|
5950
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", 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" }] }); }
|
|
5155
5951
|
}
|
|
5156
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
5952
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementListComponent, decorators: [{
|
|
5157
5953
|
type: Component,
|
|
5158
5954
|
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
5955
|
}], ctorParameters: () => [{ type: CaseManagementService }, { type: i2.IconService }, { type: i7.MenuService }, { type: i2$1.ActivatedRoute }, { type: i2$1.Router }, { type: i3$1.EnvironmentService }], propDecorators: { statusColumnTemplate: [{
|
|
@@ -5201,6 +5997,7 @@ const routes = [
|
|
|
5201
5997
|
component: ProcessManagementComponent,
|
|
5202
5998
|
data: { context: 'case' },
|
|
5203
5999
|
},
|
|
6000
|
+
{ path: TabEnum.ACTIONS, component: CaseManagementActionsComponent },
|
|
5204
6001
|
{
|
|
5205
6002
|
path: TabEnum.DECISIONS,
|
|
5206
6003
|
component: DecisionListComponent,
|
|
@@ -5307,11 +6104,11 @@ class CaseManagementRoutingModule {
|
|
|
5307
6104
|
component: tabConfig.component,
|
|
5308
6105
|
})));
|
|
5309
6106
|
}
|
|
5310
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5311
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
|
5312
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.
|
|
6107
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementRoutingModule, deps: [{ token: CASE_MANAGEMENT_TAB_TOKEN, optional: true }, { token: i2$1.Router }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6108
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementRoutingModule, imports: [i2$1.RouterModule], exports: [RouterModule] }); }
|
|
6109
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] }); }
|
|
5313
6110
|
}
|
|
5314
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
6111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementRoutingModule, decorators: [{
|
|
5315
6112
|
type: NgModule,
|
|
5316
6113
|
args: [{ imports: [RouterModule.forChild(routes)], exports: [RouterModule], declarations: [] }]
|
|
5317
6114
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
@@ -5382,10 +6179,10 @@ class CaseManagementAssigneeComponent {
|
|
|
5382
6179
|
autoAssignTasks: !currentSettings.autoAssignTasks,
|
|
5383
6180
|
}, caseDefinitionKey, caseDefinitionVersionTag);
|
|
5384
6181
|
}
|
|
5385
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5386
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
6182
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementAssigneeComponent, deps: [{ token: i1$2.DocumentService }, { token: i2$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6183
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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" }] }); }
|
|
5387
6184
|
}
|
|
5388
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
6185
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementAssigneeComponent, decorators: [{
|
|
5389
6186
|
type: Component,
|
|
5390
6187
|
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"] }]
|
|
5391
6188
|
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: i2$1.ActivatedRoute }] });
|
|
@@ -5485,13 +6282,13 @@ class CaseManagementConnectModalComponent {
|
|
|
5485
6282
|
},
|
|
5486
6283
|
});
|
|
5487
6284
|
}
|
|
5488
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5489
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.
|
|
6285
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementConnectModalComponent, deps: [{ token: i1$2.DocumentService }, { token: CaseDetailService }, { token: i3$1.GlobalNotificationService }, { token: i4$1.ProcessService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6286
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", 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" }] }); }
|
|
5490
6287
|
}
|
|
5491
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
6288
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementConnectModalComponent, decorators: [{
|
|
5492
6289
|
type: Component,
|
|
5493
6290
|
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"] }]
|
|
5494
|
-
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: CaseDetailService }, { type: i3$1.GlobalNotificationService }, { type: i4.ProcessService }, { type: i3.TranslateService }], propDecorators: { _modal: [{
|
|
6291
|
+
}], ctorParameters: () => [{ type: i1$2.DocumentService }, { type: CaseDetailService }, { type: i3$1.GlobalNotificationService }, { type: i4$1.ProcessService }, { type: i3.TranslateService }], propDecorators: { _modal: [{
|
|
5495
6292
|
type: ViewChild,
|
|
5496
6293
|
args: ['caseConnectModal']
|
|
5497
6294
|
}], reloadProcessDocumentDefinitions: [{
|
|
@@ -5499,7 +6296,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
5499
6296
|
}] } });
|
|
5500
6297
|
|
|
5501
6298
|
/*
|
|
5502
|
-
* Copyright 2015-
|
|
6299
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
5503
6300
|
*
|
|
5504
6301
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
5505
6302
|
* you may not use this file except in compliance with the License.
|
|
@@ -5514,8 +6311,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
5514
6311
|
* limitations under the License.
|
|
5515
6312
|
*/
|
|
5516
6313
|
class CaseManagementModule {
|
|
5517
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
5518
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
|
6314
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6315
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementModule, declarations: [CaseManagementListComponent,
|
|
5519
6316
|
CaseManagementConnectModalComponent,
|
|
5520
6317
|
CaseManagementSelectVersionModalComponent,
|
|
5521
6318
|
CaseManagementUploadComponent,
|
|
@@ -5576,7 +6373,8 @@ class CaseManagementModule {
|
|
|
5576
6373
|
ComboBoxModule,
|
|
5577
6374
|
RenderInPageHeaderDirective,
|
|
5578
6375
|
DialogModule,
|
|
5579
|
-
|
|
6376
|
+
OverflowMenuComponent,
|
|
6377
|
+
OverflowMenuOptionComponent,
|
|
5580
6378
|
EditorModule,
|
|
5581
6379
|
CarbonListModule,
|
|
5582
6380
|
TabsModule,
|
|
@@ -5585,7 +6383,7 @@ class CaseManagementModule {
|
|
|
5585
6383
|
ProgressBarModule,
|
|
5586
6384
|
ConfirmationModalModule,
|
|
5587
6385
|
ToggleModule,
|
|
5588
|
-
TooltipModule,
|
|
6386
|
+
TooltipModule$1,
|
|
5589
6387
|
ValuePathSelectorComponent,
|
|
5590
6388
|
LayerModule,
|
|
5591
6389
|
FormManagementComponent,
|
|
@@ -5595,8 +6393,10 @@ class CaseManagementModule {
|
|
|
5595
6393
|
ReadOnlyDirective,
|
|
5596
6394
|
CaseManagementDraftWarningComponent,
|
|
5597
6395
|
JsonEditorComponent,
|
|
5598
|
-
|
|
5599
|
-
|
|
6396
|
+
CaseManagementActionsComponent,
|
|
6397
|
+
CaseManagementHeaderComponent,
|
|
6398
|
+
AutoKeyInputComponent] }); }
|
|
6399
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementModule, providers: [TabManagementService], imports: [CommonModule,
|
|
5600
6400
|
WidgetModule,
|
|
5601
6401
|
DropzoneModule,
|
|
5602
6402
|
CaseManagementRoutingModule,
|
|
@@ -5629,6 +6429,8 @@ class CaseManagementModule {
|
|
|
5629
6429
|
CarbonListModule,
|
|
5630
6430
|
ComboBoxModule,
|
|
5631
6431
|
DialogModule,
|
|
6432
|
+
OverflowMenuComponent,
|
|
6433
|
+
OverflowMenuOptionComponent,
|
|
5632
6434
|
EditorModule,
|
|
5633
6435
|
CarbonListModule,
|
|
5634
6436
|
TabsModule,
|
|
@@ -5637,7 +6439,7 @@ class CaseManagementModule {
|
|
|
5637
6439
|
ProgressBarModule,
|
|
5638
6440
|
ConfirmationModalModule,
|
|
5639
6441
|
ToggleModule,
|
|
5640
|
-
TooltipModule,
|
|
6442
|
+
TooltipModule$1,
|
|
5641
6443
|
ValuePathSelectorComponent,
|
|
5642
6444
|
LayerModule,
|
|
5643
6445
|
FormManagementComponent,
|
|
@@ -5645,9 +6447,11 @@ class CaseManagementModule {
|
|
|
5645
6447
|
NumberModule,
|
|
5646
6448
|
CaseManagementDraftWarningComponent,
|
|
5647
6449
|
JsonEditorComponent,
|
|
5648
|
-
|
|
6450
|
+
CaseManagementActionsComponent,
|
|
6451
|
+
CaseManagementHeaderComponent,
|
|
6452
|
+
AutoKeyInputComponent] }); }
|
|
5649
6453
|
}
|
|
5650
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
6454
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: CaseManagementModule, decorators: [{
|
|
5651
6455
|
type: NgModule,
|
|
5652
6456
|
args: [{
|
|
5653
6457
|
declarations: [
|
|
@@ -5715,7 +6519,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
5715
6519
|
ComboBoxModule,
|
|
5716
6520
|
RenderInPageHeaderDirective,
|
|
5717
6521
|
DialogModule,
|
|
5718
|
-
|
|
6522
|
+
OverflowMenuComponent,
|
|
6523
|
+
OverflowMenuOptionComponent,
|
|
5719
6524
|
EditorModule,
|
|
5720
6525
|
CarbonListModule,
|
|
5721
6526
|
TabsModule,
|
|
@@ -5724,7 +6529,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
5724
6529
|
ProgressBarModule,
|
|
5725
6530
|
ConfirmationModalModule,
|
|
5726
6531
|
ToggleModule,
|
|
5727
|
-
TooltipModule,
|
|
6532
|
+
TooltipModule$1,
|
|
5728
6533
|
ValuePathSelectorComponent,
|
|
5729
6534
|
LayerModule,
|
|
5730
6535
|
FormManagementComponent,
|
|
@@ -5734,7 +6539,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
5734
6539
|
ReadOnlyDirective,
|
|
5735
6540
|
CaseManagementDraftWarningComponent,
|
|
5736
6541
|
JsonEditorComponent,
|
|
6542
|
+
CaseManagementActionsComponent,
|
|
5737
6543
|
CaseManagementHeaderComponent,
|
|
6544
|
+
AutoKeyInputComponent,
|
|
5738
6545
|
],
|
|
5739
6546
|
providers: [TabManagementService],
|
|
5740
6547
|
}]
|
|
@@ -5763,5 +6570,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
5763
6570
|
* Generated bundle index. Do not edit.
|
|
5764
6571
|
*/
|
|
5765
6572
|
|
|
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 };
|
|
6573
|
+
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, StartableItemApiService, StartableItemManagementService, StartableItemType, TabEnum, TabManagementService, TabService };
|
|
5767
6574
|
//# sourceMappingURL=valtimo-case-management.mjs.map
|